box-content-preview 3.119.0 → 3.121.0

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 (112) hide show
  1. package/README.md +7 -7
  2. package/dist/lib/i18n/bn-IN.js +11 -5
  3. package/dist/lib/i18n/da-DK.js +9 -3
  4. package/dist/lib/i18n/de-DE.js +9 -3
  5. package/dist/lib/i18n/en-AU.js +9 -3
  6. package/dist/lib/i18n/en-CA.js +9 -3
  7. package/dist/lib/i18n/en-GB.js +9 -3
  8. package/dist/lib/i18n/en-US.js +6 -2
  9. package/dist/lib/i18n/en-x-pseudo.js +9 -3
  10. package/dist/lib/i18n/es-419.js +9 -3
  11. package/dist/lib/i18n/es-ES.js +9 -3
  12. package/dist/lib/i18n/fi-FI.js +9 -3
  13. package/dist/lib/i18n/fr-CA.js +9 -3
  14. package/dist/lib/i18n/fr-FR.js +9 -3
  15. package/dist/lib/i18n/hi-IN.js +11 -5
  16. package/dist/lib/i18n/it-IT.js +9 -3
  17. package/dist/lib/i18n/ja-JP.js +9 -3
  18. package/dist/lib/i18n/ko-KR.js +9 -3
  19. package/dist/lib/i18n/nb-NO.js +9 -3
  20. package/dist/lib/i18n/nl-NL.js +9 -3
  21. package/dist/lib/i18n/pl-PL.js +9 -3
  22. package/dist/lib/i18n/pt-BR.js +9 -3
  23. package/dist/lib/i18n/ru-RU.js +9 -3
  24. package/dist/lib/i18n/sv-SE.js +9 -3
  25. package/dist/lib/i18n/tr-TR.js +9 -3
  26. package/dist/lib/i18n/zh-CN.js +9 -3
  27. package/dist/lib/i18n/zh-TW.js +9 -3
  28. package/dist/lib/index.css +40 -37
  29. package/dist/lib/index.js +941 -1397
  30. package/dist/lib/pdfjs-images/altText_add.svg +3 -0
  31. package/dist/lib/pdfjs-images/altText_disclaimer.svg +3 -0
  32. package/dist/lib/pdfjs-images/altText_done.svg +3 -0
  33. package/dist/lib/pdfjs-images/altText_spinner.svg +30 -0
  34. package/dist/lib/pdfjs-images/altText_warning.svg +3 -0
  35. package/dist/lib/pdfjs-images/annotation-check.svg +11 -0
  36. package/dist/lib/pdfjs-images/annotation-comment.svg +16 -0
  37. package/dist/lib/pdfjs-images/annotation-help.svg +26 -0
  38. package/dist/lib/pdfjs-images/annotation-insert.svg +10 -0
  39. package/dist/lib/pdfjs-images/annotation-key.svg +11 -0
  40. package/dist/lib/pdfjs-images/annotation-newparagraph.svg +11 -0
  41. package/dist/lib/pdfjs-images/annotation-noicon.svg +7 -0
  42. package/dist/lib/pdfjs-images/annotation-note.svg +42 -0
  43. package/dist/lib/pdfjs-images/annotation-paperclip.svg +6 -0
  44. package/dist/lib/pdfjs-images/annotation-paragraph.svg +16 -0
  45. package/dist/lib/pdfjs-images/annotation-pushpin.svg +7 -0
  46. package/dist/lib/pdfjs-images/checkmark.svg +5 -0
  47. package/dist/lib/pdfjs-images/comment-actionsButton.svg +3 -0
  48. package/dist/lib/pdfjs-images/comment-closeButton.svg +3 -0
  49. package/dist/lib/pdfjs-images/comment-editButton.svg +8 -0
  50. package/dist/lib/pdfjs-images/comment-popup-editButton.svg +5 -0
  51. package/dist/lib/pdfjs-images/cursor-editorFreeHighlight.svg +6 -0
  52. package/dist/lib/pdfjs-images/cursor-editorFreeText.svg +3 -0
  53. package/dist/lib/pdfjs-images/cursor-editorInk.svg +4 -0
  54. package/dist/lib/pdfjs-images/cursor-editorTextHighlight.svg +8 -0
  55. package/dist/lib/pdfjs-images/editor-toolbar-delete.svg +5 -0
  56. package/dist/lib/pdfjs-images/editor-toolbar-edit.svg +3 -0
  57. package/dist/lib/pdfjs-images/findbarButton-next.svg +3 -0
  58. package/dist/lib/pdfjs-images/findbarButton-previous.svg +3 -0
  59. package/dist/lib/pdfjs-images/gv-toolbarButton-download.svg +3 -0
  60. package/dist/lib/pdfjs-images/loading-icon.gif +0 -0
  61. package/dist/lib/pdfjs-images/loading.svg +1 -0
  62. package/dist/lib/pdfjs-images/messageBar_closingButton.svg +3 -0
  63. package/dist/lib/pdfjs-images/messageBar_info.svg +3 -0
  64. package/dist/lib/pdfjs-images/messageBar_warning.svg +3 -0
  65. package/dist/lib/pdfjs-images/pages_closeButton.svg +3 -0
  66. package/dist/lib/pdfjs-images/pages_selected.svg +7 -0
  67. package/dist/lib/pdfjs-images/pages_viewArrow.svg +3 -0
  68. package/dist/lib/pdfjs-images/pages_viewButton.svg +3 -0
  69. package/dist/lib/pdfjs-images/secondaryToolbarButton-documentProperties.svg +3 -0
  70. package/dist/lib/pdfjs-images/secondaryToolbarButton-firstPage.svg +3 -0
  71. package/dist/lib/pdfjs-images/secondaryToolbarButton-handTool.svg +3 -0
  72. package/dist/lib/pdfjs-images/secondaryToolbarButton-lastPage.svg +3 -0
  73. package/dist/lib/pdfjs-images/secondaryToolbarButton-rotateCcw.svg +3 -0
  74. package/dist/lib/pdfjs-images/secondaryToolbarButton-rotateCw.svg +3 -0
  75. package/dist/lib/pdfjs-images/secondaryToolbarButton-scrollHorizontal.svg +3 -0
  76. package/dist/lib/pdfjs-images/secondaryToolbarButton-scrollPage.svg +3 -0
  77. package/dist/lib/pdfjs-images/secondaryToolbarButton-scrollVertical.svg +3 -0
  78. package/dist/lib/pdfjs-images/secondaryToolbarButton-scrollWrapped.svg +3 -0
  79. package/dist/lib/pdfjs-images/secondaryToolbarButton-selectTool.svg +3 -0
  80. package/dist/lib/pdfjs-images/secondaryToolbarButton-spreadEven.svg +3 -0
  81. package/dist/lib/pdfjs-images/secondaryToolbarButton-spreadNone.svg +3 -0
  82. package/dist/lib/pdfjs-images/secondaryToolbarButton-spreadOdd.svg +3 -0
  83. package/dist/lib/pdfjs-images/signature-properties-row-check.svg +4 -0
  84. package/dist/lib/pdfjs-images/toolbarButton-bookmark.svg +3 -0
  85. package/dist/lib/pdfjs-images/toolbarButton-currentOutlineItem.svg +3 -0
  86. package/dist/lib/pdfjs-images/toolbarButton-download.svg +4 -0
  87. package/dist/lib/pdfjs-images/toolbarButton-editorFreeText.svg +5 -0
  88. package/dist/lib/pdfjs-images/toolbarButton-editorHighlight.svg +6 -0
  89. package/dist/lib/pdfjs-images/toolbarButton-editorInk.svg +4 -0
  90. package/dist/lib/pdfjs-images/toolbarButton-editorSignature.svg +6 -0
  91. package/dist/lib/pdfjs-images/toolbarButton-editorStamp.svg +8 -0
  92. package/dist/lib/pdfjs-images/toolbarButton-menuArrow.svg +3 -0
  93. package/dist/lib/pdfjs-images/toolbarButton-menuArrowNova.svg +3 -0
  94. package/dist/lib/pdfjs-images/toolbarButton-openFile.svg +3 -0
  95. package/dist/lib/pdfjs-images/toolbarButton-pageDown.svg +3 -0
  96. package/dist/lib/pdfjs-images/toolbarButton-pageUp.svg +3 -0
  97. package/dist/lib/pdfjs-images/toolbarButton-presentationMode.svg +3 -0
  98. package/dist/lib/pdfjs-images/toolbarButton-print.svg +3 -0
  99. package/dist/lib/pdfjs-images/toolbarButton-search.svg +3 -0
  100. package/dist/lib/pdfjs-images/toolbarButton-secondaryToolbarToggle.svg +3 -0
  101. package/dist/lib/pdfjs-images/toolbarButton-signaturePropertiesError.svg +7 -0
  102. package/dist/lib/pdfjs-images/toolbarButton-signaturePropertiesVerified.svg +7 -0
  103. package/dist/lib/pdfjs-images/toolbarButton-viewAttachments.svg +3 -0
  104. package/dist/lib/pdfjs-images/toolbarButton-viewLayers.svg +3 -0
  105. package/dist/lib/pdfjs-images/toolbarButton-viewOutline.svg +3 -0
  106. package/dist/lib/pdfjs-images/toolbarButton-viewThumbnail.svg +3 -0
  107. package/dist/lib/pdfjs-images/toolbarButton-viewsManagerToggle.svg +3 -0
  108. package/dist/lib/pdfjs-images/toolbarButton-zoomIn.svg +3 -0
  109. package/dist/lib/pdfjs-images/toolbarButton-zoomOut.svg +3 -0
  110. package/dist/lib/pdfjs-images/treeitem-collapsed.svg +1 -0
  111. package/dist/lib/pdfjs-images/treeitem-expanded.svg +1 -0
  112. package/package.json +5 -4
package/dist/lib/index.js CHANGED
@@ -23,6 +23,7 @@
23
23
  import { Archive as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_Archive__, FileAiPrompt as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileAiPrompt__, FileAiSession as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileAiSession__, FileAudio as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileAudio__, FileBookmark as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileBookmark__, FileBoxNote as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileBoxNote__, FileCanvas as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileCanvas__, FileCode as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileCode__, FileDefault as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileDefault__, FileDocs as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileDocs__, FileDwg as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileDwg__, FileExcel as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileExcel__, FileIllustrator as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileIllustrator__, FileImage as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileImage__, FileIndesign as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileIndesign__, FileKeynote as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileKeynote__, FileMarkdown as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileMarkdown__, FileNumbers as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileNumbers__, FilePages as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FilePages__, FilePdf as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FilePdf__, FilePhotoshop as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FilePhotoshop__, FilePowerpoint as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FilePowerpoint__, FilePresentation as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FilePresentation__, FileSheets as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileSheets__, FileSlides as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileSlides__, FileSpreadsheet as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileSpreadsheet__, FileText as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileText__, FileThreeD as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileThreeD__, FileVariable as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileVariable__, FileVector as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileVector__, FileVideo as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileVideo__, FileWord as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileWord__, FileXbd as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileXbd__, FileXdw as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileXdw__, FileZip as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FileZip__, FolderArchive as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FolderArchive__, FolderExternal as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FolderExternal__, FolderPersonal as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FolderPersonal__, FolderShared as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FolderShared__, FolderVariable as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Content_3c90b2ee_FolderVariable__ } from "@box/blueprint-web-assets/icons/Content";
24
24
  import { AgentCustomExtract as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Logo_bf2ae2e9_AgentCustomExtract__, BoxApps as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Logo_bf2ae2e9_BoxApps__, Form as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Logo_bf2ae2e9_Form__, FormSubmission as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Logo_bf2ae2e9_FormSubmission__, RelayAdvanced as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Logo_bf2ae2e9_RelayAdvanced__ } from "@box/blueprint-web-assets/icons/Logo";
25
25
  import { decode as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_utils_keys_d752524f_decode__ } from "box-ui-elements/es/utils/keys";
26
+ import { defineMessages as __WEBPACK_EXTERNAL_MODULE_react_intl_934d3829_defineMessages__, useIntl as __WEBPACK_EXTERNAL_MODULE_react_intl_934d3829_useIntl__ } from "react-intl";
26
27
  import { default as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_elements_common_Internationalize_d2da695e_default__ } from "box-ui-elements/es/elements/common/Internationalize";
27
28
  import { default as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_features_virtualized_table_VirtualizedTable_9bb4c7d0_default__ } from "box-ui-elements/es/features/virtualized-table/VirtualizedTable";
28
29
  import { default as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_utils_fuzzySearch_1af795d8_default__ } from "box-ui-elements/es/utils/fuzzySearch";
@@ -43,24 +44,24 @@ import * as __WEBPACK_EXTERNAL_MODULE_react_dom_7dac9eee__ from "react-dom";
43
44
  import * as __WEBPACK_EXTERNAL_MODULE_react_dom_client_4cb20cd7__ from "react-dom/client";
44
45
  import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_179142b8__ from "react/jsx-runtime";
45
46
  import { default as __WEBPACK_EXTERNAL_MODULE_axios_default__ } from "axios";
46
- import { bdlBoxBlue as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlBoxBlue__, bdlGray65 as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlGray65__, bdlGreenLight as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlGreenLight__, bdlGrimace as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlGrimace__, bdlWatermelonRed as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlWatermelonRed__, bdlYellorange as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlYellorange__, bdlYellow as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlYellow__, white as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_white__ } from "box-ui-elements/es/styles/variables";
47
- import { default as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_components_tooltip_Tooltip_97b5ae91_default__ } from "box-ui-elements/es/components/tooltip/Tooltip";
48
- import { withTargetedClickThrough as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_features_targeting_hocs_e326fa91_withTargetedClickThrough__ } from "box-ui-elements/es/features/targeting/hocs";
47
+ import { bdlBoxBlue as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlBoxBlue__, bdlGray65 as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlGray65__, white as __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_white__ } from "box-ui-elements/es/styles/variables";
48
+ import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_VrGoggles_9eb581be_default__ } from "@box/blueprint-web-assets/icons/Medium/VrGoggles";
49
49
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ArrowsMaximize_12b9ae40_default__ } from "@box/blueprint-web-assets/icons/Medium/ArrowsMaximize";
50
50
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ArrowsMinimize_35faab95_default__ } from "@box/blueprint-web-assets/icons/Medium/ArrowsMinimize";
51
51
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Minus_cc9df143_default__ } from "@box/blueprint-web-assets/icons/Medium/Minus";
52
52
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Plus_aaa7b14f_default__ } from "@box/blueprint-web-assets/icons/Medium/Plus";
53
53
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_CheckmarkCircle_e8bd4624_default__ } from "@box/blueprint-web-assets/icons/Medium/CheckmarkCircle";
54
+ import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_GridView_ac92b674_default__ } from "@box/blueprint-web-assets/icons/Medium/GridView";
55
+ import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Nav_d41e959a_default__ } from "@box/blueprint-web-assets/icons/Medium/Nav";
56
+ import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_RotateLeft_c726d679_default__ } from "@box/blueprint-web-assets/icons/Medium/RotateLeft";
57
+ import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Search_ef3e4aba_default__ } from "@box/blueprint-web-assets/icons/Medium/Search";
54
58
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_XMark_07fbe0f0_default__ } from "@box/blueprint-web-assets/icons/Medium/XMark";
55
59
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_PencilTip_154ad3fd_default__ } from "@box/blueprint-web-assets/icons/Medium/PencilTip";
56
60
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_SquarePlus_c11758f1_default__ } from "@box/blueprint-web-assets/icons/Medium/SquarePlus";
57
61
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_TCursorHighlight_508374cb_default__ } from "@box/blueprint-web-assets/icons/Medium/TCursorHighlight";
58
- import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Search_ef3e4aba_default__ } from "@box/blueprint-web-assets/icons/Medium/Search";
59
- import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_GridView_ac92b674_default__ } from "@box/blueprint-web-assets/icons/Medium/GridView";
62
+ import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_EllipsisVertical_06d33c4b_default__ } from "@box/blueprint-web-assets/icons/Medium/EllipsisVertical";
60
63
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ChevronDown_a545a634_default__ } from "@box/blueprint-web-assets/icons/Medium/ChevronDown";
61
64
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ChevronUp_d399c022_default__ } from "@box/blueprint-web-assets/icons/Medium/ChevronUp";
62
- import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_RotateLeft_c726d679_default__ } from "@box/blueprint-web-assets/icons/Medium/RotateLeft";
63
- import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Nav_d41e959a_default__ } from "@box/blueprint-web-assets/icons/Medium/Nav";
64
65
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_MediumFilled_Nav_ae6d790f_default__ } from "@box/blueprint-web-assets/icons/MediumFilled/Nav";
65
66
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Checkmark_52a58454_default__ } from "@box/blueprint-web-assets/icons/Medium/Checkmark";
66
67
  import { default as __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Download_0dc63cde_default__ } from "@box/blueprint-web-assets/icons/Medium/Download";
@@ -1113,7 +1114,7 @@ const DEFAULT_LANGUAGE = 'en-US';
1113
1114
  const MESSAGE_KEY_PREFIX = 'bcp.';
1114
1115
 
1115
1116
  // Only the npm build defines __BCP_DEFAULT_MESSAGES__; the CDN build bakes strings in per locale.
1116
- const defaultStrings = (0,_isNpmBuild__WEBPACK_IMPORTED_MODULE_0__/* .isNpmBuild */ .w)() ? {"rotate_left":"Rotate left","zoom_current_scale":"Current zoom level","zoom_in":"Zoom in","zoom_out":"Zoom out","enter_fullscreen":"Enter fullscreen","exit_fullscreen":"Exit fullscreen","controls_more":"More options","controls_shortcut_ctrl":"Ctrl + {1}","drawing_comment":"Markup","region_comment":"Comment on Region","highlight_text":"Highlight and Comment","exit_annotations":"Exit Annotations","annotation_tools":"Comment and markup","drawing_color":"Drawing color","drawing_color_blue":"Blue","drawing_color_green":"Green","drawing_color_red":"Red","drawing_color_orange":"Orange","drawing_color_yellow":"Yellow","drawing_color_purple":"Purple","previous_page":"Previous page","enter_page_num":"Click to enter page number","next_page":"Next page","download":"Download","print":"Print","print_notification":"Please press the print button to get a printable version of this document.","print_loading":"Preparing to print...","print_ready":"Ready to print.","print_close":"Close print dialog","previous_file":"Previous file","logo":"Logo","next_file":"Next file","loading_preview":"Loading Preview...","download_file":"Download File","text_truncated":"This file has been truncated due to size limits. Please download to view the whole file.","toggle_findbar":"Toggle findbar","toggle_thumbnails":"Toggle thumbnails","gallery_view":"Gallery view","page_gallery":"Page gallery","page_gallery_tile":"Page {1}","has_x_refs":"This preview has references you cannot view. Open the file in its native application.","find_next":"Find next","find_previous":"Find previous","find_close":"Close","find_label":"Search input","thumbnail_label":"Page thumbnails","file_preview_label":"File preview","comparison_banner_current":"Current version","comparison_banner_previous":"Previous version","comparison_banner_actions":"More actions","comparison_banner_open_full_preview":"Open Full Preview","comparison_banner_close":"Close","comparison_banner_make_current":"Make Current","comparison_banner_delete":"Delete","error_generic":"This preview didn’t load. Please try to open or download the file to view.","error_unsupported":"This preview didn’t load because the file type is unsupported. Please try to open or download the file to view.","error_account":"This preview didn’t load because your account is unable to preview this file type. Please try to open or download the file to view.","error_permissions":"This preview didn’t load because you don’t have permission. Please ask the file owner to update permissions.","error_refresh":"This preview didn’t load. Please try to open or download the file to view.","error_rate_limit":"This preview didn’t load because your request was rate limited. Please try to open or download the file to view.","error_reupload":"This preview didn’t load. Please try to open or download the file to view.","error_browser_unsupported":"Your browser doesn’t support preview for {1}. Please try to open or download the file to view.","error_document":"This preview didn’t load because the document may be protected. Please try to open or download the file to view.","error_password_protected":"This preview didn’t load because the document is protected. Please try to open or download the file to view.","error_try_again_later":"This preview didn’t load. Please refresh the page or download file to view.","error_bad_file":"This preview didn’t load. Please try to open or download the file to view.","error_not_downloadable":"Something seems to be wrong with this file. Please refresh the page, and if the issue continues, try to upload a new version.","error_flash_not_enabled":"This preview didn’t load because Flash is not enabled on your browser. Please try to enable Flash or download the file to view.","error_internet_explorer_office_online":"This version of Internet Explorer is out of date and the experience may be degraded. Please try switching to a different browser for a better experience.","error_large_file":"File exceeds supported size for preview. Open or download the file to view.","error_too_many_operations":"The file is too complex to display in your browser. Please download it to view.","error_zero_byte_file":"Cannot preview 0 B file. Open or download the file to view.","filename":"Name","last_modified_date":"Modified","size":"Size","search":"Search","search_results":"Search Results","search_placeholder":"Search files and folders","search_clear":"Clear search","breadcrumb":"Breadcrumb","breadcrumb_truncated":"Show hidden folders","media_autoplay":"Autoplay","media_autoplay_disabled":"Disabled","media_autoplay_enabled":"Enabled","media_play_next":"Play next file","media_play_next_disabled":"Disabled","media_play_next_enabled":"Enabled","media_speed":"Speed","media_speed_normal":"Normal","media_quality":"Quality","media_quality_auto":"Auto","media_guides":"Guides","media_guides_off":"Off","media_guides_default":"Default","media_guides_widescreen_hd":"Widescreen HD","media_guides_vertical":"Vertical","media_guides_square":"Square","media_guides_social_portrait":"Social Portrait","media_guides_cinemascope":"Cinemascope","media_guides_univisium":"Univisium","media_guides_cinema_flat":"Cinema Flat","media_guides_scope":"Scope","media_guides_fullscreen":"Fullscreen","media_guides_ultrawide":"Ultrawide","media_volume_slider":"Volume Slider","media_generating_waveform":"Generating waveform","media_loading":"Loading","media_zoom":"Zoom","media_zoom_slider":"Zoom Slider","media_time_slider":"Media Slider","media_comment_marker":"Comment marker","media_range_comment":"Comment","media_range_clear":"Clear","media_shuttle_forward":"Scanning forward at {1}x","media_shuttle_reverse":"Scanning backward at {1}x","media_mute":"Mute","media_unmute":"Unmute","media_play":"Play","media_pause":"Pause","media_skip_forward":"Skip forward","media_skip_backward":"Skip backward","media_settings":"Settings","media_subtitles_cc":"Subtitles/Closed Captions","media_time_format":"Time format","media_time_format_standard":"Standard time","media_time_format_timecode":"Timecode","media_time_format_frames":"Frame numbers","volume":"Volume","of":"of","subtitles":"Subtitles","off":"Off","media_audio":"Audio","track":"Track","media_auto_generated_captions":"Auto-Generated Captions","auto_generated":"Auto-Generated","box3d_animation_clips":"Animation clips","box3d_camera_projection_perspective":"Perspective","box3d_camera_projection_orthographic":"Orthographic","box3d_reset":"Reset","box3d_toggle_animation":"Play/pause animation","box3d_toggle_vr":"Toggle VR display","box3d_render_mode_lit":"Lit","box3d_render_mode_unlit":"Unlit","box3d_render_mode_normals":"Normals","box3d_render_mode_shape":"Shape","box3d_render_mode_uv_overlay":"UV Overlay","box3d_settings":"Settings","box3d_settings_render_label":"Render mode","box3d_settings_grid_label":"Show grid","box3d_settings_wireframes_label":"Show wireframes","box3d_settings_skeletons_label":"Show skeletons","box3d_settings_projection_label":"Camera Projection","box3d_settings_rotate_label":"Rotate Model","box3d_settings_rotate_left":"Rotate left around {1} axis","box3d_settings_rotate_right":"Rotate right around {1} axis","document_label":"Document Viewer","annotation_add_comment_placeholder":"Add a comment here...","annotation_reply_placeholder":"Post a reply...","annotation_done":"Done","annotation_close":"Close","annotation_cancel":"Cancel","annotation_save":"Save","annotation_post":"Post","annotation_delete":"Delete","annotation_delete_confirmation_message":"Delete this annotation?","annotation_profile_alt":"Avatar","annotation_anonymous_user_name":"Some User","annotation_posting_message":"Posting...","annotation_point_toggle":"Point annotation mode","annotation_draw_toggle":"Drawing annotation mode","annotation_highlight_toggle":"Highlight text","annotation_highlight_comment":"Add comment to highlighted text","annotation_who_highlighted":"{1} highlighted","annotation_who_drew":"{1} drew","annotation_draw_save":"Save drawing","annotation_draw_delete":"Delete drawing","annotations_load_error":"Annotations could not be loaded for this file. Please refresh the page to try again.","annotations_create_error":"This annotation could not be created. Please try again.","annotations_delete_error":"This annotation could not be deleted. Please try again.","annotations_authorization_error":"Annotations could not be loaded for this file. You may not have permission to take this action.","annotations_tooltip_body":"Make notes and comments to highlight key information when previewing content.","annotations_tooltip_title":"Add feedback on content","notification_button_default_text":"Okay","notification_button_default_label":"Clear Notification","notification_annotation_point_mode":"Click anywhere to add a comment to the document","notification_annotation_draw_mode":"Press down and drag the pointer to draw on the document","notification_degraded_preview":"Your connection to {1} is being blocked. Please reach out to your network admin to adjust firewall settings.","notification_cannot_download":"This file could not be downloaded.","notification_cannot_download_due_to_policy":"The file could not be downloaded due to a security policy.","link_contact_us":"Contact Us","360_videos":"360-degree videos","360_images":"360-degree images","3d_models":"3D models","afrikaans":"Afrikaans","albanian":"Albanian","arabic":"Arabic","armenian":"Armenian","belarusian":"Belarusian","bengali":"Bengali","bosnian":"Bosnian","bulgarian":"Bulgarian","burmese":"Burmese","catalan":"Catalan","central_khmer":"Central Khmer","chinese":"Chinese","croatian":"Croatian","czech":"Czech","danish":"Danish","dutch":"Dutch","english":"English","estonian":"Estonian","filipino":"Filipino","finnish":"Finnish","french":"French","galician":"Galician","ganda":"Ganda","georgian":"Georgian","german":"German","haitian_creole":"Haitian Creole","hebrew":"Hebrew","hindi":"Hindi","hmong":"Hmong","hungarian":"Hungarian","icelandic":"Icelandic","indonesian":"Indonesian","irish":"Irish","italian":"Italian","japanese":"Japanese","kazakh":"Kazakh","korean":"Korean","kurdish":"Kurdish","lao":"Lao","latvian":"Latvian","lithuanian":"Lithuanian","luxembourgish":"Luxembourgish","malay_macrolanguage":"Malay","modern_greek_1453_":"Greek","mongolian":"Mongolian","norwegian":"Norwegian","persian":"Persian","polish":"Polish","portuguese":"Portuguese","romanian":"Romanian","russian":"Russian","serbian":"Serbian","sichuan_yi":"Sichuan Yi","sicilian":"Sicilian","slovak":"Slovak","slovenian":"Slovenian","somali":"Somali","spanish":"Spanish","swahili_macrolanguage":"Swahili","swedish":"Swedish","swiss_german":"Swiss German","tagalog":"Tagalog","telugu":"Telugu","thai":"Thai","tibetan":"Tibetan","turkish":"Turkish","ukrainian":"Ukrainian","uzbek":"Uzbek","vietnamese":"Vietnamese"} : {};
1117
+ const defaultStrings = (0,_isNpmBuild__WEBPACK_IMPORTED_MODULE_0__/* .isNpmBuild */ .w)() ? {"rotate_left":"Rotate left","zoom_current_scale":"Current zoom level","zoom_in":"Zoom in","zoom_out":"Zoom out","enter_fullscreen":"Enter fullscreen","exit_fullscreen":"Exit fullscreen","controls_more":"More options","controls_find":"Find","controls_rotate_document":"Rotate document","controls_zoom_scale":"Zoom: {1}","controls_view_as_grid":"View as grid","controls_show_thumbnails":"View thumbnails","controls_hide_thumbnails":"Hide thumbnails","controls_shortcut_ctrl":"Ctrl + {1}","drawing_comment":"Markup","region_comment":"Comment on Region","highlight_text":"Highlight and Comment","exit_annotations":"Exit Annotations","annotation_tools":"Comment and markup","drawing_color":"Drawing color","drawing_color_blue":"Blue","drawing_color_green":"Green","drawing_color_red":"Red","drawing_color_orange":"Orange","drawing_color_yellow":"Yellow","drawing_color_purple":"Purple","previous_page":"Previous page","enter_page_num":"Click to enter page number","next_page":"Next page","download":"Download","print":"Print","print_notification":"Please press the print button to get a printable version of this document.","print_loading":"Preparing to print...","print_ready":"Ready to print.","print_close":"Close print dialog","previous_file":"Previous file","logo":"Logo","next_file":"Next file","loading_preview":"Loading Preview...","download_file":"Download File","text_truncated":"This file has been truncated due to size limits. Please download to view the whole file.","toggle_findbar":"Toggle findbar","toggle_thumbnails":"Toggle thumbnails","gallery_view":"Gallery view","page_gallery":"Page gallery","page_gallery_tile":"Page {1}","has_x_refs":"This preview has references you cannot view. Open the file in its native application.","find_next":"Find next","find_previous":"Find previous","find_close":"Close","find_label":"Search input","thumbnail_label":"Page thumbnails","file_preview_label":"File preview","comparison_banner_current":"Current version","comparison_banner_previous":"Previous version","comparison_banner_actions":"More actions","comparison_banner_open_full_preview":"Open Full Preview","comparison_banner_close":"Close","comparison_banner_make_current":"Make Current","comparison_banner_delete":"Delete","error_generic":"This preview didn’t load. Please try to open or download the file to view.","error_unsupported":"This preview didn’t load because the file type is unsupported. Please try to open or download the file to view.","error_account":"This preview didn’t load because your account is unable to preview this file type. Please try to open or download the file to view.","error_permissions":"This preview didn’t load because you don’t have permission. Please ask the file owner to update permissions.","error_refresh":"This preview didn’t load. Please try to open or download the file to view.","error_rate_limit":"This preview didn’t load because your request was rate limited. Please try to open or download the file to view.","error_reupload":"This preview didn’t load. Please try to open or download the file to view.","error_browser_unsupported":"Your browser doesn’t support preview for {1}. Please try to open or download the file to view.","error_document":"This preview didn’t load because the document may be protected. Please try to open or download the file to view.","error_password_protected":"This preview didn’t load because the document is protected. Please try to open or download the file to view.","error_try_again_later":"This preview didn’t load. Please refresh the page or download file to view.","error_bad_file":"This preview didn’t load. Please try to open or download the file to view.","error_not_downloadable":"Something seems to be wrong with this file. Please refresh the page, and if the issue continues, try to upload a new version.","error_flash_not_enabled":"This preview didn’t load because Flash is not enabled on your browser. Please try to enable Flash or download the file to view.","error_internet_explorer_office_online":"This version of Internet Explorer is out of date and the experience may be degraded. Please try switching to a different browser for a better experience.","error_large_file":"File exceeds supported size for preview. Open or download the file to view.","error_too_many_operations":"The file is too complex to display in your browser. Please download it to view.","error_zero_byte_file":"Cannot preview 0 B file. Open or download the file to view.","filename":"Name","last_modified_date":"Modified","size":"Size","search":"Search","search_results":"Search Results","search_placeholder":"Search files and folders","search_clear":"Clear search","breadcrumb":"Breadcrumb","breadcrumb_truncated":"Show hidden folders","media_autoplay":"Autoplay","media_autoplay_disabled":"Disabled","media_autoplay_enabled":"Enabled","media_play_next":"Play next file","media_play_next_disabled":"Disabled","media_play_next_enabled":"Enabled","media_speed":"Speed","media_speed_normal":"Normal","media_quality":"Quality","media_quality_auto":"Auto","media_guides":"Guides","media_guides_off":"Off","media_guides_default":"Default","media_guides_widescreen_hd":"Widescreen HD","media_guides_vertical":"Vertical","media_guides_square":"Square","media_guides_social_portrait":"Social Portrait","media_guides_cinemascope":"Cinemascope","media_guides_univisium":"Univisium","media_guides_cinema_flat":"Cinema Flat","media_guides_scope":"Scope","media_guides_fullscreen":"Fullscreen","media_guides_ultrawide":"Ultrawide","media_volume_slider":"Volume Slider","media_generating_waveform":"Generating waveform","media_loading":"Loading","media_zoom":"Zoom","media_zoom_slider":"Zoom Slider","media_time_slider":"Media Slider","media_comment_marker":"Comment marker","media_range_comment":"Comment","media_range_clear":"Clear","media_shuttle_forward":"Scanning forward at {1}x","media_shuttle_reverse":"Scanning backward at {1}x","media_mute":"Mute","media_unmute":"Unmute","media_play":"Play","media_pause":"Pause","media_skip_forward":"Skip forward","media_skip_backward":"Skip backward","media_settings":"Settings","media_subtitles_cc":"Subtitles/Closed Captions","media_time_format":"Time format","media_time_format_standard":"Standard time","media_time_format_timecode":"Timecode","media_time_format_frames":"Frame numbers","volume":"Volume","of":"of","subtitles":"Subtitles","off":"Off","media_audio":"Audio","track":"Track","media_auto_generated_captions":"Auto-Generated Captions","auto_generated":"Auto-Generated","box3d_animation_clips":"Animation clips","box3d_camera_projection_perspective":"Perspective","box3d_camera_projection_orthographic":"Orthographic","box3d_reset":"Reset","box3d_toggle_animation":"Play/pause animation","box3d_toggle_vr":"Toggle VR display","box3d_render_mode_lit":"Lit","box3d_render_mode_unlit":"Unlit","box3d_render_mode_normals":"Normals","box3d_render_mode_shape":"Shape","box3d_render_mode_uv_overlay":"UV Overlay","box3d_settings":"Settings","box3d_settings_render_label":"Render mode","box3d_settings_grid_label":"Show grid","box3d_settings_wireframes_label":"Show wireframes","box3d_settings_skeletons_label":"Show skeletons","box3d_settings_projection_label":"Camera Projection","box3d_settings_rotate_label":"Rotate Model","box3d_settings_rotate_left":"Rotate left around {1} axis","box3d_settings_rotate_right":"Rotate right around {1} axis","document_label":"Document Viewer","annotation_add_comment_placeholder":"Add a comment here...","annotation_reply_placeholder":"Post a reply...","annotation_done":"Done","annotation_close":"Close","annotation_cancel":"Cancel","annotation_save":"Save","annotation_post":"Post","annotation_delete":"Delete","annotation_delete_confirmation_message":"Delete this annotation?","annotation_profile_alt":"Avatar","annotation_anonymous_user_name":"Some User","annotation_posting_message":"Posting...","annotation_point_toggle":"Point annotation mode","annotation_draw_toggle":"Drawing annotation mode","annotation_highlight_toggle":"Highlight text","annotation_highlight_comment":"Add comment to highlighted text","annotation_who_highlighted":"{1} highlighted","annotation_who_drew":"{1} drew","annotation_draw_save":"Save drawing","annotation_draw_delete":"Delete drawing","annotations_load_error":"Annotations could not be loaded for this file. Please refresh the page to try again.","annotations_create_error":"This annotation could not be created. Please try again.","annotations_delete_error":"This annotation could not be deleted. Please try again.","annotations_authorization_error":"Annotations could not be loaded for this file. You may not have permission to take this action.","notification_button_default_text":"Okay","notification_button_default_label":"Clear Notification","notification_annotation_point_mode":"Click anywhere to add a comment to the document","notification_annotation_draw_mode":"Press down and drag the pointer to draw on the document","notification_degraded_preview":"Your connection to {1} is being blocked. Please reach out to your network admin to adjust firewall settings.","notification_cannot_download":"This file could not be downloaded.","notification_cannot_download_due_to_policy":"The file could not be downloaded due to a security policy.","link_contact_us":"Contact Us","360_videos":"360-degree videos","360_images":"360-degree images","3d_models":"3D models","afrikaans":"Afrikaans","albanian":"Albanian","arabic":"Arabic","armenian":"Armenian","belarusian":"Belarusian","bengali":"Bengali","bosnian":"Bosnian","bulgarian":"Bulgarian","burmese":"Burmese","catalan":"Catalan","central_khmer":"Central Khmer","chinese":"Chinese","croatian":"Croatian","czech":"Czech","danish":"Danish","dutch":"Dutch","english":"English","estonian":"Estonian","filipino":"Filipino","finnish":"Finnish","french":"French","galician":"Galician","ganda":"Ganda","georgian":"Georgian","german":"German","haitian_creole":"Haitian Creole","hebrew":"Hebrew","hindi":"Hindi","hmong":"Hmong","hungarian":"Hungarian","icelandic":"Icelandic","indonesian":"Indonesian","irish":"Irish","italian":"Italian","japanese":"Japanese","kazakh":"Kazakh","korean":"Korean","kurdish":"Kurdish","lao":"Lao","latvian":"Latvian","lithuanian":"Lithuanian","luxembourgish":"Luxembourgish","malay_macrolanguage":"Malay","modern_greek_1453_":"Greek","mongolian":"Mongolian","norwegian":"Norwegian","persian":"Persian","polish":"Polish","portuguese":"Portuguese","romanian":"Romanian","russian":"Russian","serbian":"Serbian","sichuan_yi":"Sichuan Yi","sicilian":"Sicilian","slovak":"Slovak","slovenian":"Slovenian","somali":"Somali","spanish":"Spanish","swahili_macrolanguage":"Swahili","swedish":"Swedish","swiss_german":"Swiss German","tagalog":"Tagalog","telugu":"Telugu","thai":"Thai","tibetan":"Tibetan","turkish":"Turkish","ukrainian":"Ukrainian","uzbek":"Uzbek","vietnamese":"Vietnamese"} : {};
1117
1118
  let language = true ? "en-US" : 0;
1118
1119
  let strings = defaultStrings;
1119
1120
  function getLanguage() {
@@ -1216,7 +1217,7 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
1216
1217
  const CLIENT_NAME = "box-content-preview"; // eslint-disable-line no-undef
1217
1218
  const CLIENT_NAME_KEY = 'box_client_name';
1218
1219
  const CLIENT_VERSION_KEY = 'box_client_version';
1219
- const CLIENT_VERSION = "3.119.0"; // eslint-disable-line no-undef
1220
+ const CLIENT_VERSION = "3.121.0"; // eslint-disable-line no-undef
1220
1221
  const HEADER_CLIENT_NAME = 'X-Box-Client-Name';
1221
1222
  const HEADER_CLIENT_VERSION = 'X-Box-Client-Version';
1222
1223
  const PROMISE_MAP = {};
@@ -1509,8 +1510,8 @@ function createAssetUrlCreator(location) {
1509
1510
  if (name.indexOf('http') === 0) {
1510
1511
  // This is a full url
1511
1512
  asset = name;
1512
- } else if (name.indexOf('third-party') === 0 || name.indexOf('exif/') === 0 || name.indexOf('cmaps/') === 0 || name.indexOf('iccs/') === 0 || name.indexOf('wasm/') === 0 || name.indexOf('standard_fonts/') === 0) {
1513
- // Static, non-localized asset (third-party libs, shared exif, pdfjs cmaps, ICC profiles, wasm, standard fonts).
1513
+ } else if (name.indexOf('third-party') === 0 || name.indexOf('exif/') === 0 || name.indexOf('cmaps/') === 0 || name.indexOf('iccs/') === 0 || name.indexOf('wasm/') === 0 || name.indexOf('standard_fonts/') === 0 || name.indexOf('pdfjs-images/') === 0) {
1514
+ // Static asset shared by every version and locale
1514
1515
  asset = staticBaseURI + name;
1515
1516
  } else {
1516
1517
  // This is our own asset that is localized
@@ -2055,7 +2056,7 @@ function getPreloadImageRequestPromisesByBatch(api, pagedPreLoadUrlWithAuth, sta
2055
2056
 
2056
2057
  /***/ },
2057
2058
 
2058
- /***/ 505
2059
+ /***/ 1337
2059
2060
  (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
2060
2061
 
2061
2062
 
@@ -3818,950 +3819,16 @@ var utils = __webpack_require__(6494);
3818
3819
  var ONE_HOUR_MS=36e5,nonUppercaseLocales=[`ru`];
3819
3820
  ;// ./node_modules/@box/readable-time/dist/esm/lib/utils.js
3820
3821
  var WEEK_IN_MS=6048e5,DAY_IN_MS=864e5,HOUR_IN_MS=36e5,MIN_IN_MS=6e4,SEC_IN_MS=1e3,YEAR_IN_MS=3154e7,convertToDate=dateValue=>dateValue instanceof Date?dateValue:new Date(dateValue),isCurrentYear=dateValue=>new Date().getFullYear()===convertToDate(dateValue).getFullYear(),isToday=dateValue=>new Date().toDateString()===convertToDate(dateValue).toDateString(),isYesterday=dateValue=>isToday(convertToDate(dateValue).getTime()+DAY_IN_MS);function timeFromNow(ms){let diff=ms-Date.now();return Math.abs(diff)>=YEAR_IN_MS?{value:Math.trunc(diff/YEAR_IN_MS),unit:`year`}:Math.abs(diff)>=WEEK_IN_MS?{value:Math.trunc(diff/WEEK_IN_MS),unit:`week`}:Math.abs(diff)>=DAY_IN_MS?{value:Math.trunc(diff/DAY_IN_MS),unit:`day`}:Math.abs(diff)>=HOUR_IN_MS?{value:Math.trunc(diff/HOUR_IN_MS),unit:`hour`}:Math.abs(diff)>=MIN_IN_MS?{value:Math.trunc(diff/MIN_IN_MS),unit:`minute`}:{value:Math.trunc(diff/SEC_IN_MS),unit:`second`}}
3821
- ;// ./node_modules/tslib/tslib.es6.mjs
3822
- /******************************************************************************
3823
- Copyright (c) Microsoft Corporation.
3824
-
3825
- Permission to use, copy, modify, and/or distribute this software for any
3826
- purpose with or without fee is hereby granted.
3827
-
3828
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
3829
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
3830
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
3831
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
3832
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
3833
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
3834
- PERFORMANCE OF THIS SOFTWARE.
3835
- ***************************************************************************** */
3836
- /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
3837
-
3838
- var extendStatics = function(d, b) {
3839
- extendStatics = Object.setPrototypeOf ||
3840
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
3841
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
3842
- return extendStatics(d, b);
3843
- };
3844
-
3845
- function __extends(d, b) {
3846
- if (typeof b !== "function" && b !== null)
3847
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
3848
- extendStatics(d, b);
3849
- function __() { this.constructor = d; }
3850
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
3851
- }
3852
-
3853
- var __assign = function() {
3854
- __assign = Object.assign || function __assign(t) {
3855
- for (var s, i = 1, n = arguments.length; i < n; i++) {
3856
- s = arguments[i];
3857
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
3858
- }
3859
- return t;
3860
- }
3861
- return __assign.apply(this, arguments);
3862
- }
3863
-
3864
- function __rest(s, e) {
3865
- var t = {};
3866
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
3867
- t[p] = s[p];
3868
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
3869
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
3870
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
3871
- t[p[i]] = s[p[i]];
3872
- }
3873
- return t;
3874
- }
3875
-
3876
- function __decorate(decorators, target, key, desc) {
3877
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3878
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
3879
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
3880
- return c > 3 && r && Object.defineProperty(target, key, r), r;
3881
- }
3882
-
3883
- function __param(paramIndex, decorator) {
3884
- return function (target, key) { decorator(target, key, paramIndex); }
3885
- }
3886
-
3887
- function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3888
- function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
3889
- var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
3890
- var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
3891
- var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
3892
- var _, done = false;
3893
- for (var i = decorators.length - 1; i >= 0; i--) {
3894
- var context = {};
3895
- for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
3896
- for (var p in contextIn.access) context.access[p] = contextIn.access[p];
3897
- context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
3898
- var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
3899
- if (kind === "accessor") {
3900
- if (result === void 0) continue;
3901
- if (result === null || typeof result !== "object") throw new TypeError("Object expected");
3902
- if (_ = accept(result.get)) descriptor.get = _;
3903
- if (_ = accept(result.set)) descriptor.set = _;
3904
- if (_ = accept(result.init)) initializers.unshift(_);
3905
- }
3906
- else if (_ = accept(result)) {
3907
- if (kind === "field") initializers.unshift(_);
3908
- else descriptor[key] = _;
3909
- }
3910
- }
3911
- if (target) Object.defineProperty(target, contextIn.name, descriptor);
3912
- done = true;
3913
- };
3914
-
3915
- function __runInitializers(thisArg, initializers, value) {
3916
- var useValue = arguments.length > 2;
3917
- for (var i = 0; i < initializers.length; i++) {
3918
- value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
3919
- }
3920
- return useValue ? value : void 0;
3921
- };
3922
-
3923
- function __propKey(x) {
3924
- return typeof x === "symbol" ? x : "".concat(x);
3925
- };
3926
-
3927
- function __setFunctionName(f, name, prefix) {
3928
- if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
3929
- return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
3930
- };
3931
-
3932
- function __metadata(metadataKey, metadataValue) {
3933
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
3934
- }
3935
-
3936
- function __awaiter(thisArg, _arguments, P, generator) {
3937
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3938
- return new (P || (P = Promise))(function (resolve, reject) {
3939
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
3940
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
3941
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
3942
- step((generator = generator.apply(thisArg, _arguments || [])).next());
3943
- });
3944
- }
3945
-
3946
- function __generator(thisArg, body) {
3947
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
3948
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
3949
- function verb(n) { return function (v) { return step([n, v]); }; }
3950
- function step(op) {
3951
- if (f) throw new TypeError("Generator is already executing.");
3952
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
3953
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
3954
- if (y = 0, t) op = [op[0] & 2, t.value];
3955
- switch (op[0]) {
3956
- case 0: case 1: t = op; break;
3957
- case 4: _.label++; return { value: op[1], done: false };
3958
- case 5: _.label++; y = op[1]; op = [0]; continue;
3959
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
3960
- default:
3961
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
3962
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
3963
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
3964
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
3965
- if (t[2]) _.ops.pop();
3966
- _.trys.pop(); continue;
3967
- }
3968
- op = body.call(thisArg, _);
3969
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
3970
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
3971
- }
3972
- }
3973
-
3974
- var __createBinding = Object.create ? (function(o, m, k, k2) {
3975
- if (k2 === undefined) k2 = k;
3976
- var desc = Object.getOwnPropertyDescriptor(m, k);
3977
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
3978
- desc = { enumerable: true, get: function() { return m[k]; } };
3979
- }
3980
- Object.defineProperty(o, k2, desc);
3981
- }) : (function(o, m, k, k2) {
3982
- if (k2 === undefined) k2 = k;
3983
- o[k2] = m[k];
3984
- });
3985
-
3986
- function __exportStar(m, o) {
3987
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
3988
- }
3989
-
3990
- function __values(o) {
3991
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
3992
- if (m) return m.call(o);
3993
- if (o && typeof o.length === "number") return {
3994
- next: function () {
3995
- if (o && i >= o.length) o = void 0;
3996
- return { value: o && o[i++], done: !o };
3997
- }
3998
- };
3999
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
4000
- }
4001
-
4002
- function __read(o, n) {
4003
- var m = typeof Symbol === "function" && o[Symbol.iterator];
4004
- if (!m) return o;
4005
- var i = m.call(o), r, ar = [], e;
4006
- try {
4007
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
4008
- }
4009
- catch (error) { e = { error: error }; }
4010
- finally {
4011
- try {
4012
- if (r && !r.done && (m = i["return"])) m.call(i);
4013
- }
4014
- finally { if (e) throw e.error; }
4015
- }
4016
- return ar;
4017
- }
4018
-
4019
- /** @deprecated */
4020
- function __spread() {
4021
- for (var ar = [], i = 0; i < arguments.length; i++)
4022
- ar = ar.concat(__read(arguments[i]));
4023
- return ar;
4024
- }
4025
-
4026
- /** @deprecated */
4027
- function __spreadArrays() {
4028
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
4029
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
4030
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
4031
- r[k] = a[j];
4032
- return r;
4033
- }
4034
-
4035
- function __spreadArray(to, from, pack) {
4036
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4037
- if (ar || !(i in from)) {
4038
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
4039
- ar[i] = from[i];
4040
- }
4041
- }
4042
- return to.concat(ar || Array.prototype.slice.call(from));
4043
- }
4044
-
4045
- function __await(v) {
4046
- return this instanceof __await ? (this.v = v, this) : new __await(v);
4047
- }
4048
-
4049
- function __asyncGenerator(thisArg, _arguments, generator) {
4050
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
4051
- var g = generator.apply(thisArg, _arguments || []), i, q = [];
4052
- return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
4053
- function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
4054
- function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
4055
- function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
4056
- function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
4057
- function fulfill(value) { resume("next", value); }
4058
- function reject(value) { resume("throw", value); }
4059
- function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
4060
- }
4061
-
4062
- function __asyncDelegator(o) {
4063
- var i, p;
4064
- return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
4065
- function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }
4066
- }
4067
-
4068
- function __asyncValues(o) {
4069
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
4070
- var m = o[Symbol.asyncIterator], i;
4071
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
4072
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
4073
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
4074
- }
4075
-
4076
- function __makeTemplateObject(cooked, raw) {
4077
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4078
- return cooked;
4079
- };
4080
-
4081
- var __setModuleDefault = Object.create ? (function(o, v) {
4082
- Object.defineProperty(o, "default", { enumerable: true, value: v });
4083
- }) : function(o, v) {
4084
- o["default"] = v;
4085
- };
4086
-
4087
- var ownKeys = function(o) {
4088
- ownKeys = Object.getOwnPropertyNames || function (o) {
4089
- var ar = [];
4090
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
4091
- return ar;
4092
- };
4093
- return ownKeys(o);
4094
- };
4095
-
4096
- function __importStar(mod) {
4097
- if (mod && mod.__esModule) return mod;
4098
- var result = {};
4099
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
4100
- __setModuleDefault(result, mod);
4101
- return result;
4102
- }
4103
-
4104
- function __importDefault(mod) {
4105
- return (mod && mod.__esModule) ? mod : { default: mod };
4106
- }
4107
-
4108
- function __classPrivateFieldGet(receiver, state, kind, f) {
4109
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4110
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4111
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
4112
- }
4113
-
4114
- function __classPrivateFieldSet(receiver, state, value, kind, f) {
4115
- if (kind === "m") throw new TypeError("Private method is not writable");
4116
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4117
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
4118
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
4119
- }
4120
-
4121
- function __classPrivateFieldIn(state, receiver) {
4122
- if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object");
4123
- return typeof state === "function" ? receiver === state : state.has(receiver);
4124
- }
4125
-
4126
- function __addDisposableResource(env, value, async) {
4127
- if (value !== null && value !== void 0) {
4128
- if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
4129
- var dispose, inner;
4130
- if (async) {
4131
- if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
4132
- dispose = value[Symbol.asyncDispose];
4133
- }
4134
- if (dispose === void 0) {
4135
- if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
4136
- dispose = value[Symbol.dispose];
4137
- if (async) inner = dispose;
4138
- }
4139
- if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
4140
- if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
4141
- env.stack.push({ value: value, dispose: dispose, async: async });
4142
- }
4143
- else if (async) {
4144
- env.stack.push({ async: true });
4145
- }
4146
- return value;
4147
- }
4148
-
4149
- var _SuppressedError = (/* unused pure expression or super */ null && (typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
4150
- var e = new Error(message);
4151
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
4152
- }));
4153
-
4154
- function __disposeResources(env) {
4155
- function fail(e) {
4156
- env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
4157
- env.hasError = true;
4158
- }
4159
- var r, s = 0;
4160
- function next() {
4161
- while (r = env.stack.pop()) {
4162
- try {
4163
- if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
4164
- if (r.dispose) {
4165
- var result = r.dispose.call(r.value);
4166
- if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
4167
- }
4168
- else s |= 1;
4169
- }
4170
- catch (e) {
4171
- fail(e);
4172
- }
4173
- }
4174
- if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
4175
- if (env.hasError) throw env.error;
4176
- }
4177
- return next();
4178
- }
4179
-
4180
- function __rewriteRelativeImportExtension(path, preserveJsx) {
4181
- if (typeof path === "string" && /^\.\.?\//.test(path)) {
4182
- return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
4183
- return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
4184
- });
4185
- }
4186
- return path;
4187
- }
4188
-
4189
- /* harmony default export */ const tslib_es6 = ((/* unused pure expression or super */ null && ({
4190
- __extends,
4191
- __assign,
4192
- __rest,
4193
- __decorate,
4194
- __param,
4195
- __esDecorate,
4196
- __runInitializers,
4197
- __propKey,
4198
- __setFunctionName,
4199
- __metadata,
4200
- __awaiter,
4201
- __generator,
4202
- __createBinding,
4203
- __exportStar,
4204
- __values,
4205
- __read,
4206
- __spread,
4207
- __spreadArrays,
4208
- __spreadArray,
4209
- __await,
4210
- __asyncGenerator,
4211
- __asyncDelegator,
4212
- __asyncValues,
4213
- __makeTemplateObject,
4214
- __importStar,
4215
- __importDefault,
4216
- __classPrivateFieldGet,
4217
- __classPrivateFieldSet,
4218
- __classPrivateFieldIn,
4219
- __addDisposableResource,
4220
- __disposeResources,
4221
- __rewriteRelativeImportExtension,
4222
- })));
4223
-
4224
- // EXTERNAL MODULE: ./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
4225
- var hoist_non_react_statics_cjs = __webpack_require__(4146);
4226
- ;// ./node_modules/react-intl/lib/src/components/injectIntl.js
4227
- /* unused harmony import specifier */ var injectIntl_assign;
4228
- /* unused harmony import specifier */ var React;
4229
- /* unused harmony import specifier */ var hoistNonReactStatics;
4230
- /* unused harmony import specifier */ var invariantIntlContext;
4231
-
4232
-
4233
-
4234
-
4235
- function getDisplayName(Component) {
4236
- return Component.displayName || Component.name || 'Component';
4237
- }
4238
- // This is primarily dealing with packaging systems where multiple copies of react-intl
4239
- // might exist
4240
- var IntlContext = typeof window !== 'undefined' && !window.__REACT_INTL_BYPASS_GLOBAL_CONTEXT__
4241
- ? window.__REACT_INTL_CONTEXT__ ||
4242
- (window.__REACT_INTL_CONTEXT__ = external_react_.createContext(null))
4243
- : external_react_.createContext(null);
4244
- var IntlConsumer = IntlContext.Consumer, IntlProvider = IntlContext.Provider;
4245
- var Provider = (/* unused pure expression or super */ null && (IntlProvider));
4246
- var Context = IntlContext;
4247
- function injectIntl(WrappedComponent, options) {
4248
- var _a = options || {}, _b = _a.intlPropName, intlPropName = _b === void 0 ? 'intl' : _b, _c = _a.forwardRef, forwardRef = _c === void 0 ? false : _c, _d = _a.enforceContext, enforceContext = _d === void 0 ? true : _d;
4249
- var WithIntl = function (props) { return (React.createElement(IntlConsumer, null, function (intl) {
4250
- var _a;
4251
- if (enforceContext) {
4252
- invariantIntlContext(intl);
4253
- }
4254
- var intlProp = (_a = {}, _a[intlPropName] = intl, _a);
4255
- return (React.createElement(WrappedComponent, injectIntl_assign({}, props, intlProp, { ref: forwardRef ? props.forwardedRef : null })));
4256
- })); };
4257
- WithIntl.displayName = "injectIntl(".concat(getDisplayName(WrappedComponent), ")");
4258
- WithIntl.WrappedComponent = WrappedComponent;
4259
- if (forwardRef) {
4260
- return hoistNonReactStatics(React.forwardRef(function (props, ref) { return (React.createElement(WithIntl, injectIntl_assign({}, props, { forwardedRef: ref }))); }), WrappedComponent);
4261
- }
4262
- return hoistNonReactStatics(WithIntl, WrappedComponent);
4263
- }
4264
-
4265
- ;// ./node_modules/@formatjs/ecma402-abstract/lib/utils.js
4266
- /**
4267
- * Cannot do Math.log(x) / Math.log(10) bc if IEEE floating point issue
4268
- * @param x number
4269
- */
4270
- function getMagnitude(x) {
4271
- // Cannot count string length via Number.toString because it may use scientific notation
4272
- // for very small or very large numbers.
4273
- return Math.floor(Math.log(x) * Math.LOG10E);
4274
- }
4275
- function repeat(s, times) {
4276
- if (typeof s.repeat === 'function') {
4277
- return s.repeat(times);
4278
- }
4279
- var arr = new Array(times);
4280
- for (var i = 0; i < arr.length; i++) {
4281
- arr[i] = s;
4282
- }
4283
- return arr.join('');
4284
- }
4285
- function setInternalSlot(map, pl, field, value) {
4286
- if (!map.get(pl)) {
4287
- map.set(pl, Object.create(null));
4288
- }
4289
- var slots = map.get(pl);
4290
- slots[field] = value;
4291
- }
4292
- function setMultiInternalSlots(map, pl, props) {
4293
- for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {
4294
- var k = _a[_i];
4295
- setInternalSlot(map, pl, k, props[k]);
4296
- }
4297
- }
4298
- function getInternalSlot(map, pl, field) {
4299
- return getMultiInternalSlots(map, pl, field)[field];
4300
- }
4301
- function getMultiInternalSlots(map, pl) {
4302
- var fields = [];
4303
- for (var _i = 2; _i < arguments.length; _i++) {
4304
- fields[_i - 2] = arguments[_i];
4305
- }
4306
- var slots = map.get(pl);
4307
- if (!slots) {
4308
- throw new TypeError("".concat(pl, " InternalSlot has not been initialized"));
4309
- }
4310
- return fields.reduce(function (all, f) {
4311
- all[f] = slots[f];
4312
- return all;
4313
- }, Object.create(null));
4314
- }
4315
- function isLiteralPart(patternPart) {
4316
- return patternPart.type === 'literal';
4317
- }
4318
- /*
4319
- 17 ECMAScript Standard Built-in Objects:
4320
- Every built-in Function object, including constructors, that is not
4321
- identified as an anonymous function has a name property whose value
4322
- is a String.
4323
-
4324
- Unless otherwise specified, the name property of a built-in Function
4325
- object, if it exists, has the attributes { [[Writable]]: false,
4326
- [[Enumerable]]: false, [[Configurable]]: true }.
4327
- */
4328
- function defineProperty(target, name, _a) {
4329
- var value = _a.value;
4330
- Object.defineProperty(target, name, {
4331
- configurable: true,
4332
- enumerable: false,
4333
- writable: true,
4334
- value: value,
4335
- });
4336
- }
4337
- /**
4338
- * 7.3.5 CreateDataProperty
4339
- * @param target
4340
- * @param name
4341
- * @param value
4342
- */
4343
- function createDataProperty(target, name, value) {
4344
- Object.defineProperty(target, name, {
4345
- configurable: true,
4346
- enumerable: true,
4347
- writable: true,
4348
- value: value,
4349
- });
4350
- }
4351
- var UNICODE_EXTENSION_SEQUENCE_REGEX = /-u(?:-[0-9a-z]{2,8})+/gi;
4352
- function invariant(condition, message, Err) {
4353
- if (Err === void 0) { Err = Error; }
4354
- if (!condition) {
4355
- throw new Err(message);
4356
- }
4357
- }
4358
-
4359
- ;// ./node_modules/@formatjs/fast-memoize/lib/index.js
4360
- //
4361
- // Main
4362
- //
4363
- function memoize(fn, options) {
4364
- var cache = options && options.cache ? options.cache : cacheDefault;
4365
- var serializer = options && options.serializer ? options.serializer : serializerDefault;
4366
- var strategy = options && options.strategy ? options.strategy : strategyDefault;
4367
- return strategy(fn, {
4368
- cache: cache,
4369
- serializer: serializer,
4370
- });
4371
- }
4372
- //
4373
- // Strategy
4374
- //
4375
- function isPrimitive(value) {
4376
- return (value == null || typeof value === 'number' || typeof value === 'boolean'); // || typeof value === "string" 'unsafe' primitive for our needs
4377
- }
4378
- function monadic(fn, cache, serializer, arg) {
4379
- var cacheKey = isPrimitive(arg) ? arg : serializer(arg);
4380
- var computedValue = cache.get(cacheKey);
4381
- if (typeof computedValue === 'undefined') {
4382
- computedValue = fn.call(this, arg);
4383
- cache.set(cacheKey, computedValue);
4384
- }
4385
- return computedValue;
4386
- }
4387
- function variadic(fn, cache, serializer) {
4388
- var args = Array.prototype.slice.call(arguments, 3);
4389
- var cacheKey = serializer(args);
4390
- var computedValue = cache.get(cacheKey);
4391
- if (typeof computedValue === 'undefined') {
4392
- computedValue = fn.apply(this, args);
4393
- cache.set(cacheKey, computedValue);
4394
- }
4395
- return computedValue;
4396
- }
4397
- function assemble(fn, context, strategy, cache, serialize) {
4398
- return strategy.bind(context, fn, cache, serialize);
4399
- }
4400
- function strategyDefault(fn, options) {
4401
- var strategy = fn.length === 1 ? monadic : variadic;
4402
- return assemble(fn, this, strategy, options.cache.create(), options.serializer);
4403
- }
4404
- function strategyVariadic(fn, options) {
4405
- return assemble(fn, this, variadic, options.cache.create(), options.serializer);
4406
- }
4407
- function strategyMonadic(fn, options) {
4408
- return assemble(fn, this, monadic, options.cache.create(), options.serializer);
4409
- }
4410
- //
4411
- // Serializer
4412
- //
4413
- var serializerDefault = function () {
4414
- return JSON.stringify(arguments);
4415
- };
4416
- //
4417
- // Cache
4418
- //
4419
- function ObjectWithoutPrototypeCache() {
4420
- this.cache = Object.create(null);
4421
- }
4422
- ObjectWithoutPrototypeCache.prototype.get = function (key) {
4423
- return this.cache[key];
4424
- };
4425
- ObjectWithoutPrototypeCache.prototype.set = function (key, value) {
4426
- this.cache[key] = value;
4427
- };
4428
- var cacheDefault = (/* unused pure expression or super */ null && ({
4429
- create: function create() {
4430
- // @ts-ignore
4431
- return new ObjectWithoutPrototypeCache();
4432
- },
4433
- }));
4434
- var strategies = (/* unused pure expression or super */ null && ({
4435
- variadic: strategyVariadic,
4436
- monadic: strategyMonadic,
4437
- }));
4438
-
4439
- ;// ./node_modules/@formatjs/intl/lib/src/utils.js
4440
- /* unused harmony import specifier */ var utils_spreadArray;
4441
- /* unused harmony import specifier */ var utils_assign;
4442
- /* unused harmony import specifier */ var IntlMessageFormat;
4443
- /* unused harmony import specifier */ var utils_memoize;
4444
- /* unused harmony import specifier */ var utils_strategies;
4445
- /* unused harmony import specifier */ var UnsupportedFormatterError;
4446
-
4447
-
4448
-
4449
-
4450
- function filterProps(props, allowlist, defaults) {
4451
- if (defaults === void 0) { defaults = {}; }
4452
- return allowlist.reduce(function (filtered, name) {
4453
- if (name in props) {
4454
- filtered[name] = props[name];
4455
- }
4456
- else if (name in defaults) {
4457
- filtered[name] = defaults[name];
4458
- }
4459
- return filtered;
4460
- }, {});
4461
- }
4462
- var defaultErrorHandler = function (error) {
4463
- // @ts-ignore just so we don't need to declare dep on @types/node
4464
- if (false) // removed by dead control flow
4465
- {}
4466
- };
4467
- var defaultWarnHandler = function (warning) {
4468
- // @ts-ignore just so we don't need to declare dep on @types/node
4469
- if (false) // removed by dead control flow
4470
- {}
4471
- };
4472
- var DEFAULT_INTL_CONFIG = {
4473
- formats: {},
4474
- messages: {},
4475
- timeZone: undefined,
4476
- defaultLocale: 'en',
4477
- defaultFormats: {},
4478
- fallbackOnEmptyString: true,
4479
- onError: defaultErrorHandler,
4480
- onWarn: defaultWarnHandler,
4481
- };
4482
- function createIntlCache() {
4483
- return {
4484
- dateTime: {},
4485
- number: {},
4486
- message: {},
4487
- relativeTime: {},
4488
- pluralRules: {},
4489
- list: {},
4490
- displayNames: {},
4491
- };
4492
- }
4493
- function createFastMemoizeCache(store) {
4494
- return {
4495
- create: function () {
4496
- return {
4497
- get: function (key) {
4498
- return store[key];
4499
- },
4500
- set: function (key, value) {
4501
- store[key] = value;
4502
- },
4503
- };
4504
- },
4505
- };
4506
- }
4507
- /**
4508
- * Create intl formatters and populate cache
4509
- * @param cache explicit cache to prevent leaking memory
4510
- */
4511
- function createFormatters(cache) {
4512
- if (cache === void 0) { cache = createIntlCache(); }
4513
- var RelativeTimeFormat = Intl.RelativeTimeFormat;
4514
- var ListFormat = Intl.ListFormat;
4515
- var DisplayNames = Intl.DisplayNames;
4516
- var getDateTimeFormat = utils_memoize(function () {
4517
- var _a;
4518
- var args = [];
4519
- for (var _i = 0; _i < arguments.length; _i++) {
4520
- args[_i] = arguments[_i];
4521
- }
4522
- return new ((_a = Intl.DateTimeFormat).bind.apply(_a, utils_spreadArray([void 0], args, false)))();
4523
- }, {
4524
- cache: createFastMemoizeCache(cache.dateTime),
4525
- strategy: utils_strategies.variadic,
4526
- });
4527
- var getNumberFormat = utils_memoize(function () {
4528
- var _a;
4529
- var args = [];
4530
- for (var _i = 0; _i < arguments.length; _i++) {
4531
- args[_i] = arguments[_i];
4532
- }
4533
- return new ((_a = Intl.NumberFormat).bind.apply(_a, utils_spreadArray([void 0], args, false)))();
4534
- }, {
4535
- cache: createFastMemoizeCache(cache.number),
4536
- strategy: utils_strategies.variadic,
4537
- });
4538
- var getPluralRules = utils_memoize(function () {
4539
- var _a;
4540
- var args = [];
4541
- for (var _i = 0; _i < arguments.length; _i++) {
4542
- args[_i] = arguments[_i];
4543
- }
4544
- return new ((_a = Intl.PluralRules).bind.apply(_a, utils_spreadArray([void 0], args, false)))();
4545
- }, {
4546
- cache: createFastMemoizeCache(cache.pluralRules),
4547
- strategy: utils_strategies.variadic,
4548
- });
4549
- return {
4550
- getDateTimeFormat: getDateTimeFormat,
4551
- getNumberFormat: getNumberFormat,
4552
- getMessageFormat: utils_memoize(function (message, locales, overrideFormats, opts) {
4553
- return new IntlMessageFormat(message, locales, overrideFormats, utils_assign({ formatters: {
4554
- getNumberFormat: getNumberFormat,
4555
- getDateTimeFormat: getDateTimeFormat,
4556
- getPluralRules: getPluralRules,
4557
- } }, (opts || {})));
4558
- }, {
4559
- cache: createFastMemoizeCache(cache.message),
4560
- strategy: utils_strategies.variadic,
4561
- }),
4562
- getRelativeTimeFormat: utils_memoize(function () {
4563
- var args = [];
4564
- for (var _i = 0; _i < arguments.length; _i++) {
4565
- args[_i] = arguments[_i];
4566
- }
4567
- return new (RelativeTimeFormat.bind.apply(RelativeTimeFormat, utils_spreadArray([void 0], args, false)))();
4568
- }, {
4569
- cache: createFastMemoizeCache(cache.relativeTime),
4570
- strategy: utils_strategies.variadic,
4571
- }),
4572
- getPluralRules: getPluralRules,
4573
- getListFormat: utils_memoize(function () {
4574
- var args = [];
4575
- for (var _i = 0; _i < arguments.length; _i++) {
4576
- args[_i] = arguments[_i];
4577
- }
4578
- return new (ListFormat.bind.apply(ListFormat, utils_spreadArray([void 0], args, false)))();
4579
- }, {
4580
- cache: createFastMemoizeCache(cache.list),
4581
- strategy: utils_strategies.variadic,
4582
- }),
4583
- getDisplayNames: utils_memoize(function () {
4584
- var args = [];
4585
- for (var _i = 0; _i < arguments.length; _i++) {
4586
- args[_i] = arguments[_i];
4587
- }
4588
- return new (DisplayNames.bind.apply(DisplayNames, utils_spreadArray([void 0], args, false)))();
4589
- }, {
4590
- cache: createFastMemoizeCache(cache.displayNames),
4591
- strategy: utils_strategies.variadic,
4592
- }),
4593
- };
4594
- }
4595
- function getNamedFormat(formats, type, name, onError) {
4596
- var formatType = formats && formats[type];
4597
- var format;
4598
- if (formatType) {
4599
- format = formatType[name];
4600
- }
4601
- if (format) {
4602
- return format;
4603
- }
4604
- onError(new UnsupportedFormatterError("No ".concat(type, " format named: ").concat(name)));
4605
- }
4606
-
4607
- ;// ./node_modules/react-intl/lib/src/utils.js
4608
- /* unused harmony import specifier */ var utils_React;
4609
-
4610
-
4611
-
4612
-
4613
- function utils_invariantIntlContext(intl) {
4614
- invariant(intl, '[React Intl] Could not find required `intl` object. ' +
4615
- '<IntlProvider> needs to exist in the component ancestry.');
4616
- }
4617
- var utils_DEFAULT_INTL_CONFIG = __assign(__assign({}, DEFAULT_INTL_CONFIG), { textComponent: external_react_.Fragment });
4618
- /**
4619
- * Takes a `formatXMLElementFn`, and composes it in function, which passes
4620
- * argument `parts` through, assigning unique key to each part, to prevent
4621
- * "Each child in a list should have a unique "key"" React error.
4622
- * @param formatXMLElementFn
4623
- */
4624
- function assignUniqueKeysToParts(formatXMLElementFn) {
4625
- return function (parts) {
4626
- // eslint-disable-next-line prefer-rest-params
4627
- return formatXMLElementFn(utils_React.Children.toArray(parts));
4628
- };
4629
- }
4630
- function shallowEqual(objA, objB) {
4631
- if (objA === objB) {
4632
- return true;
4633
- }
4634
- if (!objA || !objB) {
4635
- return false;
4636
- }
4637
- var aKeys = Object.keys(objA);
4638
- var bKeys = Object.keys(objB);
4639
- var len = aKeys.length;
4640
- if (bKeys.length !== len) {
4641
- return false;
4642
- }
4643
- for (var i = 0; i < len; i++) {
4644
- var key = aKeys[i];
4645
- if (objA[key] !== objB[key] ||
4646
- !Object.prototype.hasOwnProperty.call(objB, key)) {
4647
- return false;
4648
- }
4649
- }
4650
- return true;
4651
- }
4652
-
4653
- ;// ./node_modules/react-intl/lib/src/components/useIntl.js
4654
-
4655
-
4656
-
4657
- function useIntl() {
4658
- var intl = external_react_.useContext(Context);
4659
- utils_invariantIntlContext(intl);
4660
- return intl;
4661
- }
4662
-
4663
- ;// ./node_modules/react-intl/lib/src/components/createFormattedComponent.js
4664
- /* unused harmony import specifier */ var createFormattedComponent_rest;
4665
- /* unused harmony import specifier */ var createFormattedComponent_useIntl;
4666
-
4667
-
4668
-
4669
- var DisplayName;
4670
- (function (DisplayName) {
4671
- DisplayName["formatDate"] = "FormattedDate";
4672
- DisplayName["formatTime"] = "FormattedTime";
4673
- DisplayName["formatNumber"] = "FormattedNumber";
4674
- DisplayName["formatList"] = "FormattedList";
4675
- // Note that this DisplayName is the locale display name, not to be confused with
4676
- // the name of the enum, which is for React component display name in dev tools.
4677
- DisplayName["formatDisplayName"] = "FormattedDisplayName";
4678
- })(DisplayName || (DisplayName = {}));
4679
- var DisplayNameParts;
4680
- (function (DisplayNameParts) {
4681
- DisplayNameParts["formatDate"] = "FormattedDateParts";
4682
- DisplayNameParts["formatTime"] = "FormattedTimeParts";
4683
- DisplayNameParts["formatNumber"] = "FormattedNumberParts";
4684
- DisplayNameParts["formatList"] = "FormattedListParts";
4685
- })(DisplayNameParts || (DisplayNameParts = {}));
4686
- var FormattedNumberParts = function (props) {
4687
- var intl = useIntl();
4688
- var value = props.value, children = props.children, formatProps = __rest(props, ["value", "children"]);
4689
- return children(intl.formatNumberToParts(value, formatProps));
4690
- };
4691
- FormattedNumberParts.displayName = 'FormattedNumberParts';
4692
- var FormattedListParts = function (props) {
4693
- var intl = createFormattedComponent_useIntl();
4694
- var value = props.value, children = props.children, formatProps = createFormattedComponent_rest(props, ["value", "children"]);
4695
- return children(intl.formatListToParts(value, formatProps));
4696
- };
4697
- FormattedNumberParts.displayName = 'FormattedNumberParts';
4698
- function createFormattedDateTimePartsComponent(name) {
4699
- var ComponentParts = function (props) {
4700
- var intl = useIntl();
4701
- var value = props.value, children = props.children, formatProps = __rest(props, ["value", "children"]);
4702
- var date = typeof value === 'string' ? new Date(value || 0) : value;
4703
- var formattedParts = name === 'formatDate'
4704
- ? intl.formatDateToParts(date, formatProps)
4705
- : intl.formatTimeToParts(date, formatProps);
4706
- return children(formattedParts);
4707
- };
4708
- ComponentParts.displayName = DisplayNameParts[name];
4709
- return ComponentParts;
4710
- }
4711
- function createFormattedComponent(name) {
4712
- var Component = function (props) {
4713
- var intl = useIntl();
4714
- var value = props.value, children = props.children, formatProps = __rest(props
4715
- // TODO: fix TS type definition for localeMatcher upstream
4716
- , ["value", "children"]);
4717
- // TODO: fix TS type definition for localeMatcher upstream
4718
- var formattedValue = intl[name](value, formatProps);
4719
- if (typeof children === 'function') {
4720
- return children(formattedValue);
4721
- }
4722
- var Text = intl.textComponent || external_react_.Fragment;
4723
- return external_react_.createElement(Text, null, formattedValue);
4724
- };
4725
- Component.displayName = DisplayName[name];
4726
- return Component;
4727
- }
4728
-
4729
- ;// ./node_modules/react-intl/lib/index.js
4730
-
4731
-
4732
-
4733
-
4734
-
4735
-
4736
-
4737
-
4738
-
4739
-
4740
-
4741
- function defineMessages(msgs) {
4742
- return msgs;
4743
- }
4744
- function defineMessage(msg) {
4745
- return msg;
4746
- }
4747
- // IMPORTANT: Explicit here to prevent api-extractor from outputing `import('./src/types').CustomFormatConfig`
4748
- var FormattedDate = createFormattedComponent('formatDate');
4749
- var FormattedTime = createFormattedComponent('formatTime');
4750
- var FormattedNumber = createFormattedComponent('formatNumber');
4751
- var FormattedList = createFormattedComponent('formatList');
4752
- var FormattedDisplayName = createFormattedComponent('formatDisplayName');
4753
- var FormattedDateParts = createFormattedDateTimePartsComponent('formatDate');
4754
- var FormattedTimeParts = createFormattedDateTimePartsComponent('formatTime');
4755
-
3822
+ ;// external "react-intl"
4756
3823
 
4757
3824
  ;// ./node_modules/@box/readable-time/dist/esm/lib/messages.js
4758
- var messages=defineMessages({eventTime:{id:`groupSharedFeatures.readableTime.eventTime`,defaultMessage:`{time, date, medium}`},eventTimeToday:{id:`groupSharedFeatures.readableTime.eventTimeToday`,defaultMessage:`Today at {time, time, short}`},eventTimeYesterday:{id:`groupSharedFeatures.readableTime.eventTimeYesterday`,defaultMessage:`Yesterday at {time, time, short}`},eventTimeDate:{id:`groupSharedFeatures.readableTime.eventTimeDate`,defaultMessage:`{time, date, medium} at {time, time, short}`},eventTimeDateShort:{id:`groupSharedFeatures.readableTime.eventTimeDateShort`,defaultMessage:`{date} at {time, time, short}`},eventTimeWeekdayLong:{id:`groupSharedFeatures.readableTime.eventTimeWeekdayLong`,defaultMessage:`{weekday}, {time, date, medium}`}});
3825
+ var messages=__WEBPACK_EXTERNAL_MODULE_react_intl_934d3829_defineMessages__({eventTime:{id:`groupSharedFeatures.readableTime.eventTime`,defaultMessage:`{time, date, medium}`},eventTimeToday:{id:`groupSharedFeatures.readableTime.eventTimeToday`,defaultMessage:`Today at {time, time, short}`},eventTimeYesterday:{id:`groupSharedFeatures.readableTime.eventTimeYesterday`,defaultMessage:`Yesterday at {time, time, short}`},eventTimeDate:{id:`groupSharedFeatures.readableTime.eventTimeDate`,defaultMessage:`{time, date, medium} at {time, time, short}`},eventTimeDateShort:{id:`groupSharedFeatures.readableTime.eventTimeDateShort`,defaultMessage:`{date} at {time, time, short}`},eventTimeWeekdayLong:{id:`groupSharedFeatures.readableTime.eventTimeWeekdayLong`,defaultMessage:`{weekday}, {time, date, medium}`}});
4759
3826
  ;// ./node_modules/@box/readable-time/dist/esm/lib/get-readable-time.js
4760
3827
  function getReadableTime({intl,timestamp,allowFutureTimestamps=!0,alwaysShowTime=!1,showWeekday=!1,relativeThreshold=ONE_HOUR_MS,uppercase=!1}){let shouldUppercase=uppercase&&!nonUppercaseLocales.includes(intl.locale),relativeIfNewerThanTs=Date.now()-relativeThreshold,shouldShowYear=!isCurrentYear(timestamp);!allowFutureTimestamps&&timestamp>Date.now()&&(timestamp=relativeIfNewerThanTs);let dateMessage=messages.eventTime,date=null,weekday=null,output;if(isToday(timestamp))dateMessage=messages.eventTimeToday;else if(isYesterday(timestamp))dateMessage=messages.eventTimeYesterday;else if(showWeekday)dateMessage=messages.eventTimeWeekdayLong,weekday=intl.formatDate(timestamp,{weekday:`long`});else if(shouldShowYear&&alwaysShowTime)dateMessage=messages.eventTimeDate;else if(!shouldShowYear&&alwaysShowTime)dateMessage=messages.eventTimeDateShort,date=intl.formatDate(timestamp,{month:`short`,day:`numeric`});else if(!shouldShowYear&&!alwaysShowTime)return output=intl.formatDate(timestamp,{month:`short`,day:`numeric`}),shouldUppercase?output.toLocaleUpperCase(intl.locale):output;let values={time:timestamp,date,weekday};output=intl.formatMessage(dateMessage,values);let timeDiff=timestamp-Date.now();if(Math.abs(timeDiff)<=relativeThreshold){let{value,unit}=timeFromNow(timestamp);output=intl.formatRelativeTime(value,unit)}return shouldUppercase?output.toLocaleUpperCase(intl.locale):output}
4761
3828
  // EXTERNAL MODULE: external "react/jsx-runtime"
4762
3829
  var jsx_runtime_ = __webpack_require__(1178);
4763
3830
  ;// ./node_modules/@box/readable-time/dist/esm/lib/readable-time.js
4764
- function ReadableTime({timestamp,allowFutureTimestamps=!0,alwaysShowTime=!1,showWeekday=!1,relativeThreshold=ONE_HOUR_MS,uppercase=!1,textProps={}}){let intl=useIntl();return (0,jsx_runtime_.jsx)(blueprint_web_.Text,{...textProps,children:getReadableTime({intl,timestamp,allowFutureTimestamps,alwaysShowTime,showWeekday,relativeThreshold,uppercase})})}
3831
+ function ReadableTime({timestamp,allowFutureTimestamps=!0,alwaysShowTime=!1,showWeekday=!1,relativeThreshold=ONE_HOUR_MS,uppercase=!1,textProps={}}){let intl=__WEBPACK_EXTERNAL_MODULE_react_intl_934d3829_useIntl__();return (0,jsx_runtime_.jsx)(blueprint_web_.Text,{...textProps,children:getReadableTime({intl,timestamp,allowFutureTimestamps,alwaysShowTime,showWeekday,relativeThreshold,uppercase})})}
4765
3832
  // EXTERNAL MODULE: ./src/lib/viewers/archive/constants.js
4766
3833
  var constants = __webpack_require__(7955);
4767
3834
  ;// ./src/lib/viewers/archive/ArchiveTableV2.scss
@@ -5015,6 +4082,8 @@ __webpack_require__.d(__webpack_exports__, {
5015
4082
 
5016
4083
  // EXTERNAL MODULE: external "react"
5017
4084
  var external_react_ = __webpack_require__(1649);
4085
+ // EXTERNAL MODULE: external "react-dom"
4086
+ var external_react_dom_ = __webpack_require__(7516);
5018
4087
  // EXTERNAL MODULE: external "react-dom/client"
5019
4088
  var client_ = __webpack_require__(6662);
5020
4089
  // EXTERNAL MODULE: ./node_modules/prop-types/index.js
@@ -6430,6 +5499,7 @@ function BoxArchive_toPrimitive(t, r) { if ("object" != typeof t || !t) return t
6430
5499
 
6431
5500
 
6432
5501
 
5502
+
6433
5503
  class BoxArchive {
6434
5504
  /**
6435
5505
  * [constructor]
@@ -6471,7 +5541,7 @@ class BoxArchive {
6471
5541
  * @return {Promise<Object>} archive v2 module: ArchiveTableV2, BlueprintProviders, BreadcrumbsV2, SearchBarV2
6472
5542
  */
6473
5543
  importV2() {
6474
- return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 505));
5544
+ return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 1337));
6475
5545
  }
6476
5546
 
6477
5547
  /**
@@ -6488,9 +5558,11 @@ class BoxArchive {
6488
5558
  resin: this.resin,
6489
5559
  v2: v2
6490
5560
  });
6491
- this.root.render(v2 ? /*#__PURE__*/external_react_["default"].createElement(v2.BlueprintProviders, {
6492
- container: this.archiveEl
6493
- }, explorer) : explorer);
5561
+ (0,external_react_dom_.flushSync)(() => {
5562
+ this.root.render(v2 ? /*#__PURE__*/external_react_["default"].createElement(v2.BlueprintProviders, {
5563
+ container: this.archiveEl
5564
+ }, explorer) : explorer);
5565
+ });
6494
5566
  }
6495
5567
 
6496
5568
  /**
@@ -7306,7 +6378,7 @@ function MediaSettingsMenuSubtitles({
7306
6378
 
7307
6379
  /***/ },
7308
6380
 
7309
- /***/ 4190
6381
+ /***/ 3519
7310
6382
  (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
7311
6383
 
7312
6384
 
@@ -7328,22 +6400,8 @@ var Medium_ = __webpack_require__(9747);
7328
6400
  var tokens_ = __webpack_require__(8380);
7329
6401
  // EXTERNAL MODULE: ./src/lib/viewers/controls/settings/SettingsRadioItem.tsx + 1 modules
7330
6402
  var SettingsRadioItem = __webpack_require__(8394);
7331
- ;// ./src/lib/viewers/controls/tooltip/MenuTriggerTooltipV2.tsx
7332
-
7333
-
7334
- // An open tooltip sits above the menu in the dismiss stack, so it would cover the menu and take its first Escape.
7335
- function MenuTriggerTooltipV2({
7336
- children,
7337
- content,
7338
- isMenuOpen
7339
- }) {
7340
- const [isOpen, setIsOpen] = external_react_["default"].useState(false);
7341
- return /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Tooltip, {
7342
- content: content,
7343
- onOpenChange: setIsOpen,
7344
- open: isOpen && !isMenuOpen
7345
- }, children);
7346
- }
6403
+ // EXTERNAL MODULE: ./src/lib/viewers/controls/tooltip/MenuTriggerTooltipV2.tsx
6404
+ var MenuTriggerTooltipV2 = __webpack_require__(6014);
7347
6405
  ;// ./src/lib/viewers/controls/settings/SettingsToggleV2.scss
7348
6406
  // extracted by mini-css-extract-plugin
7349
6407
 
@@ -7376,7 +6434,7 @@ function SettingsToggleV2(props, ref) {
7376
6434
  // IconButton renders only its icon, so the badge sits beside the button in a positioned wrapper.
7377
6435
  return /*#__PURE__*/external_react_["default"].createElement("span", {
7378
6436
  className: "bp-SettingsToggleV2"
7379
- }, /*#__PURE__*/external_react_["default"].createElement(MenuTriggerTooltipV2, {
6437
+ }, /*#__PURE__*/external_react_["default"].createElement(MenuTriggerTooltipV2/* default */.A, {
7380
6438
  content: label,
7381
6439
  isMenuOpen: isMenuOpen
7382
6440
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.IconButton, _extends({
@@ -7394,7 +6452,7 @@ function SettingsToggleV2(props, ref) {
7394
6452
  label
7395
6453
  } = props,
7396
6454
  rest = _objectWithoutProperties(props, _excluded2);
7397
- return /*#__PURE__*/external_react_["default"].createElement(MenuTriggerTooltipV2, {
6455
+ return /*#__PURE__*/external_react_["default"].createElement(MenuTriggerTooltipV2/* default */.A, {
7398
6456
  content: label,
7399
6457
  isMenuOpen: isMenuOpen
7400
6458
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Button, _extends({
@@ -7410,20 +6468,8 @@ function SettingsToggleV2(props, ref) {
7410
6468
  }, badge))));
7411
6469
  }
7412
6470
  /* harmony default export */ const settings_SettingsToggleV2 = (/*#__PURE__*/external_react_["default"].forwardRef(SettingsToggleV2));
7413
- ;// ./src/lib/viewers/controls/settings/stopMenuKeyPropagation.ts
7414
- // For a menu's onKeyDown, so its keys don't reach preview's file navigation on document or the host's hotkeys
7415
- // (e.g. preview-client's HotkeyLayer on window). Escape must still reach Radix's document listener to close the menu.
7416
- function stopKeyPropagation(event) {
7417
- if (event.key !== 'Escape') {
7418
- event.stopPropagation();
7419
- }
7420
- }
7421
-
7422
- // For a Radix layer's onEscapeKeyDown, which runs on document after the layer has closed, so the host's Escape
7423
- // hotkey doesn't close the whole preview too.
7424
- function stopEscapePropagation(event) {
7425
- event.stopPropagation();
7426
- }
6471
+ // EXTERNAL MODULE: ./src/lib/viewers/controls/settings/stopMenuKeyPropagation.ts
6472
+ var stopMenuKeyPropagation = __webpack_require__(9646);
7427
6473
  // EXTERNAL MODULE: ./src/lib/viewers/controls/media/MediaSettingsAudioTracks.tsx
7428
6474
  var MediaSettingsAudioTracks = __webpack_require__(9306);
7429
6475
  // EXTERNAL MODULE: ./src/lib/viewers/controls/media/MediaSettingsMenuGuides.tsx
@@ -7596,10 +6642,10 @@ function MediaSettingsV2({
7596
6642
  event.preventDefault();
7597
6643
  closeSubMenu();
7598
6644
  }
7599
- stopKeyPropagation(event);
6645
+ (0,stopMenuKeyPropagation/* stopKeyPropagation */.a)(event);
7600
6646
  };
7601
6647
  const handleEscapeKeyDown = event => {
7602
- stopEscapePropagation(event);
6648
+ (0,stopMenuKeyPropagation/* stopEscapePropagation */.s)(event);
7603
6649
  if (activeSubMenu) {
7604
6650
  event.preventDefault();
7605
6651
  closeSubMenu();
@@ -10027,6 +9073,29 @@ function SettingsRadioItem(props, ref) {
10027
9073
 
10028
9074
  /***/ },
10029
9075
 
9076
+ /***/ 9646
9077
+ (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
9078
+
9079
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9080
+ /* harmony export */ a: () => (/* binding */ stopKeyPropagation),
9081
+ /* harmony export */ s: () => (/* binding */ stopEscapePropagation)
9082
+ /* harmony export */ });
9083
+ // For a menu's onKeyDown, so its keys don't reach preview's file navigation on document or the host's hotkeys
9084
+ // (e.g. preview-client's HotkeyLayer on window). Escape must still reach Radix's document listener to close the menu.
9085
+ function stopKeyPropagation(event) {
9086
+ if (event.key !== 'Escape') {
9087
+ event.stopPropagation();
9088
+ }
9089
+ }
9090
+
9091
+ // For a Radix layer's onEscapeKeyDown, which runs on document after the layer has closed, so the host's Escape
9092
+ // hotkey doesn't close the whole preview too.
9093
+ function stopEscapePropagation(event) {
9094
+ event.stopPropagation();
9095
+ }
9096
+
9097
+ /***/ },
9098
+
10030
9099
  /***/ 4937
10031
9100
  (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
10032
9101
 
@@ -10209,6 +9278,32 @@ function SliderControl(_ref) {
10209
9278
 
10210
9279
  /***/ },
10211
9280
 
9281
+ /***/ 6014
9282
+ (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
9283
+
9284
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9285
+ /* harmony export */ A: () => (/* binding */ MenuTriggerTooltipV2)
9286
+ /* harmony export */ });
9287
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1649);
9288
+ /* harmony import */ var _box_blueprint_web__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8912);
9289
+
9290
+
9291
+ // An open tooltip sits above the menu in the dismiss stack, so it would cover the menu and take its first Escape.
9292
+ function MenuTriggerTooltipV2({
9293
+ children,
9294
+ content,
9295
+ isMenuOpen
9296
+ }) {
9297
+ const [isOpen, setIsOpen] = react__WEBPACK_IMPORTED_MODULE_0__["default"].useState(false);
9298
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__["default"].createElement(_box_blueprint_web__WEBPACK_IMPORTED_MODULE_1__.Tooltip, {
9299
+ content: content,
9300
+ onOpenChange: setIsOpen,
9301
+ open: isOpen && !isMenuOpen
9302
+ }, children);
9303
+ }
9304
+
9305
+ /***/ },
9306
+
10212
9307
  /***/ 9974
10213
9308
  (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
10214
9309
 
@@ -10243,8 +9338,8 @@ var blueprint_web_ = __webpack_require__(8912);
10243
9338
  var MediaLoadingIndicator = __webpack_require__(4301);
10244
9339
  // EXTERNAL MODULE: ./src/lib/viewers/controls/media/MediaSettings.tsx + 2 modules
10245
9340
  var MediaSettings = __webpack_require__(112);
10246
- // EXTERNAL MODULE: ./src/lib/viewers/controls/media/MediaSettingsV2.tsx + 5 modules
10247
- var MediaSettingsV2 = __webpack_require__(4190);
9341
+ // EXTERNAL MODULE: ./src/lib/viewers/controls/media/MediaSettingsV2.tsx + 3 modules
9342
+ var MediaSettingsV2 = __webpack_require__(3519);
10248
9343
  // EXTERNAL MODULE: ./src/lib/viewers/controls/media/PlayOverlayIcon.tsx
10249
9344
  var PlayOverlayIcon = __webpack_require__(2048);
10250
9345
  // EXTERNAL MODULE: ./src/lib/viewers/controls/media/PlayPauseToggle.tsx + 1 modules
@@ -11645,7 +10740,8 @@ const WaveformRangeSelection = /*#__PURE__*/(0,external_react_.forwardRef)(funct
11645
10740
  onPointerDown: stopRangeEvent,
11646
10741
  onPointerUp: stopRangeEvent
11647
10742
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Root, {
11648
- "aria-label": WaveformRangeSelection_('media_range_comment')
10743
+ "aria-label": WaveformRangeSelection_('media_range_comment'),
10744
+ colorScheme: "dark"
11649
10745
  }, showCommentButton && onDragCreate && /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Button, {
11650
10746
  "data-resin-target": "waveformRangeComment",
11651
10747
  "data-target-id": "Waveform-commentOnRange",
@@ -11657,7 +10753,8 @@ const WaveformRangeSelection = /*#__PURE__*/(0,external_react_.forwardRef)(funct
11657
10753
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Icon, {
11658
10754
  icon: Medium_.Comment
11659
10755
  }), /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Text, {
11660
- as: "span"
10756
+ as: "span",
10757
+ color: "textOnDarkDefault"
11661
10758
  }, WaveformRangeSelection_('media_range_comment'))), showCommentButton && showClearControl && /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Separator, null), showClearControl && onRangeClear && /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Tooltip, {
11662
10759
  content: WaveformRangeSelection_('media_range_clear')
11663
10760
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Button, {
@@ -13223,7 +12320,8 @@ function WaveformView({
13223
12320
  onPointerDown: event => event.stopPropagation(),
13224
12321
  onPointerUp: event => event.stopPropagation()
13225
12322
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Root, {
13226
- "aria-label": WaveformView_('media_range_comment')
12323
+ "aria-label": WaveformView_('media_range_comment'),
12324
+ colorScheme: "dark"
13227
12325
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Button, {
13228
12326
  "data-resin-target": "waveformPlayheadComment",
13229
12327
  "data-target-id": "Waveform-commentAtTime",
@@ -13235,7 +12333,8 @@ function WaveformView({
13235
12333
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Icon, {
13236
12334
  icon: Medium_.Comment
13237
12335
  }), /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Text, {
13238
- as: "span"
12336
+ as: "span",
12337
+ color: "textOnDarkDefault"
13239
12338
  }, WaveformView_('media_range_comment'))))), showPlayheadComment && !isBlueprintEnabled && /*#__PURE__*/external_react_["default"].createElement("button", {
13240
12339
  className: "bp-WaveformRange-comment bp-WaveformView-playheadComment",
13241
12340
  "data-resin-target": "waveformPlayheadComment",
@@ -16177,116 +15276,6 @@ function eventTargetAgnosticAddListener(emitter, name, listener, flags) {
16177
15276
  }
16178
15277
 
16179
15278
 
16180
- /***/ },
16181
-
16182
- /***/ 4146
16183
- (module, __unused_webpack_exports, __webpack_require__) {
16184
-
16185
-
16186
-
16187
- var reactIs = __webpack_require__(4363);
16188
-
16189
- /**
16190
- * Copyright 2015, Yahoo! Inc.
16191
- * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
16192
- */
16193
- var REACT_STATICS = {
16194
- childContextTypes: true,
16195
- contextType: true,
16196
- contextTypes: true,
16197
- defaultProps: true,
16198
- displayName: true,
16199
- getDefaultProps: true,
16200
- getDerivedStateFromError: true,
16201
- getDerivedStateFromProps: true,
16202
- mixins: true,
16203
- propTypes: true,
16204
- type: true
16205
- };
16206
- var KNOWN_STATICS = {
16207
- name: true,
16208
- length: true,
16209
- prototype: true,
16210
- caller: true,
16211
- callee: true,
16212
- arguments: true,
16213
- arity: true
16214
- };
16215
- var FORWARD_REF_STATICS = {
16216
- '$$typeof': true,
16217
- render: true,
16218
- defaultProps: true,
16219
- displayName: true,
16220
- propTypes: true
16221
- };
16222
- var MEMO_STATICS = {
16223
- '$$typeof': true,
16224
- compare: true,
16225
- defaultProps: true,
16226
- displayName: true,
16227
- propTypes: true,
16228
- type: true
16229
- };
16230
- var TYPE_STATICS = {};
16231
- TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
16232
- TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
16233
-
16234
- function getStatics(component) {
16235
- // React v16.11 and below
16236
- if (reactIs.isMemo(component)) {
16237
- return MEMO_STATICS;
16238
- } // React v16.12 and above
16239
-
16240
-
16241
- return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;
16242
- }
16243
-
16244
- var defineProperty = Object.defineProperty;
16245
- var getOwnPropertyNames = Object.getOwnPropertyNames;
16246
- var getOwnPropertySymbols = Object.getOwnPropertySymbols;
16247
- var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
16248
- var getPrototypeOf = Object.getPrototypeOf;
16249
- var objectPrototype = Object.prototype;
16250
- function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
16251
- if (typeof sourceComponent !== 'string') {
16252
- // don't hoist over string (html) components
16253
- if (objectPrototype) {
16254
- var inheritedComponent = getPrototypeOf(sourceComponent);
16255
-
16256
- if (inheritedComponent && inheritedComponent !== objectPrototype) {
16257
- hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
16258
- }
16259
- }
16260
-
16261
- var keys = getOwnPropertyNames(sourceComponent);
16262
-
16263
- if (getOwnPropertySymbols) {
16264
- keys = keys.concat(getOwnPropertySymbols(sourceComponent));
16265
- }
16266
-
16267
- var targetStatics = getStatics(targetComponent);
16268
- var sourceStatics = getStatics(sourceComponent);
16269
-
16270
- for (var i = 0; i < keys.length; ++i) {
16271
- var key = keys[i];
16272
-
16273
- if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
16274
- var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
16275
-
16276
- try {
16277
- // Avoid failures from read-only properties
16278
- defineProperty(targetComponent, key, descriptor);
16279
- } catch (e) {}
16280
- }
16281
- }
16282
- }
16283
-
16284
- return targetComponent;
16285
- }
16286
-
16287
- module.exports = hoistNonReactStatics;
16288
-
16289
-
16290
15279
  /***/ },
16291
15280
 
16292
15281
  /***/ 9890
@@ -22556,41 +21545,6 @@ var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
22556
21545
  module.exports = ReactPropTypesSecret;
22557
21546
 
22558
21547
 
22559
- /***/ },
22560
-
22561
- /***/ 2799
22562
- (__unused_webpack_module, exports) {
22563
-
22564
- /** @license React v16.13.1
22565
- * react-is.production.min.js
22566
- *
22567
- * Copyright (c) Facebook, Inc. and its affiliates.
22568
- *
22569
- * This source code is licensed under the MIT license found in the
22570
- * LICENSE file in the root directory of this source tree.
22571
- */
22572
-
22573
- var b="function"===typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?
22574
- Symbol.for("react.suspense_list"):60120,r=b?Symbol.for("react.memo"):60115,t=b?Symbol.for("react.lazy"):60116,v=b?Symbol.for("react.block"):60121,w=b?Symbol.for("react.fundamental"):60117,x=b?Symbol.for("react.responder"):60118,y=b?Symbol.for("react.scope"):60119;
22575
- function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;
22576
- exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return"object"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};
22577
- exports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};
22578
- exports.isValidElementType=function(a){return"string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||"object"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;
22579
-
22580
-
22581
- /***/ },
22582
-
22583
- /***/ 4363
22584
- (module, __unused_webpack_exports, __webpack_require__) {
22585
-
22586
-
22587
-
22588
- if (true) {
22589
- module.exports = __webpack_require__(2799);
22590
- } else // removed by dead control flow
22591
- {}
22592
-
22593
-
22594
21548
  /***/ },
22595
21549
 
22596
21550
  /***/ 338
@@ -22625,7 +21579,7 @@ var x = (y) => {
22625
21579
  var x = {}; __webpack_require__.d(x, y); return x
22626
21580
  }
22627
21581
  var y = (x) => (() => (x))
22628
- module.exports = x({ ["ArrowCurveBack5"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ArrowCurveBack5), ["ArrowCurveForward5"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ArrowCurveForward5), ["ArrowsMaximize"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ArrowsMaximize), ["ArrowsMinimize"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ArrowsMinimize), ["ChevronDown"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ChevronDown), ["ChevronLeft"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ChevronLeft), ["ChevronRight"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ChevronRight), ["ChevronUp"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ChevronUp), ["Comment"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Comment), ["Element"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Element), ["Gear"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Gear), ["Volume0"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Volume0), ["Volume1"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Volume1), ["Volume2"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Volume2), ["VolumeX"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.VolumeX), ["XMark"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.XMark), ["ZoomIn"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ZoomIn), ["ZoomOut"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ZoomOut) });
21582
+ module.exports = x({ ["ArrowCurveBack5"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ArrowCurveBack5), ["ArrowCurveForward5"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ArrowCurveForward5), ["ArrowsMaximize"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ArrowsMaximize), ["ArrowsMinimize"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ArrowsMinimize), ["ChevronDown"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ChevronDown), ["ChevronLeft"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ChevronLeft), ["ChevronRight"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ChevronRight), ["ChevronUp"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ChevronUp), ["ClosedCaption"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ClosedCaption), ["Comment"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Comment), ["Element"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Element), ["Gear"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Gear), ["Volume0"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Volume0), ["Volume1"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Volume1), ["Volume2"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.Volume2), ["VolumeX"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.VolumeX), ["XMark"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.XMark), ["ZoomIn"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ZoomIn), ["ZoomOut"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_3b21b01f__.ZoomOut) });
22629
21583
 
22630
21584
  /***/ },
22631
21585
 
@@ -22647,7 +21601,7 @@ var x = (y) => {
22647
21601
  var x = {}; __webpack_require__.d(x, y); return x
22648
21602
  }
22649
21603
  var y = (x) => (() => (x))
22650
- module.exports = x({ ["BoxBlue100"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.BoxBlue100), ["Size5"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.Size5), ["Size8"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.Size8), ["bpIconCtaIconOnDark"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.bpIconCtaIconOnDark), ["bpIconIconOnDark"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.bpIconIconOnDark), ["bpIconIconOnLightSecondary"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.bpIconIconOnLightSecondary), ["bpRadius03"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.bpRadius03) });
21604
+ module.exports = x({ ["BoxBlue100"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.BoxBlue100), ["GreenLight100"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.GreenLight100), ["Grimace100"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.Grimace100), ["Size5"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.Size5), ["Size8"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.Size8), ["WatermelonRed100"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.WatermelonRed100), ["Yellorange100"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.Yellorange100), ["Yellow100"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.Yellow100), ["bpIconCtaIconOnDark"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.bpIconCtaIconOnDark), ["bpIconIconOnDark"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.bpIconIconOnDark), ["bpIconIconOnLightSecondary"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.bpIconIconOnLightSecondary), ["bpRadius03"]: () => (__WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_tokens_tokens_b764a744__.bpRadius03) });
22651
21605
 
22652
21606
  /***/ },
22653
21607
 
@@ -22658,7 +21612,7 @@ var x = (y) => {
22658
21612
  var x = {}; __webpack_require__.d(x, y); return x
22659
21613
  }
22660
21614
  var y = (x) => (() => (x))
22661
- module.exports = x({ ["Component"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.Component), ["Fragment"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.Fragment), ["createContext"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.createContext), ["createElement"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.createElement), ["default"]: () => (__WEBPACK_EXTERNAL_MODULE_react__["default"]), ["forwardRef"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.forwardRef), ["useCallback"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useCallback), ["useContext"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useContext), ["useEffect"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useEffect), ["useId"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useId), ["useImperativeHandle"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useImperativeHandle), ["useLayoutEffect"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useLayoutEffect), ["useMemo"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useMemo), ["useReducer"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useReducer), ["useRef"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useRef), ["useState"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useState) });
21615
+ module.exports = x({ ["Component"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.Component), ["createElement"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.createElement), ["default"]: () => (__WEBPACK_EXTERNAL_MODULE_react__["default"]), ["forwardRef"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.forwardRef), ["useCallback"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useCallback), ["useEffect"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useEffect), ["useId"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useId), ["useImperativeHandle"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useImperativeHandle), ["useLayoutEffect"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useLayoutEffect), ["useMemo"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useMemo), ["useReducer"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useReducer), ["useRef"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useRef), ["useState"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useState) });
22662
21616
 
22663
21617
  /***/ },
22664
21618
 
@@ -38279,7 +37233,7 @@ var isNpmBuild = __webpack_require__(8080);
38279
37233
  ;// ./src/lib/Logger.js
38280
37234
  /* eslint-disable no-undef */
38281
37235
  const CLIENT_NAME = "box-content-preview";
38282
- const CLIENT_VERSION = "3.119.0";
37236
+ const CLIENT_VERSION = "3.121.0";
38283
37237
  /* eslint-enable no-undef */
38284
37238
 
38285
37239
  class Logger {
@@ -39270,8 +38224,8 @@ class AnnotationControlsFSM {
39270
38224
  this.currentState = initialState;
39271
38225
  }
39272
38226
  }
39273
- ;// external "box-ui-elements/es/styles/variables"
39274
-
38227
+ // EXTERNAL MODULE: external "@box/blueprint-web-assets/tokens/tokens"
38228
+ var tokens_ = __webpack_require__(8380);
39275
38229
  ;// ./src/lib/AnnotationModule.ts
39276
38230
  function AnnotationModule_defineProperty(e, r, t) { return (r = AnnotationModule_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
39277
38231
  function AnnotationModule_toPropertyKey(t) { var i = AnnotationModule_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
@@ -39279,12 +38233,12 @@ function AnnotationModule_toPrimitive(t, r) { if ("object" != typeof t || !t) re
39279
38233
 
39280
38234
  const ANNOTATION_COLOR_KEY = 'annotation-color';
39281
38235
  const AnnotationColor = {
39282
- BOX_BLUE: __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlBoxBlue__,
39283
- GREEN_LIGHT: __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlGreenLight__,
39284
- WATERMELON_RED: __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlWatermelonRed__,
39285
- YELLORANGE: __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlYellorange__,
39286
- YELLOW: __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlYellow__,
39287
- GRIMACE: __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlGrimace__
38236
+ BOX_BLUE: tokens_.BoxBlue100,
38237
+ GREEN_LIGHT: tokens_.GreenLight100,
38238
+ WATERMELON_RED: tokens_.WatermelonRed100,
38239
+ YELLORANGE: tokens_.Yellorange100,
38240
+ YELLOW: tokens_.Yellow100,
38241
+ GRIMACE: tokens_.Grimace100
39288
38242
  };
39289
38243
  const ANNOTATION_COLORS = Object.values(AnnotationColor);
39290
38244
  class AnnotationModule {
@@ -39292,7 +38246,7 @@ class AnnotationModule {
39292
38246
  cache
39293
38247
  }) {
39294
38248
  AnnotationModule_defineProperty(this, "cache", void 0);
39295
- AnnotationModule_defineProperty(this, "getColor", () => this.cache.get(ANNOTATION_COLOR_KEY) || __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlBoxBlue__);
38249
+ AnnotationModule_defineProperty(this, "getColor", () => this.cache.get(ANNOTATION_COLOR_KEY) || AnnotationColor.BOX_BLUE);
39296
38250
  AnnotationModule_defineProperty(this, "setColor", color => this.cache.set(ANNOTATION_COLOR_KEY, color, true));
39297
38251
  this.cache = cache;
39298
38252
  }
@@ -39912,10 +38866,32 @@ class BaseViewer extends (events_default()) {
39912
38866
  * @return {void}
39913
38867
  */
39914
38868
  toggleFullscreen(isFullscreen, fullscreenToggleEl) {
39915
- this.fullscreenToggleEl = fullscreenToggleEl;
38869
+ // The keyboard shortcut has no button to return focus to, so keep the last toggle unless it has
38870
+ // since unmounted, as when it collapses into or out of the overflow menu
38871
+ if (fullscreenToggleEl) {
38872
+ this.fullscreenToggleEl = fullscreenToggleEl;
38873
+ } else if (this.fullscreenToggleEl && !this.fullscreenToggleEl.isConnected) {
38874
+ this.fullscreenToggleEl = null;
38875
+ }
39916
38876
  lib_Fullscreen.toggle(this.containerEl);
39917
38877
  }
39918
38878
 
38879
+ /**
38880
+ * Toggles fullscreen on F for viewers that opt in from onKeydown. The key belongs to the Blueprint
38881
+ * controls bar, so the older bar keeps no such shortcut.
38882
+ *
38883
+ * @protected
38884
+ * @param {string} key - Keydown key
38885
+ * @return {boolean} Consumed or not
38886
+ */
38887
+ handleFullscreenKey(key) {
38888
+ if ((key === 'f' || key === 'F') && this.featureEnabled(constants/* BLUEPRINT_MIGRATION_CONTROLS_BAR */.OQ)) {
38889
+ this.toggleFullscreen();
38890
+ return true;
38891
+ }
38892
+ return false;
38893
+ }
38894
+
39919
38895
  /**
39920
38896
  * Resize the document depending on fullscreen state
39921
38897
  *
@@ -40046,7 +39022,7 @@ class BaseViewer extends (events_default()) {
40046
39022
  * @return {void}
40047
39023
  */
40048
39024
  emitFirstRenderMetric() {
40049
- if (this.firstRenderEmitted) {
39025
+ if (this.isDestroyed() || this.firstRenderEmitted) {
40050
39026
  return;
40051
39027
  }
40052
39028
  const {
@@ -40364,9 +39340,13 @@ class BaseViewer extends (events_default()) {
40364
39340
  return;
40365
39341
  }
40366
39342
  const options = boxAnnotations.getOptions && boxAnnotations.getOptions();
39343
+ const features = options && options.features;
40367
39344
  const annotatorOptions = this.createAnnotatorOptions({
40368
39345
  annotator: this.annotatorConf,
40369
- features: options && options.features,
39346
+ // Annotations moves its popups to the Blueprint toolbar together with the controls bar
39347
+ features: this.featureEnabled(constants/* BLUEPRINT_MIGRATION_CONTROLS_BAR */.OQ) ? BaseViewer_objectSpread(BaseViewer_objectSpread({}, features), {}, {
39348
+ blueprintMigrationControlsBar: true
39349
+ }) : features,
40370
39350
  initialColor: this.annotationModule.getColor(),
40371
39351
  initialMode: this.getInitialAnnotationMode(),
40372
39352
  intl: options && options.intl || i18n.createAnnotatorIntl(),
@@ -40861,6 +39841,7 @@ class ArchiveViewer extends viewers_BaseViewer {
40861
39841
  * @return {void}
40862
39842
  */
40863
39843
  finishRender() {
39844
+ this.emitFirstRenderMetric();
40864
39845
  this.loaded = true;
40865
39846
  this.emit(lib_events/* VIEWER_EVENT */.Oi.load);
40866
39847
  }
@@ -41726,6 +40707,8 @@ class ImageBaseViewer extends viewers_BaseViewer {
41726
40707
  zoom() {}
41727
40708
  }
41728
40709
  /* harmony default export */ const image_ImageBaseViewer = (ImageBaseViewer);
40710
+ ;// external "box-ui-elements/es/styles/variables"
40711
+
41729
40712
  // EXTERNAL MODULE: ./node_modules/classnames/index.js
41730
40713
  var classnames = __webpack_require__(2485);
41731
40714
  var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
@@ -41764,85 +40747,6 @@ function AnnotationsButton(props, ref) {
41764
40747
  }, rest), children);
41765
40748
  }
41766
40749
  /* harmony default export */ const annotations_AnnotationsButton = (/*#__PURE__*/external_react_["default"].forwardRef(AnnotationsButton));
41767
- ;// external "box-ui-elements/es/components/tooltip/Tooltip"
41768
-
41769
- ;// external "box-ui-elements/es/features/targeting/hocs"
41770
-
41771
- ;// ./src/lib/viewers/controls/tooltip/TargetedClickThroughTooltip.tsx
41772
- const TargetedClickThroughTooltip_excluded = ["children"];
41773
- function TargetedClickThroughTooltip_objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = TargetedClickThroughTooltip_objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
41774
- function TargetedClickThroughTooltip_objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
41775
-
41776
-
41777
-
41778
- const TargetedClickThroughTooltip = __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_features_targeting_hocs_e326fa91_withTargetedClickThrough__(_ref => {
41779
- let {
41780
- children
41781
- } = _ref,
41782
- props = TargetedClickThroughTooltip_objectWithoutProperties(_ref, TargetedClickThroughTooltip_excluded);
41783
- return /*#__PURE__*/external_react_["default"].createElement(__WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_components_tooltip_Tooltip_97b5ae91_default__, props, children);
41784
- });
41785
- /* harmony default export */ const tooltip_TargetedClickThroughTooltip = (TargetedClickThroughTooltip);
41786
- ;// ./src/lib/viewers/controls/experiences/ExperiencesContext.ts
41787
-
41788
- /* harmony default export */ const ExperiencesContext = (/*#__PURE__*/external_react_["default"].createContext({
41789
- experiences: {}
41790
- }));
41791
- ;// ./src/lib/viewers/controls/annotations/AnnotationsTargetedTooltip.scss
41792
- // extracted by mini-css-extract-plugin
41793
-
41794
- ;// ./src/lib/viewers/controls/annotations/AnnotationsTargetedTooltip.tsx
41795
- /* provided dependency */ var AnnotationsTargetedTooltip_ = __webpack_require__(441)["Tl"];
41796
- function AnnotationsTargetedTooltip_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
41797
- function AnnotationsTargetedTooltip_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? AnnotationsTargetedTooltip_ownKeys(Object(t), !0).forEach(function (r) { AnnotationsTargetedTooltip_defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : AnnotationsTargetedTooltip_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
41798
- function AnnotationsTargetedTooltip_defineProperty(e, r, t) { return (r = AnnotationsTargetedTooltip_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
41799
- function AnnotationsTargetedTooltip_toPropertyKey(t) { var i = AnnotationsTargetedTooltip_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
41800
- function AnnotationsTargetedTooltip_toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
41801
-
41802
-
41803
-
41804
-
41805
-
41806
- function AnnotationsTargetedTooltip({
41807
- children,
41808
- isEnabled = false
41809
- }) {
41810
- const {
41811
- experiences
41812
- } = external_react_["default"].useContext(ExperiencesContext);
41813
- const {
41814
- setIsForced
41815
- } = external_react_["default"].useContext(ControlsLayerContext);
41816
- return /*#__PURE__*/external_react_["default"].createElement(tooltip_TargetedClickThroughTooltip, {
41817
- className: "bp-AnnotationsTooltip",
41818
- closeOnClickOutside: true,
41819
- shouldTarget: isEnabled,
41820
- showCloseButton: true,
41821
- text: /*#__PURE__*/external_react_["default"].createElement("div", null, /*#__PURE__*/external_react_["default"].createElement("h3", {
41822
- className: "bp-AnnotationsTooltip-title"
41823
- }, AnnotationsTargetedTooltip_('annotations_tooltip_title')), /*#__PURE__*/external_react_["default"].createElement("p", {
41824
- className: "bp-AnnotationsTooltip-body"
41825
- }, AnnotationsTargetedTooltip_('annotations_tooltip_body'))),
41826
- theme: "callout",
41827
- useTargetingApi: () => {
41828
- return AnnotationsTargetedTooltip_objectSpread(AnnotationsTargetedTooltip_objectSpread({}, experiences.tooltipFlowAnnotationsExperience), {}, {
41829
- onClose: () => {
41830
- experiences.tooltipFlowAnnotationsExperience.onClose();
41831
- setIsForced(false);
41832
- },
41833
- onComplete: () => {
41834
- experiences.tooltipFlowAnnotationsExperience.onComplete();
41835
- setIsForced(false);
41836
- },
41837
- onShow: () => {
41838
- experiences.tooltipFlowAnnotationsExperience.onShow();
41839
- setIsForced(true);
41840
- }
41841
- });
41842
- }
41843
- }, children);
41844
- }
41845
- /* harmony default export */ const annotations_AnnotationsTargetedTooltip = (AnnotationsTargetedTooltip);
41846
40750
  ;// ./src/lib/viewers/controls/icons/IconPencilScribbleMedium24.tsx
41847
40751
  function IconPencilScribbleMedium24_extends() { return IconPencilScribbleMedium24_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, IconPencilScribbleMedium24_extends.apply(null, arguments); }
41848
40752
  function _objectDestructuringEmpty(t) { if (null == t) throw new TypeError("Cannot destructure " + t); }
@@ -41941,7 +40845,6 @@ function useFullscreen() {
41941
40845
 
41942
40846
 
41943
40847
 
41944
-
41945
40848
  function AnnotationsControls({
41946
40849
  annotationColor = __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_bdlBoxBlue__,
41947
40850
  annotationMode = AnnotationMode.NONE,
@@ -42025,9 +40928,7 @@ function AnnotationsControls({
42025
40928
  style: {
42026
40929
  color: isDrawingActive ? annotationColor : __WEBPACK_EXTERNAL_MODULE_box_ui_elements_es_styles_variables_c815ce80_white__
42027
40930
  }
42028
- })), /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsTargetedTooltip, {
42029
- isEnabled: showRegion
42030
- }, /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsButton, {
40931
+ })), /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsButton, {
42031
40932
  ref: annotationBtnRefs[AnnotationMode.REGION],
42032
40933
  "data-resin-target": "highlightRegion",
42033
40934
  "data-testid": "bp-AnnotationsControls-regionBtn",
@@ -42036,7 +40937,7 @@ function AnnotationsControls({
42036
40937
  mode: AnnotationMode.REGION,
42037
40938
  onClick: handleModeClick,
42038
40939
  title: AnnotationsControls_('region_comment')
42039
- }, /*#__PURE__*/external_react_["default"].createElement(icons_IconDashedSquareBubbleMedium24, null))), /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsButton, {
40940
+ }, /*#__PURE__*/external_react_["default"].createElement(icons_IconDashedSquareBubbleMedium24, null)), /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsButton, {
42040
40941
  ref: annotationBtnRefs[AnnotationMode.HIGHLIGHT],
42041
40942
  "data-resin-target": "highlightText",
42042
40943
  "data-testid": "bp-AnnotationsControls-highlightBtn",
@@ -42222,6 +41123,11 @@ function DrawingControls({
42222
41123
  onColorSelect: onAnnotationColorChange
42223
41124
  });
42224
41125
  }
41126
+ ;// ./src/lib/viewers/controls/experiences/ExperiencesContext.ts
41127
+
41128
+ /* harmony default export */ const ExperiencesContext = (/*#__PURE__*/external_react_["default"].createContext({
41129
+ experiences: {}
41130
+ }));
42225
41131
  ;// ./src/lib/viewers/controls/experiences/ExperiencesProvider.tsx
42226
41132
 
42227
41133
 
@@ -42623,7 +41529,7 @@ class ImageViewer extends image_ImageBaseViewer {
42623
41529
  * @return {void}
42624
41530
  */
42625
41531
  emitFirstRenderMetric() {
42626
- if (this.firstRenderEmitted) {
41532
+ if (this.isDestroyed() || this.firstRenderEmitted) {
42627
41533
  return;
42628
41534
  }
42629
41535
  const {
@@ -45517,6 +44423,109 @@ function Image360Controls({
45517
44423
  onVrToggle: onVrToggle
45518
44424
  }));
45519
44425
  }
44426
+ // EXTERNAL MODULE: external "@box/blueprint-web"
44427
+ var blueprint_web_ = __webpack_require__(8912);
44428
+ ;// external "@box/blueprint-web-assets/icons/Medium/VrGoggles"
44429
+
44430
+ ;// ./src/lib/viewers/controls/box3d/VrToggleControlV2.tsx
44431
+ /* provided dependency */ var VrToggleControlV2_ = __webpack_require__(441)["Tl"];
44432
+
44433
+
44434
+
44435
+ function VrToggleControlV2({
44436
+ isVrShown,
44437
+ onVrToggle
44438
+ }) {
44439
+ if (!isVrShown) {
44440
+ return null;
44441
+ }
44442
+ return /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Tooltip, {
44443
+ content: VrToggleControlV2_('box3d_toggle_vr')
44444
+ }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Button, {
44445
+ "aria-label": VrToggleControlV2_('box3d_toggle_vr'),
44446
+ "data-resin-target": "vrToggle",
44447
+ onClick: onVrToggle
44448
+ }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Icon, {
44449
+ icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_VrGoggles_9eb581be_default__
44450
+ })));
44451
+ }
44452
+ ;// ./src/lib/viewers/controls/controls-bar/ControlsBarV2.tsx
44453
+ const ControlsBarV2_excluded = ["children"];
44454
+ function ControlsBarV2_extends() { return ControlsBarV2_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, ControlsBarV2_extends.apply(null, arguments); }
44455
+ function ControlsBarV2_objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = ControlsBarV2_objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
44456
+ function ControlsBarV2_objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
44457
+
44458
+
44459
+ function ControlsBarV2(_ref, ref) {
44460
+ let {
44461
+ children
44462
+ } = _ref,
44463
+ rest = ControlsBarV2_objectWithoutProperties(_ref, ControlsBarV2_excluded);
44464
+ if (!children) {
44465
+ return null;
44466
+ }
44467
+ return /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Root, ControlsBarV2_extends({
44468
+ ref: ref,
44469
+ colorScheme: "dark",
44470
+ "data-testid": "bp-ControlsBar"
44471
+ }, rest), children);
44472
+ }
44473
+ /* harmony default export */ const controls_bar_ControlsBarV2 = (/*#__PURE__*/external_react_["default"].forwardRef(ControlsBarV2));
44474
+ ;// external "@box/blueprint-web-assets/icons/Medium/ArrowsMaximize"
44475
+
44476
+ ;// external "@box/blueprint-web-assets/icons/Medium/ArrowsMinimize"
44477
+
44478
+ ;// ./src/lib/viewers/controls/fullscreen/FullscreenToggleV2.tsx
44479
+ /* provided dependency */ var FullscreenToggleV2_ = __webpack_require__(441)["Tl"];
44480
+ const FullscreenToggleV2_excluded = ["onFullscreenToggle"];
44481
+ function FullscreenToggleV2_extends() { return FullscreenToggleV2_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, FullscreenToggleV2_extends.apply(null, arguments); }
44482
+ function FullscreenToggleV2_objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = FullscreenToggleV2_objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
44483
+ function FullscreenToggleV2_objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
44484
+
44485
+
44486
+
44487
+
44488
+
44489
+ function FullscreenToggleV2(_ref) {
44490
+ let {
44491
+ onFullscreenToggle
44492
+ } = _ref,
44493
+ rest = FullscreenToggleV2_objectWithoutProperties(_ref, FullscreenToggleV2_excluded);
44494
+ const isFullscreen = useFullscreen();
44495
+ const icon = isFullscreen ? __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ArrowsMinimize_35faab95_default__ : __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ArrowsMaximize_12b9ae40_default__;
44496
+ const label = isFullscreen ? FullscreenToggleV2_('exit_fullscreen') : FullscreenToggleV2_('enter_fullscreen');
44497
+ const handleClick = ({
44498
+ currentTarget
44499
+ }) => {
44500
+ onFullscreenToggle(!isFullscreen, currentTarget);
44501
+ };
44502
+ return /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Tooltip, {
44503
+ content: label
44504
+ }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Button, FullscreenToggleV2_extends({
44505
+ "aria-label": label,
44506
+ "data-resin-target": "fullscreen",
44507
+ onClick: handleClick
44508
+ }, rest), /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Icon, {
44509
+ icon: icon
44510
+ })));
44511
+ }
44512
+ ;// ./src/lib/viewers/box3d/image360/Image360ControlsV2.tsx
44513
+
44514
+
44515
+
44516
+
44517
+ function Image360ControlsV2({
44518
+ isVrShown,
44519
+ onFullscreenToggle,
44520
+ onVrToggle
44521
+ }) {
44522
+ return /*#__PURE__*/external_react_["default"].createElement(controls_bar_ControlsBarV2, null, /*#__PURE__*/external_react_["default"].createElement(FullscreenToggleV2, {
44523
+ onFullscreenToggle: onFullscreenToggle
44524
+ }), /*#__PURE__*/external_react_["default"].createElement(VrToggleControlV2, {
44525
+ isVrShown: isVrShown,
44526
+ onVrToggle: onVrToggle
44527
+ }));
44528
+ }
45520
44529
  ;// ./src/lib/viewers/box3d/image360/SceneEntities.js
45521
44530
 
45522
44531
  /* harmony default export */ const SceneEntities = ([{
@@ -45763,6 +44772,8 @@ class Image360Renderer extends box3d_Box3DRenderer {
45763
44772
 
45764
44773
 
45765
44774
 
44775
+
44776
+
45766
44777
  const CSS_CLASS_IMAGE_360 = 'bp-image-360';
45767
44778
  const Image360Viewer_LOAD_TIMEOUT = 120000;
45768
44779
  class Image360Viewer extends box3d_Box3DViewer {
@@ -45822,11 +44833,22 @@ class Image360Viewer extends box3d_Box3DViewer {
45822
44833
  this.controls.showVrButton();
45823
44834
  }
45824
44835
  }
44836
+
44837
+ /**
44838
+ * Handles keyboard events
44839
+ *
44840
+ * @param {string} key - Keydown key
44841
+ * @return {boolean} Consumed or not
44842
+ */
44843
+ onKeydown(key) {
44844
+ return this.handleFullscreenKey(key);
44845
+ }
45825
44846
  renderUI() {
45826
44847
  if (!this.controls) {
45827
44848
  return;
45828
44849
  }
45829
- this.controls.render(/*#__PURE__*/external_react_["default"].createElement(Image360Controls, {
44850
+ const Controls = this.featureEnabled(constants/* BLUEPRINT_MIGRATION_CONTROLS_BAR */.OQ) ? Image360ControlsV2 : Image360Controls;
44851
+ this.controls.render(/*#__PURE__*/external_react_["default"].createElement(Controls, {
45830
44852
  isVrShown: this.showVrButton,
45831
44853
  onFullscreenToggle: this.toggleFullscreen,
45832
44854
  onVrToggle: this.handleToggleVr
@@ -46222,68 +45244,6 @@ function TextControls({
46222
45244
  onFullscreenToggle: onFullscreenToggle
46223
45245
  })));
46224
45246
  }
46225
- // EXTERNAL MODULE: external "@box/blueprint-web"
46226
- var blueprint_web_ = __webpack_require__(8912);
46227
- ;// ./src/lib/viewers/controls/controls-bar/ControlsBarV2.tsx
46228
- const ControlsBarV2_excluded = ["children"];
46229
- function ControlsBarV2_extends() { return ControlsBarV2_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, ControlsBarV2_extends.apply(null, arguments); }
46230
- function ControlsBarV2_objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = ControlsBarV2_objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
46231
- function ControlsBarV2_objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
46232
-
46233
-
46234
- function ControlsBarV2(_ref, ref) {
46235
- let {
46236
- children
46237
- } = _ref,
46238
- rest = ControlsBarV2_objectWithoutProperties(_ref, ControlsBarV2_excluded);
46239
- if (!children) {
46240
- return null;
46241
- }
46242
- return /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Root, ControlsBarV2_extends({
46243
- ref: ref,
46244
- colorScheme: "dark",
46245
- "data-testid": "bp-ControlsBar"
46246
- }, rest), children);
46247
- }
46248
- /* harmony default export */ const controls_bar_ControlsBarV2 = (/*#__PURE__*/external_react_["default"].forwardRef(ControlsBarV2));
46249
- ;// external "@box/blueprint-web-assets/icons/Medium/ArrowsMaximize"
46250
-
46251
- ;// external "@box/blueprint-web-assets/icons/Medium/ArrowsMinimize"
46252
-
46253
- ;// ./src/lib/viewers/controls/fullscreen/FullscreenToggleV2.tsx
46254
- /* provided dependency */ var FullscreenToggleV2_ = __webpack_require__(441)["Tl"];
46255
- const FullscreenToggleV2_excluded = ["onFullscreenToggle"];
46256
- function FullscreenToggleV2_extends() { return FullscreenToggleV2_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, FullscreenToggleV2_extends.apply(null, arguments); }
46257
- function FullscreenToggleV2_objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = FullscreenToggleV2_objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
46258
- function FullscreenToggleV2_objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
46259
-
46260
-
46261
-
46262
-
46263
-
46264
- function FullscreenToggleV2(_ref) {
46265
- let {
46266
- onFullscreenToggle
46267
- } = _ref,
46268
- rest = FullscreenToggleV2_objectWithoutProperties(_ref, FullscreenToggleV2_excluded);
46269
- const isFullscreen = useFullscreen();
46270
- const icon = isFullscreen ? __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ArrowsMinimize_35faab95_default__ : __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ArrowsMaximize_12b9ae40_default__;
46271
- const label = isFullscreen ? FullscreenToggleV2_('exit_fullscreen') : FullscreenToggleV2_('enter_fullscreen');
46272
- const handleClick = ({
46273
- currentTarget
46274
- }) => {
46275
- onFullscreenToggle(!isFullscreen, currentTarget);
46276
- };
46277
- return /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Tooltip, {
46278
- content: label
46279
- }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Button, FullscreenToggleV2_extends({
46280
- "aria-label": label,
46281
- "data-resin-target": "fullscreen",
46282
- onClick: handleClick
46283
- }, rest), /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Icon, {
46284
- icon: icon
46285
- })));
46286
- }
46287
45247
  ;// external "@box/blueprint-web-assets/icons/Medium/Minus"
46288
45248
 
46289
45249
  ;// external "@box/blueprint-web-assets/icons/Medium/Plus"
@@ -46296,25 +45256,45 @@ function FullscreenToggleV2(_ref) {
46296
45256
 
46297
45257
 
46298
45258
 
46299
- function ZoomControlsV2({
45259
+ function getZoomState({
46300
45260
  maxScale = MAX_SCALE,
46301
45261
  minScale = MIN_SCALE,
46302
- onZoomIn,
46303
- onZoomOut,
46304
- resinTargetZoomIn = 'zoomIn',
46305
- resinTargetZoomOut = 'zoomOut',
46306
45262
  scale = 1
46307
45263
  }) {
46308
45264
  const currentScale = Math.round((scale + Number.EPSILON) * 100) / 100;
46309
45265
  const maxScaleValue = isFinite_default()(maxScale) ? Math.min(maxScale, MAX_SCALE) : MAX_SCALE;
46310
45266
  const minScaleValue = isFinite_default()(minScale) ? Math.max(minScale, MIN_SCALE) : MIN_SCALE;
45267
+ return {
45268
+ canZoomIn: currentScale < maxScaleValue,
45269
+ canZoomOut: currentScale > minScaleValue,
45270
+ currentScale
45271
+ };
45272
+ }
45273
+ function ZoomControlsV2({
45274
+ maxScale,
45275
+ minScale,
45276
+ onZoomIn,
45277
+ onZoomOut,
45278
+ resinTargetZoomIn = 'zoomIn',
45279
+ resinTargetZoomOut = 'zoomOut',
45280
+ scale
45281
+ }) {
45282
+ const {
45283
+ canZoomIn,
45284
+ canZoomOut,
45285
+ currentScale
45286
+ } = getZoomState({
45287
+ maxScale,
45288
+ minScale,
45289
+ scale
45290
+ });
46311
45291
  return /*#__PURE__*/external_react_["default"].createElement(external_react_["default"].Fragment, null, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Tooltip, {
46312
45292
  content: ZoomControlsV2_('zoom_out')
46313
45293
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Button, {
46314
45294
  "aria-label": ZoomControlsV2_('zoom_out'),
46315
45295
  "data-resin-target": resinTargetZoomOut,
46316
45296
  "data-testid": "bp-ZoomControls-out",
46317
- disabled: currentScale <= minScaleValue,
45297
+ disabled: !canZoomOut,
46318
45298
  onClick: onZoomOut
46319
45299
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Icon, {
46320
45300
  icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Minus_cc9df143_default__
@@ -46330,7 +45310,7 @@ function ZoomControlsV2({
46330
45310
  "aria-label": ZoomControlsV2_('zoom_in'),
46331
45311
  "data-resin-target": resinTargetZoomIn,
46332
45312
  "data-testid": "bp-ZoomControls-in",
46333
- disabled: currentScale >= maxScaleValue,
45313
+ disabled: !canZoomIn,
46334
45314
  onClick: onZoomIn
46335
45315
  }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Icon, {
46336
45316
  icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Plus_aaa7b14f_default__
@@ -46969,8 +45949,6 @@ class TextBaseViewer extends viewers_BaseViewer {
46969
45949
  /* harmony default export */ const text_TextBaseViewer = (TextBaseViewer);
46970
45950
  ;// external "@box/blueprint-web-assets/icons/Medium/CheckmarkCircle"
46971
45951
 
46972
- // EXTERNAL MODULE: external "@box/blueprint-web-assets/tokens/tokens"
46973
- var tokens_ = __webpack_require__(8380);
46974
45952
  ;// ./src/lib/PrintModal.scss
46975
45953
  // extracted by mini-css-extract-plugin
46976
45954
 
@@ -54542,8 +53520,29 @@ function MediaFullscreenToggle(props) {
54542
53520
  onKeyDown: handleKeydown
54543
53521
  }, props));
54544
53522
  }
53523
+ // EXTERNAL MODULE: external "@box/blueprint-web-assets/icons/Medium"
53524
+ var Medium_ = __webpack_require__(9747);
54545
53525
  // EXTERNAL MODULE: ./src/lib/viewers/controls/media/MediaToggle.tsx
54546
53526
  var MediaToggle = __webpack_require__(8997);
53527
+ ;// ./src/lib/viewers/controls/tooltip/ToggleTooltipV2.scss
53528
+ // extracted by mini-css-extract-plugin
53529
+
53530
+ ;// ./src/lib/viewers/controls/tooltip/ToggleTooltipV2.tsx
53531
+
53532
+
53533
+
53534
+ // Blueprint's Tooltip writes its own data-state onto the element it wraps, which overwrites the
53535
+ // data-state Toolbar.ToggleItem uses for its selected styling, so the tooltip gets its own element.
53536
+ function ToggleTooltipV2({
53537
+ children,
53538
+ content
53539
+ }) {
53540
+ return /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Tooltip, {
53541
+ content: content
53542
+ }, /*#__PURE__*/external_react_["default"].createElement("span", {
53543
+ className: "bp-ToggleTooltipV2"
53544
+ }, children));
53545
+ }
54547
53546
  ;// ./src/lib/viewers/controls/media/SubtitlesToggle.scss
54548
53547
  // extracted by mini-css-extract-plugin
54549
53548
 
@@ -54553,8 +53552,13 @@ var MediaToggle = __webpack_require__(8997);
54553
53552
 
54554
53553
 
54555
53554
 
53555
+
53556
+
53557
+
53558
+
54556
53559
  function SubtitlesToggle({
54557
53560
  isAutoGeneratedSubtitles,
53561
+ isBlueprintEnabled = false,
54558
53562
  isShowingSubtitles,
54559
53563
  onSubtitlesToggle = (noop_default()),
54560
53564
  subtitles = []
@@ -54563,6 +53567,21 @@ function SubtitlesToggle({
54563
53567
  return null;
54564
53568
  }
54565
53569
  const title = isAutoGeneratedSubtitles ? SubtitlesToggle_('media_auto_generated_captions') : SubtitlesToggle_('media_subtitles_cc');
53570
+ if (isBlueprintEnabled) {
53571
+ return /*#__PURE__*/external_react_["default"].createElement(ToggleTooltipV2, {
53572
+ content: title
53573
+ }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.IconToggleButton, {
53574
+ "aria-label": title,
53575
+ className: "bp-SubtitlesToggleV2",
53576
+ "data-resin-target": "subtitlesToggle",
53577
+ "data-target-id": "SubtitlesToggle-toggle",
53578
+ "data-testid": "bp-media-cc-button",
53579
+ icon: Medium_.ClosedCaption,
53580
+ onKeyDown: utils/* stopActivationKeyPropagation */.My,
53581
+ onPressedChange: onSubtitlesToggle,
53582
+ pressed: !!isShowingSubtitles
53583
+ }));
53584
+ }
54566
53585
  return /*#__PURE__*/external_react_["default"].createElement(MediaToggle/* default */.A, {
54567
53586
  "aria-pressed": isShowingSubtitles,
54568
53587
  className: "bp-SubtitlesToggle",
@@ -54711,8 +53730,8 @@ function VideoControls({
54711
53730
  onFullscreenToggle: onFullscreenToggle
54712
53731
  })))));
54713
53732
  }
54714
- // EXTERNAL MODULE: ./src/lib/viewers/controls/media/MediaSettingsV2.tsx + 5 modules
54715
- var MediaSettingsV2 = __webpack_require__(4190);
53733
+ // EXTERNAL MODULE: ./src/lib/viewers/controls/media/MediaSettingsV2.tsx + 3 modules
53734
+ var MediaSettingsV2 = __webpack_require__(3519);
54716
53735
  // EXTERNAL MODULE: ./src/lib/viewers/controls/media/PlayPauseButton.tsx + 2 modules
54717
53736
  var PlayPauseButton = __webpack_require__(5760);
54718
53737
  // EXTERNAL MODULE: ./src/lib/viewers/controls/media/SkipButton.tsx + 2 modules
@@ -55054,8 +54073,6 @@ function TimeControlsV2({
55054
54073
  selectedId: selectedId
55055
54074
  }))));
55056
54075
  }
55057
- // EXTERNAL MODULE: external "@box/blueprint-web-assets/icons/Medium"
55058
- var Medium_ = __webpack_require__(9747);
55059
54076
  ;// ./src/lib/viewers/controls/media/VideoFullscreenButton.scss
55060
54077
  // extracted by mini-css-extract-plugin
55061
54078
 
@@ -55276,6 +54293,7 @@ function VideoControlsV2({
55276
54293
  volume: volume
55277
54294
  }), /*#__PURE__*/external_react_["default"].createElement(SubtitlesToggle, {
55278
54295
  isAutoGeneratedSubtitles: isAutoGeneratedSubtitles,
54296
+ isBlueprintEnabled: isBlueprintEnabled,
55279
54297
  isShowingSubtitles: subtitle !== constants/* SUBTITLES_OFF */.eA,
55280
54298
  onSubtitlesToggle: onSubtitlesToggle,
55281
54299
  subtitles: subtitles
@@ -57672,6 +56690,8 @@ class Video360Loader extends box3d_Base360Loader {
57672
56690
  }
57673
56691
  }
57674
56692
  /* harmony default export */ const video360_Video360Loader = (new Video360Loader());
56693
+ // EXTERNAL MODULE: external "react-dom"
56694
+ var external_react_dom_ = __webpack_require__(7516);
57675
56695
  ;// ./src/lib/viewers/controls/icons/IconSearchMedium24.tsx
57676
56696
  function IconSearchMedium24_extends() { return IconSearchMedium24_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, IconSearchMedium24_extends.apply(null, arguments); }
57677
56697
 
@@ -57905,6 +56925,14 @@ function DocControls({
57905
56925
  onAnnotationColorChange: onAnnotationColorChange
57906
56926
  })));
57907
56927
  }
56928
+ ;// external "@box/blueprint-web-assets/icons/Medium/GridView"
56929
+
56930
+ ;// external "@box/blueprint-web-assets/icons/Medium/Nav"
56931
+
56932
+ ;// external "@box/blueprint-web-assets/icons/Medium/RotateLeft"
56933
+
56934
+ ;// external "@box/blueprint-web-assets/icons/Medium/Search"
56935
+
57908
56936
  ;// external "@box/blueprint-web-assets/icons/Medium/XMark"
57909
56937
 
57910
56938
  ;// ./src/lib/viewers/controls/annotations/AnnotationsExitButtonV2.scss
@@ -57949,25 +56977,6 @@ const ANNOTATION_MODE_ICONS = {
57949
56977
  [AnnotationMode.REGION]: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_SquarePlus_c11758f1_default__
57950
56978
  };
57951
56979
  /* harmony default export */ const annotationModeIcons = (ANNOTATION_MODE_ICONS);
57952
- ;// ./src/lib/viewers/controls/tooltip/ToggleTooltipV2.scss
57953
- // extracted by mini-css-extract-plugin
57954
-
57955
- ;// ./src/lib/viewers/controls/tooltip/ToggleTooltipV2.tsx
57956
-
57957
-
57958
-
57959
- // Blueprint's Tooltip writes its own data-state onto the element it wraps, which overwrites the
57960
- // data-state Toolbar.ToggleItem uses for its selected styling, so the tooltip gets its own element.
57961
- function ToggleTooltipV2({
57962
- children,
57963
- content
57964
- }) {
57965
- return /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Tooltip, {
57966
- content: content
57967
- }, /*#__PURE__*/external_react_["default"].createElement("span", {
57968
- className: "bp-ToggleTooltipV2"
57969
- }, children));
57970
- }
57971
56980
  ;// ./src/lib/viewers/controls/annotations/AnnotationsPaletteV2.scss
57972
56981
  // extracted by mini-css-extract-plugin
57973
56982
 
@@ -58060,8 +57069,6 @@ function AnnotationsToggleV2_extends() { return AnnotationsToggleV2_extends = Ob
58060
57069
 
58061
57070
 
58062
57071
 
58063
-
58064
-
58065
57072
  // The toolbar parts throw outside a Toolbar.Root, so surfaces without one (the media bar) use a standalone button.
58066
57073
 
58067
57074
  const TOGGLE_VALUE = 'annotations';
@@ -58072,9 +57079,6 @@ function AnnotationsToggleV2(props, ref) {
58072
57079
  onAnnotationModeClick = (noop_default()),
58073
57080
  onAnnotationModeEscape = (noop_default())
58074
57081
  } = props;
58075
- const {
58076
- experiences
58077
- } = external_react_["default"].useContext(ExperiencesContext);
58078
57082
  const [lastMode, setLastMode] = external_react_["default"].useState(null);
58079
57083
  const isActive = annotationMode !== AnnotationMode.NONE;
58080
57084
  const resumeMode = lastMode && modes.includes(lastMode) ? lastMode : modes[0];
@@ -58117,13 +57121,9 @@ function AnnotationsToggleV2(props, ref) {
58117
57121
  'data-testid': 'bp-AnnotationsControls-toggleBtn',
58118
57122
  icon: annotationModeIcons[isActive ? annotationMode : resumeMode]
58119
57123
  };
58120
-
58121
- // With no experience from the host, the box-ui-elements tooltip falls back to opening on hover
58122
- const renderToggle = toggle => /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsTargetedTooltip, {
58123
- isEnabled: modes.includes(AnnotationMode.REGION) && !!experiences.tooltipFlowAnnotationsExperience
58124
- }, /*#__PURE__*/external_react_["default"].createElement(ToggleTooltipV2, {
57124
+ const renderToggle = toggle => /*#__PURE__*/external_react_["default"].createElement(ToggleTooltipV2, {
58125
57125
  content: AnnotationsToggleV2_('annotation_tools')
58126
- }, toggle));
57126
+ }, toggle);
58127
57127
  if (props.buttonType === 'icon') {
58128
57128
  const {
58129
57129
  size,
@@ -58185,8 +57185,350 @@ function ColorPickerControlV2({
58185
57185
  onClick: () => onColorSelect(color)
58186
57186
  }))));
58187
57187
  }
58188
- ;// external "@box/blueprint-web-assets/icons/Medium/Search"
57188
+ ;// ./src/lib/viewers/controls/controls-bar/useControlsOverflow.ts
57189
+
57190
+
57191
+
57192
+ const ALWAYS_OVERFLOW = 0;
57193
+ // The space the mocks leave between the bar and the edges of the viewer
57194
+ const EDGE_MARGIN = 40;
57195
+ // One toolbar button, the estimate for a control or the overflow trigger before it has been measured
57196
+ const DEFAULT_WIDTH = 32;
57197
+ const isCollapsible = ({
57198
+ menu,
57199
+ priority
57200
+ }) => !!menu && priority !== undefined;
57201
+ function getOverflowIds(items, availableWidth, metrics) {
57202
+ const {
57203
+ chrome,
57204
+ gap,
57205
+ triggerWidth = DEFAULT_WIDTH,
57206
+ widths
57207
+ } = metrics;
57208
+ const overflowIds = new Set(items.filter(item => isCollapsible(item) && item.priority === ALWAYS_OVERFLOW).map(({
57209
+ id
57210
+ }) => id));
57211
+ const getBarWidth = () => {
57212
+ const slots = items.filter(({
57213
+ id
57214
+ }) => !overflowIds.has(id)).map(({
57215
+ id
57216
+ }) => widths.get(id) ?? DEFAULT_WIDTH);
57217
+ if (overflowIds.size) {
57218
+ slots.push(triggerWidth);
57219
+ }
57220
+ return chrome + slots.reduce((total, width) => total + width, 0) + gap * Math.max(slots.length - 1, 0);
57221
+ };
57222
+ const priorities = items.filter(item => isCollapsible(item) && item.priority !== ALWAYS_OVERFLOW).map(({
57223
+ priority
57224
+ }) => priority).sort((a, b) => a - b);
57225
+ Array.from(new Set(priorities)).every(priority => {
57226
+ if (getBarWidth() <= availableWidth) {
57227
+ return false;
57228
+ }
57229
+ items.filter(item => isCollapsible(item) && item.priority === priority).forEach(({
57230
+ id
57231
+ }) => overflowIds.add(id));
57232
+ return true;
57233
+ });
57234
+ return overflowIds;
57235
+ }
57236
+ const getStyleWidth = (style, properties) => properties.reduce((total, property) => total + (parseFloat(style.getPropertyValue(property)) || 0), 0);
57237
+ function useControlsOverflow(items) {
57238
+ const barRef = external_react_["default"].useRef(null);
57239
+ const metricsRef = external_react_["default"].useRef({
57240
+ chrome: 0,
57241
+ gap: 0,
57242
+ widths: new Map()
57243
+ });
57244
+ const portalContainer = external_react_["default"].useContext(BlueprintProviders/* PortalContainerContext */.n);
57245
+ const [availableWidth, setAvailableWidth] = external_react_["default"].useState(Number.POSITIVE_INFINITY);
57246
+ const [, forceUpdate] = external_react_["default"].useReducer(count => count + 1, 0);
57247
+
57248
+ // A control can only be measured while it is on the bar, so each width is cached as it renders and
57249
+ // reused to decide whether that control would fit again
57250
+ external_react_["default"].useLayoutEffect(() => {
57251
+ const bar = barRef.current;
57252
+ if (!bar) {
57253
+ return;
57254
+ }
57255
+ const metrics = metricsRef.current;
57256
+ const style = window.getComputedStyle(bar);
57257
+ const chrome = getStyleWidth(style, ['padding-left', 'padding-right', 'border-left-width', 'border-right-width']);
57258
+ const gap = getStyleWidth(style, ['column-gap']);
57259
+ let hasChanged = chrome !== metrics.chrome || gap !== metrics.gap;
57260
+ metrics.chrome = chrome;
57261
+ metrics.gap = gap;
57262
+ Array.from(bar.children).forEach(child => {
57263
+ const {
57264
+ offsetWidth
57265
+ } = child;
57266
+ const {
57267
+ overflowId,
57268
+ overflowTrigger
57269
+ } = child.dataset;
57270
+ if (!offsetWidth) {
57271
+ return;
57272
+ }
57273
+ if (overflowId && metrics.widths.get(overflowId) !== offsetWidth) {
57274
+ metrics.widths.set(overflowId, offsetWidth);
57275
+ hasChanged = true;
57276
+ }
57277
+ if (overflowTrigger !== undefined && metrics.triggerWidth !== offsetWidth) {
57278
+ metrics.triggerWidth = offsetWidth;
57279
+ hasChanged = true;
57280
+ }
57281
+ });
57282
+ if (hasChanged) {
57283
+ forceUpdate();
57284
+ }
57285
+ });
57286
+
57287
+ // The bar renders nothing without items, so the viewer lookup reruns once it mounts
57288
+ const hasItems = items.length > 0;
57289
+
57290
+ // The controls root is centered and shrinks to fit the bar, so the space the bar can grow into is the
57291
+ // viewer's. Fullscreen resizes the viewer too, which the observer picks up.
57292
+ external_react_["default"].useLayoutEffect(() => {
57293
+ const container = portalContainer ?? barRef.current?.closest(`.${constants/* CLASS_BOX_PREVIEW_CONTENT */.SG}`) ?? null;
57294
+ if (!container) {
57295
+ return undefined;
57296
+ }
57297
+ const updateAvailableWidth = () => {
57298
+ const {
57299
+ clientWidth
57300
+ } = container;
57301
+
57302
+ // A container that has not been laid out yet measures zero, which would collapse everything
57303
+ setAvailableWidth(clientWidth > 0 ? clientWidth - EDGE_MARGIN : Number.POSITIVE_INFINITY);
57304
+ };
57305
+ updateAvailableWidth();
57306
+ if (typeof ResizeObserver === 'undefined') {
57307
+ return undefined;
57308
+ }
57309
+ const observer = new ResizeObserver(updateAvailableWidth);
57310
+ observer.observe(container);
57311
+ return () => observer.disconnect();
57312
+ }, [hasItems, portalContainer]);
57313
+ const overflowIds = getOverflowIds(items, availableWidth, metricsRef.current);
57314
+ return {
57315
+ barRef,
57316
+ overflowItems: items.filter(({
57317
+ id
57318
+ }) => overflowIds.has(id)),
57319
+ visibleItems: items.filter(({
57320
+ id
57321
+ }) => !overflowIds.has(id))
57322
+ };
57323
+ }
57324
+ ;// external "@box/blueprint-web-assets/icons/Medium/EllipsisVertical"
57325
+
57326
+ // EXTERNAL MODULE: ./src/lib/viewers/controls/tooltip/MenuTriggerTooltipV2.tsx
57327
+ var MenuTriggerTooltipV2 = __webpack_require__(6014);
57328
+ // EXTERNAL MODULE: ./src/lib/viewers/controls/settings/stopMenuKeyPropagation.ts
57329
+ var stopMenuKeyPropagation = __webpack_require__(9646);
57330
+ ;// ./src/lib/viewers/controls/controls-bar/ControlsOverflowMenuV2.scss
57331
+ // extracted by mini-css-extract-plugin
57332
+
57333
+ ;// ./src/lib/viewers/controls/controls-bar/ControlsOverflowMenuV2.tsx
57334
+ /* provided dependency */ var ControlsOverflowMenuV2_ = __webpack_require__(441)["Tl"];
57335
+ function ControlsOverflowMenuV2_extends() { return ControlsOverflowMenuV2_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, ControlsOverflowMenuV2_extends.apply(null, arguments); }
57336
+
57337
+
57338
+
57339
+
57340
+
57341
+
57342
+
57343
+
57344
+ // Handlers that return focus to the control that invoked them get the trigger, since the row unmounts with the menu
57345
+ const ControlsOverflowTriggerContext = /*#__PURE__*/external_react_["default"].createContext({
57346
+ current: null
57347
+ });
57348
+
57349
+ // The menu portals out of the controls root, so it carries the root's Resin attributes itself
57350
+ const getResinAttributes = element => {
57351
+ const resinComponent = element?.closest('[data-resin-component]');
57352
+ return resinComponent ? Object.fromEntries(Array.from(resinComponent.attributes).filter(({
57353
+ name
57354
+ }) => name.startsWith('data-resin-')).map(({
57355
+ name,
57356
+ value
57357
+ }) => [name, value])) : {};
57358
+ };
57359
+ function ControlsOverflowToggle(props, ref) {
57360
+ const isMenuOpen = props['aria-expanded'] === true || props['aria-expanded'] === 'true';
57361
+ return /*#__PURE__*/external_react_["default"].createElement(MenuTriggerTooltipV2/* default */.A, {
57362
+ content: ControlsOverflowMenuV2_('controls_more'),
57363
+ isMenuOpen: isMenuOpen
57364
+ }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Button, ControlsOverflowMenuV2_extends({
57365
+ ref: ref,
57366
+ "aria-label": ControlsOverflowMenuV2_('controls_more'),
57367
+ "data-resin-target": "moreOptions",
57368
+ "data-testid": "bp-ControlsBar-overflowBtn"
57369
+ }, props), /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Icon, {
57370
+ icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_EllipsisVertical_06d33c4b_default__
57371
+ })));
57372
+ }
57373
+ const ControlsOverflowToggleV2 = /*#__PURE__*/external_react_["default"].forwardRef(ControlsOverflowToggle);
57374
+ function ControlsOverflowMenuV2({
57375
+ items
57376
+ }) {
57377
+ const container = external_react_["default"].useContext(BlueprintProviders/* PortalContainerContext */.n) ?? undefined;
57378
+ const {
57379
+ setIsForced
57380
+ } = external_react_["default"].useContext(ControlsLayerContext);
57381
+ const triggerRef = external_react_["default"].useRef(null);
57382
+ const [isOpen, setIsOpen] = external_react_["default"].useState(false);
57383
+ const [resinAttributes, setResinAttributes] = external_react_["default"].useState({});
57384
+ const handleOpenChange = open => {
57385
+ if (open) {
57386
+ setResinAttributes(getResinAttributes(triggerRef.current));
57387
+ }
57388
+ setIsOpen(open);
57389
+ };
57390
+
57391
+ // The menu sits outside the controls layer, which would otherwise hide the bar under the open menu
57392
+ external_react_["default"].useEffect(() => {
57393
+ if (!isOpen) {
57394
+ return undefined;
57395
+ }
57396
+ setIsForced(true);
57397
+ return () => setIsForced(false);
57398
+ }, [isOpen, setIsForced]);
57399
+ return /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.DropdownMenu.Root, {
57400
+ modal: false,
57401
+ onOpenChange: handleOpenChange,
57402
+ open: isOpen
57403
+ }, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.DropdownMenu.Trigger, {
57404
+ ref: triggerRef,
57405
+ asChild: true,
57406
+ "data-overflow-ids": items.map(({
57407
+ id
57408
+ }) => id).join(' '),
57409
+ "data-overflow-trigger": ""
57410
+ }, /*#__PURE__*/external_react_["default"].createElement(ControlsOverflowToggleV2, null)), /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.DropdownMenu.Content, ControlsOverflowMenuV2_extends({
57411
+ align: "end",
57412
+ className: "bp-ControlsOverflowMenuV2",
57413
+ container: container,
57414
+ "data-testid": "bp-ControlsBar-overflowMenu",
57415
+ onEscapeKeyDown: stopMenuKeyPropagation/* stopEscapePropagation */.s,
57416
+ onKeyDown: stopMenuKeyPropagation/* stopKeyPropagation */.a,
57417
+ side: "top"
57418
+ }, resinAttributes), /*#__PURE__*/external_react_["default"].createElement(ControlsOverflowTriggerContext.Provider, {
57419
+ value: triggerRef
57420
+ }, items.map(({
57421
+ id,
57422
+ menu
57423
+ }) => /*#__PURE__*/external_react_["default"].createElement(external_react_["default"].Fragment, {
57424
+ key: id
57425
+ }, menu)))));
57426
+ }
57427
+ ;// ./src/lib/viewers/controls/controls-bar/shortcuts.ts
57428
+ /* provided dependency */ var shortcuts_ = __webpack_require__(441)["Tl"];
57429
+
57430
+ // iPads report a Mac user agent, and their keyboards have the command key too
57431
+ const isApplePlatform = () => /Mac|iPhone|iPad|iPod/.test(navigator.userAgent);
57432
+
57433
+ // Preview binds its shortcuts to both Cmd and Ctrl, so each platform is shown the modifier its keyboard labels
57434
+ function getShortcut(key) {
57435
+ return isApplePlatform() ? {
57436
+ keys: `Meta+${key}`,
57437
+ label: `⌘ + ${key}`
57438
+ } : {
57439
+ keys: `Control+${key}`,
57440
+ label: (0,util/* replacePlaceholders */.Lb)(shortcuts_('controls_shortcut_ctrl'), [key])
57441
+ };
57442
+ }
57443
+ ;// ./src/lib/viewers/controls/controls-bar/ControlsMenuItemV2.scss
57444
+ // extracted by mini-css-extract-plugin
57445
+
57446
+ ;// ./src/lib/viewers/controls/controls-bar/ControlsMenuItemV2.tsx
57447
+ const ControlsMenuItemV2_excluded = ["bareKey", "icon", "keepOpen", "label", "onSelect", "shortcutKey"];
57448
+ function ControlsMenuItemV2_extends() { return ControlsMenuItemV2_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, ControlsMenuItemV2_extends.apply(null, arguments); }
57449
+ function ControlsMenuItemV2_objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = ControlsMenuItemV2_objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
57450
+ function ControlsMenuItemV2_objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
57451
+
57452
+
57453
+
57454
+
57455
+
57456
+ // The menu form of a bar control. Toggles are plain rows whose label names the next action, since checkbox
57457
+ // rows reserve space for a checkmark that the mocks do not have.
57458
+ function ControlsMenuItemV2(_ref) {
57459
+ let {
57460
+ bareKey,
57461
+ icon,
57462
+ keepOpen,
57463
+ label,
57464
+ onSelect,
57465
+ shortcutKey
57466
+ } = _ref,
57467
+ rest = ControlsMenuItemV2_objectWithoutProperties(_ref, ControlsMenuItemV2_excluded);
57468
+ const triggerRef = external_react_["default"].useContext(ControlsOverflowTriggerContext);
57469
+ let shortcut = null;
57470
+ if (shortcutKey) {
57471
+ shortcut = getShortcut(shortcutKey);
57472
+ } else if (bareKey) {
57473
+ shortcut = {
57474
+ keys: bareKey,
57475
+ label: bareKey
57476
+ };
57477
+ }
57478
+ const handleSelect = event => {
57479
+ if (keepOpen) {
57480
+ event.preventDefault();
57481
+ }
57482
+ onSelect(triggerRef.current);
57483
+ };
57484
+ return /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.DropdownMenu.Item, ControlsMenuItemV2_extends({
57485
+ "aria-keyshortcuts": shortcut?.keys,
57486
+ onSelect: handleSelect
57487
+ }, rest, {
57488
+ className: "bp-ControlsMenuItemV2"
57489
+ }), /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.DropdownMenu.Item.StartElement, {
57490
+ icon: icon
57491
+ }), /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.DropdownMenu.Item.MainContent, {
57492
+ label: label
57493
+ }), shortcut && /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.DropdownMenu.Item.EndElement, {
57494
+ "aria-hidden": true
57495
+ }, shortcut.label));
57496
+ }
57497
+ ;// ./src/lib/viewers/controls/controls-bar/ResponsiveControlsBarV2.scss
57498
+ // extracted by mini-css-extract-plugin
57499
+
57500
+ ;// ./src/lib/viewers/controls/controls-bar/ResponsiveControlsBarV2.tsx
57501
+
57502
+
57503
+
57504
+
58189
57505
 
57506
+ // Moves controls into an overflow menu as the viewer narrows. Bars that always show everything, like the
57507
+ // annotations palette, use ControlsBarV2 directly.
57508
+ function ResponsiveControlsBarV2({
57509
+ items
57510
+ }) {
57511
+ const {
57512
+ barRef,
57513
+ overflowItems,
57514
+ visibleItems
57515
+ } = useControlsOverflow(items);
57516
+ if (!items.length) {
57517
+ return null;
57518
+ }
57519
+ return /*#__PURE__*/external_react_["default"].createElement(controls_bar_ControlsBarV2, {
57520
+ ref: barRef
57521
+ }, visibleItems.map(({
57522
+ control,
57523
+ id
57524
+ }) => /*#__PURE__*/external_react_["default"].createElement("div", {
57525
+ key: id,
57526
+ className: "bp-ResponsiveControlsBarV2-item",
57527
+ "data-overflow-id": id
57528
+ }, control)), overflowItems.length > 0 && /*#__PURE__*/external_react_["default"].createElement(ControlsOverflowMenuV2, {
57529
+ items: overflowItems
57530
+ }));
57531
+ }
58190
57532
  ;// ./src/lib/viewers/controls/findbar/FindBarToggleV2.tsx
58191
57533
  /* provided dependency */ var FindBarToggleV2_ = __webpack_require__(441)["Tl"];
58192
57534
 
@@ -58210,8 +57552,6 @@ function FindBarToggleV2({
58210
57552
  icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Search_ef3e4aba_default__
58211
57553
  })));
58212
57554
  }
58213
- ;// external "@box/blueprint-web-assets/icons/Medium/GridView"
58214
-
58215
57555
  ;// ./src/lib/viewers/controls/gallery/GalleryToggleV2.tsx
58216
57556
  /* provided dependency */ var GalleryToggleV2_ = __webpack_require__(441)["Tl"];
58217
57557
 
@@ -58391,8 +57731,6 @@ function PageControlsV2({
58391
57731
  icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ChevronDown_a545a634_default__
58392
57732
  }))));
58393
57733
  }
58394
- ;// external "@box/blueprint-web-assets/icons/Medium/RotateLeft"
58395
-
58396
57734
  ;// ./src/lib/viewers/controls/rotate/RotateControlV2.tsx
58397
57735
  /* provided dependency */ var RotateControlV2_ = __webpack_require__(441)["Tl"];
58398
57736
 
@@ -58411,8 +57749,6 @@ function RotateControlV2({
58411
57749
  icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_RotateLeft_c726d679_default__
58412
57750
  })));
58413
57751
  }
58414
- ;// external "@box/blueprint-web-assets/icons/Medium/Nav"
58415
-
58416
57752
  ;// external "@box/blueprint-web-assets/icons/MediumFilled/Nav"
58417
57753
 
58418
57754
  ;// ./src/lib/viewers/controls/sidebar/ThumbnailsToggleV2.scss
@@ -58449,7 +57785,87 @@ function ThumbnailsToggleV2({
58449
57785
  value: "thumbnails"
58450
57786
  }))));
58451
57787
  }
57788
+ ;// ./src/lib/viewers/controls/hooks/useMediaQuery.ts
57789
+
57790
+ const getMatches = query => typeof window.matchMedia === 'function' && window.matchMedia(query).matches;
57791
+ function useMediaQuery(query) {
57792
+ const [matches, setMatches] = external_react_["default"].useState(() => getMatches(query));
57793
+ external_react_["default"].useEffect(() => {
57794
+ if (typeof window.matchMedia !== 'function') {
57795
+ return undefined;
57796
+ }
57797
+ const mediaQueryList = window.matchMedia(query);
57798
+ const handleChange = () => setMatches(mediaQueryList.matches);
57799
+ handleChange();
57800
+ mediaQueryList.addEventListener('change', handleChange);
57801
+ return () => mediaQueryList.removeEventListener('change', handleChange);
57802
+ }, [query]);
57803
+ return matches;
57804
+ }
57805
+ ;// ./src/lib/viewers/controls/zoom/ZoomMenuItemsV2.scss
57806
+ // extracted by mini-css-extract-plugin
57807
+
57808
+ ;// ./src/lib/viewers/controls/zoom/ZoomMenuItemsV2.tsx
57809
+ /* provided dependency */ var ZoomMenuItemsV2_ = __webpack_require__(441)["Tl"];
57810
+
57811
+
57812
+
57813
+
57814
+
57815
+
57816
+
57817
+
57818
+
57819
+ // The overflow menu form of the zoom controls: the current scale, then zoom in and zoom out
57820
+ function ZoomMenuItemsV2({
57821
+ maxScale,
57822
+ minScale,
57823
+ onZoomIn,
57824
+ onZoomOut,
57825
+ resinTargetZoomIn = 'zoomIn',
57826
+ resinTargetZoomOut = 'zoomOut',
57827
+ scale
57828
+ }) {
57829
+ const {
57830
+ canZoomIn,
57831
+ canZoomOut,
57832
+ currentScale
57833
+ } = getZoomState({
57834
+ maxScale,
57835
+ minScale,
57836
+ scale
57837
+ });
57838
+ const scaleLabel = (0,util/* replacePlaceholders */.Lb)(ZoomMenuItemsV2_('controls_zoom_scale'), [`${Math.round(currentScale * 100)}%`]);
57839
+ return /*#__PURE__*/external_react_["default"].createElement(external_react_["default"].Fragment, null, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Text, {
57840
+ as: "div",
57841
+ className: "bp-ZoomMenuItemsV2-scale",
57842
+ color: "textOnLightSecondary",
57843
+ "data-testid": "bp-ZoomMenuItems-scale",
57844
+ variant: "caption"
57845
+ }, scaleLabel), /*#__PURE__*/external_react_["default"].createElement(ControlsMenuItemV2, {
57846
+ "data-resin-target": resinTargetZoomIn,
57847
+ "data-testid": "bp-ZoomControls-in-menuItem",
57848
+ disabled: !canZoomIn,
57849
+ icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Plus_aaa7b14f_default__,
57850
+ keepOpen: true,
57851
+ label: ZoomMenuItemsV2_('zoom_in'),
57852
+ onSelect: () => onZoomIn()
57853
+ }), /*#__PURE__*/external_react_["default"].createElement(ControlsMenuItemV2, {
57854
+ "data-resin-target": resinTargetZoomOut,
57855
+ "data-testid": "bp-ZoomControls-out-menuItem",
57856
+ disabled: !canZoomOut,
57857
+ icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Minus_cc9df143_default__,
57858
+ keepOpen: true,
57859
+ label: ZoomMenuItemsV2_('zoom_out'),
57860
+ onSelect: () => onZoomOut()
57861
+ }), /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.DropdownMenu.Separator, null));
57862
+ }
58452
57863
  ;// ./src/lib/viewers/doc/DocControlsV2.tsx
57864
+ /* provided dependency */ var DocControlsV2_ = __webpack_require__(441)["Tl"];
57865
+
57866
+
57867
+
57868
+
58453
57869
 
58454
57870
 
58455
57871
 
@@ -58469,6 +57885,23 @@ function ThumbnailsToggleV2({
58469
57885
 
58470
57886
 
58471
57887
 
57888
+
57889
+
57890
+ // The thumbnails sidebar only opens at this width (box-ui-elements $size-large-min)
57891
+ const THUMBNAILS_MEDIA_QUERY = '(min-width: 768px)';
57892
+
57893
+ // From the responsive mocks: find stays in the menu at every width, and gallery does too until the grid is
57894
+ // open. Then the grid toggle is the button itself, and nothing else collapses into a more options menu.
57895
+ // Rotate collapses next, then thumbnails and fullscreen together, then zoom. Page and the markup trigger
57896
+ // have no menu form and never collapse.
57897
+ const PRIORITY = {
57898
+ find: ALWAYS_OVERFLOW,
57899
+ fullscreen: 2,
57900
+ gallery: ALWAYS_OVERFLOW,
57901
+ rotate: 1,
57902
+ thumbnails: 2,
57903
+ zoom: 3
57904
+ };
58472
57905
  function DocControlsV2({
58473
57906
  annotationColor,
58474
57907
  annotationMode = AnnotationMode.NONE,
@@ -58499,6 +57932,7 @@ function DocControlsV2({
58499
57932
  }) {
58500
57933
  const annotationsToggleRef = external_react_["default"].useRef(null);
58501
57934
  const isFullscreen = useFullscreen();
57935
+ const canShowThumbnails = useMediaQuery(THUMBNAILS_MEDIA_QUERY);
58502
57936
 
58503
57937
  // Listed in the palette's button order, which is also the order the toggle falls back to
58504
57938
  const annotationModes = [];
@@ -58520,42 +57954,113 @@ function DocControlsV2({
58520
57954
  mode: AnnotationMode.NONE
58521
57955
  });
58522
57956
  };
58523
- return /*#__PURE__*/external_react_["default"].createElement(ExperiencesProvider, {
58524
- experiences: experiences
58525
- }, /*#__PURE__*/external_react_["default"].createElement(controls_bar_ControlsBarV2, null, !isGalleryOpen && /*#__PURE__*/external_react_["default"].createElement(external_react_["default"].Fragment, null, /*#__PURE__*/external_react_["default"].createElement(ThumbnailsToggleV2, {
58526
- isThumbnailsOpen: isThumbnailsOpen,
58527
- onThumbnailsToggle: onThumbnailsToggle
58528
- }), /*#__PURE__*/external_react_["default"].createElement(FindBarToggleV2, {
58529
- onFindBarToggle: onFindBarToggle
58530
- }), /*#__PURE__*/external_react_["default"].createElement(PageControlsV2, {
58531
- onPageChange: onPageChange,
58532
- onPageSubmit: onPageSubmit,
58533
- pageCount: pageCount,
58534
- pageNumber: pageNumber
58535
- })), (!isGalleryOpen || hasGalleryZoom) && /*#__PURE__*/external_react_["default"].createElement(ZoomControlsV2, {
58536
- maxScale: maxScale,
58537
- minScale: minScale,
58538
- onZoomIn: onZoomIn,
58539
- onZoomOut: onZoomOut,
57957
+ const zoomProps = {
57958
+ maxScale,
57959
+ minScale,
57960
+ onZoomIn,
57961
+ onZoomOut,
58540
57962
  resinTargetZoomIn: isGalleryOpen ? 'galleryZoomIn' : undefined,
58541
57963
  resinTargetZoomOut: isGalleryOpen ? 'galleryZoomOut' : undefined,
58542
- scale: scale
58543
- }), !isGalleryOpen && onRotateLeft && /*#__PURE__*/external_react_["default"].createElement(RotateControlV2, {
58544
- onRotateLeft: onRotateLeft
58545
- }), /*#__PURE__*/external_react_["default"].createElement(GalleryToggleV2, {
58546
- isGalleryOpen: isGalleryOpen,
58547
- onGalleryToggle: onGalleryToggle
58548
- }), /*#__PURE__*/external_react_["default"].createElement(FullscreenToggleV2, {
58549
- onFullscreenToggle: onFullscreenToggle
58550
- }), hasAnnotations && /*#__PURE__*/external_react_["default"].createElement(external_react_["default"].Fragment, null, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Separator, null), /*#__PURE__*/external_react_["default"].createElement(AnnotationsExitButtonV2, {
58551
- onClick: handleAnnotationsExit
58552
- }), /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsToggleV2, {
58553
- ref: annotationsToggleRef,
58554
- annotationMode: annotationMode,
58555
- modes: annotationModes,
58556
- onAnnotationModeClick: onAnnotationModeClick,
58557
- onAnnotationModeEscape: onAnnotationModeEscape
58558
- }))), hasAnnotations && annotationMode !== AnnotationMode.NONE && /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsPaletteV2, null, /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsPaletteV2.Modes, {
57964
+ scale
57965
+ };
57966
+
57967
+ // Each control is gated here rather than only inside it, so the bar never reserves width for a control
57968
+ // that would render nothing
57969
+ const items = [!isGalleryOpen && !isFullscreen && canShowThumbnails && onThumbnailsToggle && {
57970
+ control: /*#__PURE__*/external_react_["default"].createElement(ThumbnailsToggleV2, {
57971
+ isThumbnailsOpen: isThumbnailsOpen,
57972
+ onThumbnailsToggle: onThumbnailsToggle
57973
+ }),
57974
+ id: 'thumbnails',
57975
+ menu: /*#__PURE__*/external_react_["default"].createElement(external_react_["default"].Fragment, null, /*#__PURE__*/external_react_["default"].createElement(ControlsMenuItemV2, {
57976
+ "data-resin-target": "thumbnails",
57977
+ icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Nav_d41e959a_default__,
57978
+ label: isThumbnailsOpen ? DocControlsV2_('controls_hide_thumbnails') : DocControlsV2_('controls_show_thumbnails'),
57979
+ onSelect: () => onThumbnailsToggle()
57980
+ }), /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.DropdownMenu.Separator, null)),
57981
+ priority: PRIORITY.thumbnails
57982
+ }, !isGalleryOpen && pageCount > 1 && {
57983
+ control: /*#__PURE__*/external_react_["default"].createElement(PageControlsV2, {
57984
+ onPageChange: onPageChange,
57985
+ onPageSubmit: onPageSubmit,
57986
+ pageCount: pageCount,
57987
+ pageNumber: pageNumber
57988
+ }),
57989
+ id: 'page'
57990
+ }, (!isGalleryOpen || hasGalleryZoom) && {
57991
+ control: /*#__PURE__*/external_react_["default"].createElement(ZoomControlsV2, zoomProps),
57992
+ id: 'zoom',
57993
+ menu: !isGalleryOpen && /*#__PURE__*/external_react_["default"].createElement(ZoomMenuItemsV2, zoomProps),
57994
+ priority: isGalleryOpen ? undefined : PRIORITY.zoom
57995
+ }, !isGalleryOpen && onFindBarToggle && {
57996
+ control: /*#__PURE__*/external_react_["default"].createElement(FindBarToggleV2, {
57997
+ onFindBarToggle: onFindBarToggle
57998
+ }),
57999
+ id: 'find',
58000
+ menu: /*#__PURE__*/external_react_["default"].createElement(ControlsMenuItemV2, {
58001
+ "data-resin-target": "findBar",
58002
+ icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_Search_ef3e4aba_default__,
58003
+ label: DocControlsV2_('controls_find'),
58004
+ onSelect: onFindBarToggle,
58005
+ shortcutKey: "F"
58006
+ }),
58007
+ priority: PRIORITY.find
58008
+ }, !isGalleryOpen && onRotateLeft && {
58009
+ control: /*#__PURE__*/external_react_["default"].createElement(RotateControlV2, {
58010
+ onRotateLeft: onRotateLeft
58011
+ }),
58012
+ id: 'rotate',
58013
+ menu: /*#__PURE__*/external_react_["default"].createElement(ControlsMenuItemV2, {
58014
+ "data-resin-target": "rotate",
58015
+ icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_RotateLeft_c726d679_default__,
58016
+ bareKey: "R",
58017
+ label: DocControlsV2_('controls_rotate_document'),
58018
+ onSelect: () => onRotateLeft()
58019
+ }),
58020
+ priority: PRIORITY.rotate
58021
+ }, onGalleryToggle && {
58022
+ control: /*#__PURE__*/external_react_["default"].createElement(GalleryToggleV2, {
58023
+ isGalleryOpen: isGalleryOpen,
58024
+ onGalleryToggle: onGalleryToggle
58025
+ }),
58026
+ id: 'gallery',
58027
+ menu: !isGalleryOpen && /*#__PURE__*/external_react_["default"].createElement(ControlsMenuItemV2, {
58028
+ "data-resin-target": "galleryView",
58029
+ icon: __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_GridView_ac92b674_default__,
58030
+ label: DocControlsV2_('controls_view_as_grid'),
58031
+ onSelect: () => onGalleryToggle()
58032
+ }),
58033
+ priority: isGalleryOpen ? undefined : PRIORITY.gallery
58034
+ }, {
58035
+ control: /*#__PURE__*/external_react_["default"].createElement(FullscreenToggleV2, {
58036
+ onFullscreenToggle: onFullscreenToggle
58037
+ }),
58038
+ id: 'fullscreen',
58039
+ menu: !isGalleryOpen && /*#__PURE__*/external_react_["default"].createElement(ControlsMenuItemV2, {
58040
+ "data-resin-target": "fullscreen",
58041
+ icon: isFullscreen ? __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ArrowsMinimize_35faab95_default__ : __WEBPACK_EXTERNAL_MODULE__box_blueprint_web_assets_icons_Medium_ArrowsMaximize_12b9ae40_default__,
58042
+ bareKey: "F",
58043
+ label: isFullscreen ? DocControlsV2_('exit_fullscreen') : DocControlsV2_('enter_fullscreen'),
58044
+ onSelect: trigger => onFullscreenToggle(!isFullscreen, trigger)
58045
+ }),
58046
+ priority: isGalleryOpen ? undefined : PRIORITY.fullscreen
58047
+ }, hasAnnotations && {
58048
+ control: /*#__PURE__*/external_react_["default"].createElement(external_react_["default"].Fragment, null, /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Toolbar.Separator, null), /*#__PURE__*/external_react_["default"].createElement(AnnotationsExitButtonV2, {
58049
+ onClick: handleAnnotationsExit
58050
+ }), /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsToggleV2, {
58051
+ ref: annotationsToggleRef,
58052
+ annotationMode: annotationMode,
58053
+ modes: annotationModes,
58054
+ onAnnotationModeClick: onAnnotationModeClick,
58055
+ onAnnotationModeEscape: onAnnotationModeEscape
58056
+ })),
58057
+ id: 'annotations'
58058
+ }];
58059
+ return /*#__PURE__*/external_react_["default"].createElement(ExperiencesProvider, {
58060
+ experiences: experiences
58061
+ }, /*#__PURE__*/external_react_["default"].createElement(ResponsiveControlsBarV2, {
58062
+ items: items.filter(item => !!item)
58063
+ }), hasAnnotations && annotationMode !== AnnotationMode.NONE && /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsPaletteV2, null, /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsPaletteV2.Modes, {
58559
58064
  annotationMode: annotationMode,
58560
58065
  onAnnotationModeClick: onAnnotationModeClick
58561
58066
  }, annotationModes.map(mode => /*#__PURE__*/external_react_["default"].createElement(annotations_AnnotationsPaletteV2.Mode, {
@@ -59887,8 +59392,10 @@ function GalleryGrid_toPrimitive(t, r) { if ("object" != typeof t || !t) return
59887
59392
 
59888
59393
 
59889
59394
 
59395
+
59890
59396
  const GalleryTile = /*#__PURE__*/external_react_["default"].memo(function GalleryTile({
59891
59397
  pageNum,
59398
+ isBlueprintEnabled,
59892
59399
  isFocused,
59893
59400
  ariaColIndex,
59894
59401
  imageSrc,
@@ -59925,7 +59432,11 @@ const GalleryTile = /*#__PURE__*/external_react_["default"].memo(function Galler
59925
59432
  }, /*#__PURE__*/external_react_["default"].createElement("span", {
59926
59433
  "aria-hidden": "true",
59927
59434
  className: "bp-gallery-tile-badge"
59928
- }, pageNum), imageSrc ? /*#__PURE__*/external_react_["default"].createElement("img", {
59435
+ }, isBlueprintEnabled ? /*#__PURE__*/external_react_["default"].createElement(blueprint_web_.Text, {
59436
+ as: "span",
59437
+ color: "textOnDarkDefault",
59438
+ variant: "bodyDefault"
59439
+ }, pageNum) : pageNum), imageSrc ? /*#__PURE__*/external_react_["default"].createElement("img", {
59929
59440
  alt: "",
59930
59441
  src: imageSrc,
59931
59442
  style: contentStyle
@@ -59940,6 +59451,7 @@ function GalleryGrid({
59940
59451
  currentPage,
59941
59452
  getPageRatio,
59942
59453
  isAriaGridEnabled = false,
59454
+ isBlueprintEnabled = false,
59943
59455
  isPinchZoomEnabled = false,
59944
59456
  isTouchZoomEnabled = false,
59945
59457
  onClose,
@@ -60427,6 +59939,7 @@ function GalleryGrid({
60427
59939
  key: i,
60428
59940
  ariaColIndex: isAriaGridEnabled ? getColumnIndex(i, columnCount) : undefined,
60429
59941
  imageSrc: highResImages[i] || loadedImages[i],
59942
+ isBlueprintEnabled: isBlueprintEnabled,
60430
59943
  isFocused: i === focusedPage,
60431
59944
  onClick: handleTileClick,
60432
59945
  onFocus: handleTileFocus,
@@ -60489,6 +60002,8 @@ function GalleryController_toPrimitive(t, r) { if ("object" != typeof t || !t) r
60489
60002
 
60490
60003
 
60491
60004
 
60005
+
60006
+
60492
60007
  // Controller-owned shape: GalleryGrid only sees the read surface (GalleryThumbnail),
60493
60008
  // but the controller also needs destroy() to invalidate the cache on rotate/teardown.
60494
60009
 
@@ -60755,10 +60270,11 @@ class GalleryController {
60755
60270
  return;
60756
60271
  }
60757
60272
  const pdfViewer = this.getPdfViewer();
60758
- this.galleryRoot.render(/*#__PURE__*/external_react_["default"].createElement(GalleryGrid, {
60273
+ const grid = /*#__PURE__*/external_react_["default"].createElement(GalleryGrid, {
60759
60274
  currentPage: pdfViewer.currentPageNumber,
60760
60275
  getPageRatio: this.getPageRatio,
60761
60276
  isAriaGridEnabled: this.isEnhancedGalleryEnabled,
60277
+ isBlueprintEnabled: isFeatureEnabled(this.features, constants/* BLUEPRINT_MIGRATION_SUPPORTING_UI */.Ed),
60762
60278
  isPinchZoomEnabled: this.isEnhancedGalleryEnabled && isFeatureEnabled(this.features, 'pinchToZoom.enabled'),
60763
60279
  isTouchZoomEnabled: this.isEnhancedGalleryEnabled && this.hasTouch,
60764
60280
  onClose: this.toggle,
@@ -60769,7 +60285,10 @@ class GalleryController {
60769
60285
  pageCount: pdfViewer.pagesCount,
60770
60286
  scale: this.galleryScale,
60771
60287
  thumbnail: this.galleryThumbnail
60772
- }));
60288
+ });
60289
+ this.galleryRoot.render(isBlueprintEnabled(this.features) ? /*#__PURE__*/external_react_["default"].createElement(BlueprintProviders/* default */.A, {
60290
+ container: this.containerEl
60291
+ }, grid) : grid);
60773
60292
  }
60774
60293
  }
60775
60294
  ;// ./src/lib/logUtils.js
@@ -62109,8 +61628,6 @@ class ThumbnailsSidebar {
62109
61628
  }
62110
61629
  }
62111
61630
  /* harmony default export */ const lib_ThumbnailsSidebar = (ThumbnailsSidebar);
62112
- // EXTERNAL MODULE: external "react-dom"
62113
- var external_react_dom_ = __webpack_require__(7516);
62114
61631
  ;// ./src/lib/ThumbnailsSidebarV2.scss
62115
61632
  // extracted by mini-css-extract-plugin
62116
61633
 
@@ -62303,6 +61820,7 @@ function DocBaseViewer_toPrimitive(t, r) { if ("object" != typeof t || !t) retur
62303
61820
 
62304
61821
 
62305
61822
 
61823
+
62306
61824
 
62307
61825
 
62308
61826
  const DOC_FIRST_PAGES_ENABLED = 'docFirstPages.enabled';
@@ -62465,9 +61983,17 @@ class DocBaseViewer extends viewers_BaseViewer {
62465
61983
  getThumbnailsSidebar: () => this.thumbnailsSidebar,
62466
61984
  setPage: n => this.setPage(n),
62467
61985
  toggleThumbnails: () => this.toggleThumbnails(),
62468
- requestUiUpdate: () => this.renderUI(),
61986
+ requestUiUpdate: () => {
61987
+ // The v2 bar moves the gallery toggle between the bar and its overflow menu, so the bar must be
61988
+ // committed before focusToggle looks the toggle up
61989
+ if (this.featureEnabled(constants/* BLUEPRINT_MIGRATION_CONTROLS_BAR */.OQ)) {
61990
+ (0,external_react_dom_.flushSync)(() => this.renderUI());
61991
+ } else {
61992
+ this.renderUI();
61993
+ }
61994
+ },
62469
61995
  focusToggle: () => {
62470
- const toggle = this.containerEl.querySelector('.bp-GalleryToggle, [data-bp-gallery-toggle]');
61996
+ const toggle = this.containerEl.querySelector('.bp-GalleryToggle, [data-bp-gallery-toggle], [data-overflow-ids~="gallery"]');
62471
61997
  if (toggle && toggle.focus) {
62472
61998
  toggle.focus();
62473
61999
  }
@@ -62701,7 +62227,7 @@ class DocBaseViewer extends viewers_BaseViewer {
62701
62227
  const isWatermarked = file && file.watermark_info && file.watermark_info.is_watermarked;
62702
62228
  if (assets) {
62703
62229
  if (this.featureEnabled('useNpmPdfjs') || (0,isNpmBuild/* isNpmBuild */.w)()) {
62704
- this.prefetchAssets(EXIF_READER, docAssets_CSS);
62230
+ this.prefetchAssets(EXIF_READER, []);
62705
62231
  } else {
62706
62232
  const ASSETS = this.featureEnabled(DOC_FIRST_PAGES_ENABLED) ? [...JS_NO_EXIF, ...EXIF_READER] : docAssets_JS;
62707
62233
  this.prefetchAssets(ASSETS, docAssets_CSS);
@@ -63156,6 +62682,22 @@ class DocBaseViewer extends viewers_BaseViewer {
63156
62682
  case ']':
63157
62683
  this.nextPage();
63158
62684
  break;
62685
+ case 'r':
62686
+ case 'R':
62687
+ // The rotate control is hidden while the gallery is open, so the key follows it.
62688
+ // These bare keys belong to the v2 controls bar; the older bar has no such shortcuts.
62689
+ if (this.featureEnabled(constants/* BLUEPRINT_MIGRATION_CONTROLS_BAR */.OQ) && !this.galleryController?.isOpen && this.featureEnabled('rotate.enabled')) {
62690
+ this.rotateLeft();
62691
+ break;
62692
+ }
62693
+ return this.findBar ? this.findBar.onKeydown(event) : false;
62694
+ case 'f':
62695
+ case 'F':
62696
+ if (this.featureEnabled(constants/* BLUEPRINT_MIGRATION_CONTROLS_BAR */.OQ)) {
62697
+ this.toggleFullscreen();
62698
+ break;
62699
+ }
62700
+ return this.findBar ? this.findBar.onKeydown(event) : false;
63159
62701
  default:
63160
62702
  if (this.findBar) {
63161
62703
  return this.findBar.onKeydown(event);
@@ -63365,7 +62907,7 @@ class DocBaseViewer extends viewers_BaseViewer {
63365
62907
  container: this.docEl,
63366
62908
  eventBus: this.pdfEventBus,
63367
62909
  findController: this.pdfFindController,
63368
- imageResourcesPath: assetUrlCreator(IMAGES),
62910
+ imageResourcesPath: this.featureEnabled('useNpmPdfjs') ? assetUrlCreator('pdfjs-images/') : assetUrlCreator(IMAGES),
63369
62911
  linkService: this.pdfLinkService,
63370
62912
  maxCanvasPixels: this.isMobile ? MOBILE_MAX_CANVAS_SIZE : -1,
63371
62913
  renderInteractiveForms: false,
@@ -71509,7 +71051,9 @@ class Preview extends (events_default()) {
71509
71051
  // Start the preview load and render timers when the user starts to perceive preview's load
71510
71052
  lib_Timer.start(lib_Timer.createTag(this.file.id, lib_events/* LOAD_METRIC */.Yy.previewLoadTime));
71511
71053
  lib_Timer.start(lib_Timer.createTag(this.file.id, lib_events/* RENDER_METRIC */.QQ));
71512
- lib_Timer.start(lib_Timer.createTag(this.file.id, lib_events/* FIRST_RENDER_METRIC */.VT));
71054
+ const firstRenderTag = lib_Timer.createTag(this.file.id, lib_events/* FIRST_RENDER_METRIC */.VT);
71055
+ lib_Timer.reset(firstRenderTag);
71056
+ lib_Timer.start(firstRenderTag);
71513
71057
 
71514
71058
  // If file version ID is specified, increment retry count if it matches current file version ID
71515
71059
  if (fileVersionId) {