From f6e44f83431121943af9916a0a677078aa73e36b Mon Sep 17 00:00:00 2001 From: Markos Gogoulos Date: Tue, 10 Feb 2026 09:33:52 +0200 Subject: [PATCH] cate --- files/admin.py | 4 ++++ files/models/media.py | 2 +- .../media-page/ViewerInfoContent.js | 19 +++++++++++++++---- .../src/static/js/pages/CategoriesPage.tsx | 4 ++-- frontend/src/static/js/pages/SearchPage.js | 4 ++-- static/js/categories.js | 2 +- static/js/media.js | 2 +- static/js/search.js | 2 +- 8 files changed, 27 insertions(+), 12 deletions(-) diff --git a/files/admin.py b/files/admin.py index e56a8f19..d25a1b94 100644 --- a/files/admin.py +++ b/files/admin.py @@ -146,6 +146,8 @@ class CategoryAdmin(admin.ModelAdmin): list_filter.insert(0, "is_rbac_category") if getattr(settings, 'USE_IDENTITY_PROVIDERS', False): list_filter.insert(-1, "identity_provider") + if getattr(settings, 'USE_LTI', False): + list_filter.append("is_lms_course") return list_filter @@ -155,6 +157,8 @@ class CategoryAdmin(admin.ModelAdmin): list_display.insert(-1, "is_rbac_category") if getattr(settings, 'USE_IDENTITY_PROVIDERS', False): list_display.insert(-1, "identity_provider") + if getattr(settings, 'USE_LTI', False): + list_display.insert(-1, "is_lms_course") return list_display diff --git a/files/models/media.py b/files/models/media.py index bf8966d8..9f582cca 100644 --- a/files/models/media.py +++ b/files/models/media.py @@ -736,7 +736,7 @@ class Media(models.Model): ret = [] for cat in self.category.all(): - ret.append({"title": cat.title, "url": cat.get_absolute_url()}) + ret.append({"title": cat.title, "url": cat.get_absolute_url(), "is_lms_course": cat.is_lms_course}) return ret @property diff --git a/frontend/src/static/js/components/media-page/ViewerInfoContent.js b/frontend/src/static/js/components/media-page/ViewerInfoContent.js index 212ff37f..21a51d81 100755 --- a/frontend/src/static/js/components/media-page/ViewerInfoContent.js +++ b/frontend/src/static/js/components/media-page/ViewerInfoContent.js @@ -94,11 +94,18 @@ export default function ViewerInfoContent(props) { !PageStore.get('config-enabled').taxonomies.tags || PageStore.get('config-enabled').taxonomies.tags.enabled ? metafield(MediaPageStore.get('media-tags')) : []; + let mediaCategories = MediaPageStore.get('media-categories'); + + // Filter to show only LMS courses when in embed mode + if (inEmbeddedApp()) { + mediaCategories = mediaCategories.filter(cat => cat.is_lms_course === true); + } + const categoriesContent = PageStore.get('config-options').pages.media.categoriesWithTitle ? [] : !PageStore.get('config-enabled').taxonomies.categories || PageStore.get('config-enabled').taxonomies.categories.enabled - ? metafield(MediaPageStore.get('media-categories')) + ? metafield(mediaCategories) : []; let summary = MediaPageStore.get('media-summary'); @@ -220,9 +227,13 @@ export default function ViewerInfoContent(props) { diff --git a/frontend/src/static/js/pages/CategoriesPage.tsx b/frontend/src/static/js/pages/CategoriesPage.tsx index b80a0af2..bcdc53b9 100644 --- a/frontend/src/static/js/pages/CategoriesPage.tsx +++ b/frontend/src/static/js/pages/CategoriesPage.tsx @@ -3,14 +3,14 @@ import { ApiUrlConsumer } from '../utils/contexts/'; import { MediaListWrapper } from '../components/MediaListWrapper'; import { LazyLoadItemListAsync } from '../components/item-list/LazyLoadItemListAsync.jsx'; import { Page } from './Page'; -import { translateString } from '../utils/helpers/'; +import { translateString, inEmbeddedApp } from '../utils/helpers/'; interface CategoriesPageProps { id?: string; title?: string; } -export const CategoriesPage: React.FC = ({ id = 'categories', title = translateString('Categories') }) => ( +export const CategoriesPage: React.FC = ({ id = 'categories', title = inEmbeddedApp() ? translateString('Courses') : translateString('Categories') }) => ( {(apiUrl) => ( diff --git a/frontend/src/static/js/pages/SearchPage.js b/frontend/src/static/js/pages/SearchPage.js index 57f144e1..f55a2677 100644 --- a/frontend/src/static/js/pages/SearchPage.js +++ b/frontend/src/static/js/pages/SearchPage.js @@ -7,7 +7,7 @@ import { LazyLoadItemListAsync } from '../components/item-list/LazyLoadItemListA import { SearchMediaFiltersRow } from '../components/search-filters/SearchMediaFiltersRow'; import { SearchResultsFilters } from '../components/search-filters/SearchResultsFilters'; import { Page } from './_Page'; -import { translateString } from '../utils/helpers/'; +import { translateString, inEmbeddedApp } from '../utils/helpers/'; export class SearchPage extends Page { constructor(props) { @@ -115,7 +115,7 @@ export class SearchPage extends Page { } else { if (this.state.searchCategories) { title = null === this.state.resultsCount || 0 === this.state.resultsCount ? 'No' : this.state.resultsCount; - title += ' ' + translateString('media in category') + ' "' + this.state.searchCategories + '"'; + title += ' ' + translateString(inEmbeddedApp() ? 'media in course' : 'media in category') + ' "' + this.state.searchCategories + '"'; } else if (this.state.searchTags) { title = null === this.state.resultsCount || 0 === this.state.resultsCount ? 'No' : this.state.resultsCount; title += ' ' + translateString('media in tag') + ' "' + this.state.searchTags + '"'; diff --git a/static/js/categories.js b/static/js/categories.js index 2f65704f..3b6bd6be 100644 --- a/static/js/categories.js +++ b/static/js/categories.js @@ -1 +1 @@ -!function(){var e,t={83:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.CategoriesPage=void 0;var a=r(n(9471)),l=n(8790),i=n(2855),o=n(7731),u=n(9287),s=n(7591);t.CategoriesPage=function(e){var t=e.id,n=void 0===t?"categories":t,r=e.title,c=void 0===r?(0,s.translateString)("Categories"):r;return a.default.createElement(u.Page,{id:n},a.default.createElement(l.ApiUrlConsumer,null,(function(e){return a.default.createElement(i.MediaListWrapper,{title:c,className:"items-list-ver"},a.default.createElement(o.LazyLoadItemListAsync,{singleLinkContent:!0,inCategoriesList:!0,requestUrl:e.archive.categories}))})))}},463:function(e,t,n){"use strict";n.d(t,{c:function(){return l}});var r=n(4571),a=n.n(r);function l(e,t){let n=a()(e,{});return""!==n.origin&&"null"!==n.origin&&n.origin||(n=a()(t+"/"+e.replace(/^\//g,""),{})),n.toString()}},977:function(e,t,n){"use strict";n.d(t,{A:function(){return a}});var r=n(7143);function a(e,t){return r.register(e[t].bind(e)),e}},1702:function(e,t,n){"use strict";n.d(t,{R:function(){return a},e:function(){return l}});var r=n(6403);const a=function(e,t,n){return void 0===e[t]||(a=e[t])===Math.trunc(a)&&a>=0?null:(0,r.m)(["Invalid prop `"+t+"` of type `"+typeof e[t]+"` supplied to `"+(n||"N/A")+"`, expected `positive integer or zero` ("+e[t]+")."]);var a},l=function(e,t,n){return void 0===e[t]||(a=e[t])===Math.trunc(a)&&a>0?null:(0,r.m)(["Invalid prop `"+t+"` of type `"+typeof e[t]+"` supplied to `"+(n||"N/A")+"`, expected `positive integer` ("+e[t]+")."]);var a}},1936:function(e,t,n){"use strict";n.r(t),n.d(t,{PageHeader:function(){return r.z},PageMain:function(){return a.P},PageSidebar:function(){return l.E},PageSidebarContentOverlay:function(){return i.B}});var r=n(1254),a=n(3212),l=n(795),i=n(1470)},2268:function(e,t,n){"use strict";n.r(t)},2855:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MediaListWrapper=void 0;var a=r(n(9471)),l=n(6190),i=n(3566),o=n(5594),u=n(7664),s=n(8790),c=n(7591);n(2101),t.MediaListWrapper=function(e){var t=e.title,n=e.viewAllLink,r=e.viewAllText,d=e.className,f=e.style,v=e.children,m=e.showBulkActions,p=void 0!==m&&m,g=e.selectedCount,b=void 0===g?0:g,y=e.totalCount,h=void 0===y?0:y,S=e.onBulkAction,w=void 0===S?function(){}:S,A=e.onSelectAll,E=void 0===A?function(){}:A,_=e.onDeselectAll,k=void 0===_?function(){}:_,C=e.showAddMediaButton,P=void 0!==C&&C;return a.default.createElement("div",{className:(d?d+" ":"")+"media-list-wrapper",style:f},a.default.createElement(l.MediaListRow,{title:t,viewAllLink:n,viewAllText:r},p&&a.default.createElement(s.LinksConsumer,null,(function(e){return a.default.createElement("div",{className:"bulk-actions-container"},a.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:"10px"}},a.default.createElement(i.BulkActionsDropdown,{selectedCount:b,onActionSelect:w}),a.default.createElement(o.SelectAllCheckbox,{totalCount:h,selectedCount:b,onSelectAll:E,onDeselectAll:k})),P&&a.default.createElement("div",{className:"add-media-button"},a.default.createElement("a",{href:e.user.addMedia,title:(0,c.translateString)("Add media")},a.default.createElement(u.CircleIconButton,null,a.default.createElement(u.MaterialIcon,{type:"video_call"})))))})),v||null))}},3461:function(e,t,n){"use strict";var r=n(2985),a=n(83);(0,r.C)("page-categories",a.CategoriesPage)},3566:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.BulkActionsDropdown=void 0;var a=r(n(9471));n(2268);var l=n(7591),i=[{value:"add-remove-coviewers",label:(0,l.translateString)("Add / Remove Co-Viewers"),enabled:!0},{value:"add-remove-coeditors",label:(0,l.translateString)("Add / Remove Co-Editors"),enabled:!0},{value:"add-remove-coowners",label:(0,l.translateString)("Add / Remove Co-Owners"),enabled:!0},{value:"add-remove-playlist",label:(0,l.translateString)("Add to / Remove from Playlist"),enabled:!0},{value:"add-remove-category",label:(0,l.translateString)("Add to / Remove from Category"),enabled:!0},{value:"add-remove-tags",label:(0,l.translateString)("Add / Remove Tags"),enabled:!0},{value:"enable-comments",label:(0,l.translateString)("Enable Comments"),enabled:!0},{value:"disable-comments",label:(0,l.translateString)("Disable Comments"),enabled:!0},{value:"enable-download",label:(0,l.translateString)("Enable Download"),enabled:!0},{value:"disable-download",label:(0,l.translateString)("Disable Download"),enabled:!0},{value:"publish-state",label:(0,l.translateString)("Publish State"),enabled:!0},{value:"change-owner",label:(0,l.translateString)("Change Owner"),enabled:!0},{value:"copy-media",label:(0,l.translateString)("Copy Media"),enabled:!0},{value:"delete-media",label:(0,l.translateString)("Delete Media"),enabled:!0}];t.BulkActionsDropdown=function(e){var t=e.selectedCount,n=e.onActionSelect,r=0===t,o=r?(0,l.translateString)("Bulk Actions"):"".concat((0,l.translateString)("Bulk Actions")," (").concat(t," ").concat((0,l.translateString)("selected"),")");return a.default.createElement("div",{className:"bulk-actions-dropdown"},a.default.createElement("select",{className:"bulk-actions-select"+(r?" no-selection":""),onChange:function(e){var t=e.target.value;t&&(r||n(t),e.target.value="")},value:"","aria-label":(0,l.translateString)("Bulk Actions")},a.default.createElement("option",{value:"",disabled:!0},o),i.map((function(e){return a.default.createElement("option",{key:e.value,value:e.value,disabled:r||!e.enabled},e.label)}))))}},4376:function(e,t,n){"use strict";n.r(t)},4685:function(e,t,n){"use strict";n.d(t,{ItemListAsync:function(){return f}});var r=n(9471),a=n(8713),l=n.n(a),i=n(5338),o=n(4737),u=n(2495),s=n(4433),c=n(5633);function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t(l(new c.B(e.pageItems,e.maxItems,e.firstItemRequestUrl,e.requestUrl,m,p)),()=>{a&&(a.cancelAll(),l(null))})),[]),t?n.length?r.createElement("div",{className:o.listOuter},g(),r.createElement("div",{ref:f,className:"items-list-wrap"},r.createElement("div",{ref:v,className:o.list},n.map(((t,n)=>r.createElement(s.c,d({key:n},(0,s.k)(e,t,n))))))),b()):null:r.createElement(u.e,{className:o.listOuter})}f.propTypes={...o.k.propTypes,items:l().array,requestUrl:l().string.isRequired,firstItemRequestUrl:l().string},f.defaultProps={...o.k.defaultProps,requestUrl:null,firstItemRequestUrl:null,pageItems:24}},5594:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectAllCheckbox=void 0;var a=r(n(9471));n(4376);var l=n(7591);t.SelectAllCheckbox=function(e){var t=e.totalCount,n=e.selectedCount,r=e.onSelectAll,i=e.onDeselectAll,o=t>0&&n===t,u=n>0&&n(d(new s.B(e.pageItems,e.maxItems,e.firstItemRequestUrl,e.requestUrl,v,m,e.onResponseDataLoaded)),a.PageStore.on("window_scroll",p),a.PageStore.on("document_visibility_change",g),p(),()=>{a.PageStore.removeListener("window_scroll",p),a.PageStore.removeListener("document_visibility_change",g),i&&(i.cancelAll(),d(null))})),[]),(0,r.useEffect)((()=>{e.onItemsUpdate&&t.length>0&&e.onItemsUpdate(t)}),[t]),n?t.length?r.createElement("div",{className:f.listOuter},h(),r.createElement("div",{ref:b,className:"items-list-wrap"},r.createElement("div",{ref:y,className:f.list},t.map(((t,n)=>r.createElement(u.c,c({key:n},(0,u.k)(e,t,n),{showSelection:e.showSelection,hasAnySelection:e.hasAnySelection,isSelected:e.selectedMedia&&e.selectedMedia.has(t.friendly_token||t.uid||t.id),onSelectionChange:e.onMediaSelection,mediaId:t.friendly_token||t.uid||t.id})))))),S()):null:r.createElement(o.e,{className:f.listOuter})}d.propTypes={...i.ItemListAsync.propTypes},d.defaultProps={...i.ItemListAsync.defaultProps,pageItems:2}},8004:function(e,t,n){"use strict";n.d(t,{R:function(){return l},z:function(){return i}});var r=n(8974);const a=function(){for(var e=arguments.length,t=new Array(e),n=0;n=l)&&Object.keys(r.O).every((function(e){return r.O[e](n[u])}))?n.splice(u--,1):(o=!1,l0&&e[c-1][2]>l;c--)e[c]=e[c-1];e[c]=[n,a,l]},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,{a:t}),t},r.d=function(e,t){for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.j=639,function(){var e={639:0};r.O.j=function(t){return 0===e[t]};var t=function(t,n){var a,l,i=n[0],o=n[1],u=n[2],s=0;if(i.some((function(t){return 0!==e[t]}))){for(a in o)r.o(o,a)&&(r.m[a]=o[a]);if(u)var c=u(r)}for(t&&t(n);s=0?null:(0,r.m)(["Invalid prop `"+t+"` of type `"+typeof e[t]+"` supplied to `"+(n||"N/A")+"`, expected `positive integer or zero` ("+e[t]+")."]);var a},l=function(e,t,n){return void 0===e[t]||(a=e[t])===Math.trunc(a)&&a>0?null:(0,r.m)(["Invalid prop `"+t+"` of type `"+typeof e[t]+"` supplied to `"+(n||"N/A")+"`, expected `positive integer` ("+e[t]+")."]);var a}},1936:function(e,t,n){"use strict";n.r(t),n.d(t,{PageHeader:function(){return r.z},PageMain:function(){return a.P},PageSidebar:function(){return l.E},PageSidebarContentOverlay:function(){return i.B}});var r=n(1254),a=n(3212),l=n(795),i=n(1470)},2268:function(e,t,n){"use strict";n.r(t)},2855:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MediaListWrapper=void 0;var a=r(n(9471)),l=n(6190),i=n(3566),o=n(5594),u=n(7664),s=n(8790),c=n(7591);n(2101),t.MediaListWrapper=function(e){var t=e.title,n=e.viewAllLink,r=e.viewAllText,d=e.className,f=e.style,v=e.children,m=e.showBulkActions,p=void 0!==m&&m,g=e.selectedCount,b=void 0===g?0:g,y=e.totalCount,h=void 0===y?0:y,S=e.onBulkAction,A=void 0===S?function(){}:S,w=e.onSelectAll,E=void 0===w?function(){}:w,_=e.onDeselectAll,C=void 0===_?function(){}:_,k=e.showAddMediaButton,P=void 0!==k&&k;return a.default.createElement("div",{className:(d?d+" ":"")+"media-list-wrapper",style:f},a.default.createElement(l.MediaListRow,{title:t,viewAllLink:n,viewAllText:r},p&&a.default.createElement(s.LinksConsumer,null,(function(e){return a.default.createElement("div",{className:"bulk-actions-container"},a.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:"10px"}},a.default.createElement(i.BulkActionsDropdown,{selectedCount:b,onActionSelect:A}),a.default.createElement(o.SelectAllCheckbox,{totalCount:h,selectedCount:b,onSelectAll:E,onDeselectAll:C})),P&&a.default.createElement("div",{className:"add-media-button"},a.default.createElement("a",{href:e.user.addMedia,title:(0,c.translateString)("Add media")},a.default.createElement(u.CircleIconButton,null,a.default.createElement(u.MaterialIcon,{type:"video_call"})))))})),v||null))}},3461:function(e,t,n){"use strict";var r=n(2985),a=n(83);(0,r.C)("page-categories",a.CategoriesPage)},3566:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.BulkActionsDropdown=void 0;var a=r(n(9471));n(2268);var l=n(7591),i=[{value:"add-remove-coviewers",label:(0,l.translateString)("Add / Remove Co-Viewers"),enabled:!0},{value:"add-remove-coeditors",label:(0,l.translateString)("Add / Remove Co-Editors"),enabled:!0},{value:"add-remove-coowners",label:(0,l.translateString)("Add / Remove Co-Owners"),enabled:!0},{value:"add-remove-playlist",label:(0,l.translateString)("Add to / Remove from Playlist"),enabled:!0},{value:"add-remove-category",label:(0,l.translateString)("Add to / Remove from Category"),enabled:!0},{value:"add-remove-tags",label:(0,l.translateString)("Add / Remove Tags"),enabled:!0},{value:"enable-comments",label:(0,l.translateString)("Enable Comments"),enabled:!0},{value:"disable-comments",label:(0,l.translateString)("Disable Comments"),enabled:!0},{value:"enable-download",label:(0,l.translateString)("Enable Download"),enabled:!0},{value:"disable-download",label:(0,l.translateString)("Disable Download"),enabled:!0},{value:"publish-state",label:(0,l.translateString)("Publish State"),enabled:!0},{value:"change-owner",label:(0,l.translateString)("Change Owner"),enabled:!0},{value:"copy-media",label:(0,l.translateString)("Copy Media"),enabled:!0},{value:"delete-media",label:(0,l.translateString)("Delete Media"),enabled:!0}];t.BulkActionsDropdown=function(e){var t=e.selectedCount,n=e.onActionSelect,r=0===t,o=r?(0,l.translateString)("Bulk Actions"):"".concat((0,l.translateString)("Bulk Actions")," (").concat(t," ").concat((0,l.translateString)("selected"),")");return a.default.createElement("div",{className:"bulk-actions-dropdown"},a.default.createElement("select",{className:"bulk-actions-select"+(r?" no-selection":""),onChange:function(e){var t=e.target.value;t&&(r||n(t),e.target.value="")},value:"","aria-label":(0,l.translateString)("Bulk Actions")},a.default.createElement("option",{value:"",disabled:!0},o),i.map((function(e){return a.default.createElement("option",{key:e.value,value:e.value,disabled:r||!e.enabled},e.label)}))))}},4376:function(e,t,n){"use strict";n.r(t)},4685:function(e,t,n){"use strict";n.d(t,{ItemListAsync:function(){return f}});var r=n(9471),a=n(8713),l=n.n(a),i=n(5338),o=n(4737),u=n(2495),s=n(4433),c=n(5633);function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t(l(new c.B(e.pageItems,e.maxItems,e.firstItemRequestUrl,e.requestUrl,m,p)),()=>{a&&(a.cancelAll(),l(null))})),[]),t?n.length?r.createElement("div",{className:o.listOuter},g(),r.createElement("div",{ref:f,className:"items-list-wrap"},r.createElement("div",{ref:v,className:o.list},n.map(((t,n)=>r.createElement(s.c,d({key:n},(0,s.k)(e,t,n))))))),b()):null:r.createElement(u.e,{className:o.listOuter})}f.propTypes={...o.k.propTypes,items:l().array,requestUrl:l().string.isRequired,firstItemRequestUrl:l().string},f.defaultProps={...o.k.defaultProps,requestUrl:null,firstItemRequestUrl:null,pageItems:24}},5594:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectAllCheckbox=void 0;var a=r(n(9471));n(4376);var l=n(7591);t.SelectAllCheckbox=function(e){var t=e.totalCount,n=e.selectedCount,r=e.onSelectAll,i=e.onDeselectAll,o=t>0&&n===t,u=n>0&&n(d(new s.B(e.pageItems,e.maxItems,e.firstItemRequestUrl,e.requestUrl,v,m,e.onResponseDataLoaded)),a.PageStore.on("window_scroll",p),a.PageStore.on("document_visibility_change",g),p(),()=>{a.PageStore.removeListener("window_scroll",p),a.PageStore.removeListener("document_visibility_change",g),i&&(i.cancelAll(),d(null))})),[]),(0,r.useEffect)((()=>{e.onItemsUpdate&&t.length>0&&e.onItemsUpdate(t)}),[t]),n?t.length?r.createElement("div",{className:f.listOuter},h(),r.createElement("div",{ref:b,className:"items-list-wrap"},r.createElement("div",{ref:y,className:f.list},t.map(((t,n)=>r.createElement(u.c,c({key:n},(0,u.k)(e,t,n),{showSelection:e.showSelection,hasAnySelection:e.hasAnySelection,isSelected:e.selectedMedia&&e.selectedMedia.has(t.friendly_token||t.uid||t.id),onSelectionChange:e.onMediaSelection,mediaId:t.friendly_token||t.uid||t.id})))))),S()):null:r.createElement(o.e,{className:f.listOuter})}d.propTypes={...i.ItemListAsync.propTypes},d.defaultProps={...i.ItemListAsync.defaultProps,pageItems:2}},8004:function(e,t,n){"use strict";n.d(t,{R:function(){return l},z:function(){return i}});var r=n(8974);const a=function(){for(var e=arguments.length,t=new Array(e),n=0;n=l)&&Object.keys(r.O).every((function(e){return r.O[e](n[u])}))?n.splice(u--,1):(o=!1,l0&&e[c-1][2]>l;c--)e[c]=e[c-1];e[c]=[n,a,l]},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,{a:t}),t},r.d=function(e,t){for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.j=639,function(){var e={639:0};r.O.j=function(t){return 0===e[t]};var t=function(t,n){var a,l,i=n[0],o=n[1],u=n[2],s=0;if(i.some((function(t){return 0!==e[t]}))){for(a in o)r.o(o,a)&&(r.m[a]=o[a]);if(u)var c=u(r)}for(t&&t(n);s{l(function(e,t,a){if(void 0!==e){let i=null;return i=void 0!==t&&t>e?t:e,i=void 0!==a&&a{m.current&&c({height:m.current.clientHeight||0,width:m.current.clientWidth||0})}),[o]);const u={right:{left:"100%",marginLeft:"10px",top:"-50%"},left:{right:"100%",marginRight:"10px",top:"-50%"},top:{left:"50%",top:`-${d.height+10}px`,transform:"translateX(-50%)"},center:{top:"50%",left:"50%",translate:"x-[-50%]"},"bottom-left":{left:`-${d.width-20}px`,top:"100%",marginTop:"10px"}};return n.createElement("div",{onMouseEnter:()=>{s(!0)},onMouseLeave:()=>{s(!1)}},n.createElement("div",{ref:m,className:`tooltip-box ${o?"show":"hide"} ${r}`,style:u[l]},i&&n.createElement("div",{className:"tooltip-title"},i),n.createElement("div",{className:"tooltip-content"},a)),t)};function c(){const e=(0,n.useContext)(l.SiteContext);let t=E();t=t||r.MediaPageStore.get("media-data").thumbnail_url,t=t||"";const[a,i]=(0,n.useState)(t),[o,c]=(0,n.useState)([]),[m,u]=(0,n.useState)(!1),[p,g]=(0,n.useState)(0),[h,f]=(0,n.useState)(!0),v=n.useRef();function y(){i(E())}function E(){const t=r.MediaPageStore.get("media-data");let a=t.poster_url?.trim()||t.thumbnail_url?.trim()||r.MediaPageStore.get("media-original-url")?.trim()||"#";return e.url+"/"+a.replace(/^\//g,"")}(0,n.useEffect)((()=>{a&&(()=>{const e=r.MediaPageStore.get("media-data").slideshow_items;Array.isArray(e)&&c(e)})()}),[a]),(0,n.useEffect)((()=>(r.MediaPageStore.on("loaded_image_data",y),()=>r.MediaPageStore.removeListener("loaded_image_data",y))),[]),(0,n.useEffect)((()=>{if(m)return document.addEventListener("keydown",b),()=>{document.removeEventListener("keydown",b)}}),[m,o]);const b=e=>{"ArrowRight"===e.key&&w(),"ArrowLeft"===e.key&&P(),"Escape"===e.key&&S()},S=()=>u(!1),w=()=>{f(!0),g((e=>(e+1)%o.length))},P=()=>{f(!0),g((e=>(e-1+o.length)%o.length))},M=e=>{if(v.current){const t=10;"left"===e?v.current.scrollBy({left:-t,behavior:"smooth"}):"right"===e&&v.current.scrollBy({left:t,behavior:"smooth"})}};return a?n.createElement("div",{className:"viewer-image-container"},n.createElement(d,{content:"load full-image",position:"center"},n.createElement("img",{src:a,alt:r.MediaPageStore.get("media-data").title||null,onClick:()=>u(!0)})),m&&o&&n.createElement("div",{className:"modal-overlay",onClick:()=>u(!1)},n.createElement("div",{className:"slideshow-container",onClick:e=>e.stopPropagation()},!h&&n.createElement("button",{className:"arrow left",onClick:P,"aria-label":"Previous slide"},"‹"),n.createElement("div",{className:"slideshow-image"},h&&n.createElement(s.SpinnerLoader,{size:"large"}),n.createElement("img",{src:e.url+"/"+o[p]?.original_media_url,alt:`Slide ${p+1}`,onClick:()=>(t=>{const a=e.url+o[t]?.url;window.location.href=a})(p),onLoad:()=>f(!1),onError:()=>f(!1),style:{display:h?"none":"block"}}),!h&&n.createElement("div",{className:"slideshow-title"},o[p]?.title)),!h&&n.createElement("button",{className:"arrow right",onClick:w,"aria-label":"Next slide"},"›"),n.createElement("div",{className:"thumbnail-navigation"},o.length>5&&n.createElement("button",{className:"arrow left",onClick:()=>M("left"),"aria-label":"Scroll left"},"‹"),n.createElement("div",{className:"thumbnail-container "+(o.length<=5?"center-thumbnails":""),ref:v},o.map(((t,a)=>n.createElement("img",{key:a,src:e.url+"/"+t.thumbnail_url,alt:`Thumbnail ${a+1}`,className:"thumbnail "+(p===a?"active":""),onClick:()=>(e=>{f(!0),g(e)})(a)})))),o.length>5&&n.createElement("button",{className:"arrow right",onClick:()=>M("right"),"aria-label":"Scroll right"},"›"))))):null}var m=a(7118),u=a(5928);function p(e){let{fileUrl:t}=e;const a=(0,u.defaultLayoutPlugin)();return n.createElement("div",{className:"pdf-container"},n.createElement(m.Worker,{workerUrl:"https://unpkg.com/pdfjs-dist@3.4.120/build/pdf.worker.min.js"},n.createElement(m.Viewer,{fileUrl:t,plugins:[a]})))}var g=a(8713),h=a.n(g),f=a(285),v=a(7591),y=a(7154),E=a(8974);const b=["hls","h265","vp9","h264","vp8","mp4","theora"];function S(e,t){let a=null,i=document.createElement("video");if(i.canPlayType)try{switch(e){case"hls":case"mp4":a=!0;break;case"h265":a="probably"===i.canPlayType('video/mp4; codecs="hvc1.1.L0.0"')||"probably"===i.canPlayType('video/mp4; codecs="hev1.1.L0.0"');break;case"h264":a="probably"===i.canPlayType('video/mp4; codecs="avc1.42E01E"')||"probably"===i.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"');break;case"vp9":a="probably"===i.canPlayType('video/webm; codecs="vp9"');break;case"vp8":a="probably"===i.canPlayType('video/webm; codecs="vp8, vorbis"');break;case"theora":a="probably"===i.canPlayType('video/ogg; codecs="theora"')}if(t=(t instanceof Boolean||0===t||1==t)&&t){if("no"===i.canPlayType("video/nonsense")&&E.warn('BUGGY: Codec detection bug in Firefox 3.5.0 - 3.5.1 and Safari 4.0.0 - 4.0.4 that answer "no" to unknown codecs instead of an empty string'),"probably"===i.canPlayType("video/webm")&&E.warn('BUGGY: Codec detection bug that Firefox 27 and earlier always says "probably" when asked about WebM, even when the codecs string is not present'),"maybe"===i.canPlayType('video/mp4; codecs="avc1.42E01E"'))switch(i.canPlayType("video/mp4")){case"probably":E.warn('BUGGY: Codec detection bug in iOS 4.1 and earlier that switches "maybe" and "probably" around');break;case"maybe":E.warn('BUGGY: Codec detection bug in Android where no better answer than "maybe" is given')}"probably"===i.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"')&&"probably"!==i.canPlayType('video/mp4; codecs="avc1.42E01E"')&&E.warn("BUGGY: Codec detection bug in Internet Explorer 9 that requires both audio and video codec on test")}}catch(e){E.warn(e)}return a}function w(e){let t=[],a={},i=document.createElement("video");return i.canPlayType&&(a.hls=!0,t.push("hls"),(i.canPlayType('video/mp4; codecs="hvc1.1.L0.0"')||"probably"===i.canPlayType('video/mp4; codecs="hev1.1.L0.0"'))&&(a.h265=!0,t.push("h265")),"probably"===i.canPlayType('video/mp4; codecs="avc1.42E01E"')&&(a.h264=!0,t.push("h264")),"probably"===i.canPlayType('video/webm; codecs="vp9"')&&(a.vp9=!0,t.push("vp9")),e&&("probably"===i.canPlayType('video/webm; codecs="vp8, vorbis"')&&(a.vp8=!0,t.push("vp8")),"probably"===i.canPlayType('video/ogg; codecs="theora"')&&(a.theora=!0,t.push("theora"))),"probably"===i.canPlayType('video/mp4; codecs="mp4v.20.8"')&&(a.mp4=!0,t.push("mp4"))),{order:t,support:a}}var P=a(8974);const M=e=>{let{data:t,useRoundedCorners:a,version:i,isPlayList:l,playerVolume:r,playerSoundMuted:o,videoQuality:s,videoPlaybackSpeed:d,inTheaterMode:c,siteId:m,siteUrl:u,info:p,cornerLayers:g,sources:h,poster:f,previewSprite:v,subtitlesInfo:y,inEmbed:E,showTitle:b,showRelated:S,showUserAvatar:w,linkTitle:M,hasTheaterMode:_,hasNextLink:k,nextLink:N,hasPreviousLink:C,errorMessage:x,onClickNextCallback:L,onClickPreviousCallback:I,onStateUpdateCallback:V,onPlayerInitCallback:T}=e;const A=(0,n.useRef)(null),R=(0,n.useRef)(!1),U=(0,n.useRef)(null),D=(0,n.useRef)(E),O=e=>new URLSearchParams(window.location.search).get(e);(0,n.useEffect)((()=>{if(D.current=E,"undefined"!=typeof window){const e=O("t"),n=O("muted"),o=O("showRelated"),P=O("showUserAvatar"),A=O("linkTitle");window.MEDIA_DATA={data:t||{},useRoundedCorners:a,version:i,isPlayList:l,playerVolume:r||.5,playerSoundMuted:"1"===n,videoQuality:s||"auto",videoPlaybackSpeed:d||1,inTheaterMode:c||!1,siteId:m||"",siteUrl:u||"",info:p||{},cornerLayers:g||[],sources:h||[],poster:f||"",previewSprite:v||null,subtitlesInfo:y||[],inEmbed:E||!1,showTitle:b||!1,showRelated:void 0!==S?S:"1"===o||"true"===o||null===o,showUserAvatar:void 0!==w?w:"1"===P||"true"===P||null===P,linkTitle:void 0!==M?M:"1"===A||"true"===A||null===A,hasTheaterMode:_||!1,hasNextLink:k||!1,nextLink:N||null,hasPreviousLink:C||!1,errorMessage:x||"",urlTimestamp:e?parseInt(e,10):null,urlMuted:"1"===n,urlShowRelated:"1"===o||"true"===o,urlShowUserAvatar:"1"===P||"true"===P,urlLinkTitle:"1"===A||"true"===A,onClickNextCallback:L||null,onClickPreviousCallback:I||null,onStateUpdateCallback:V||null,onPlayerInitCallback:(e,t)=>{U.current=e,T&&T(e,t)}}}R.current||(F(),R.current=!0)}),[t,u,E]),(0,n.useEffect)((()=>{if(E&&A.current){const e=setTimeout((()=>{const e=new CustomEvent("triggerVideoJSMount",{detail:{targetId:"video-js-root-embed"}});document.dispatchEvent(e),"undefined"!=typeof window&&window.triggerVideoJSMount&&window.triggerVideoJSMount()}),100);return()=>clearTimeout(e)}}),[E,A.current]),(0,n.useEffect)((()=>{const e=e=>{if(e.target.classList.contains("video-timestamp")){e.preventDefault();const t=parseInt(e.target.dataset.timestamp,10);let a=null;if(U.current&&U.current.player&&(a=U.current.player),!a&&"undefined"!=typeof window&&window.videojsPlayers){const e=D.current?"video-embed":"video-main";a=window.videojsPlayers[e]}if(!a&&"undefined"!=typeof window&&window.videojs){const e=document.querySelector(D.current?"#video-embed":"#video-main");e&&e.player&&(a=e.player)}if(a){t>=0&&t=0&&a.play();const e=document.querySelector(D.current?"#video-embed":"#video-main");if(e){const t=O("scroll");window.parent!==window&&"1"!==t&&"true"!==t||e.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"})}}else P.warn("VideoJS player not found for timestamp navigation")}};return document.addEventListener("click",e),()=>{document.removeEventListener("click",e)}}),[]);const F=()=>{const e=document.querySelector('link[href*="video-js.css"]'),t=document.querySelector('script[src*="video-js.js"]');if(!e){const e=document.createElement("link");e.rel="stylesheet",e.href=u+"/static/video_js/video-js.css?v="+i,document.head.appendChild(e)}if(!t){const e=document.createElement("script");e.src=u+"/static/video_js/video-js.js?v="+i,document.head.appendChild(e)}};return n.createElement("div",{className:"video-js-wrapper",ref:A},E?n.createElement("div",{id:"video-js-root-embed",className:"video-js-root-embed"}):n.createElement("div",{id:"video-js-root-main",className:"video-js-root-main"}))};M.defaultProps={data:{},siteUrl:""};var _=M,k=a(8974);class N extends n.PureComponent{constructor(e){if(super(e),this.state={displayPlayer:!1},this.videoSources=[],function(e){switch(e){case"running_X":r.MediaPageStore.set("media-load-error-type","encodingRunning"),r.MediaPageStore.set("media-load-error-message","Media encoding is currently running. Try again in few minutes.");break;case"pending_X":r.MediaPageStore.set("media-load-error-type","encodingPending"),r.MediaPageStore.set("media-load-error-message","Media encoding is pending");break;case"fail":r.MediaPageStore.set("media-load-error-type","encodingFailed"),r.MediaPageStore.set("media-load-error-message","Media encoding failed")}}(this.props.data.encoding_status),null!==r.MediaPageStore.get("media-load-error-type"))return void(this.state.displayPlayer=!0);if("string"==typeof this.props.data.poster_url?this.videoPoster=(0,v.formatInnerLink)(this.props.data.poster_url,this.props.siteUrl):"string"==typeof this.props.data.thumbnail_url&&(this.videoPoster=(0,v.formatInnerLink)(this.props.data.thumbnail_url,this.props.siteUrl)),this.videoInfo=function(e,t,a){const i={};let n,r,o;a=void 0===a?w():a;const s={hls:["m3u8"],h265:["mp4","webm"],h264:["mp4","webm"],vp9:["mp4","webm"],vp8:["mp4","webm"],theora:["ogg"],mp4:["mp4"]};for(n in t)t.hasOwnProperty(n)&&(r=null,"master_file"===n?r="Auto":(r=n.split("_playlist"),r=2===r.length?r[0]:null),null!==r&&(i[r]=void 0===i[r]?{format:[],url:[]}:i[r],i[r].format.push("hls"),i[r].url.push((0,v.formatInnerLink)(t[n],l.SiteContext._currentValue.url))));for(r in e)if(e.hasOwnProperty(r)&&Object.keys(e[r]).length&&(1080>=parseInt(r,10)||1080=parseInt(i[i.length-1],10))return i[i.length-1];if(parseInt(e,10)<=parseInt(i[0],10))return i[0];for(a=i.length-1;a>=0;){if(parseInt(e,10)>=parseInt(i[a],10))return i[a+1];a-=1}}(e,this.videoInfo);"Auto"===e&&void 0!==this.videoInfo.Auto&&this.videoSources.push({src:this.videoInfo.Auto.url[0]});const a=w();let i,n;for(n=0;nemailEmail1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t',this.cornerLayers={topLeft:e,topRight:this.upNextLoaderView?this.upNextLoaderView.html():null,bottomLeft:this.recommendedMedia?this.recommendedMedia.html():null,bottomRight:this.props.inEmbed?t:null},this.setState({displayPlayer:!0},(function(){setTimeout((function(){const e=document.querySelector(".share-video-btn"),t=document.querySelector(".share-options-wrapper"),a=document.querySelector(".share-options-inner");e&&e.addEventListener("click",(function(e){(0,v.addClassname)(document.querySelector(".video-js.vjs-mediacms"),"vjs-visible-share-options")})),t&&t.addEventListener("click",(function(e){e.target!==a&&e.target!==t||(0,v.removeClassname)(document.querySelector(".video-js.vjs-mediacms"),"vjs-visible-share-options")}))}),1e3)}))}}onClickNext(){let e;r.MediaPageStore.get("playlist-id")?(e=r.MediaPageStore.get("playlist-next-media-url"),null===e&&(e=this.props.data.related_media[0].url)):this.props.inEmbed||(e=this.props.data.related_media[0].url),window.location.href=e}onClickPrevious(){let e;r.MediaPageStore.get("playlist-id")?(e=r.MediaPageStore.get("playlist-previous-media-url"),null===e&&(e=this.props.data.related_media[0].url)):this.props.inEmbed||(e=this.props.data.related_media[0].url),window.location.href=e}onStateUpdate(e){r.VideoViewerStore.get("in-theater-mode")!==e.theaterMode&&f.VideoViewerActions.set_viewer_mode(e.theaterMode),r.VideoViewerStore.get("player-volume")!==e.volume&&f.VideoViewerActions.set_player_volume(e.volume),r.VideoViewerStore.get("player-sound-muted")!==e.soundMuted&&f.VideoViewerActions.set_player_sound_muted(e.soundMuted),r.VideoViewerStore.get("video-quality")!==e.quality&&f.VideoViewerActions.set_video_quality(e.quality),r.VideoViewerStore.get("video-playback-speed")!==e.playbackSpeed&&f.VideoViewerActions.set_video_playback_speed(e.playbackSpeed)}onPlayerInit(e,t){this.playerElem=t,this.playerInstance=e,this.upNextLoaderView&&(this.upNextLoaderView.setVideoJsPlayerElem(this.playerInstance.player.el_),this.onUpdateMediaAutoPlay()),this.props.inEmbed||this.playerElem.parentNode.focus()}onUpdateMediaAutoPlay(){this.upNextLoaderView&&(r.PageStore.get("media-auto-play")||this.upNextLoaderView.hideTimerView())}render(){let e=null,t=null;!this.props.inEmbed&&r.MediaPageStore.get("playlist-id")?(e=r.MediaPageStore.get("playlist-next-media-url"),t=r.MediaPageStore.get("playlist-previous-media-url")):e=this.props.data.related_media.length&&!this.props.inEmbed?this.props.data.related_media[0].url:null;const a=this.props.data.sprites_url?{url:this.props.siteUrl+"/"+this.props.data.sprites_url.replace(/^\//g,""),frame:{width:160,height:90,seconds:10}}:null;return n.createElement(n.Fragment,null,n.createElement("div",{key:(this.props.inEmbed?"embed-":"")+"player-container",className:"player-container"+(this.videoSources.length?"":" player-container-error"),style:this.props.containerStyles,ref:"playerContainer"},n.createElement("div",{className:"player-container-inner",ref:"playerContainerInner",style:this.props.containerStyles},null==r.MediaPageStore.get("media-load-error-type")?n.createElement("div",{className:"video-player",ref:"videoJSPlayerWrapper",key:"videoJSPlayerWrapper"},n.createElement(l.SiteConsumer,null,(i=>n.createElement(_,{data:this.props.data,useRoundedCorners:i.useRoundedCorners,version:i.version,isPlayList:!!r.MediaPageStore.get("playlist-id"),playerVolume:this.browserCache.get("player-volume"),playerSoundMuted:this.browserCache.get("player-sound-muted"),videoQuality:this.browserCache.get("video-quality"),videoPlaybackSpeed:parseInt(this.browserCache.get("video-playback-speed"),10),inTheaterMode:this.browserCache.get("in-theater-mode"),siteId:i.id,siteUrl:i.url,info:this.videoInfo,cornerLayers:this.cornerLayers,sources:this.videoSources,poster:this.videoPoster,previewSprite:a,subtitlesInfo:this.props.data.subtitles_info,inEmbed:this.props.inEmbed,showTitle:this.props.showTitle,showRelated:this.props.showRelated,showUserAvatar:this.props.showUserAvatar,linkTitle:this.props.linkTitle,urlTimestamp:this.props.timestamp,hasTheaterMode:!this.props.inEmbed,hasNextLink:!!e,nextLink:e,hasPreviousLink:!!t,errorMessage:r.MediaPageStore.get("media-load-error-message"),onClickNextCallback:this.onClickNext,onClickPreviousCallback:this.onClickPrevious,onStateUpdateCallback:this.onStateUpdate,onPlayerInitCallback:this.onPlayerInit})))):null)))}}N.defaultProps={inEmbed:!0,showTitle:!0,showRelated:!0,showUserAvatar:!0,linkTitle:!0,timestamp:null,siteUrl:h().string.isRequired},N.propTypes={inEmbed:h().bool,showTitle:h().bool,showRelated:h().bool,showUserAvatar:h().bool,linkTitle:h().bool,timestamp:h().number};var C=a(5338),x=a(6619),L=a(4350);const I={single:(0,v.translateString)("comment"),uppercaseSingle:(0,v.translateString)("COMMENT"),ucfirstSingle:(0,v.translateString)("Comment"),ucfirstPlural:(0,v.translateString)("Comments"),submitCommentText:(0,v.translateString)("SUBMIT"),disabledCommentsMsg:(0,v.translateString)("Comments are disabled")};function V(e){const t=(0,n.useRef)(null),[a,i]=(0,n.useState)(""),[o,d]=(0,n.useState)(!1),[c,m]=(0,n.useState)(!1),[u,p]=(0,n.useState)(-1),[g,h]=(0,n.useState)(""),[y]=(0,n.useState)(l.MemberContext._currentValue.is.anonymous?l.LinksContext._currentValue.signin+"?next=/"+window.location.href.replace(l.SiteContext._currentValue.url,"").replace(/^\//g,""):null);function E(){m(!0)}function b(){m(!1)}function S(){const e=[...r.MediaPageStore.get("users")],t=[];e.forEach((e=>{t.push({id:e.username,display:e.name})})),h(t)}function w(){t.current.style.height="";const e=t.current.scrollHeight,a=0(r.MediaPageStore.on("comment_submit",w),r.MediaPageStore.on("comment_submit_fail",P),!0===MediaCMS.features.media.actions.comment_mention&&r.MediaPageStore.on("users_load",S),()=>{r.MediaPageStore.removeListener("comment_submit",w),r.MediaPageStore.removeListener("comment_submit_fail",P),!0===MediaCMS.features.media.actions.comment_mention&&r.MediaPageStore.removeListener("users_load",S)}))),l.MemberContext._currentValue.is.anonymous?n.createElement("div",{className:"comments-form"},n.createElement("div",{className:"comments-form-inner"},n.createElement(s.UserThumbnail,null),n.createElement("div",{className:"form"},n.createElement("a",{href:y,rel:"noffolow",className:"form-textarea-wrap",title:(0,v.translateString)("Add a ")+I.single+"..."},n.createElement("span",{className:"form-textarea"},(0,v.translateString)("Add a ")+I.single+"...")),n.createElement("div",{className:"form-buttons"},n.createElement("a",{href:y,rel:"noffolow",className:"disabled"},I.submitCommentText))))):n.createElement("div",{className:"comments-form"},n.createElement("div",{className:"comments-form-inner"},n.createElement(s.UserThumbnail,null),n.createElement("div",{className:"form"},n.createElement("div",{className:"form-textarea-wrap"+(c?" focused":"")},MediaCMS.features.media.actions.comment_mention?n.createElement(x.G,{inputRef:t,className:"form-textarea",rows:"1",placeholder:"Add a "+I.single+"...",value:a,onChange:function(e,a,n,l){t.current.style.height="",i(a),d(!0);const r=t.current.scrollHeight,o=0()=>{}),[]),n.createElement("div",{className:"comment"},n.createElement("div",{className:"comment-inner"},n.createElement("a",{className:"comment-author-thumb",href:e.author_link,title:e.author_name},n.createElement("img",{src:e.author_thumb,alt:e.author_name})),n.createElement("div",{className:"comment-content"},n.createElement("div",{className:"comment-meta"},n.createElement("div",{className:"comment-author"},n.createElement("a",{href:e.author_link,title:e.author_name},e.author_name)),n.createElement("div",{className:"comment-date"},(0,v.replaceString)((0,L.GP)(new Date(e.publish_date))))),n.createElement("div",{ref:t,className:"comment-text"+(i?" show-all":"")},n.createElement("div",{ref:a,className:"comment-text-inner",dangerouslySetInnerHTML:(d=e.text,{__html:d.replace(/\n/g,"
")})})),o?n.createElement("button",{className:"toggle-more",onClick:function(){r(!i)}},i?"Show less":"Read more"):null,l.MemberContext._currentValue.can.deleteComment?n.createElement(T,{comment_id:e.comment_id}):null)));var d}A.propTypes={comment_id:h().oneOfType([h().string,h().number]).isRequired,media_id:h().oneOfType([h().string,h().number]).isRequired,text:h().string,author_name:h().string,author_link:h().string,author_thumb:h().string,publish_date:h().oneOfType([h().string,h().number]),likes:h().number,dislikes:h().number},A.defaultProps={author_name:"",author_link:"#",publish_date:0,likes:0,dislikes:0};const R=e=>{let{commentsLength:t}=e;return n.createElement(n.Fragment,null,!l.MemberContext._currentValue.can.readComment||r.MediaPageStore.get("media-data").enable_comments?null:n.createElement("span",{className:"disabled-comments-msg"},I.disabledCommentsMsg),l.MemberContext._currentValue.can.readComment&&(r.MediaPageStore.get("media-data").enable_comments||l.MemberContext._currentValue.can.editMedia)?n.createElement("h2",null,t?1{e.text=function(e){const t=new RegExp("((\\d)?\\d:)?(\\d)?\\d:\\d\\d","g");return e.replace(t,(function(e,t){let a=e.split(":"),i=0,n=1;for(;a.length>0;)i+=n*parseInt(a.pop(),10),n*=60;return`${e}`}))}(e.text)})),function(){var e=document.querySelector(".page-main"),t=e.querySelector(".no-comment");const a=r.PageStore.get("config-contents").uploader.postUploadMessage;if(""===a)t&&0===comm.length&&t.parentNode.removeChild(t);else if(0===comm.length&&"unlisted"===r.MediaPageStore.get("media-data").state){if(-1f.PageActions.addNotification(I.ucfirstSingle+" added","commentSubmit")),100)}function u(){setTimeout((()=>f.PageActions.addNotification(I.ucfirstSingle+" submission failed","commentSubmitFail")),100)}function p(e){c(),setTimeout((()=>f.PageActions.addNotification(I.ucfirstSingle+" removed","commentDelete")),100)}function g(e){setTimeout((()=>f.PageActions.addNotification(I.ucfirstSingle+" removal failed","commentDeleteFail")),100)}return(0,n.useEffect)((()=>{d(i.length&&l.MemberContext._currentValue.can.readComment&&(r.MediaPageStore.get("media-data").enable_comments||l.MemberContext._currentValue.can.editMedia))}),[i]),(0,n.useEffect)((()=>(r.MediaPageStore.on("comments_load",c),r.MediaPageStore.on("comment_submit",m),r.MediaPageStore.on("comment_submit_fail",u),r.MediaPageStore.on("comment_delete",p),r.MediaPageStore.on("comment_delete_fail",g),()=>{r.MediaPageStore.removeListener("comments_load",c),r.MediaPageStore.removeListener("comment_submit",m),r.MediaPageStore.removeListener("comment_submit_fail",u),r.MediaPageStore.removeListener("comment_delete",p),r.MediaPageStore.removeListener("comment_delete_fail",g)})),[]),n.createElement("div",{className:"comments-list"},n.createElement("div",{className:"comments-list-inner"},n.createElement(R,{commentsLength:i.length}),r.MediaPageStore.get("media-data").enable_comments?n.createElement(V,{media_id:t}):null,s?i.map((e=>n.createElement(A,{key:e.uid,comment_id:e.uid,media_id:t,text:e.text,author_name:e.author_name,author_link:e.author_profile,author_thumb:l.SiteContext._currentValue.url+"/"+e.author_thumbnail_url.replace(/^\//g,""),publish_date:e.add_date,likes:0,dislikes:0}))):null))}var D=a(8974);function O(e){let t,a,i=[];if(e&&e.length)for(t=0,a=1(r.MediaPageStore.on("media_delete",E),r.MediaPageStore.on("media_delete_fail",b),()=>{r.MediaPageStore.removeListener("media_delete",E),r.MediaPageStore.removeListener("media_delete_fail",b)})),[]);const S=(0,v.formatInnerLink)(e.author.url,l.SiteContext._currentValue.url),w=(0,v.formatInnerLink)(e.author.thumb,l.SiteContext._currentValue.url);return n.createElement("div",{className:"media-info-content"},void 0===r.PageStore.get("config-media-item").displayAuthor||null===r.PageStore.get("config-media-item").displayAuthor||r.PageStore.get("config-media-item").displayAuthor?n.createElement(F,{link:S,thumb:w,name:e.author.name,published:e.published}):null,n.createElement("div",{className:"media-content-banner"},n.createElement("div",{className:"media-content-banner-inner"},p?n.createElement("div",{className:"media-content-summary"},d):null,p&&!h||!a?null:n.createElement("div",{className:"media-content-description",dangerouslySetInnerHTML:{__html:function(e){const t=new RegExp("((\\d)?\\d:)?(\\d)?\\d:\\d\\d","g");return e.replace(t,(function(e,t){let a=e.split(":"),i=0,n=1;for(;a.length>0;)i+=n*parseInt(a.pop(),10),n*=60;return`${e}`}))}(a)}}),p?n.createElement("button",{className:"load-more",onClick:function(){y(!h)}},h?"SHOW LESS":"SHOW MORE"):null,i.length?n.createElement(H,{value:i,title:1(r.MediaPageStore.on("disliked_media",d),r.MediaPageStore.on("undisliked_media",c),r.MediaPageStore.on("disliked_media_failed_request",m),()=>{r.MediaPageStore.removeListener("disliked_media",d),r.MediaPageStore.removeListener("undisliked_media",c),r.MediaPageStore.removeListener("disliked_media_failed_request",m)})),[]),n.createElement("div",{className:"like"},n.createElement("button",{onClick:function(t){t.preventDefault(),t.stopPropagation(),f.MediaPageActions[e?"undislikeMedia":"dislikeMedia"]()}},n.createElement(s.CircleIconButton,{type:"span"},n.createElement(s.MaterialIcon,{type:"thumb_down"})),n.createElement("span",{className:"dislikes-counter"},a)))}function z(){const[e,t]=(0,n.useState)(r.MediaPageStore.get("user-liked-media")),[a,i]=(0,n.useState)((0,v.formatViewsNumber)(r.MediaPageStore.get("media-likes"),!1));function o(){t(r.MediaPageStore.get("user-liked-media")),i((0,v.formatViewsNumber)(r.MediaPageStore.get("media-likes"),!1))}function d(){o(),f.PageActions.addNotification(l.TextsContext._currentValue.addToLiked,"likedMedia")}function c(){o(),f.PageActions.addNotification(l.TextsContext._currentValue.removeFromLiked,"unlikedMedia")}function m(){f.PageActions.addNotification("Action failed","likedMediaRequestFail")}return(0,n.useEffect)((()=>(r.MediaPageStore.on("liked_media",d),r.MediaPageStore.on("unliked_media",c),r.MediaPageStore.on("liked_media_failed_request",m),()=>{r.MediaPageStore.removeListener("liked_media",d),r.MediaPageStore.removeListener("unliked_media",c),r.MediaPageStore.removeListener("liked_media_failed_request",m)})),[]),n.createElement("div",{className:"like"},n.createElement("button",{onClick:function(t){t.preventDefault(),t.stopPropagation(),f.MediaPageActions[e?"unlikeMedia":"likeMedia"]()}},n.createElement(s.CircleIconButton,{type:"span"},n.createElement(s.MaterialIcon,{type:"thumb_up"})),n.createElement("span",{className:"likes-counter"},a)))}function W(e){const t=(0,n.useRef)(null),a=(0,n.useRef)(null),[i,l]=(0,n.useState)(null);function o(){l(window.innerHeight-(104+t.current.offsetHeight))}return(0,n.useEffect)((()=>(o(),r.PageStore.on("window_resize",o),()=>{r.PageStore.removeListener("window_resize",o)})),[]),n.createElement("form",null,n.createElement("div",{className:"report-form",style:null!==i?{maxHeight:i+"px"}:null},n.createElement("div",{className:"form-title"},"Report media"),n.createElement("div",{className:"form-field"},n.createElement("span",{className:"label"},"URL"),n.createElement("input",{type:"text",readOnly:!0,value:e.mediaUrl})),n.createElement("div",{className:"form-field"},n.createElement("span",{className:"label"},"Description"),n.createElement("textarea",{ref:a,required:!0})),n.createElement("div",{className:"form-field form-help-text"},"Reported media is reviewed")),n.createElement("div",{ref:t,className:"form-actions-bottom"},n.createElement("button",{className:"cancel",onClick:function(t){t.preventDefault(),void 0!==e.cancelReportForm&&e.cancelReportForm()}},"CANCEL"),n.createElement("button",{onClick:function(t){const i=a.current.value.trim();""!==i&&(t.preventDefault(),void 0!==e.submitReportForm&&e.submitReportForm(i))}},"SUBMIT")))}function $(e,t){const a=l.SiteContext._currentValue,i=e.encodings_info,n={};let r,o;for(r in i)if(i.hasOwnProperty(r)&&Object.keys(i[r]).length)for(o in i[r])i[r].hasOwnProperty(o)&&"success"===i[r][o].status&&100===i[r][o].progress&&null!==i[r][o].url&&(n[i[r][o].title]={text:r+" - "+o.toUpperCase()+" ("+i[r][o].size+")",link:(0,v.formatInnerLink)(i[r][o].url,a.url),linkAttr:{target:"_blank",download:e.title+"_"+r+"_"+o.toUpperCase()}});return n.original_media_url={text:"Original file ("+e.size+")",link:(0,v.formatInnerLink)(e.original_media_url,a.url),linkAttr:{target:"_blank",download:e.title}},Object.values(n)}function G(e,t,a,i,l,r,o){const d=t.url,c=t.media_type,m=t.state||"N/A",u=t.encoding_status||"N/A",p=t.reported_times,g=t.is_reviewed,h="video"===c,f=function(e,t,a,i,n){const l=[],r="video"===t.media_type,o=t.reported_times;return a&&e.downloadMedia&&(r?l.push({itemType:"open-subpage",text:"Download",icon:"arrow_downward",itemAttr:{className:"visible-only-in-small"},buttonAttr:{className:"change-page","data-page-id":"videoDownloadOptions"}}):i&&l.push({itemType:"link",link:i,text:"Download",icon:"arrow_downward",itemAttr:{className:"visible-only-in-small"},linkAttr:{target:"_blank",download:t.title}})),r&&e.editMedia&&l.push({itemType:"open-subpage",text:"Status info",icon:"info",buttonAttr:{className:"change-page","data-page-id":"mediaStatusInfo"}}),e.reportMedia&&(n?l.push({itemType:"div",text:"Reported",icon:"flag",divAttr:{className:"reported-label loggedin-media-reported"}}):l.push({itemType:"open-subpage",text:"Report",icon:"flag",buttonAttr:{className:"change-page"+(o?" loggedin-media-reported":""),"data-page-id":"loggedInReportMedia"}})),l}(e,t,a,i,l),v={};return f.length&&(v.main=n.createElement("div",{className:"main-options"},n.createElement(s.PopupMain,null,n.createElement(s.NavigationMenuList,{items:f})))),e.reportMedia&&(v.loggedInReportMedia=l?null:n.createElement("div",{className:"popup-fullscreen"},n.createElement(s.PopupMain,null,n.createElement("span",{className:"popup-fullscreen-overlay"}),n.createElement("div",null,n.createElement(W,{mediaUrl:d,submitReportForm:r,cancelReportForm:o}))))),e.editMedia&&(v.mediaStatusInfo=n.createElement("div",{className:"main-options"},n.createElement(s.PopupMain,null,n.createElement("ul",{className:"media-status-info"},n.createElement("li",null,"Media type: ",n.createElement("span",null,c)),n.createElement("li",null,"State: ",n.createElement("span",null,m)),n.createElement("li",null,"Review state: ",n.createElement("span",null,g?"Is reviewed":"Pending review")),h?n.createElement("li",null,"Encoding Status: ",n.createElement("span",null,u)):null,p?n.createElement("li",{className:"reports"},"Reports: ",n.createElement("span",null,p)):null)))),a&&e.downloadMedia&&h&&(v.videoDownloadOptions=n.createElement("div",{className:"video-download-options"},n.createElement(s.PopupMain,null,n.createElement(s.NavigationMenuList,{items:$(t)})))),v}W.propTypes={mediaUrl:h().string.isRequired,cancelReportForm:h().func,submitReportForm:h().func};const Y="more-options active-options";function J(e){const{userCan:t}=(0,C.useUser)(),a=l.SiteContext._currentValue,i=(0,v.formatInnerLink)(r.MediaPageStore.get("media-original-url"),a.url),o=r.MediaPageStore.get("media-data"),d="video"===o.media_type,[c,m,u]=(0,C.usePopup)(),[p,g]=(0,n.useState)(!1),[h,y]=(0,n.useState)(!1),[E,b]=(0,n.useState)({}),[S,w]=(0,n.useState)("main"),[P,M]=(0,n.useState)(Y);function _(e){f.MediaPageActions.reportMedia(e)}function k(){c.current.toggle()}function N(){c.current.tryToHide(),setTimeout((function(){f.PageActions.addNotification("Media Reported","reportedMedia"),y(!0),r.MediaPageStore.removeListener("reported_media",N)}),100)}return(0,n.useEffect)((()=>{h||(p?r.MediaPageStore.on("reported_media",N):r.MediaPageStore.removeListener("reported_media",N))}),[p]),(0,n.useEffect)((()=>{g(Object.keys(E).length&&e.allowDownload&&t.downloadMedia)}),[E]),(0,n.useEffect)((()=>{let a=Y;e.allowDownload&&t.downloadMedia&&"videoDownloadOptions"===S&&(a+=" video-downloads"),1===Object.keys(E).length&&e.allowDownload&&t.downloadMedia&&(d||i)&&(a+=" visible-only-in-small"),M(a)}),[S]),(0,n.useEffect)((()=>{b(G(t,o,e.allowDownload,i,h,_,k))}),[h]),(0,n.useEffect)((()=>(b(G(t,o,e.allowDownload,i,h,_,k)),()=>{p&&!h&&r.MediaPageStore.removeListener("reported_media",N)})),[]),p?n.createElement("div",{className:P},n.createElement(u,{contentRef:c},n.createElement("span",null,n.createElement(s.CircleIconButton,{type:"button"},n.createElement(s.MaterialIcon,{type:"more_horiz"})))),n.createElement("div",{className:"nav-page-"+S},n.createElement(m,{contentRef:c,hideCallback:function(){w("main")}},n.createElement(s.NavigationContentApp,{pageChangeCallback:function(e){w(e)},initPage:S,focusFirstItemOnPageChange:!1,pages:E,pageChangeSelector:".change-page",pageIdSelectorAttr:"data-page-id"})))):null}J.propTypes={allowDownload:h().bool.isRequired},J.defaultProps={allowDownload:!1};var Z=a(3706);function Q(e){return e.renderDate?n.createElement("label",null,n.createElement("input",{type:"checkbox",checked:e.isChecked,onChange:function(t){t.persist(),e.isChecked?f.MediaPageActions.removeMediaFromPlaylist(e.playlistId,r.MediaPageStore.get("media-id")):f.MediaPageActions.addMediaToPlaylist(e.playlistId,r.MediaPageStore.get("media-id"))}}),n.createElement("span",null,e.title)):null}function X(e){const t=(0,n.useRef)(null),a=(0,n.useRef)(null),[i,l]=(0,n.useState)(new Date),[o,d]=(0,n.useState)(r.MediaPageStore.get("playlists")),[c,m]=(0,n.useState)(!1);function u(){E()}function p(){d(r.MediaPageStore.get("playlists")),l(new Date)}function g(){d(r.MediaPageStore.get("playlists")),l(new Date),setTimeout((function(){f.PageActions.addNotification("Media added to playlist","playlistMediaAdditionComplete")}),100)}function h(){setTimeout((function(){f.PageActions.addNotification("Media's addition to playlist failed","playlistMediaAdditionFail")}),100)}function v(){d(r.MediaPageStore.get("playlists")),l(new Date),setTimeout((function(){f.PageActions.addNotification("Media removed from playlist","playlistMediaRemovalComplete")}),100)}function y(){setTimeout((function(){f.PageActions.addNotification("Media's removal from playlist failed","playlistMediaaRemovalFail")}),100)}function E(){null!==a.current&&(a.current.style.maxHeight=window.innerHeight-74-(t.current.offsetHeight-a.current.offsetHeight)+"px")}function b(){m(!c),E()}return(0,n.useEffect)((()=>{E()})),(0,n.useEffect)((()=>(r.PageStore.on("window_resize",u),r.MediaPageStore.on("playlists_load",p),r.MediaPageStore.on("media_playlist_addition_completed",g),r.MediaPageStore.on("media_playlist_addition_failed",h),r.MediaPageStore.on("media_playlist_removal_completed",v),r.MediaPageStore.on("media_playlist_removal_failed",y),()=>{r.PageStore.removeListener("window_resize",u),r.MediaPageStore.removeListener("playlists_load",p),r.MediaPageStore.removeListener("media_playlist_addition_completed",g),r.MediaPageStore.removeListener("media_playlist_addition_failed",h),r.MediaPageStore.removeListener("media_playlist_removal_completed",v),r.MediaPageStore.removeListener("media_playlist_removal_failed",y)})),[]),n.createElement("div",{ref:t,className:"saveto-popup"},n.createElement("div",{className:"saveto-title"},"Save to...",n.createElement(s.CircleIconButton,{type:"button",onClick:function(){m(!1),void 0!==e.triggerPopupClose&&e.triggerPopupClose()}},n.createElement(s.MaterialIcon,{type:"close"}))),o.length?n.createElement("div",{ref:a,className:"saveto-select"},function(){const e=r.MediaPageStore.get("media-id");let t=[],a=0;for(;a{g(window.innerHeight-144+56),q(c.current.offsetHeight),W(u.current.offsetHeight)})),(0,n.useEffect)((()=>(r.PageStore.on("window_resize",Y),r.MediaPageStore.on("copied_embed_media_code",J),()=>{r.PageStore.removeListener("window_resize",Y),r.MediaPageStore.removeListener("copied_embed_media_code",J)})),[]),(0,n.useEffect)((()=>{!function(e){try{localStorage.setItem(ee,JSON.stringify(e))}catch(e){}}({showTitle:y,showRelated:b,showUserAvatar:w,linkTitle:M,responsive:k,aspectRatio:V,embedWidthValue:A,embedWidthUnit:U,embedHeightValue:O,embedHeightUnit:H,keepAspectRatio:h})}),[y,b,w,M,k,V,A,U,O,H,h]),n.createElement("div",{className:"share-embed",style:{maxHeight:p+"px"}},n.createElement("div",{className:"share-embed-inner"},n.createElement("div",{className:"on-left"},n.createElement("div",{className:"media-embed-wrap"},n.createElement(l.SiteConsumer,null,(e=>{const t=`${i.embed+r.MediaPageStore.get("media-id")}&showTitle=${y?"1":"0"}&showRelated=${b?"1":"0"}&showUserAvatar=${w?"1":"0"}&linkTitle=${M?"1":"0"}${C?"&t="+L.split(":").reverse().reduce(((e,t,a)=>e+(parseInt(t,10)||0)*Math.pow(60,a)),0):""}`;return n.createElement("div",{style:{width:"100%",height:"480px",overflow:"hidden"}},n.createElement("iframe",{width:"100%",height:"100%",src:t,frameBorder:"0",allowFullScreen:!0}))})))),n.createElement("div",{ref:d,className:"on-right"},n.createElement("div",{ref:c,className:"on-right-top"},n.createElement("div",{className:"on-right-top-inner"},n.createElement("span",{className:"ttl"},"Embed Video"),n.createElement(s.CircleIconButton,{type:"button",onClick:function(){void 0!==e.triggerPopupClose&&e.triggerPopupClose()}},n.createElement(s.MaterialIcon,{type:"close"})))),n.createElement("div",{ref:m,className:"on-right-middle",style:{top:B+"px",bottom:z+"px"}},n.createElement("textarea",{readOnly:!0,value:function(){const e=r.MediaPageStore.get("media-id"),t=new URLSearchParams;if(y?t.set("showTitle","1"):t.set("showTitle","0"),b?t.set("showRelated","1"):t.set("showRelated","0"),w?t.set("showUserAvatar","1"):t.set("showUserAvatar","0"),M?t.set("linkTitle","1"):t.set("linkTitle","0"),C&&L){const e=L.split(":").reverse();let a=0;e[0]&&(a+=parseInt(e[0],10)||0),e[1]&&(a+=60*(parseInt(e[1],10)||0)),e[2]&&(a+=3600*(parseInt(e[2],10)||0)),a>0&&t.set("t",a)}const a=i.embed.includes("?")?"&":"?",n=`${i.embed}${e}${a}${t.toString()}`;if(k){if("custom"===V)return``;const e=V.split(":"),t=`${e[0]} / ${e[1]}`;return``}return``}()}),n.createElement("div",{className:"iframe-config"},n.createElement("div",{className:"iframe-config-options-title"},"Embed options"),n.createElement("div",{className:"iframe-config-option"},n.createElement("div",{className:"option-content"},n.createElement("div",{className:"ratio-options",style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"0 10px"}},n.createElement("div",{className:"options-group"},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap"}},n.createElement("input",{type:"checkbox",checked:y,onChange:function(){E(!y)}}),"Show title")),n.createElement("div",{className:"options-group"},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap",opacity:y?1:.5}},n.createElement("input",{type:"checkbox",checked:M,onChange:function(){_(!M)},disabled:!y}),"Link title")),n.createElement("div",{className:"options-group"},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap"}},n.createElement("input",{type:"checkbox",checked:b,onChange:function(){S(!b)}}),"Show related")),n.createElement("div",{className:"options-group"},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap",opacity:y?1:.5}},n.createElement("input",{type:"checkbox",checked:w,onChange:function(){P(!w)},disabled:!y}),"Show user avatar")),n.createElement("div",{className:"options-group",style:{display:"flex",alignItems:"center"}},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap",display:"flex",alignItems:"center",marginRight:"10px"}},n.createElement("input",{type:"checkbox",checked:k,onChange:function(){const e=!k;if(N(e),e)v(!1);else if("custom"!==V){const e=V.split(":"),t=e[0],a=e[1];v(!0),F(parseInt(A*a/t,10))}else v(!1)}}),"Responsive")),n.createElement("div",{className:"options-group",style:{display:"flex",alignItems:"center"}},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap",display:"flex",alignItems:"center",marginRight:"10px"}},n.createElement("input",{type:"checkbox",checked:C,onChange:function(){x(!C)}}),"Start at"),C&&n.createElement("input",{type:"text",value:L,onChange:function(e){I(e.target.value)},style:{width:"60px",height:"28px",fontSize:"12px",padding:"2px 5px"}})),n.createElement("div",{className:"options-group",style:{display:"flex",flexDirection:"column",justifyContent:"center"}},n.createElement("div",{style:{fontSize:"12px",marginBottom:"4px",color:"rgba(0,0,0,0.6)"}},"Aspect Ratio"),n.createElement("div",{style:{display:"flex",alignItems:"center"}},n.createElement("select",{ref:o,onChange:function(){const e=o.current.value;if("custom"===e)T(e),v(!1);else{const t=e.split(":"),a=t[0],i=t[1];T(e),v(!0),F(parseInt(A*i/a,10))}},value:V,style:{height:"28px",fontSize:"12px"}},n.createElement("option",{value:"16:9"},"16:9"),n.createElement("option",{value:"4:3"},"4:3"),n.createElement("option",{value:"3:2"},"3:2"),n.createElement("option",{value:"custom"},"Custom"))))),n.createElement("br",null),!k&&n.createElement(n.Fragment,null,n.createElement("div",{className:"options-group"},n.createElement(s.NumericInputWithUnit,{valueCallback:function(e){e=""===e?0:e;const t=V.split(":"),a=t[0],i=t[1];R(e),F(h?parseInt(e*i/a,10):O)},unitCallback:function(e){D(e)},label:"Width",defaultValue:parseInt(A,10),defaultUnit:U,minValue:1,maxValue:99999,units:$})),n.createElement("div",{className:"options-group"},n.createElement(s.NumericInputWithUnit,{valueCallback:function(e){e=""===e?0:e;const t=V.split(":"),a=t[0],i=t[1];F(e),R(h?parseInt(e*a/i,10):A)},unitCallback:function(e){j(e)},label:"Height",defaultValue:parseInt(O,10),defaultUnit:H,minValue:1,maxValue:99999,units:$}))))))),n.createElement("div",{ref:u,className:"on-right-bottom"},n.createElement("button",{onClick:function(){f.MediaPageActions.copyEmbedMediaCode(m.current.querySelector("textarea"))}},"COPY")))))}te.propTypes={triggerPopupClose:h().func};var ae=a(5289);function ie(e){let{onClick:t}=e;return n.createElement("span",{className:"next-slide"},n.createElement(s.CircleIconButton,{buttonShadow:!0,onClick:t},n.createElement("i",{className:"material-icons"},"keyboard_arrow_right")))}function ne(e){let{onClick:t}=e;return n.createElement("span",{className:"previous-slide"},n.createElement(s.CircleIconButton,{buttonShadow:!0,onClick:t},n.createElement("i",{className:"material-icons"},"keyboard_arrow_left")))}function le(){return{maxFormContentHeight:window.innerHeight-196,maxPopupWidth:518>window.innerWidth-80?window.innerWidth-80:null}}function re(e){const t=(0,n.useRef)(null),a=(0,n.useRef)(null),i=r.MediaPageStore.get("media-url"),[o,s]=(0,n.useState)(null),[d,c]=(0,n.useState)({prev:!1,next:!1}),[m,u]=(0,n.useState)(le()),[p]=(0,n.useState)(function(){const e=function(){const e=l.ShareOptionsContext._currentValue,t=r.MediaPageStore.get("media-url"),a=(r.MediaPageStore.get("media-data").title,{});let i=0;for(;i{s(new ae.A(a.current,".sh-option"))}),[p]),(0,n.useEffect)((()=>{o&&(o.updateDataStateOnResize(p.length,!0,!0),_())}),[m,o]),(0,n.useEffect)((()=>{r.PageStore.on("window_resize",P),r.MediaPageStore.on("copied_media_link",M);const e=function(){const e=document.getElementsByTagName("video");return e[0]?.currentTime}();return h(e),y(function(e){let t=parseInt(e,10),a=Math.floor(t/3600),i=Math.floor((t-3600*a)/60),n=t-3600*a-60*i;return a<10&&(a="0"+a),i<10&&(i="0"+i),n<10&&(n="0"+n),a>=1?a+":"+i+":"+n:i+":"+n}(e)),()=>{r.PageStore.removeListener("window_resize",P),r.MediaPageStore.removeListener("copied_media_link",M),s(null)}}),[]),n.createElement("div",{ref:t,style:null!==m.maxPopupWidth?{maxWidth:m.maxPopupWidth+"px"}:null},n.createElement("div",{className:"scrollable-content",style:null!==m.maxFormContentHeight?{maxHeight:m.maxFormContentHeight+"px"}:null},n.createElement("div",{className:"share-popup-title"},"Share media"),p.length?n.createElement("div",{className:"share-options"},d.prev?n.createElement(ne,{onClick:function(){o.previousSlide(),_()}}):null,n.createElement("div",{ref:a,className:"share-options-inner"},p),d.next?n.createElement(ie,{onClick:function(){o.nextSlide(),_()}}):null):null),n.createElement("div",{className:"copy-field"},n.createElement("div",null,n.createElement("input",{type:"text",readOnly:!0,value:S}),n.createElement("button",{onClick:function(){f.MediaPageActions.copyShareLink(t.current.querySelector(".copy-field input"))}},"COPY"))),n.createElement("div",{className:"start-at"},n.createElement("label",null,n.createElement("input",{type:"checkbox",name:"start-at-checkbox",id:"id-start-at-checkbox",checked:E,onChange:function(){b(!E),function(){const e=E?i:i+"&t="+Math.trunc(g);w(e)}()}}),"Start at ",v)))}function oe(){return{shareOptions:n.createElement("div",{className:"popup-fullscreen"},n.createElement(s.PopupMain,null,n.createElement("span",{className:"popup-fullscreen-overlay"}),n.createElement(re,null)))}}function se(e){const[t,a,i]=(0,C.usePopup)(),[l,r]=(0,n.useState)("shareOptions");return n.createElement("div",{className:"share"},n.createElement(i,{contentRef:t},n.createElement("button",null,n.createElement(s.CircleIconButton,{type:"span"},n.createElement(s.MaterialIcon,{type:"share"})),n.createElement("span",null,(0,v.translateString)("SHARE")))),n.createElement(a,{contentRef:t,hideCallback:function(){r("shareOptions")}},n.createElement(s.NavigationContentApp,{initPage:l,pageChangeSelector:".change-page",pageIdSelectorAttr:"data-page-id",pages:e.isVideo?(o=function(){t.current.toggle()},{...oe(),shareEmbed:n.createElement("div",{className:"popup-fullscreen share-embed-popup"},n.createElement(s.PopupMain,null,n.createElement("span",{className:"popup-fullscreen-overlay"}),n.createElement(te,{triggerPopupClose:o})))}):oe(),focusFirstItemOnPageChange:!1,pageChangeCallback:function(e){r(e)}})));var o}function de(e){return n.createElement("div",{className:"download hidden-only-in-small"},n.createElement("a",{href:e.link,target:"_blank",download:e.title,title:"Download",rel:"noreferrer"},n.createElement(s.CircleIconButton,{type:"span"},n.createElement(s.MaterialIcon,{type:"arrow_downward"})),n.createElement("span",null,"DOWNLOAD")))}function ce(){const e=r.MediaPageStore.get("media-data"),t=(e.title,e.encodings_info),a={};let i,n;for(i in t)if(t.hasOwnProperty(i)&&Object.keys(t[i]).length)for(n in t[i])if(t[i].hasOwnProperty(n)&&"success"===t[i][n].status&&100===t[i][n].progress&&null!==t[i][n].url){const r=e.original_media_url,o=r?r.substring(r.lastIndexOf("/")+1):e.title;a[t[i][n].title]={text:i+" - "+n.toUpperCase()+" ("+t[i][n].size+")",link:(0,v.formatInnerLink)(e.original_media_url,l.SiteContext._currentValue.url),linkAttr:{target:"_blank",download:o}}}const o=e.original_media_url,s=o?o.substring(o.lastIndexOf("/")+1):e.title;return a.original_media_url={text:"Original file ("+e.size+")",link:(0,v.formatInnerLink)(e.original_media_url,l.SiteContext._currentValue.url),linkAttr:{target:"_blank",download:s}},Object.values(a)}function me(e){const[t,a,i]=(0,C.usePopup)(),[l,r]=(0,n.useState)("main");return n.createElement("div",{className:"video-downloads hidden-only-in-small"},n.createElement(i,{contentRef:t},n.createElement("button",null,n.createElement(s.CircleIconButton,{type:"span"},n.createElement(s.MaterialIcon,{type:"arrow_downward"})),n.createElement("span",null,(0,v.translateString)("DOWNLOAD")))),n.createElement("div",{className:"nav-page-"+l},n.createElement(a,{contentRef:t},n.createElement(s.NavigationContentApp,{pageChangeCallback:null,initPage:"main",focusFirstItemOnPageChange:!1,pages:{main:n.createElement("div",{className:"main-options"},n.createElement(s.PopupMain,null,n.createElement(s.NavigationMenuList,{items:ce()})))},pageChangeSelector:".change-page",pageIdSelectorAttr:"data-page-id"}))))}de.propTypes={link:h().string.isRequired,title:h().string.isRequired};class ue extends n.PureComponent{constructor(e){super(e),this.state={likedMedia:r.MediaPageStore.get("user-liked-media"),dislikedMedia:r.MediaPageStore.get("user-disliked-media")},this.downloadLink="video"!==r.MediaPageStore.get("media-type")?(0,v.formatInnerLink)(r.MediaPageStore.get("media-original-url"),l.SiteContext._currentValue.url):null;const t=r.MediaPageStore.get("media-original-url");this.downloadFilename=t?t.substring(t.lastIndexOf("/")+1):this.props.title,this.updateStateValues=this.updateStateValues.bind(this)}componentDidMount(){r.MediaPageStore.on("liked_media",this.updateStateValues),r.MediaPageStore.on("unliked_media",this.updateStateValues),r.MediaPageStore.on("disliked_media",this.updateStateValues),r.MediaPageStore.on("undisliked_media",this.updateStateValues);const e=document.querySelectorAll("[data-tooltip]");e.length&&e.forEach((e=>function(e){const t=document.body,a=document.createElement("span");function i(){const t=e.getBoundingClientRect();a.style.top=t.top-(0+a.offsetHeight)+"px",a.style.left=t.left+"px"}a.innerText=e.getAttribute("data-tooltip"),a.setAttribute("class","tooltip"),e.removeAttribute("data-tooltip"),e.addEventListener("mouseenter",(function(){const n=e.getBoundingClientRect();t.appendChild(a),a.style.top=n.top-(0+a.offsetHeight)+"px",a.style.left=n.left+"px",document.addEventListener("scroll",i)})),e.addEventListener("mouseleave",(function(){t.removeChild(a),a.style.top="",a.style.left="",document.removeEventListener("scroll",i)}))}(e)))}updateStateValues(){this.setState({likedMedia:r.MediaPageStore.get("user-liked-media"),dislikedMedia:r.MediaPageStore.get("user-disliked-media")})}mediaCategories(e){if(void 0===this.props.categories||null===this.props.categories||!this.props.categories.length)return null;let t=0,a=[];for(;t=this.props.views?"view":"views"):null,n.createElement("div",{className:"media-actions"},n.createElement("div",null,l.MemberContext._currentValue.can.likeMedia?n.createElement(z,null):null,l.MemberContext._currentValue.can.dislikeMedia?n.createElement(q,null):null,l.MemberContext._currentValue.can.shareMedia?n.createElement(se,{isVideo:!1}):null,!l.MemberContext._currentValue.is.anonymous&&l.MemberContext._currentValue.can.saveMedia&&-1=this.props.views?(0,v.translateString)("view"):(0,v.translateString)("views")):null,n.createElement("div",{className:"media-actions"},n.createElement("div",null,l.MemberContext._currentValue.can.likeMedia?n.createElement(z,null):null,l.MemberContext._currentValue.can.dislikeMedia?n.createElement(q,null):null,!(0,v.inEmbeddedApp)()&&l.MemberContext._currentValue.can.shareMedia?n.createElement(se,{isVideo:!0}):null,!(0,v.inEmbeddedApp)()&&!l.MemberContext._currentValue.is.anonymous&&l.MemberContext._currentValue.can.saveMedia&&-1(r.MediaPageStore.on("loaded_media_data",s),r.PageStore.on("switched_media_auto_play",o),()=>{r.MediaPageStore.removeListener("loaded_media_data",s),r.PageStore.removeListener("switched_media_auto_play",o)})),[]),t?n.createElement("div",{className:"auto-play"},n.createElement("div",{className:"auto-play-header"},n.createElement("div",{className:"next-label"},(0,v.translateString)("Up next"))),n.createElement(ve.k,{className:"items-list-hor",items:[t],pageItems:1,maxItems:1,singleLinkContent:!0,horizontalItemsOrientation:!0,hideDate:!0,hideViews:!r.PageStore.get("config-media-item").displayViews,hideAuthor:!r.PageStore.get("config-media-item").displayAuthor})):null}function be(e){const[t,a]=(0,n.useState)(s()),[i,l]=(0,n.useState)(null);function o(){l(r.MediaPageStore.get("media-type")),a(s())}function s(){const e=r.MediaPageStore.get("media-data");return null!=e&&void 0!==e.related_media&&e.related_media.length?e.related_media:null}return(0,n.useEffect)((()=>(r.MediaPageStore.on("loaded_media_data",o),()=>r.MediaPageStore.removeListener("loaded_media_data",o))),[]),t&&t.length?n.createElement(ve.k,{className:"items-list-hor",items:!e.hideFirst||"video"!==i&&"audio"!==i?t:t.slice(1),pageItems:r.PageStore.get("config-options").pages.media.related.initialSize,singleLinkContent:!0,horizontalItemsOrientation:!0,hideDate:!0,hideViews:!r.PageStore.get("config-media-item").displayViews,hideAuthor:!r.PageStore.get("config-media-item").displayAuthor}):null}function Se(e){return n.createElement(ve.k,{className:"items-list-hor",pageItems:9999,maxItems:9999,items:e.items,hideDate:!0,hideViews:!0,hidePlaylistOrderNumber:!1,horizontalItemsOrientation:!0,inPlaylistView:!0,singleLinkContent:!0,playlistActiveItem:e.playlistActiveItem})}be.propTypes={hideFirst:h().bool},be.defaultProps={hideFirst:!0},Se.propTypes={items:h().array.isRequired,playlistActiveItem:v.PositiveIntegerOrZero},Se.defaultProps={playlistActiveItem:1};class we extends n.PureComponent{constructor(e){super(e),this.state={expanded:!0,loopRepeat:r.PlaylistViewStore.get("enabled-loop"),shuffle:r.PlaylistViewStore.get("enabled-shuffle"),savedPlaylist:r.PlaylistViewStore.get("saved-playlist-loop"),title:e.playlistData.title,link:e.playlistData.url,authorName:e.playlistData.user,authorLink:l.LinksContext._currentValue.home+"/user/"+e.playlistData.user,activeItem:e.activeItem,totalMedia:e.playlistData.media_count,items:e.playlistData.playlist_media},this.onHeaderClick=this.onHeaderClick.bind(this),this.onLoopClick=this.onLoopClick.bind(this),this.onShuffleClick=this.onShuffleClick.bind(this),this.onSaveClick=this.onSaveClick.bind(this),this.onLoopRepeatUpdate=this.onLoopRepeatUpdate.bind(this),this.onShuffleUpdate=this.onShuffleUpdate.bind(this),this.onPlaylistSaveUpdate=this.onPlaylistSaveUpdate.bind(this),r.PlaylistViewStore.on("loop-repeat-updated",this.onLoopRepeatUpdate),r.PlaylistViewStore.on("shuffle-updated",this.onShuffleUpdate),r.PlaylistViewStore.on("saved-updated",this.onPlaylistSaveUpdate)}onHeaderClick(e){this.setState({expanded:!this.state.expanded})}onLoopClick(){f.PlaylistViewActions.toggleLoop()}onShuffleClick(){f.PlaylistViewActions.toggleShuffle()}onSaveClick(){f.PlaylistViewActions.toggleSave()}onShuffleUpdate(){this.setState({shuffle:r.PlaylistViewStore.get("enabled-shuffle")},(()=>{this.state.shuffle?f.PageActions.addNotification("Playlist shuffle is on","shuffle-on"):f.PageActions.addNotification("Playlist shuffle is off","shuffle-off")}))}onLoopRepeatUpdate(){this.setState({loopRepeat:r.PlaylistViewStore.get("enabled-loop")},(()=>{this.state.loopRepeat?f.PageActions.addNotification("Playlist loop is on","loop-on"):f.PageActions.addNotification("Playlist loop is off","loop-off")}))}onPlaylistSaveUpdate(){this.setState({savedPlaylist:r.PlaylistViewStore.get("saved-playlist")},(()=>{this.state.savedPlaylist?f.PageActions.addNotification("Added to playlists library","added-to-playlists-lib"):f.PageActions.addNotification("Removed from playlists library","removed-from-playlists-lib")}))}render(){return n.createElement("div",{className:"playlist-view-wrap"},n.createElement("div",{className:"playlist-view"+(this.state.expanded?" playlist-expanded-view":"")},n.createElement("div",{className:"playlist-header"},n.createElement("div",{className:"playlist-title"},n.createElement("a",{href:this.state.link,title:this.state.title},this.state.title)),n.createElement("div",{className:"playlist-meta"},n.createElement("span",null,n.createElement("a",{href:this.state.authorLink,title:this.state.authorName},this.state.authorName)),"  -  ",n.createElement("span",{className:"counter"},this.state.activeItem," / ",this.state.totalMedia)),n.createElement(s.CircleIconButton,{className:"toggle-playlist-view",onClick:this.onHeaderClick},this.state.expanded?n.createElement("i",{className:"material-icons"},"keyboard_arrow_up"):n.createElement("i",{className:"material-icons"},"keyboard_arrow_down"))),this.state.expanded?n.createElement("div",{className:"playlist-actions"},n.createElement(s.CircleIconButton,{className:this.state.loopRepeat?"active":"",onClick:this.onLoopClick,title:"Loop playlist"},n.createElement("i",{className:"material-icons"},"repeat"))):null,this.state.expanded&&this.state.items.length?n.createElement("div",{className:"playlist-media"},n.createElement(Se,{items:this.state.items,playlistActiveItem:this.state.activeItem})):null))}}we.propTypes={playlistData:h().object.isRequired,activeItem:v.PositiveIntegerOrZero},we.defaultProps={};class Pe extends n.PureComponent{constructor(e){if(super(e),this.state={playlistData:e.playlistData,isPlaylistPage:!!e.playlistData,activeItem:0,mediaType:r.MediaPageStore.get("media-type"),chapters:r.MediaPageStore.get("media-data")?.chapters},e.playlistData){let t=0;for(;t{let e=null,t=null;const a=window.location.search.split("?")[1];return a&&a.split("&").forEach((a=>{0===a.indexOf("m=")?e=a.split("m=")[1]:0===a.indexOf("pl=")&&(t=a.split("pl=")[1])})),{mediaId:e,playlistId:t}},{mediaId:t,playlistId:a}=e();t&&(window.MediaCMS.mediaId=t),a&&(window.MediaCMS.playlistId=a)}(0,i.C)("page-media",class extends _e{viewerContainerContent(e){switch(r.MediaPageStore.get("media-type")){case"video":case"audio":return n.createElement(l.SiteConsumer,null,(t=>n.createElement(N,{data:e,siteUrl:t.url,inEmbed:!1})));case"image":return n.createElement(c,null);case"pdf":const t=(0,v.formatInnerLink)(r.MediaPageStore.get("media-original-url"),l.SiteContext._currentValue.url);return n.createElement(p,{fileUrl:t})}return n.createElement(o,null)}})}},a={};function i(e){var n=a[e];if(void 0!==n)return n.exports;var l=a[e]={exports:{}};return t[e].call(l.exports,l,l.exports,i),l.exports}i.m=t,e=[],i.O=function(t,a,n,l){if(!a){var r=1/0;for(c=0;c=l)&&Object.keys(i.O).every((function(e){return i.O[e](a[s])}))?a.splice(s--,1):(o=!1,l0&&e[c-1][2]>l;c--)e[c]=e[c-1];e[c]=[a,n,l]},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,{a:t}),t},i.d=function(e,t){for(var a in t)i.o(t,a)&&!i.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.j=201,function(){var e={201:0};i.O.j=function(t){return 0===e[t]};var t=function(t,a){var n,l,r=a[0],o=a[1],s=a[2],d=0;if(r.some((function(t){return 0!==e[t]}))){for(n in o)i.o(o,n)&&(i.m[n]=o[n]);if(s)var c=s(i)}for(t&&t(a);d{l(function(e,t,a){if(void 0!==e){let i=null;return i=void 0!==t&&t>e?t:e,i=void 0!==a&&a{m.current&&c({height:m.current.clientHeight||0,width:m.current.clientWidth||0})}),[o]);const u={right:{left:"100%",marginLeft:"10px",top:"-50%"},left:{right:"100%",marginRight:"10px",top:"-50%"},top:{left:"50%",top:`-${d.height+10}px`,transform:"translateX(-50%)"},center:{top:"50%",left:"50%",translate:"x-[-50%]"},"bottom-left":{left:`-${d.width-20}px`,top:"100%",marginTop:"10px"}};return n.createElement("div",{onMouseEnter:()=>{s(!0)},onMouseLeave:()=>{s(!1)}},n.createElement("div",{ref:m,className:`tooltip-box ${o?"show":"hide"} ${r}`,style:u[l]},i&&n.createElement("div",{className:"tooltip-title"},i),n.createElement("div",{className:"tooltip-content"},a)),t)};function c(){const e=(0,n.useContext)(l.SiteContext);let t=E();t=t||r.MediaPageStore.get("media-data").thumbnail_url,t=t||"";const[a,i]=(0,n.useState)(t),[o,c]=(0,n.useState)([]),[m,u]=(0,n.useState)(!1),[p,g]=(0,n.useState)(0),[h,f]=(0,n.useState)(!0),v=n.useRef();function y(){i(E())}function E(){const t=r.MediaPageStore.get("media-data");let a=t.poster_url?.trim()||t.thumbnail_url?.trim()||r.MediaPageStore.get("media-original-url")?.trim()||"#";return e.url+"/"+a.replace(/^\//g,"")}(0,n.useEffect)((()=>{a&&(()=>{const e=r.MediaPageStore.get("media-data").slideshow_items;Array.isArray(e)&&c(e)})()}),[a]),(0,n.useEffect)((()=>(r.MediaPageStore.on("loaded_image_data",y),()=>r.MediaPageStore.removeListener("loaded_image_data",y))),[]),(0,n.useEffect)((()=>{if(m)return document.addEventListener("keydown",b),()=>{document.removeEventListener("keydown",b)}}),[m,o]);const b=e=>{"ArrowRight"===e.key&&w(),"ArrowLeft"===e.key&&P(),"Escape"===e.key&&S()},S=()=>u(!1),w=()=>{f(!0),g((e=>(e+1)%o.length))},P=()=>{f(!0),g((e=>(e-1+o.length)%o.length))},M=e=>{if(v.current){const t=10;"left"===e?v.current.scrollBy({left:-t,behavior:"smooth"}):"right"===e&&v.current.scrollBy({left:t,behavior:"smooth"})}};return a?n.createElement("div",{className:"viewer-image-container"},n.createElement(d,{content:"load full-image",position:"center"},n.createElement("img",{src:a,alt:r.MediaPageStore.get("media-data").title||null,onClick:()=>u(!0)})),m&&o&&n.createElement("div",{className:"modal-overlay",onClick:()=>u(!1)},n.createElement("div",{className:"slideshow-container",onClick:e=>e.stopPropagation()},!h&&n.createElement("button",{className:"arrow left",onClick:P,"aria-label":"Previous slide"},"‹"),n.createElement("div",{className:"slideshow-image"},h&&n.createElement(s.SpinnerLoader,{size:"large"}),n.createElement("img",{src:e.url+"/"+o[p]?.original_media_url,alt:`Slide ${p+1}`,onClick:()=>(t=>{const a=e.url+o[t]?.url;window.location.href=a})(p),onLoad:()=>f(!1),onError:()=>f(!1),style:{display:h?"none":"block"}}),!h&&n.createElement("div",{className:"slideshow-title"},o[p]?.title)),!h&&n.createElement("button",{className:"arrow right",onClick:w,"aria-label":"Next slide"},"›"),n.createElement("div",{className:"thumbnail-navigation"},o.length>5&&n.createElement("button",{className:"arrow left",onClick:()=>M("left"),"aria-label":"Scroll left"},"‹"),n.createElement("div",{className:"thumbnail-container "+(o.length<=5?"center-thumbnails":""),ref:v},o.map(((t,a)=>n.createElement("img",{key:a,src:e.url+"/"+t.thumbnail_url,alt:`Thumbnail ${a+1}`,className:"thumbnail "+(p===a?"active":""),onClick:()=>(e=>{f(!0),g(e)})(a)})))),o.length>5&&n.createElement("button",{className:"arrow right",onClick:()=>M("right"),"aria-label":"Scroll right"},"›"))))):null}var m=a(7118),u=a(5928);function p(e){let{fileUrl:t}=e;const a=(0,u.defaultLayoutPlugin)();return n.createElement("div",{className:"pdf-container"},n.createElement(m.Worker,{workerUrl:"https://unpkg.com/pdfjs-dist@3.4.120/build/pdf.worker.min.js"},n.createElement(m.Viewer,{fileUrl:t,plugins:[a]})))}var g=a(8713),h=a.n(g),f=a(285),v=a(7591),y=a(7154),E=a(8974);const b=["hls","h265","vp9","h264","vp8","mp4","theora"];function S(e,t){let a=null,i=document.createElement("video");if(i.canPlayType)try{switch(e){case"hls":case"mp4":a=!0;break;case"h265":a="probably"===i.canPlayType('video/mp4; codecs="hvc1.1.L0.0"')||"probably"===i.canPlayType('video/mp4; codecs="hev1.1.L0.0"');break;case"h264":a="probably"===i.canPlayType('video/mp4; codecs="avc1.42E01E"')||"probably"===i.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"');break;case"vp9":a="probably"===i.canPlayType('video/webm; codecs="vp9"');break;case"vp8":a="probably"===i.canPlayType('video/webm; codecs="vp8, vorbis"');break;case"theora":a="probably"===i.canPlayType('video/ogg; codecs="theora"')}if(t=(t instanceof Boolean||0===t||1==t)&&t){if("no"===i.canPlayType("video/nonsense")&&E.warn('BUGGY: Codec detection bug in Firefox 3.5.0 - 3.5.1 and Safari 4.0.0 - 4.0.4 that answer "no" to unknown codecs instead of an empty string'),"probably"===i.canPlayType("video/webm")&&E.warn('BUGGY: Codec detection bug that Firefox 27 and earlier always says "probably" when asked about WebM, even when the codecs string is not present'),"maybe"===i.canPlayType('video/mp4; codecs="avc1.42E01E"'))switch(i.canPlayType("video/mp4")){case"probably":E.warn('BUGGY: Codec detection bug in iOS 4.1 and earlier that switches "maybe" and "probably" around');break;case"maybe":E.warn('BUGGY: Codec detection bug in Android where no better answer than "maybe" is given')}"probably"===i.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"')&&"probably"!==i.canPlayType('video/mp4; codecs="avc1.42E01E"')&&E.warn("BUGGY: Codec detection bug in Internet Explorer 9 that requires both audio and video codec on test")}}catch(e){E.warn(e)}return a}function w(e){let t=[],a={},i=document.createElement("video");return i.canPlayType&&(a.hls=!0,t.push("hls"),(i.canPlayType('video/mp4; codecs="hvc1.1.L0.0"')||"probably"===i.canPlayType('video/mp4; codecs="hev1.1.L0.0"'))&&(a.h265=!0,t.push("h265")),"probably"===i.canPlayType('video/mp4; codecs="avc1.42E01E"')&&(a.h264=!0,t.push("h264")),"probably"===i.canPlayType('video/webm; codecs="vp9"')&&(a.vp9=!0,t.push("vp9")),e&&("probably"===i.canPlayType('video/webm; codecs="vp8, vorbis"')&&(a.vp8=!0,t.push("vp8")),"probably"===i.canPlayType('video/ogg; codecs="theora"')&&(a.theora=!0,t.push("theora"))),"probably"===i.canPlayType('video/mp4; codecs="mp4v.20.8"')&&(a.mp4=!0,t.push("mp4"))),{order:t,support:a}}var P=a(8974);const M=e=>{let{data:t,useRoundedCorners:a,version:i,isPlayList:l,playerVolume:r,playerSoundMuted:o,videoQuality:s,videoPlaybackSpeed:d,inTheaterMode:c,siteId:m,siteUrl:u,info:p,cornerLayers:g,sources:h,poster:f,previewSprite:v,subtitlesInfo:y,inEmbed:E,showTitle:b,showRelated:S,showUserAvatar:w,linkTitle:M,hasTheaterMode:_,hasNextLink:k,nextLink:C,hasPreviousLink:N,errorMessage:x,onClickNextCallback:L,onClickPreviousCallback:I,onStateUpdateCallback:V,onPlayerInitCallback:T}=e;const A=(0,n.useRef)(null),R=(0,n.useRef)(!1),U=(0,n.useRef)(null),D=(0,n.useRef)(E),O=e=>new URLSearchParams(window.location.search).get(e);(0,n.useEffect)((()=>{if(D.current=E,"undefined"!=typeof window){const e=O("t"),n=O("muted"),o=O("showRelated"),P=O("showUserAvatar"),A=O("linkTitle");window.MEDIA_DATA={data:t||{},useRoundedCorners:a,version:i,isPlayList:l,playerVolume:r||.5,playerSoundMuted:"1"===n,videoQuality:s||"auto",videoPlaybackSpeed:d||1,inTheaterMode:c||!1,siteId:m||"",siteUrl:u||"",info:p||{},cornerLayers:g||[],sources:h||[],poster:f||"",previewSprite:v||null,subtitlesInfo:y||[],inEmbed:E||!1,showTitle:b||!1,showRelated:void 0!==S?S:"1"===o||"true"===o||null===o,showUserAvatar:void 0!==w?w:"1"===P||"true"===P||null===P,linkTitle:void 0!==M?M:"1"===A||"true"===A||null===A,hasTheaterMode:_||!1,hasNextLink:k||!1,nextLink:C||null,hasPreviousLink:N||!1,errorMessage:x||"",urlTimestamp:e?parseInt(e,10):null,urlMuted:"1"===n,urlShowRelated:"1"===o||"true"===o,urlShowUserAvatar:"1"===P||"true"===P,urlLinkTitle:"1"===A||"true"===A,onClickNextCallback:L||null,onClickPreviousCallback:I||null,onStateUpdateCallback:V||null,onPlayerInitCallback:(e,t)=>{U.current=e,T&&T(e,t)}}}R.current||(F(),R.current=!0)}),[t,u,E]),(0,n.useEffect)((()=>{if(E&&A.current){const e=setTimeout((()=>{const e=new CustomEvent("triggerVideoJSMount",{detail:{targetId:"video-js-root-embed"}});document.dispatchEvent(e),"undefined"!=typeof window&&window.triggerVideoJSMount&&window.triggerVideoJSMount()}),100);return()=>clearTimeout(e)}}),[E,A.current]),(0,n.useEffect)((()=>{const e=e=>{if(e.target.classList.contains("video-timestamp")){e.preventDefault();const t=parseInt(e.target.dataset.timestamp,10);let a=null;if(U.current&&U.current.player&&(a=U.current.player),!a&&"undefined"!=typeof window&&window.videojsPlayers){const e=D.current?"video-embed":"video-main";a=window.videojsPlayers[e]}if(!a&&"undefined"!=typeof window&&window.videojs){const e=document.querySelector(D.current?"#video-embed":"#video-main");e&&e.player&&(a=e.player)}if(a){t>=0&&t=0&&a.play();const e=document.querySelector(D.current?"#video-embed":"#video-main");if(e){const t=O("scroll");window.parent!==window&&"1"!==t&&"true"!==t||e.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"})}}else P.warn("VideoJS player not found for timestamp navigation")}};return document.addEventListener("click",e),()=>{document.removeEventListener("click",e)}}),[]);const F=()=>{const e=document.querySelector('link[href*="video-js.css"]'),t=document.querySelector('script[src*="video-js.js"]');if(!e){const e=document.createElement("link");e.rel="stylesheet",e.href=u+"/static/video_js/video-js.css?v="+i,document.head.appendChild(e)}if(!t){const e=document.createElement("script");e.src=u+"/static/video_js/video-js.js?v="+i,document.head.appendChild(e)}};return n.createElement("div",{className:"video-js-wrapper",ref:A},E?n.createElement("div",{id:"video-js-root-embed",className:"video-js-root-embed"}):n.createElement("div",{id:"video-js-root-main",className:"video-js-root-main"}))};M.defaultProps={data:{},siteUrl:""};var _=M,k=a(8974);class C extends n.PureComponent{constructor(e){if(super(e),this.state={displayPlayer:!1},this.videoSources=[],function(e){switch(e){case"running_X":r.MediaPageStore.set("media-load-error-type","encodingRunning"),r.MediaPageStore.set("media-load-error-message","Media encoding is currently running. Try again in few minutes.");break;case"pending_X":r.MediaPageStore.set("media-load-error-type","encodingPending"),r.MediaPageStore.set("media-load-error-message","Media encoding is pending");break;case"fail":r.MediaPageStore.set("media-load-error-type","encodingFailed"),r.MediaPageStore.set("media-load-error-message","Media encoding failed")}}(this.props.data.encoding_status),null!==r.MediaPageStore.get("media-load-error-type"))return void(this.state.displayPlayer=!0);if("string"==typeof this.props.data.poster_url?this.videoPoster=(0,v.formatInnerLink)(this.props.data.poster_url,this.props.siteUrl):"string"==typeof this.props.data.thumbnail_url&&(this.videoPoster=(0,v.formatInnerLink)(this.props.data.thumbnail_url,this.props.siteUrl)),this.videoInfo=function(e,t,a){const i={};let n,r,o;a=void 0===a?w():a;const s={hls:["m3u8"],h265:["mp4","webm"],h264:["mp4","webm"],vp9:["mp4","webm"],vp8:["mp4","webm"],theora:["ogg"],mp4:["mp4"]};for(n in t)t.hasOwnProperty(n)&&(r=null,"master_file"===n?r="Auto":(r=n.split("_playlist"),r=2===r.length?r[0]:null),null!==r&&(i[r]=void 0===i[r]?{format:[],url:[]}:i[r],i[r].format.push("hls"),i[r].url.push((0,v.formatInnerLink)(t[n],l.SiteContext._currentValue.url))));for(r in e)if(e.hasOwnProperty(r)&&Object.keys(e[r]).length&&(1080>=parseInt(r,10)||1080=parseInt(i[i.length-1],10))return i[i.length-1];if(parseInt(e,10)<=parseInt(i[0],10))return i[0];for(a=i.length-1;a>=0;){if(parseInt(e,10)>=parseInt(i[a],10))return i[a+1];a-=1}}(e,this.videoInfo);"Auto"===e&&void 0!==this.videoInfo.Auto&&this.videoSources.push({src:this.videoInfo.Auto.url[0]});const a=w();let i,n;for(n=0;nemailEmail1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t',this.cornerLayers={topLeft:e,topRight:this.upNextLoaderView?this.upNextLoaderView.html():null,bottomLeft:this.recommendedMedia?this.recommendedMedia.html():null,bottomRight:this.props.inEmbed?t:null},this.setState({displayPlayer:!0},(function(){setTimeout((function(){const e=document.querySelector(".share-video-btn"),t=document.querySelector(".share-options-wrapper"),a=document.querySelector(".share-options-inner");e&&e.addEventListener("click",(function(e){(0,v.addClassname)(document.querySelector(".video-js.vjs-mediacms"),"vjs-visible-share-options")})),t&&t.addEventListener("click",(function(e){e.target!==a&&e.target!==t||(0,v.removeClassname)(document.querySelector(".video-js.vjs-mediacms"),"vjs-visible-share-options")}))}),1e3)}))}}onClickNext(){let e;r.MediaPageStore.get("playlist-id")?(e=r.MediaPageStore.get("playlist-next-media-url"),null===e&&(e=this.props.data.related_media[0].url)):this.props.inEmbed||(e=this.props.data.related_media[0].url),window.location.href=e}onClickPrevious(){let e;r.MediaPageStore.get("playlist-id")?(e=r.MediaPageStore.get("playlist-previous-media-url"),null===e&&(e=this.props.data.related_media[0].url)):this.props.inEmbed||(e=this.props.data.related_media[0].url),window.location.href=e}onStateUpdate(e){r.VideoViewerStore.get("in-theater-mode")!==e.theaterMode&&f.VideoViewerActions.set_viewer_mode(e.theaterMode),r.VideoViewerStore.get("player-volume")!==e.volume&&f.VideoViewerActions.set_player_volume(e.volume),r.VideoViewerStore.get("player-sound-muted")!==e.soundMuted&&f.VideoViewerActions.set_player_sound_muted(e.soundMuted),r.VideoViewerStore.get("video-quality")!==e.quality&&f.VideoViewerActions.set_video_quality(e.quality),r.VideoViewerStore.get("video-playback-speed")!==e.playbackSpeed&&f.VideoViewerActions.set_video_playback_speed(e.playbackSpeed)}onPlayerInit(e,t){this.playerElem=t,this.playerInstance=e,this.upNextLoaderView&&(this.upNextLoaderView.setVideoJsPlayerElem(this.playerInstance.player.el_),this.onUpdateMediaAutoPlay()),this.props.inEmbed||this.playerElem.parentNode.focus()}onUpdateMediaAutoPlay(){this.upNextLoaderView&&(r.PageStore.get("media-auto-play")||this.upNextLoaderView.hideTimerView())}render(){let e=null,t=null;!this.props.inEmbed&&r.MediaPageStore.get("playlist-id")?(e=r.MediaPageStore.get("playlist-next-media-url"),t=r.MediaPageStore.get("playlist-previous-media-url")):e=this.props.data.related_media.length&&!this.props.inEmbed?this.props.data.related_media[0].url:null;const a=this.props.data.sprites_url?{url:this.props.siteUrl+"/"+this.props.data.sprites_url.replace(/^\//g,""),frame:{width:160,height:90,seconds:10}}:null;return n.createElement(n.Fragment,null,n.createElement("div",{key:(this.props.inEmbed?"embed-":"")+"player-container",className:"player-container"+(this.videoSources.length?"":" player-container-error"),style:this.props.containerStyles,ref:"playerContainer"},n.createElement("div",{className:"player-container-inner",ref:"playerContainerInner",style:this.props.containerStyles},null==r.MediaPageStore.get("media-load-error-type")?n.createElement("div",{className:"video-player",ref:"videoJSPlayerWrapper",key:"videoJSPlayerWrapper"},n.createElement(l.SiteConsumer,null,(i=>n.createElement(_,{data:this.props.data,useRoundedCorners:i.useRoundedCorners,version:i.version,isPlayList:!!r.MediaPageStore.get("playlist-id"),playerVolume:this.browserCache.get("player-volume"),playerSoundMuted:this.browserCache.get("player-sound-muted"),videoQuality:this.browserCache.get("video-quality"),videoPlaybackSpeed:parseInt(this.browserCache.get("video-playback-speed"),10),inTheaterMode:this.browserCache.get("in-theater-mode"),siteId:i.id,siteUrl:i.url,info:this.videoInfo,cornerLayers:this.cornerLayers,sources:this.videoSources,poster:this.videoPoster,previewSprite:a,subtitlesInfo:this.props.data.subtitles_info,inEmbed:this.props.inEmbed,showTitle:this.props.showTitle,showRelated:this.props.showRelated,showUserAvatar:this.props.showUserAvatar,linkTitle:this.props.linkTitle,urlTimestamp:this.props.timestamp,hasTheaterMode:!this.props.inEmbed,hasNextLink:!!e,nextLink:e,hasPreviousLink:!!t,errorMessage:r.MediaPageStore.get("media-load-error-message"),onClickNextCallback:this.onClickNext,onClickPreviousCallback:this.onClickPrevious,onStateUpdateCallback:this.onStateUpdate,onPlayerInitCallback:this.onPlayerInit})))):null)))}}C.defaultProps={inEmbed:!0,showTitle:!0,showRelated:!0,showUserAvatar:!0,linkTitle:!0,timestamp:null,siteUrl:h().string.isRequired},C.propTypes={inEmbed:h().bool,showTitle:h().bool,showRelated:h().bool,showUserAvatar:h().bool,linkTitle:h().bool,timestamp:h().number};var N=a(5338),x=a(6619),L=a(4350);const I={single:(0,v.translateString)("comment"),uppercaseSingle:(0,v.translateString)("COMMENT"),ucfirstSingle:(0,v.translateString)("Comment"),ucfirstPlural:(0,v.translateString)("Comments"),submitCommentText:(0,v.translateString)("SUBMIT"),disabledCommentsMsg:(0,v.translateString)("Comments are disabled")};function V(e){const t=(0,n.useRef)(null),[a,i]=(0,n.useState)(""),[o,d]=(0,n.useState)(!1),[c,m]=(0,n.useState)(!1),[u,p]=(0,n.useState)(-1),[g,h]=(0,n.useState)(""),[y]=(0,n.useState)(l.MemberContext._currentValue.is.anonymous?l.LinksContext._currentValue.signin+"?next=/"+window.location.href.replace(l.SiteContext._currentValue.url,"").replace(/^\//g,""):null);function E(){m(!0)}function b(){m(!1)}function S(){const e=[...r.MediaPageStore.get("users")],t=[];e.forEach((e=>{t.push({id:e.username,display:e.name})})),h(t)}function w(){t.current.style.height="";const e=t.current.scrollHeight,a=0(r.MediaPageStore.on("comment_submit",w),r.MediaPageStore.on("comment_submit_fail",P),!0===MediaCMS.features.media.actions.comment_mention&&r.MediaPageStore.on("users_load",S),()=>{r.MediaPageStore.removeListener("comment_submit",w),r.MediaPageStore.removeListener("comment_submit_fail",P),!0===MediaCMS.features.media.actions.comment_mention&&r.MediaPageStore.removeListener("users_load",S)}))),l.MemberContext._currentValue.is.anonymous?n.createElement("div",{className:"comments-form"},n.createElement("div",{className:"comments-form-inner"},n.createElement(s.UserThumbnail,null),n.createElement("div",{className:"form"},n.createElement("a",{href:y,rel:"noffolow",className:"form-textarea-wrap",title:(0,v.translateString)("Add a ")+I.single+"..."},n.createElement("span",{className:"form-textarea"},(0,v.translateString)("Add a ")+I.single+"...")),n.createElement("div",{className:"form-buttons"},n.createElement("a",{href:y,rel:"noffolow",className:"disabled"},I.submitCommentText))))):n.createElement("div",{className:"comments-form"},n.createElement("div",{className:"comments-form-inner"},n.createElement(s.UserThumbnail,null),n.createElement("div",{className:"form"},n.createElement("div",{className:"form-textarea-wrap"+(c?" focused":"")},MediaCMS.features.media.actions.comment_mention?n.createElement(x.G,{inputRef:t,className:"form-textarea",rows:"1",placeholder:"Add a "+I.single+"...",value:a,onChange:function(e,a,n,l){t.current.style.height="",i(a),d(!0);const r=t.current.scrollHeight,o=0()=>{}),[]),n.createElement("div",{className:"comment"},n.createElement("div",{className:"comment-inner"},n.createElement("a",{className:"comment-author-thumb",href:e.author_link,title:e.author_name},n.createElement("img",{src:e.author_thumb,alt:e.author_name})),n.createElement("div",{className:"comment-content"},n.createElement("div",{className:"comment-meta"},n.createElement("div",{className:"comment-author"},n.createElement("a",{href:e.author_link,title:e.author_name},e.author_name)),n.createElement("div",{className:"comment-date"},(0,v.replaceString)((0,L.GP)(new Date(e.publish_date))))),n.createElement("div",{ref:t,className:"comment-text"+(i?" show-all":"")},n.createElement("div",{ref:a,className:"comment-text-inner",dangerouslySetInnerHTML:(d=e.text,{__html:d.replace(/\n/g,"
")})})),o?n.createElement("button",{className:"toggle-more",onClick:function(){r(!i)}},i?"Show less":"Read more"):null,l.MemberContext._currentValue.can.deleteComment?n.createElement(T,{comment_id:e.comment_id}):null)));var d}A.propTypes={comment_id:h().oneOfType([h().string,h().number]).isRequired,media_id:h().oneOfType([h().string,h().number]).isRequired,text:h().string,author_name:h().string,author_link:h().string,author_thumb:h().string,publish_date:h().oneOfType([h().string,h().number]),likes:h().number,dislikes:h().number},A.defaultProps={author_name:"",author_link:"#",publish_date:0,likes:0,dislikes:0};const R=e=>{let{commentsLength:t}=e;return n.createElement(n.Fragment,null,!l.MemberContext._currentValue.can.readComment||r.MediaPageStore.get("media-data").enable_comments?null:n.createElement("span",{className:"disabled-comments-msg"},I.disabledCommentsMsg),l.MemberContext._currentValue.can.readComment&&(r.MediaPageStore.get("media-data").enable_comments||l.MemberContext._currentValue.can.editMedia)?n.createElement("h2",null,t?1{e.text=function(e){const t=new RegExp("((\\d)?\\d:)?(\\d)?\\d:\\d\\d","g");return e.replace(t,(function(e,t){let a=e.split(":"),i=0,n=1;for(;a.length>0;)i+=n*parseInt(a.pop(),10),n*=60;return`${e}`}))}(e.text)})),function(){var e=document.querySelector(".page-main"),t=e.querySelector(".no-comment");const a=r.PageStore.get("config-contents").uploader.postUploadMessage;if(""===a)t&&0===comm.length&&t.parentNode.removeChild(t);else if(0===comm.length&&"unlisted"===r.MediaPageStore.get("media-data").state){if(-1f.PageActions.addNotification(I.ucfirstSingle+" added","commentSubmit")),100)}function u(){setTimeout((()=>f.PageActions.addNotification(I.ucfirstSingle+" submission failed","commentSubmitFail")),100)}function p(e){c(),setTimeout((()=>f.PageActions.addNotification(I.ucfirstSingle+" removed","commentDelete")),100)}function g(e){setTimeout((()=>f.PageActions.addNotification(I.ucfirstSingle+" removal failed","commentDeleteFail")),100)}return(0,n.useEffect)((()=>{d(i.length&&l.MemberContext._currentValue.can.readComment&&(r.MediaPageStore.get("media-data").enable_comments||l.MemberContext._currentValue.can.editMedia))}),[i]),(0,n.useEffect)((()=>(r.MediaPageStore.on("comments_load",c),r.MediaPageStore.on("comment_submit",m),r.MediaPageStore.on("comment_submit_fail",u),r.MediaPageStore.on("comment_delete",p),r.MediaPageStore.on("comment_delete_fail",g),()=>{r.MediaPageStore.removeListener("comments_load",c),r.MediaPageStore.removeListener("comment_submit",m),r.MediaPageStore.removeListener("comment_submit_fail",u),r.MediaPageStore.removeListener("comment_delete",p),r.MediaPageStore.removeListener("comment_delete_fail",g)})),[]),n.createElement("div",{className:"comments-list"},n.createElement("div",{className:"comments-list-inner"},n.createElement(R,{commentsLength:i.length}),r.MediaPageStore.get("media-data").enable_comments?n.createElement(V,{media_id:t}):null,s?i.map((e=>n.createElement(A,{key:e.uid,comment_id:e.uid,media_id:t,text:e.text,author_name:e.author_name,author_link:e.author_profile,author_thumb:l.SiteContext._currentValue.url+"/"+e.author_thumbnail_url.replace(/^\//g,""),publish_date:e.add_date,likes:0,dislikes:0}))):null))}var D=a(8974);function O(e){let t,a,i=[];if(e&&e.length)for(t=0,a=1!0===e.is_lms_course)));const d=r.PageStore.get("config-options").pages.media.categoriesWithTitle?[]:!r.PageStore.get("config-enabled").taxonomies.categories||r.PageStore.get("config-enabled").taxonomies.categories.enabled?O(o):[];let c=r.MediaPageStore.get("media-summary");c=c?c.trim():"";const[m,u,p]=(0,N.usePopup)(),[g,h]=(0,n.useState)(""!==c),[y,E]=(0,n.useState)(""==c);function b(e){setTimeout((function(){f.PageActions.addNotification("Media removed. Redirecting...","mediaDelete"),setTimeout((function(){window.location.href=l.SiteContext._currentValue.url+"/"+r.MediaPageStore.get("media-data").author_profile.replace(/^\//g,"")}),2e3)}),100),void 0!==e&&D.info("Removed media '"+e+'"')}function S(e){setTimeout((function(){f.PageActions.addNotification("Media removal failed","mediaDeleteFail")}),100),void 0!==e&&D.info('Media "'+e+'" removal failed')}(0,n.useEffect)((()=>(r.MediaPageStore.on("media_delete",b),r.MediaPageStore.on("media_delete_fail",S),()=>{r.MediaPageStore.removeListener("media_delete",b),r.MediaPageStore.removeListener("media_delete_fail",S)})),[]);const w=(0,v.formatInnerLink)(e.author.url,l.SiteContext._currentValue.url),P=(0,v.formatInnerLink)(e.author.thumb,l.SiteContext._currentValue.url);return n.createElement("div",{className:"media-info-content"},void 0===r.PageStore.get("config-media-item").displayAuthor||null===r.PageStore.get("config-media-item").displayAuthor||r.PageStore.get("config-media-item").displayAuthor?n.createElement(F,{link:w,thumb:P,name:e.author.name,published:e.published}):null,n.createElement("div",{className:"media-content-banner"},n.createElement("div",{className:"media-content-banner-inner"},g?n.createElement("div",{className:"media-content-summary"},c):null,g&&!y||!a?null:n.createElement("div",{className:"media-content-description",dangerouslySetInnerHTML:{__html:function(e){const t=new RegExp("((\\d)?\\d:)?(\\d)?\\d:\\d\\d","g");return e.replace(t,(function(e,t){let a=e.split(":"),i=0,n=1;for(;a.length>0;)i+=n*parseInt(a.pop(),10),n*=60;return`${e}`}))}(a)}}),g?n.createElement("button",{className:"load-more",onClick:function(){E(!y)}},y?"SHOW LESS":"SHOW MORE"):null,i.length?n.createElement(H,{value:i,title:1(r.MediaPageStore.on("disliked_media",d),r.MediaPageStore.on("undisliked_media",c),r.MediaPageStore.on("disliked_media_failed_request",m),()=>{r.MediaPageStore.removeListener("disliked_media",d),r.MediaPageStore.removeListener("undisliked_media",c),r.MediaPageStore.removeListener("disliked_media_failed_request",m)})),[]),n.createElement("div",{className:"like"},n.createElement("button",{onClick:function(t){t.preventDefault(),t.stopPropagation(),f.MediaPageActions[e?"undislikeMedia":"dislikeMedia"]()}},n.createElement(s.CircleIconButton,{type:"span"},n.createElement(s.MaterialIcon,{type:"thumb_down"})),n.createElement("span",{className:"dislikes-counter"},a)))}function z(){const[e,t]=(0,n.useState)(r.MediaPageStore.get("user-liked-media")),[a,i]=(0,n.useState)((0,v.formatViewsNumber)(r.MediaPageStore.get("media-likes"),!1));function o(){t(r.MediaPageStore.get("user-liked-media")),i((0,v.formatViewsNumber)(r.MediaPageStore.get("media-likes"),!1))}function d(){o(),f.PageActions.addNotification(l.TextsContext._currentValue.addToLiked,"likedMedia")}function c(){o(),f.PageActions.addNotification(l.TextsContext._currentValue.removeFromLiked,"unlikedMedia")}function m(){f.PageActions.addNotification("Action failed","likedMediaRequestFail")}return(0,n.useEffect)((()=>(r.MediaPageStore.on("liked_media",d),r.MediaPageStore.on("unliked_media",c),r.MediaPageStore.on("liked_media_failed_request",m),()=>{r.MediaPageStore.removeListener("liked_media",d),r.MediaPageStore.removeListener("unliked_media",c),r.MediaPageStore.removeListener("liked_media_failed_request",m)})),[]),n.createElement("div",{className:"like"},n.createElement("button",{onClick:function(t){t.preventDefault(),t.stopPropagation(),f.MediaPageActions[e?"unlikeMedia":"likeMedia"]()}},n.createElement(s.CircleIconButton,{type:"span"},n.createElement(s.MaterialIcon,{type:"thumb_up"})),n.createElement("span",{className:"likes-counter"},a)))}function W(e){const t=(0,n.useRef)(null),a=(0,n.useRef)(null),[i,l]=(0,n.useState)(null);function o(){l(window.innerHeight-(104+t.current.offsetHeight))}return(0,n.useEffect)((()=>(o(),r.PageStore.on("window_resize",o),()=>{r.PageStore.removeListener("window_resize",o)})),[]),n.createElement("form",null,n.createElement("div",{className:"report-form",style:null!==i?{maxHeight:i+"px"}:null},n.createElement("div",{className:"form-title"},"Report media"),n.createElement("div",{className:"form-field"},n.createElement("span",{className:"label"},"URL"),n.createElement("input",{type:"text",readOnly:!0,value:e.mediaUrl})),n.createElement("div",{className:"form-field"},n.createElement("span",{className:"label"},"Description"),n.createElement("textarea",{ref:a,required:!0})),n.createElement("div",{className:"form-field form-help-text"},"Reported media is reviewed")),n.createElement("div",{ref:t,className:"form-actions-bottom"},n.createElement("button",{className:"cancel",onClick:function(t){t.preventDefault(),void 0!==e.cancelReportForm&&e.cancelReportForm()}},"CANCEL"),n.createElement("button",{onClick:function(t){const i=a.current.value.trim();""!==i&&(t.preventDefault(),void 0!==e.submitReportForm&&e.submitReportForm(i))}},"SUBMIT")))}function $(e,t){const a=l.SiteContext._currentValue,i=e.encodings_info,n={};let r,o;for(r in i)if(i.hasOwnProperty(r)&&Object.keys(i[r]).length)for(o in i[r])i[r].hasOwnProperty(o)&&"success"===i[r][o].status&&100===i[r][o].progress&&null!==i[r][o].url&&(n[i[r][o].title]={text:r+" - "+o.toUpperCase()+" ("+i[r][o].size+")",link:(0,v.formatInnerLink)(i[r][o].url,a.url),linkAttr:{target:"_blank",download:e.title+"_"+r+"_"+o.toUpperCase()}});return n.original_media_url={text:"Original file ("+e.size+")",link:(0,v.formatInnerLink)(e.original_media_url,a.url),linkAttr:{target:"_blank",download:e.title}},Object.values(n)}function G(e,t,a,i,l,r,o){const d=t.url,c=t.media_type,m=t.state||"N/A",u=t.encoding_status||"N/A",p=t.reported_times,g=t.is_reviewed,h="video"===c,f=function(e,t,a,i,n){const l=[],r="video"===t.media_type,o=t.reported_times;return a&&e.downloadMedia&&(r?l.push({itemType:"open-subpage",text:"Download",icon:"arrow_downward",itemAttr:{className:"visible-only-in-small"},buttonAttr:{className:"change-page","data-page-id":"videoDownloadOptions"}}):i&&l.push({itemType:"link",link:i,text:"Download",icon:"arrow_downward",itemAttr:{className:"visible-only-in-small"},linkAttr:{target:"_blank",download:t.title}})),r&&e.editMedia&&l.push({itemType:"open-subpage",text:"Status info",icon:"info",buttonAttr:{className:"change-page","data-page-id":"mediaStatusInfo"}}),e.reportMedia&&(n?l.push({itemType:"div",text:"Reported",icon:"flag",divAttr:{className:"reported-label loggedin-media-reported"}}):l.push({itemType:"open-subpage",text:"Report",icon:"flag",buttonAttr:{className:"change-page"+(o?" loggedin-media-reported":""),"data-page-id":"loggedInReportMedia"}})),l}(e,t,a,i,l),v={};return f.length&&(v.main=n.createElement("div",{className:"main-options"},n.createElement(s.PopupMain,null,n.createElement(s.NavigationMenuList,{items:f})))),e.reportMedia&&(v.loggedInReportMedia=l?null:n.createElement("div",{className:"popup-fullscreen"},n.createElement(s.PopupMain,null,n.createElement("span",{className:"popup-fullscreen-overlay"}),n.createElement("div",null,n.createElement(W,{mediaUrl:d,submitReportForm:r,cancelReportForm:o}))))),e.editMedia&&(v.mediaStatusInfo=n.createElement("div",{className:"main-options"},n.createElement(s.PopupMain,null,n.createElement("ul",{className:"media-status-info"},n.createElement("li",null,"Media type: ",n.createElement("span",null,c)),n.createElement("li",null,"State: ",n.createElement("span",null,m)),n.createElement("li",null,"Review state: ",n.createElement("span",null,g?"Is reviewed":"Pending review")),h?n.createElement("li",null,"Encoding Status: ",n.createElement("span",null,u)):null,p?n.createElement("li",{className:"reports"},"Reports: ",n.createElement("span",null,p)):null)))),a&&e.downloadMedia&&h&&(v.videoDownloadOptions=n.createElement("div",{className:"video-download-options"},n.createElement(s.PopupMain,null,n.createElement(s.NavigationMenuList,{items:$(t)})))),v}W.propTypes={mediaUrl:h().string.isRequired,cancelReportForm:h().func,submitReportForm:h().func};const Y="more-options active-options";function J(e){const{userCan:t}=(0,N.useUser)(),a=l.SiteContext._currentValue,i=(0,v.formatInnerLink)(r.MediaPageStore.get("media-original-url"),a.url),o=r.MediaPageStore.get("media-data"),d="video"===o.media_type,[c,m,u]=(0,N.usePopup)(),[p,g]=(0,n.useState)(!1),[h,y]=(0,n.useState)(!1),[E,b]=(0,n.useState)({}),[S,w]=(0,n.useState)("main"),[P,M]=(0,n.useState)(Y);function _(e){f.MediaPageActions.reportMedia(e)}function k(){c.current.toggle()}function C(){c.current.tryToHide(),setTimeout((function(){f.PageActions.addNotification("Media Reported","reportedMedia"),y(!0),r.MediaPageStore.removeListener("reported_media",C)}),100)}return(0,n.useEffect)((()=>{h||(p?r.MediaPageStore.on("reported_media",C):r.MediaPageStore.removeListener("reported_media",C))}),[p]),(0,n.useEffect)((()=>{g(Object.keys(E).length&&e.allowDownload&&t.downloadMedia)}),[E]),(0,n.useEffect)((()=>{let a=Y;e.allowDownload&&t.downloadMedia&&"videoDownloadOptions"===S&&(a+=" video-downloads"),1===Object.keys(E).length&&e.allowDownload&&t.downloadMedia&&(d||i)&&(a+=" visible-only-in-small"),M(a)}),[S]),(0,n.useEffect)((()=>{b(G(t,o,e.allowDownload,i,h,_,k))}),[h]),(0,n.useEffect)((()=>(b(G(t,o,e.allowDownload,i,h,_,k)),()=>{p&&!h&&r.MediaPageStore.removeListener("reported_media",C)})),[]),p?n.createElement("div",{className:P},n.createElement(u,{contentRef:c},n.createElement("span",null,n.createElement(s.CircleIconButton,{type:"button"},n.createElement(s.MaterialIcon,{type:"more_horiz"})))),n.createElement("div",{className:"nav-page-"+S},n.createElement(m,{contentRef:c,hideCallback:function(){w("main")}},n.createElement(s.NavigationContentApp,{pageChangeCallback:function(e){w(e)},initPage:S,focusFirstItemOnPageChange:!1,pages:E,pageChangeSelector:".change-page",pageIdSelectorAttr:"data-page-id"})))):null}J.propTypes={allowDownload:h().bool.isRequired},J.defaultProps={allowDownload:!1};var Z=a(3706);function Q(e){return e.renderDate?n.createElement("label",null,n.createElement("input",{type:"checkbox",checked:e.isChecked,onChange:function(t){t.persist(),e.isChecked?f.MediaPageActions.removeMediaFromPlaylist(e.playlistId,r.MediaPageStore.get("media-id")):f.MediaPageActions.addMediaToPlaylist(e.playlistId,r.MediaPageStore.get("media-id"))}}),n.createElement("span",null,e.title)):null}function X(e){const t=(0,n.useRef)(null),a=(0,n.useRef)(null),[i,l]=(0,n.useState)(new Date),[o,d]=(0,n.useState)(r.MediaPageStore.get("playlists")),[c,m]=(0,n.useState)(!1);function u(){E()}function p(){d(r.MediaPageStore.get("playlists")),l(new Date)}function g(){d(r.MediaPageStore.get("playlists")),l(new Date),setTimeout((function(){f.PageActions.addNotification("Media added to playlist","playlistMediaAdditionComplete")}),100)}function h(){setTimeout((function(){f.PageActions.addNotification("Media's addition to playlist failed","playlistMediaAdditionFail")}),100)}function v(){d(r.MediaPageStore.get("playlists")),l(new Date),setTimeout((function(){f.PageActions.addNotification("Media removed from playlist","playlistMediaRemovalComplete")}),100)}function y(){setTimeout((function(){f.PageActions.addNotification("Media's removal from playlist failed","playlistMediaaRemovalFail")}),100)}function E(){null!==a.current&&(a.current.style.maxHeight=window.innerHeight-74-(t.current.offsetHeight-a.current.offsetHeight)+"px")}function b(){m(!c),E()}return(0,n.useEffect)((()=>{E()})),(0,n.useEffect)((()=>(r.PageStore.on("window_resize",u),r.MediaPageStore.on("playlists_load",p),r.MediaPageStore.on("media_playlist_addition_completed",g),r.MediaPageStore.on("media_playlist_addition_failed",h),r.MediaPageStore.on("media_playlist_removal_completed",v),r.MediaPageStore.on("media_playlist_removal_failed",y),()=>{r.PageStore.removeListener("window_resize",u),r.MediaPageStore.removeListener("playlists_load",p),r.MediaPageStore.removeListener("media_playlist_addition_completed",g),r.MediaPageStore.removeListener("media_playlist_addition_failed",h),r.MediaPageStore.removeListener("media_playlist_removal_completed",v),r.MediaPageStore.removeListener("media_playlist_removal_failed",y)})),[]),n.createElement("div",{ref:t,className:"saveto-popup"},n.createElement("div",{className:"saveto-title"},"Save to...",n.createElement(s.CircleIconButton,{type:"button",onClick:function(){m(!1),void 0!==e.triggerPopupClose&&e.triggerPopupClose()}},n.createElement(s.MaterialIcon,{type:"close"}))),o.length?n.createElement("div",{ref:a,className:"saveto-select"},function(){const e=r.MediaPageStore.get("media-id");let t=[],a=0;for(;a{g(window.innerHeight-144+56),q(c.current.offsetHeight),W(u.current.offsetHeight)})),(0,n.useEffect)((()=>(r.PageStore.on("window_resize",Y),r.MediaPageStore.on("copied_embed_media_code",J),()=>{r.PageStore.removeListener("window_resize",Y),r.MediaPageStore.removeListener("copied_embed_media_code",J)})),[]),(0,n.useEffect)((()=>{!function(e){try{localStorage.setItem(ee,JSON.stringify(e))}catch(e){}}({showTitle:y,showRelated:b,showUserAvatar:w,linkTitle:M,responsive:k,aspectRatio:V,embedWidthValue:A,embedWidthUnit:U,embedHeightValue:O,embedHeightUnit:H,keepAspectRatio:h})}),[y,b,w,M,k,V,A,U,O,H,h]),n.createElement("div",{className:"share-embed",style:{maxHeight:p+"px"}},n.createElement("div",{className:"share-embed-inner"},n.createElement("div",{className:"on-left"},n.createElement("div",{className:"media-embed-wrap"},n.createElement(l.SiteConsumer,null,(e=>{const t=`${i.embed+r.MediaPageStore.get("media-id")}&showTitle=${y?"1":"0"}&showRelated=${b?"1":"0"}&showUserAvatar=${w?"1":"0"}&linkTitle=${M?"1":"0"}${N?"&t="+L.split(":").reverse().reduce(((e,t,a)=>e+(parseInt(t,10)||0)*Math.pow(60,a)),0):""}`;return n.createElement("div",{style:{width:"100%",height:"480px",overflow:"hidden"}},n.createElement("iframe",{width:"100%",height:"100%",src:t,frameBorder:"0",allowFullScreen:!0}))})))),n.createElement("div",{ref:d,className:"on-right"},n.createElement("div",{ref:c,className:"on-right-top"},n.createElement("div",{className:"on-right-top-inner"},n.createElement("span",{className:"ttl"},"Embed Video"),n.createElement(s.CircleIconButton,{type:"button",onClick:function(){void 0!==e.triggerPopupClose&&e.triggerPopupClose()}},n.createElement(s.MaterialIcon,{type:"close"})))),n.createElement("div",{ref:m,className:"on-right-middle",style:{top:B+"px",bottom:z+"px"}},n.createElement("textarea",{readOnly:!0,value:function(){const e=r.MediaPageStore.get("media-id"),t=new URLSearchParams;if(y?t.set("showTitle","1"):t.set("showTitle","0"),b?t.set("showRelated","1"):t.set("showRelated","0"),w?t.set("showUserAvatar","1"):t.set("showUserAvatar","0"),M?t.set("linkTitle","1"):t.set("linkTitle","0"),N&&L){const e=L.split(":").reverse();let a=0;e[0]&&(a+=parseInt(e[0],10)||0),e[1]&&(a+=60*(parseInt(e[1],10)||0)),e[2]&&(a+=3600*(parseInt(e[2],10)||0)),a>0&&t.set("t",a)}const a=i.embed.includes("?")?"&":"?",n=`${i.embed}${e}${a}${t.toString()}`;if(k){if("custom"===V)return``;const e=V.split(":"),t=`${e[0]} / ${e[1]}`;return``}return``}()}),n.createElement("div",{className:"iframe-config"},n.createElement("div",{className:"iframe-config-options-title"},"Embed options"),n.createElement("div",{className:"iframe-config-option"},n.createElement("div",{className:"option-content"},n.createElement("div",{className:"ratio-options",style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"0 10px"}},n.createElement("div",{className:"options-group"},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap"}},n.createElement("input",{type:"checkbox",checked:y,onChange:function(){E(!y)}}),"Show title")),n.createElement("div",{className:"options-group"},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap",opacity:y?1:.5}},n.createElement("input",{type:"checkbox",checked:M,onChange:function(){_(!M)},disabled:!y}),"Link title")),n.createElement("div",{className:"options-group"},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap"}},n.createElement("input",{type:"checkbox",checked:b,onChange:function(){S(!b)}}),"Show related")),n.createElement("div",{className:"options-group"},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap",opacity:y?1:.5}},n.createElement("input",{type:"checkbox",checked:w,onChange:function(){P(!w)},disabled:!y}),"Show user avatar")),n.createElement("div",{className:"options-group",style:{display:"flex",alignItems:"center"}},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap",display:"flex",alignItems:"center",marginRight:"10px"}},n.createElement("input",{type:"checkbox",checked:k,onChange:function(){const e=!k;if(C(e),e)v(!1);else if("custom"!==V){const e=V.split(":"),t=e[0],a=e[1];v(!0),F(parseInt(A*a/t,10))}else v(!1)}}),"Responsive")),n.createElement("div",{className:"options-group",style:{display:"flex",alignItems:"center"}},n.createElement("label",{style:{minHeight:"36px",whiteSpace:"nowrap",display:"flex",alignItems:"center",marginRight:"10px"}},n.createElement("input",{type:"checkbox",checked:N,onChange:function(){x(!N)}}),"Start at"),N&&n.createElement("input",{type:"text",value:L,onChange:function(e){I(e.target.value)},style:{width:"60px",height:"28px",fontSize:"12px",padding:"2px 5px"}})),n.createElement("div",{className:"options-group",style:{display:"flex",flexDirection:"column",justifyContent:"center"}},n.createElement("div",{style:{fontSize:"12px",marginBottom:"4px",color:"rgba(0,0,0,0.6)"}},"Aspect Ratio"),n.createElement("div",{style:{display:"flex",alignItems:"center"}},n.createElement("select",{ref:o,onChange:function(){const e=o.current.value;if("custom"===e)T(e),v(!1);else{const t=e.split(":"),a=t[0],i=t[1];T(e),v(!0),F(parseInt(A*i/a,10))}},value:V,style:{height:"28px",fontSize:"12px"}},n.createElement("option",{value:"16:9"},"16:9"),n.createElement("option",{value:"4:3"},"4:3"),n.createElement("option",{value:"3:2"},"3:2"),n.createElement("option",{value:"custom"},"Custom"))))),n.createElement("br",null),!k&&n.createElement(n.Fragment,null,n.createElement("div",{className:"options-group"},n.createElement(s.NumericInputWithUnit,{valueCallback:function(e){e=""===e?0:e;const t=V.split(":"),a=t[0],i=t[1];R(e),F(h?parseInt(e*i/a,10):O)},unitCallback:function(e){D(e)},label:"Width",defaultValue:parseInt(A,10),defaultUnit:U,minValue:1,maxValue:99999,units:$})),n.createElement("div",{className:"options-group"},n.createElement(s.NumericInputWithUnit,{valueCallback:function(e){e=""===e?0:e;const t=V.split(":"),a=t[0],i=t[1];F(e),R(h?parseInt(e*a/i,10):A)},unitCallback:function(e){j(e)},label:"Height",defaultValue:parseInt(O,10),defaultUnit:H,minValue:1,maxValue:99999,units:$}))))))),n.createElement("div",{ref:u,className:"on-right-bottom"},n.createElement("button",{onClick:function(){f.MediaPageActions.copyEmbedMediaCode(m.current.querySelector("textarea"))}},"COPY")))))}te.propTypes={triggerPopupClose:h().func};var ae=a(5289);function ie(e){let{onClick:t}=e;return n.createElement("span",{className:"next-slide"},n.createElement(s.CircleIconButton,{buttonShadow:!0,onClick:t},n.createElement("i",{className:"material-icons"},"keyboard_arrow_right")))}function ne(e){let{onClick:t}=e;return n.createElement("span",{className:"previous-slide"},n.createElement(s.CircleIconButton,{buttonShadow:!0,onClick:t},n.createElement("i",{className:"material-icons"},"keyboard_arrow_left")))}function le(){return{maxFormContentHeight:window.innerHeight-196,maxPopupWidth:518>window.innerWidth-80?window.innerWidth-80:null}}function re(e){const t=(0,n.useRef)(null),a=(0,n.useRef)(null),i=r.MediaPageStore.get("media-url"),[o,s]=(0,n.useState)(null),[d,c]=(0,n.useState)({prev:!1,next:!1}),[m,u]=(0,n.useState)(le()),[p]=(0,n.useState)(function(){const e=function(){const e=l.ShareOptionsContext._currentValue,t=r.MediaPageStore.get("media-url"),a=(r.MediaPageStore.get("media-data").title,{});let i=0;for(;i{s(new ae.A(a.current,".sh-option"))}),[p]),(0,n.useEffect)((()=>{o&&(o.updateDataStateOnResize(p.length,!0,!0),_())}),[m,o]),(0,n.useEffect)((()=>{r.PageStore.on("window_resize",P),r.MediaPageStore.on("copied_media_link",M);const e=function(){const e=document.getElementsByTagName("video");return e[0]?.currentTime}();return h(e),y(function(e){let t=parseInt(e,10),a=Math.floor(t/3600),i=Math.floor((t-3600*a)/60),n=t-3600*a-60*i;return a<10&&(a="0"+a),i<10&&(i="0"+i),n<10&&(n="0"+n),a>=1?a+":"+i+":"+n:i+":"+n}(e)),()=>{r.PageStore.removeListener("window_resize",P),r.MediaPageStore.removeListener("copied_media_link",M),s(null)}}),[]),n.createElement("div",{ref:t,style:null!==m.maxPopupWidth?{maxWidth:m.maxPopupWidth+"px"}:null},n.createElement("div",{className:"scrollable-content",style:null!==m.maxFormContentHeight?{maxHeight:m.maxFormContentHeight+"px"}:null},n.createElement("div",{className:"share-popup-title"},"Share media"),p.length?n.createElement("div",{className:"share-options"},d.prev?n.createElement(ne,{onClick:function(){o.previousSlide(),_()}}):null,n.createElement("div",{ref:a,className:"share-options-inner"},p),d.next?n.createElement(ie,{onClick:function(){o.nextSlide(),_()}}):null):null),n.createElement("div",{className:"copy-field"},n.createElement("div",null,n.createElement("input",{type:"text",readOnly:!0,value:S}),n.createElement("button",{onClick:function(){f.MediaPageActions.copyShareLink(t.current.querySelector(".copy-field input"))}},"COPY"))),n.createElement("div",{className:"start-at"},n.createElement("label",null,n.createElement("input",{type:"checkbox",name:"start-at-checkbox",id:"id-start-at-checkbox",checked:E,onChange:function(){b(!E),function(){const e=E?i:i+"&t="+Math.trunc(g);w(e)}()}}),"Start at ",v)))}function oe(){return{shareOptions:n.createElement("div",{className:"popup-fullscreen"},n.createElement(s.PopupMain,null,n.createElement("span",{className:"popup-fullscreen-overlay"}),n.createElement(re,null)))}}function se(e){const[t,a,i]=(0,N.usePopup)(),[l,r]=(0,n.useState)("shareOptions");return n.createElement("div",{className:"share"},n.createElement(i,{contentRef:t},n.createElement("button",null,n.createElement(s.CircleIconButton,{type:"span"},n.createElement(s.MaterialIcon,{type:"share"})),n.createElement("span",null,(0,v.translateString)("SHARE")))),n.createElement(a,{contentRef:t,hideCallback:function(){r("shareOptions")}},n.createElement(s.NavigationContentApp,{initPage:l,pageChangeSelector:".change-page",pageIdSelectorAttr:"data-page-id",pages:e.isVideo?(o=function(){t.current.toggle()},{...oe(),shareEmbed:n.createElement("div",{className:"popup-fullscreen share-embed-popup"},n.createElement(s.PopupMain,null,n.createElement("span",{className:"popup-fullscreen-overlay"}),n.createElement(te,{triggerPopupClose:o})))}):oe(),focusFirstItemOnPageChange:!1,pageChangeCallback:function(e){r(e)}})));var o}function de(e){return n.createElement("div",{className:"download hidden-only-in-small"},n.createElement("a",{href:e.link,target:"_blank",download:e.title,title:"Download",rel:"noreferrer"},n.createElement(s.CircleIconButton,{type:"span"},n.createElement(s.MaterialIcon,{type:"arrow_downward"})),n.createElement("span",null,"DOWNLOAD")))}function ce(){const e=r.MediaPageStore.get("media-data"),t=(e.title,e.encodings_info),a={};let i,n;for(i in t)if(t.hasOwnProperty(i)&&Object.keys(t[i]).length)for(n in t[i])if(t[i].hasOwnProperty(n)&&"success"===t[i][n].status&&100===t[i][n].progress&&null!==t[i][n].url){const r=e.original_media_url,o=r?r.substring(r.lastIndexOf("/")+1):e.title;a[t[i][n].title]={text:i+" - "+n.toUpperCase()+" ("+t[i][n].size+")",link:(0,v.formatInnerLink)(e.original_media_url,l.SiteContext._currentValue.url),linkAttr:{target:"_blank",download:o}}}const o=e.original_media_url,s=o?o.substring(o.lastIndexOf("/")+1):e.title;return a.original_media_url={text:"Original file ("+e.size+")",link:(0,v.formatInnerLink)(e.original_media_url,l.SiteContext._currentValue.url),linkAttr:{target:"_blank",download:s}},Object.values(a)}function me(e){const[t,a,i]=(0,N.usePopup)(),[l,r]=(0,n.useState)("main");return n.createElement("div",{className:"video-downloads hidden-only-in-small"},n.createElement(i,{contentRef:t},n.createElement("button",null,n.createElement(s.CircleIconButton,{type:"span"},n.createElement(s.MaterialIcon,{type:"arrow_downward"})),n.createElement("span",null,(0,v.translateString)("DOWNLOAD")))),n.createElement("div",{className:"nav-page-"+l},n.createElement(a,{contentRef:t},n.createElement(s.NavigationContentApp,{pageChangeCallback:null,initPage:"main",focusFirstItemOnPageChange:!1,pages:{main:n.createElement("div",{className:"main-options"},n.createElement(s.PopupMain,null,n.createElement(s.NavigationMenuList,{items:ce()})))},pageChangeSelector:".change-page",pageIdSelectorAttr:"data-page-id"}))))}de.propTypes={link:h().string.isRequired,title:h().string.isRequired};class ue extends n.PureComponent{constructor(e){super(e),this.state={likedMedia:r.MediaPageStore.get("user-liked-media"),dislikedMedia:r.MediaPageStore.get("user-disliked-media")},this.downloadLink="video"!==r.MediaPageStore.get("media-type")?(0,v.formatInnerLink)(r.MediaPageStore.get("media-original-url"),l.SiteContext._currentValue.url):null;const t=r.MediaPageStore.get("media-original-url");this.downloadFilename=t?t.substring(t.lastIndexOf("/")+1):this.props.title,this.updateStateValues=this.updateStateValues.bind(this)}componentDidMount(){r.MediaPageStore.on("liked_media",this.updateStateValues),r.MediaPageStore.on("unliked_media",this.updateStateValues),r.MediaPageStore.on("disliked_media",this.updateStateValues),r.MediaPageStore.on("undisliked_media",this.updateStateValues);const e=document.querySelectorAll("[data-tooltip]");e.length&&e.forEach((e=>function(e){const t=document.body,a=document.createElement("span");function i(){const t=e.getBoundingClientRect();a.style.top=t.top-(0+a.offsetHeight)+"px",a.style.left=t.left+"px"}a.innerText=e.getAttribute("data-tooltip"),a.setAttribute("class","tooltip"),e.removeAttribute("data-tooltip"),e.addEventListener("mouseenter",(function(){const n=e.getBoundingClientRect();t.appendChild(a),a.style.top=n.top-(0+a.offsetHeight)+"px",a.style.left=n.left+"px",document.addEventListener("scroll",i)})),e.addEventListener("mouseleave",(function(){t.removeChild(a),a.style.top="",a.style.left="",document.removeEventListener("scroll",i)}))}(e)))}updateStateValues(){this.setState({likedMedia:r.MediaPageStore.get("user-liked-media"),dislikedMedia:r.MediaPageStore.get("user-disliked-media")})}mediaCategories(e){if(void 0===this.props.categories||null===this.props.categories||!this.props.categories.length)return null;let t=0,a=[];for(;t=this.props.views?"view":"views"):null,n.createElement("div",{className:"media-actions"},n.createElement("div",null,l.MemberContext._currentValue.can.likeMedia?n.createElement(z,null):null,l.MemberContext._currentValue.can.dislikeMedia?n.createElement(q,null):null,l.MemberContext._currentValue.can.shareMedia?n.createElement(se,{isVideo:!1}):null,!l.MemberContext._currentValue.is.anonymous&&l.MemberContext._currentValue.can.saveMedia&&-1=this.props.views?(0,v.translateString)("view"):(0,v.translateString)("views")):null,n.createElement("div",{className:"media-actions"},n.createElement("div",null,l.MemberContext._currentValue.can.likeMedia?n.createElement(z,null):null,l.MemberContext._currentValue.can.dislikeMedia?n.createElement(q,null):null,!(0,v.inEmbeddedApp)()&&l.MemberContext._currentValue.can.shareMedia?n.createElement(se,{isVideo:!0}):null,!(0,v.inEmbeddedApp)()&&!l.MemberContext._currentValue.is.anonymous&&l.MemberContext._currentValue.can.saveMedia&&-1(r.MediaPageStore.on("loaded_media_data",s),r.PageStore.on("switched_media_auto_play",o),()=>{r.MediaPageStore.removeListener("loaded_media_data",s),r.PageStore.removeListener("switched_media_auto_play",o)})),[]),t?n.createElement("div",{className:"auto-play"},n.createElement("div",{className:"auto-play-header"},n.createElement("div",{className:"next-label"},(0,v.translateString)("Up next"))),n.createElement(ve.k,{className:"items-list-hor",items:[t],pageItems:1,maxItems:1,singleLinkContent:!0,horizontalItemsOrientation:!0,hideDate:!0,hideViews:!r.PageStore.get("config-media-item").displayViews,hideAuthor:!r.PageStore.get("config-media-item").displayAuthor})):null}function be(e){const[t,a]=(0,n.useState)(s()),[i,l]=(0,n.useState)(null);function o(){l(r.MediaPageStore.get("media-type")),a(s())}function s(){const e=r.MediaPageStore.get("media-data");return null!=e&&void 0!==e.related_media&&e.related_media.length?e.related_media:null}return(0,n.useEffect)((()=>(r.MediaPageStore.on("loaded_media_data",o),()=>r.MediaPageStore.removeListener("loaded_media_data",o))),[]),t&&t.length?n.createElement(ve.k,{className:"items-list-hor",items:!e.hideFirst||"video"!==i&&"audio"!==i?t:t.slice(1),pageItems:r.PageStore.get("config-options").pages.media.related.initialSize,singleLinkContent:!0,horizontalItemsOrientation:!0,hideDate:!0,hideViews:!r.PageStore.get("config-media-item").displayViews,hideAuthor:!r.PageStore.get("config-media-item").displayAuthor}):null}function Se(e){return n.createElement(ve.k,{className:"items-list-hor",pageItems:9999,maxItems:9999,items:e.items,hideDate:!0,hideViews:!0,hidePlaylistOrderNumber:!1,horizontalItemsOrientation:!0,inPlaylistView:!0,singleLinkContent:!0,playlistActiveItem:e.playlistActiveItem})}be.propTypes={hideFirst:h().bool},be.defaultProps={hideFirst:!0},Se.propTypes={items:h().array.isRequired,playlistActiveItem:v.PositiveIntegerOrZero},Se.defaultProps={playlistActiveItem:1};class we extends n.PureComponent{constructor(e){super(e),this.state={expanded:!0,loopRepeat:r.PlaylistViewStore.get("enabled-loop"),shuffle:r.PlaylistViewStore.get("enabled-shuffle"),savedPlaylist:r.PlaylistViewStore.get("saved-playlist-loop"),title:e.playlistData.title,link:e.playlistData.url,authorName:e.playlistData.user,authorLink:l.LinksContext._currentValue.home+"/user/"+e.playlistData.user,activeItem:e.activeItem,totalMedia:e.playlistData.media_count,items:e.playlistData.playlist_media},this.onHeaderClick=this.onHeaderClick.bind(this),this.onLoopClick=this.onLoopClick.bind(this),this.onShuffleClick=this.onShuffleClick.bind(this),this.onSaveClick=this.onSaveClick.bind(this),this.onLoopRepeatUpdate=this.onLoopRepeatUpdate.bind(this),this.onShuffleUpdate=this.onShuffleUpdate.bind(this),this.onPlaylistSaveUpdate=this.onPlaylistSaveUpdate.bind(this),r.PlaylistViewStore.on("loop-repeat-updated",this.onLoopRepeatUpdate),r.PlaylistViewStore.on("shuffle-updated",this.onShuffleUpdate),r.PlaylistViewStore.on("saved-updated",this.onPlaylistSaveUpdate)}onHeaderClick(e){this.setState({expanded:!this.state.expanded})}onLoopClick(){f.PlaylistViewActions.toggleLoop()}onShuffleClick(){f.PlaylistViewActions.toggleShuffle()}onSaveClick(){f.PlaylistViewActions.toggleSave()}onShuffleUpdate(){this.setState({shuffle:r.PlaylistViewStore.get("enabled-shuffle")},(()=>{this.state.shuffle?f.PageActions.addNotification("Playlist shuffle is on","shuffle-on"):f.PageActions.addNotification("Playlist shuffle is off","shuffle-off")}))}onLoopRepeatUpdate(){this.setState({loopRepeat:r.PlaylistViewStore.get("enabled-loop")},(()=>{this.state.loopRepeat?f.PageActions.addNotification("Playlist loop is on","loop-on"):f.PageActions.addNotification("Playlist loop is off","loop-off")}))}onPlaylistSaveUpdate(){this.setState({savedPlaylist:r.PlaylistViewStore.get("saved-playlist")},(()=>{this.state.savedPlaylist?f.PageActions.addNotification("Added to playlists library","added-to-playlists-lib"):f.PageActions.addNotification("Removed from playlists library","removed-from-playlists-lib")}))}render(){return n.createElement("div",{className:"playlist-view-wrap"},n.createElement("div",{className:"playlist-view"+(this.state.expanded?" playlist-expanded-view":"")},n.createElement("div",{className:"playlist-header"},n.createElement("div",{className:"playlist-title"},n.createElement("a",{href:this.state.link,title:this.state.title},this.state.title)),n.createElement("div",{className:"playlist-meta"},n.createElement("span",null,n.createElement("a",{href:this.state.authorLink,title:this.state.authorName},this.state.authorName)),"  -  ",n.createElement("span",{className:"counter"},this.state.activeItem," / ",this.state.totalMedia)),n.createElement(s.CircleIconButton,{className:"toggle-playlist-view",onClick:this.onHeaderClick},this.state.expanded?n.createElement("i",{className:"material-icons"},"keyboard_arrow_up"):n.createElement("i",{className:"material-icons"},"keyboard_arrow_down"))),this.state.expanded?n.createElement("div",{className:"playlist-actions"},n.createElement(s.CircleIconButton,{className:this.state.loopRepeat?"active":"",onClick:this.onLoopClick,title:"Loop playlist"},n.createElement("i",{className:"material-icons"},"repeat"))):null,this.state.expanded&&this.state.items.length?n.createElement("div",{className:"playlist-media"},n.createElement(Se,{items:this.state.items,playlistActiveItem:this.state.activeItem})):null))}}we.propTypes={playlistData:h().object.isRequired,activeItem:v.PositiveIntegerOrZero},we.defaultProps={};class Pe extends n.PureComponent{constructor(e){if(super(e),this.state={playlistData:e.playlistData,isPlaylistPage:!!e.playlistData,activeItem:0,mediaType:r.MediaPageStore.get("media-type"),chapters:r.MediaPageStore.get("media-data")?.chapters},e.playlistData){let t=0;for(;t{let e=null,t=null;const a=window.location.search.split("?")[1];return a&&a.split("&").forEach((a=>{0===a.indexOf("m=")?e=a.split("m=")[1]:0===a.indexOf("pl=")&&(t=a.split("pl=")[1])})),{mediaId:e,playlistId:t}},{mediaId:t,playlistId:a}=e();t&&(window.MediaCMS.mediaId=t),a&&(window.MediaCMS.playlistId=a)}(0,i.C)("page-media",class extends _e{viewerContainerContent(e){switch(r.MediaPageStore.get("media-type")){case"video":case"audio":return n.createElement(l.SiteConsumer,null,(t=>n.createElement(C,{data:e,siteUrl:t.url,inEmbed:!1})));case"image":return n.createElement(c,null);case"pdf":const t=(0,v.formatInnerLink)(r.MediaPageStore.get("media-original-url"),l.SiteContext._currentValue.url);return n.createElement(p,{fileUrl:t})}return n.createElement(o,null)}})}},a={};function i(e){var n=a[e];if(void 0!==n)return n.exports;var l=a[e]={exports:{}};return t[e].call(l.exports,l,l.exports,i),l.exports}i.m=t,e=[],i.O=function(t,a,n,l){if(!a){var r=1/0;for(c=0;c=l)&&Object.keys(i.O).every((function(e){return i.O[e](a[s])}))?a.splice(s--,1):(o=!1,l0&&e[c-1][2]>l;c--)e[c]=e[c-1];e[c]=[a,n,l]},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,{a:t}),t},i.d=function(e,t){for(var a in t)i.o(t,a)&&!i.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.j=201,function(){var e={201:0};i.O.j=function(t){return 0===e[t]};var t=function(t,a){var n,l,r=a[0],o=a[1],s=a[2],d=0;if(r.some((function(t){return 0!==e[t]}))){for(n in o)i.o(o,n)&&(i.m[n]=o[n]);if(s)var c=s(i)}for(t&&t(a);d(i(new c.B(e.pageItems,e.maxItems,e.firstItemRequestUrl,e.requestUrl,p,g)),()=>{l&&(l.cancelAll(),i(null))})),[]),t?n.length?a.createElement("div",{className:s.listOuter},h(),a.createElement("div",{ref:m,className:"items-list-wrap"},a.createElement("div",{ref:f,className:s.list},n.map(((t,n)=>a.createElement(u.c,d({key:n},(0,u.k)(e,t,n))))))),v()):null:a.createElement(o.e,{className:s.listOuter})}m.propTypes={...s.k.propTypes,items:i().array,requestUrl:i().string.isRequired,firstItemRequestUrl:i().string},m.defaultProps={...s.k.defaultProps,requestUrl:null,firstItemRequestUrl:null,pageItems:24}},5245:function(e,t,n){var a=n(2985),l=n(9471),i=n(8790),r=n(7460),s=n(7664),o=n(2855),u=n(7731),c=n(5338);function d(e){return l.createElement("div",{className:"media-filter-option"},l.createElement("button",{className:e.selected?"active":"",onClick:function(){e.onSelect(e.id)}},e.label))}function m(e){const[t,n]=(0,l.useState)(e.default);function a(t){n(t),"function"==typeof e.onSelect&&e.onSelect(t)}return l.createElement("div",{className:"media-filter-option-list"},function(t){const n=[];let i=0;for(;i{if(i.current.tryToHide(),e.updateTriggerButtonOnChange){let t=0;for(;t{i.current.tryToHide(),"function"==typeof e.onSelect&&e.onSelect(n)}),[n]),l.createElement("div",{ref:t,className:"media-filter"},l.createElement(o,{contentRef:i},l.createElement("button",{className:"popup-trigger","aria-label":"Filter"},l.createElement(s.MaterialIcon,{type:"sort"}),l.createElement("span",{className:"filter-button-label"},l.createElement("span",{className:"filter-button-label-text"},e.label)))),l.createElement(r,{contentRef:i},l.createElement("div",{className:"main-options"},l.createElement(s.PopupMain,null,l.createElement(m,{items:e.options,default:n,onSelect:a})))))}const g=[{id:"all",label:"All media types"},{id:"video",label:"Video"},{id:"audio",label:"Audio"},{id:"image",label:"Images"},{id:"pdf",label:"Pdf"}],h=[{id:"date_added_desc",label:"Upload date (newest)"},{id:"date_added_asc",label:"Upload date (oldest)"},{id:"most_views",label:"View count"},{id:"most_likes",label:"Like count"}];function v(e){const[t,n]=(0,l.useState)("all"),[a,i]=(0,l.useState)("date_added_desc"),[r,s]=(0,l.useState)({sort_by:null,ordering:null,media_type:null});function o(){const e={...r,media_type:null,sort_by:null,ordering:null};switch(t){case"video":e.media_type="video";break;case"audio":e.media_type="audio";break;case"image":e.media_type="image";break;case"pdf":e.media_type="pdf"}switch(a){case"most_views":e.sort_by="views",e.ordering=null;break;case"most_likes":e.sort_by="likes",e.ordering=null;break;case"date_added_asc":e.sort_by=null,e.ordering="asc"}s(e)}return(0,l.useEffect)((()=>{o()}),[t,a]),(0,l.useEffect)((()=>{"function"==typeof e.onFiltersUpdate&&e.onFiltersUpdate(r)}),[r]),(0,l.useEffect)((()=>{o()}),[]),l.createElement("div",{className:"media-filters-row"},l.createElement("div",{className:"media-filters-row-inner"},l.createElement("div",{className:"media-type-filters"},l.createElement(f,{label:g[0].label,default:g[0].id,options:g,onSelect:function(e){n(e)},updateTriggerButtonOnChange:!0,hideOptionOnSelect:!0})),l.createElement("div",{className:"media-filters-sort"},l.createElement(p,{label:"SORT BY",default:h[0].id,options:h,onSelect:function(e){i(e)},updateTriggerButtonOnChange:!1,hideOptionOnSelect:!1}))))}var b=n(8713),y=n.n(b);const _={media_type:[{id:"all",title:"All"},{id:"video",title:"Video"},{id:"audio",title:"Audio"},{id:"image",title:"Image"},{id:"pdf",title:"Pdf"}],upload_date:[{id:"all",title:"All"},{id:"today",title:"Today"},{id:"this_week",title:"This week"},{id:"this_month",title:"This month"},{id:"this_year",title:"This year"}],sort_by:[{id:"date_added_desc",title:"Upload date (newest)"},{id:"date_added_asc",title:"Upload date (oldest)"},{id:"most_views",title:"View count"},{id:"most_likes",title:"Like count"}]};function S(e){const[t,n]=(0,l.useState)(e.hidden),[a,i]=(0,l.useState)("all"),[o,u]=(0,l.useState)("all"),[c,d]=(0,l.useState)("date_added_desc"),m=(0,l.useRef)(null),f=(0,l.useRef)(null);function p(){t||(m.current.style.height=24+f.current.offsetHeight+"px")}function g(t){const n={media_type:a,upload_date:o,sort_by:c};switch(t.currentTarget.getAttribute("filter")){case"media_type":n.media_type=t.currentTarget.getAttribute("value"),e.onFiltersUpdate(n),i(n.media_type);break;case"upload_date":n.upload_date=t.currentTarget.getAttribute("value"),e.onFiltersUpdate(n),u(n.upload_date);break;case"sort_by":n.sort_by=t.currentTarget.getAttribute("value"),e.onFiltersUpdate(n),d(n.sort_by)}}return(0,l.useEffect)((()=>{n(e.hidden),p()}),[e.hidden]),(0,l.useEffect)((()=>(r.PageStore.on("window_resize",p),()=>r.PageStore.removeListener("window_resize",p))),[]),l.createElement("div",{ref:m,className:"mi-filters-row"+(t?" hidden":"")},l.createElement("div",{ref:f,className:"mi-filters-row-inner"},l.createElement("div",{className:"mi-filter"},l.createElement("div",{className:"mi-filter-title"},"MEDIA TYPE"),l.createElement("div",{className:"mi-filter-options"},l.createElement(s.FilterOptions,{id:"media_type",options:_.media_type,selected:a,onSelect:g}))),l.createElement("div",{className:"mi-filter"},l.createElement("div",{className:"mi-filter-title"},"UPLOAD DATE"),l.createElement("div",{className:"mi-filter-options"},l.createElement(s.FilterOptions,{id:"upload_date",options:_.upload_date,selected:o,onSelect:g}))),l.createElement("div",{className:"mi-filter"},l.createElement("div",{className:"mi-filter-title"},"SORT BY"),l.createElement("div",{className:"mi-filter-options"},l.createElement(s.FilterOptions,{id:"sort_by",options:_.sort_by,selected:c,onSelect:g})))))}S.propTypes={hidden:y().bool},S.defaultProps={hidden:!1};var E=n(9479),A=n(7591);class w extends E.Y{constructor(e){super(e,"search-results"),this.state={validQuery:!1,requestUrl:null,filterArgs:"",resultsTitle:null,resultsCount:null,searchQuery:r.SearchFieldStore.get("search-query"),searchCategories:r.SearchFieldStore.get("search-categories"),searchTags:r.SearchFieldStore.get("search-tags"),hiddenFilters:!0},this.getCountFunc=this.getCountFunc.bind(this),this.updateRequestUrl=this.updateRequestUrl.bind(this),this.onFilterArgsUpdate=this.onFilterArgsUpdate.bind(this),this.onToggleFiltersClick=this.onToggleFiltersClick.bind(this),this.onFiltersUpdate=this.onFiltersUpdate.bind(this),this.didMount=!1,this.updateRequestUrl()}componentDidMount(){this.didMount=!0}onToggleFiltersClick(){this.setState({hiddenFilters:!this.state.hiddenFilters})}onFiltersUpdate(e){const t={media_type:null,upload_date:null,sort_by:null,ordering:null};switch(e.media_type){case"video":case"audio":case"image":case"pdf":t.media_type=e.media_type}switch(e.upload_date){case"today":case"this_week":case"this_month":case"this_year":t.upload_date=e.upload_date}switch(e.sort_by){case"most_views":t.sort_by="views";break;case"most_likes":t.sort_by="likes";break;case"date_added_asc":t.ordering="asc"}const n=[];for(let e in t)null!==t[e]&&n.push(e+"="+t[e]);this.setState({filterArgs:n.length?"&"+n.join("&"):""},(function(){this.updateRequestUrl()}))}updateRequestUrl(){const e=this.state.searchQuery||this.state.searchCategories||this.state.searchTags;let t=null;null!==this.state.resultsCount&&(e?this.state.searchCategories?(t=null===this.state.resultsCount||0===this.state.resultsCount?"No":this.state.resultsCount,t+=" "+(0,A.translateString)("media in category")+' "'+this.state.searchCategories+'"'):this.state.searchTags?(t=null===this.state.resultsCount||0===this.state.resultsCount?"No":this.state.resultsCount,t+=" "+(0,A.translateString)("media in tag")+' "'+this.state.searchTags+'"'):t=null===this.state.resultsCount||0===this.state.resultsCount?(0,A.translateString)("No results for")+' "'+this.state.searchQuery+'"':this.state.resultsCount+" result"+(10&&n===t,o=n>0&&np.length&&!!c.nextRequestUrl,d.pageItems=n?e-p.length:0),t){let e=0;for(;ep.length;)null!==m&&m===a[l].url||p.push(a[l]),l+=1;c.nextRequestUrl=n.next&&u.maxItems>p.length?n.next:null,e&&(c.totalItems=n.count?n.count:p.length,c.totalItems=Math.min(u.maxItems,c.totalItems),c.totalPages=Math.ceil(c.totalItems/u.pageItems),"function"==typeof r&&r(c.totalItems),"function"==typeof o&&o(n)),g()})),c.nextRequestUrl=null}return null!=n?(0,l.getRequest)((0,l.formatInnerLink)(n,a.PageStore.get("config-site").url),!1,(function(e){if(e&&e.data){let t=e.data,n=void 0!==t.results?t.results:t;n.length&&(m=n[0].url,f.push(n[0]))}h(!0)})):h(!0),{loadItems:function(e){!d.requestResponse&&f.length=0?null:(0,l.m)(["Invalid prop `"+t+"` of type `"+typeof e[t]+"` supplied to `"+(n||"N/A")+"`, expected `positive integer or zero` ("+e[t]+")."]);var a},h=function(e,t,n){return void 0===e[t]||(a=e[t])===Math.trunc(a)&&a>0?null:(0,l.m)(["Invalid prop `"+t+"` of type `"+typeof e[t]+"` supplied to `"+(n||"N/A")+"`, expected `positive integer` ("+e[t]+")."]);var a};var v=n(7673),b=n(1453),y=n(9659),_=n(4036),S=n(4470),E=n(5742)},7731:function(e,t,n){n.d(t,{LazyLoadItemListAsync:function(){return d}});var a=n(9471),l=n(7460),i=n(5338),r=n(4685),s=n(2495),o=n(4433),u=n(5633);function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t(d(new u.B(e.pageItems,e.maxItems,e.firstItemRequestUrl,e.requestUrl,f,p,e.onResponseDataLoaded)),l.PageStore.on("window_scroll",g),l.PageStore.on("document_visibility_change",h),g(),()=>{l.PageStore.removeListener("window_scroll",g),l.PageStore.removeListener("document_visibility_change",h),r&&(r.cancelAll(),d(null))})),[]),(0,a.useEffect)((()=>{e.onItemsUpdate&&t.length>0&&e.onItemsUpdate(t)}),[t]),n?t.length?a.createElement("div",{className:m.listOuter},y(),a.createElement("div",{ref:v,className:"items-list-wrap"},a.createElement("div",{ref:b,className:m.list},t.map(((t,n)=>a.createElement(o.c,c({key:n},(0,o.k)(e,t,n),{showSelection:e.showSelection,hasAnySelection:e.hasAnySelection,isSelected:e.selectedMedia&&e.selectedMedia.has(t.friendly_token||t.uid||t.id),onSelectionChange:e.onMediaSelection,mediaId:t.friendly_token||t.uid||t.id})))))),_()):null:a.createElement(s.e,{className:m.listOuter})}d.propTypes={...r.ItemListAsync.propTypes},d.defaultProps={...r.ItemListAsync.defaultProps,pageItems:2}},9479:function(e,t,n){n.d(t,{Y:function(){return s}});var a=n(9471),l=n(285),i=n(1936),r=n(7664);class s extends a.PureComponent{constructor(e,t){super(e),void 0!==t&&l.PageActions.initPage(t)}render(){return a.createElement(a.Fragment,null,a.createElement(i.PageMain,null,this.pageContent()),a.createElement(r.Notifications,null))}}}},n={};function a(e){var l=n[e];if(void 0!==l)return l.exports;var i=n[e]={exports:{}};return t[e].call(i.exports,i,i.exports,a),i.exports}a.m=t,e=[],a.O=function(t,n,l,i){if(!n){var r=1/0;for(c=0;c=i)&&Object.keys(a.O).every((function(e){return a.O[e](n[o])}))?n.splice(o--,1):(s=!1,i0&&e[c-1][2]>i;c--)e[c]=e[c-1];e[c]=[n,l,i]},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,{a:t}),t},a.d=function(e,t){for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.j=187,function(){var e={187:0};a.O.j=function(t){return 0===e[t]};var t=function(t,n){var l,i,r=n[0],s=n[1],o=n[2],u=0;if(r.some((function(t){return 0!==e[t]}))){for(l in s)a.o(s,l)&&(a.m[l]=s[l]);if(o)var c=o(a)}for(t&&t(n);u(i(new c.B(e.pageItems,e.maxItems,e.firstItemRequestUrl,e.requestUrl,p,g)),()=>{l&&(l.cancelAll(),i(null))})),[]),t?n.length?a.createElement("div",{className:s.listOuter},h(),a.createElement("div",{ref:m,className:"items-list-wrap"},a.createElement("div",{ref:f,className:s.list},n.map(((t,n)=>a.createElement(u.c,d({key:n},(0,u.k)(e,t,n))))))),v()):null:a.createElement(o.e,{className:s.listOuter})}m.propTypes={...s.k.propTypes,items:i().array,requestUrl:i().string.isRequired,firstItemRequestUrl:i().string},m.defaultProps={...s.k.defaultProps,requestUrl:null,firstItemRequestUrl:null,pageItems:24}},5245:function(e,t,n){var a=n(2985),l=n(9471),i=n(8790),r=n(7460),s=n(7664),o=n(2855),u=n(7731),c=n(5338);function d(e){return l.createElement("div",{className:"media-filter-option"},l.createElement("button",{className:e.selected?"active":"",onClick:function(){e.onSelect(e.id)}},e.label))}function m(e){const[t,n]=(0,l.useState)(e.default);function a(t){n(t),"function"==typeof e.onSelect&&e.onSelect(t)}return l.createElement("div",{className:"media-filter-option-list"},function(t){const n=[];let i=0;for(;i{if(i.current.tryToHide(),e.updateTriggerButtonOnChange){let t=0;for(;t{i.current.tryToHide(),"function"==typeof e.onSelect&&e.onSelect(n)}),[n]),l.createElement("div",{ref:t,className:"media-filter"},l.createElement(o,{contentRef:i},l.createElement("button",{className:"popup-trigger","aria-label":"Filter"},l.createElement(s.MaterialIcon,{type:"sort"}),l.createElement("span",{className:"filter-button-label"},l.createElement("span",{className:"filter-button-label-text"},e.label)))),l.createElement(r,{contentRef:i},l.createElement("div",{className:"main-options"},l.createElement(s.PopupMain,null,l.createElement(m,{items:e.options,default:n,onSelect:a})))))}const g=[{id:"all",label:"All media types"},{id:"video",label:"Video"},{id:"audio",label:"Audio"},{id:"image",label:"Images"},{id:"pdf",label:"Pdf"}],h=[{id:"date_added_desc",label:"Upload date (newest)"},{id:"date_added_asc",label:"Upload date (oldest)"},{id:"most_views",label:"View count"},{id:"most_likes",label:"Like count"}];function v(e){const[t,n]=(0,l.useState)("all"),[a,i]=(0,l.useState)("date_added_desc"),[r,s]=(0,l.useState)({sort_by:null,ordering:null,media_type:null});function o(){const e={...r,media_type:null,sort_by:null,ordering:null};switch(t){case"video":e.media_type="video";break;case"audio":e.media_type="audio";break;case"image":e.media_type="image";break;case"pdf":e.media_type="pdf"}switch(a){case"most_views":e.sort_by="views",e.ordering=null;break;case"most_likes":e.sort_by="likes",e.ordering=null;break;case"date_added_asc":e.sort_by=null,e.ordering="asc"}s(e)}return(0,l.useEffect)((()=>{o()}),[t,a]),(0,l.useEffect)((()=>{"function"==typeof e.onFiltersUpdate&&e.onFiltersUpdate(r)}),[r]),(0,l.useEffect)((()=>{o()}),[]),l.createElement("div",{className:"media-filters-row"},l.createElement("div",{className:"media-filters-row-inner"},l.createElement("div",{className:"media-type-filters"},l.createElement(f,{label:g[0].label,default:g[0].id,options:g,onSelect:function(e){n(e)},updateTriggerButtonOnChange:!0,hideOptionOnSelect:!0})),l.createElement("div",{className:"media-filters-sort"},l.createElement(p,{label:"SORT BY",default:h[0].id,options:h,onSelect:function(e){i(e)},updateTriggerButtonOnChange:!1,hideOptionOnSelect:!1}))))}var b=n(8713),y=n.n(b);const _={media_type:[{id:"all",title:"All"},{id:"video",title:"Video"},{id:"audio",title:"Audio"},{id:"image",title:"Image"},{id:"pdf",title:"Pdf"}],upload_date:[{id:"all",title:"All"},{id:"today",title:"Today"},{id:"this_week",title:"This week"},{id:"this_month",title:"This month"},{id:"this_year",title:"This year"}],sort_by:[{id:"date_added_desc",title:"Upload date (newest)"},{id:"date_added_asc",title:"Upload date (oldest)"},{id:"most_views",title:"View count"},{id:"most_likes",title:"Like count"}]};function S(e){const[t,n]=(0,l.useState)(e.hidden),[a,i]=(0,l.useState)("all"),[o,u]=(0,l.useState)("all"),[c,d]=(0,l.useState)("date_added_desc"),m=(0,l.useRef)(null),f=(0,l.useRef)(null);function p(){t||(m.current.style.height=24+f.current.offsetHeight+"px")}function g(t){const n={media_type:a,upload_date:o,sort_by:c};switch(t.currentTarget.getAttribute("filter")){case"media_type":n.media_type=t.currentTarget.getAttribute("value"),e.onFiltersUpdate(n),i(n.media_type);break;case"upload_date":n.upload_date=t.currentTarget.getAttribute("value"),e.onFiltersUpdate(n),u(n.upload_date);break;case"sort_by":n.sort_by=t.currentTarget.getAttribute("value"),e.onFiltersUpdate(n),d(n.sort_by)}}return(0,l.useEffect)((()=>{n(e.hidden),p()}),[e.hidden]),(0,l.useEffect)((()=>(r.PageStore.on("window_resize",p),()=>r.PageStore.removeListener("window_resize",p))),[]),l.createElement("div",{ref:m,className:"mi-filters-row"+(t?" hidden":"")},l.createElement("div",{ref:f,className:"mi-filters-row-inner"},l.createElement("div",{className:"mi-filter"},l.createElement("div",{className:"mi-filter-title"},"MEDIA TYPE"),l.createElement("div",{className:"mi-filter-options"},l.createElement(s.FilterOptions,{id:"media_type",options:_.media_type,selected:a,onSelect:g}))),l.createElement("div",{className:"mi-filter"},l.createElement("div",{className:"mi-filter-title"},"UPLOAD DATE"),l.createElement("div",{className:"mi-filter-options"},l.createElement(s.FilterOptions,{id:"upload_date",options:_.upload_date,selected:o,onSelect:g}))),l.createElement("div",{className:"mi-filter"},l.createElement("div",{className:"mi-filter-title"},"SORT BY"),l.createElement("div",{className:"mi-filter-options"},l.createElement(s.FilterOptions,{id:"sort_by",options:_.sort_by,selected:c,onSelect:g})))))}S.propTypes={hidden:y().bool},S.defaultProps={hidden:!1};var E=n(9479),A=n(7591);class w extends E.Y{constructor(e){super(e,"search-results"),this.state={validQuery:!1,requestUrl:null,filterArgs:"",resultsTitle:null,resultsCount:null,searchQuery:r.SearchFieldStore.get("search-query"),searchCategories:r.SearchFieldStore.get("search-categories"),searchTags:r.SearchFieldStore.get("search-tags"),hiddenFilters:!0},this.getCountFunc=this.getCountFunc.bind(this),this.updateRequestUrl=this.updateRequestUrl.bind(this),this.onFilterArgsUpdate=this.onFilterArgsUpdate.bind(this),this.onToggleFiltersClick=this.onToggleFiltersClick.bind(this),this.onFiltersUpdate=this.onFiltersUpdate.bind(this),this.didMount=!1,this.updateRequestUrl()}componentDidMount(){this.didMount=!0}onToggleFiltersClick(){this.setState({hiddenFilters:!this.state.hiddenFilters})}onFiltersUpdate(e){const t={media_type:null,upload_date:null,sort_by:null,ordering:null};switch(e.media_type){case"video":case"audio":case"image":case"pdf":t.media_type=e.media_type}switch(e.upload_date){case"today":case"this_week":case"this_month":case"this_year":t.upload_date=e.upload_date}switch(e.sort_by){case"most_views":t.sort_by="views";break;case"most_likes":t.sort_by="likes";break;case"date_added_asc":t.ordering="asc"}const n=[];for(let e in t)null!==t[e]&&n.push(e+"="+t[e]);this.setState({filterArgs:n.length?"&"+n.join("&"):""},(function(){this.updateRequestUrl()}))}updateRequestUrl(){const e=this.state.searchQuery||this.state.searchCategories||this.state.searchTags;let t=null;null!==this.state.resultsCount&&(e?this.state.searchCategories?(t=null===this.state.resultsCount||0===this.state.resultsCount?"No":this.state.resultsCount,t+=" "+(0,A.translateString)((0,A.inEmbeddedApp)()?"media in course":"media in category")+' "'+this.state.searchCategories+'"'):this.state.searchTags?(t=null===this.state.resultsCount||0===this.state.resultsCount?"No":this.state.resultsCount,t+=" "+(0,A.translateString)("media in tag")+' "'+this.state.searchTags+'"'):t=null===this.state.resultsCount||0===this.state.resultsCount?(0,A.translateString)("No results for")+' "'+this.state.searchQuery+'"':this.state.resultsCount+" result"+(10&&n===t,o=n>0&&np.length&&!!c.nextRequestUrl,d.pageItems=n?e-p.length:0),t){let e=0;for(;ep.length;)null!==m&&m===a[l].url||p.push(a[l]),l+=1;c.nextRequestUrl=n.next&&u.maxItems>p.length?n.next:null,e&&(c.totalItems=n.count?n.count:p.length,c.totalItems=Math.min(u.maxItems,c.totalItems),c.totalPages=Math.ceil(c.totalItems/u.pageItems),"function"==typeof r&&r(c.totalItems),"function"==typeof o&&o(n)),g()})),c.nextRequestUrl=null}return null!=n?(0,l.getRequest)((0,l.formatInnerLink)(n,a.PageStore.get("config-site").url),!1,(function(e){if(e&&e.data){let t=e.data,n=void 0!==t.results?t.results:t;n.length&&(m=n[0].url,f.push(n[0]))}h(!0)})):h(!0),{loadItems:function(e){!d.requestResponse&&f.length=0?null:(0,l.m)(["Invalid prop `"+t+"` of type `"+typeof e[t]+"` supplied to `"+(n||"N/A")+"`, expected `positive integer or zero` ("+e[t]+")."]);var a},h=function(e,t,n){return void 0===e[t]||(a=e[t])===Math.trunc(a)&&a>0?null:(0,l.m)(["Invalid prop `"+t+"` of type `"+typeof e[t]+"` supplied to `"+(n||"N/A")+"`, expected `positive integer` ("+e[t]+")."]);var a};var v=n(7673),b=n(1453),y=n(9659),_=n(4036),S=n(4470),E=n(5742)},7731:function(e,t,n){n.d(t,{LazyLoadItemListAsync:function(){return d}});var a=n(9471),l=n(7460),i=n(5338),r=n(4685),s=n(2495),o=n(4433),u=n(5633);function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t(d(new u.B(e.pageItems,e.maxItems,e.firstItemRequestUrl,e.requestUrl,f,p,e.onResponseDataLoaded)),l.PageStore.on("window_scroll",g),l.PageStore.on("document_visibility_change",h),g(),()=>{l.PageStore.removeListener("window_scroll",g),l.PageStore.removeListener("document_visibility_change",h),r&&(r.cancelAll(),d(null))})),[]),(0,a.useEffect)((()=>{e.onItemsUpdate&&t.length>0&&e.onItemsUpdate(t)}),[t]),n?t.length?a.createElement("div",{className:m.listOuter},y(),a.createElement("div",{ref:v,className:"items-list-wrap"},a.createElement("div",{ref:b,className:m.list},t.map(((t,n)=>a.createElement(o.c,c({key:n},(0,o.k)(e,t,n),{showSelection:e.showSelection,hasAnySelection:e.hasAnySelection,isSelected:e.selectedMedia&&e.selectedMedia.has(t.friendly_token||t.uid||t.id),onSelectionChange:e.onMediaSelection,mediaId:t.friendly_token||t.uid||t.id})))))),_()):null:a.createElement(s.e,{className:m.listOuter})}d.propTypes={...r.ItemListAsync.propTypes},d.defaultProps={...r.ItemListAsync.defaultProps,pageItems:2}},9479:function(e,t,n){n.d(t,{Y:function(){return s}});var a=n(9471),l=n(285),i=n(1936),r=n(7664);class s extends a.PureComponent{constructor(e,t){super(e),void 0!==t&&l.PageActions.initPage(t)}render(){return a.createElement(a.Fragment,null,a.createElement(i.PageMain,null,this.pageContent()),a.createElement(r.Notifications,null))}}}},n={};function a(e){var l=n[e];if(void 0!==l)return l.exports;var i=n[e]={exports:{}};return t[e].call(i.exports,i,i.exports,a),i.exports}a.m=t,e=[],a.O=function(t,n,l,i){if(!n){var r=1/0;for(c=0;c=i)&&Object.keys(a.O).every((function(e){return a.O[e](n[o])}))?n.splice(o--,1):(s=!1,i0&&e[c-1][2]>i;c--)e[c]=e[c-1];e[c]=[n,l,i]},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,{a:t}),t},a.d=function(e,t){for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.j=187,function(){var e={187:0};a.O.j=function(t){return 0===e[t]};var t=function(t,n){var l,i,r=n[0],s=n[1],o=n[2],u=0;if(r.some((function(t){return 0!==e[t]}))){for(l in s)a.o(s,l)&&(a.m[l]=s[l]);if(o)var c=o(a)}for(t&&t(n);u