@blaze-cms/react-page-builder 0.146.0-alpha.13 → 0.146.0-alpha.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/lib/components/MenuItem/MenuEntitiesItem.js +1 -0
  3. package/lib/components/MenuItem/MenuEntitiesItem.js.map +1 -1
  4. package/lib/components/Video/Video.js +2 -1
  5. package/lib/components/Video/Video.js.map +1 -1
  6. package/lib/components/Video/VideoContext.js +12 -0
  7. package/lib/components/Video/VideoContext.js.map +1 -0
  8. package/lib/components/Video/VideoRender.js +36 -3
  9. package/lib/components/Video/VideoRender.js.map +1 -1
  10. package/lib/components/Video/constants.js +14 -0
  11. package/lib/components/Video/constants.js.map +1 -0
  12. package/lib/components/Video/helpers/emit-gtm-event.js +31 -0
  13. package/lib/components/Video/helpers/emit-gtm-event.js.map +1 -0
  14. package/lib/components/Video/providers/JWPlayer/JWPlayerController.js +28 -8
  15. package/lib/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
  16. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js +16 -4
  17. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  18. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js +55 -0
  19. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  20. package/lib-es/components/MenuItem/MenuEntitiesItem.js +1 -0
  21. package/lib-es/components/MenuItem/MenuEntitiesItem.js.map +1 -1
  22. package/lib-es/components/Video/Video.js +2 -1
  23. package/lib-es/components/Video/Video.js.map +1 -1
  24. package/lib-es/components/Video/VideoContext.js +6 -0
  25. package/lib-es/components/Video/VideoContext.js.map +1 -0
  26. package/lib-es/components/Video/VideoRender.js +28 -3
  27. package/lib-es/components/Video/VideoRender.js.map +1 -1
  28. package/lib-es/components/Video/constants.js +7 -0
  29. package/lib-es/components/Video/constants.js.map +1 -0
  30. package/lib-es/components/Video/helpers/emit-gtm-event.js +25 -0
  31. package/lib-es/components/Video/helpers/emit-gtm-event.js.map +1 -0
  32. package/lib-es/components/Video/providers/JWPlayer/JWPlayerController.js +28 -4
  33. package/lib-es/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
  34. package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js +10 -4
  35. package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  36. package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js +58 -2
  37. package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  38. package/package.json +2 -2
  39. package/src/components/MenuItem/MenuEntitiesItem.js +2 -0
  40. package/src/components/Video/Video.js +1 -1
  41. package/src/components/Video/VideoContext.js +7 -0
  42. package/src/components/Video/VideoRender.js +28 -3
  43. package/src/components/Video/constants.js +6 -0
  44. package/src/components/Video/helpers/emit-gtm-event.js +25 -0
  45. package/src/components/Video/providers/JWPlayer/JWPlayerController.js +21 -4
  46. package/src/components/Video/providers/JWPlayer/JWPlayerProvider.js +7 -5
  47. package/src/components/Video/providers/YouTube/YoutubeEmbeded.js +63 -2
package/CHANGELOG.md CHANGED
@@ -3,6 +3,22 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.146.0-alpha.15](https://github.com/thebyte9/blaze/compare/v0.146.0-alpha.14...v0.146.0-alpha.15) (2024-10-27)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * remove limit from dynamic menu item check ([535e557](https://github.com/thebyte9/blaze/commit/535e5574817c3d4248419cf42961fdc27c28dd34))
12
+
13
+
14
+ ### Features
15
+
16
+ * add video component events for youtube and jwplayer ([7b4aa78](https://github.com/thebyte9/blaze/commit/7b4aa78dea3798d736b32aed13760cc67445780c))
17
+
18
+
19
+
20
+
21
+
6
22
  # [0.146.0-alpha.13](https://github.com/thebyte9/blaze/compare/v0.146.0-alpha.12...v0.146.0-alpha.13) (2024-10-23)
7
23
 
8
24
 
@@ -143,6 +143,7 @@ var MenuEntitiesItem = function MenuEntitiesItem(_ref) {
143
143
  filterOperator: filterOperator
144
144
  }),
145
145
  variables = _filterQuerySetup.variables;
146
+ variables.limit = props.limit || undefined;
146
147
  var hasNoItemsToDisplayOrFilter = !updatedItemsToDisplay.length && !updatedFilterBy;
147
148
  var _useQuery2 = (0, _client.useQuery)(action, {
148
149
  variables: variables,
@@ -1 +1 @@
1
- {"version":3,"file":"MenuEntitiesItem.js","names":["_react","_interopRequireDefault","require","_propTypes","_client","_MenuItemRender","_helpers","_hooks","_query","_constants","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","MenuEntitiesItem","_ref","entities","parent","props","_objectWithoutProperties2","parentEntity","itemEntity","parentId","itemId","_props$operator","operator","filterOperator","AND","_props$filterByProper","filterByProperty","_props$sortProperties","sortProperties","itemsToDisplay","_props$filterBy","filterBy","sortby","sort","unpublishedEntityName","getUnpublishedEntityName","_getUpdatedSortProper","getUpdatedSortProperties","_getUpdatedSortProper2","_slicedToArray2","updatedSortProperties","sortbyFilters","_useGetEntitySchemasA","useGetEntitySchemasAsObj","concat","_toConsumableArray2","_useGetEntitySchemasA2","data","mainSchemas","entityObjloading","loading","entityObjError","error","_entities","filterEntity","_mainSchemas$filterEn","filterEntitySchema","entitiesTypes","map","entity","getEntityData","graphqlEntityMap","reduce","acc","entityType","docTypes","_ref2","docType","entityTypes","_ref3","entityFields","buildPropsQuery","parentSchema","_filtersSetup","filtersSetup","itemEntityUpdated","currentSchema","entitySameAsCurrentItemEntity","filterEntityRelations","inheritedFilters","queryProps","getAction","action","_useQuery","useQuery","generateSingleItemQuery","variables","id","skip","shouldSkipSingleQuery","_useQuery$data","_useQuery$data2","_useQuery$data2$entit","entityData","parentEntityData","singleItemQueryError","singleItemQueryLoading","_useGetEntitySchemasA3","getRequiredSchemas","_useGetEntitySchemasA4","requiredSchema","schemaLoading","schemaError","getEntitySchemas","values","updatedItemsToDisplay","getUpdatedItemsToDisplay","variableProps","updatedFilterBy","getUpdatedFilterBy","_filterQuerySetup","filterQuerySetup","hasNoItemsToDisplayOrFilter","_useQuery2","shouldReturn","_useQuery2$data","_ref4","SEARCH_PUBLISHED_CONTENT","results","item","itemParent","__typename","createElement","_extends2","url","propTypes","children","PropTypes","oneOfType","arrayOf","node","eventType","string","isRequired","modifier","object","text","array","limit","number","offset","defaultProps","_default","exports"],"sources":["../../../src/components/MenuItem/MenuEntitiesItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport MenuItemRender from './MenuItemRender';\nimport {\n buildPropsQuery,\n getEntityData,\n getRequiredSchemas,\n getUnpublishedEntityName,\n getUpdatedFilterBy,\n filterQuerySetup,\n filtersSetup,\n getUpdatedItemsToDisplay,\n getUpdatedSortProperties,\n shouldReturn,\n shouldSkipSingleQuery\n} from '../../helpers';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { AND, SEARCH_PUBLISHED_CONTENT } from '../../constants';\n\nconst MenuEntitiesItem = ({ entities, parent, ...props }) => {\n const { itemEntity: parentEntity, itemId: parentId } = parent;\n const {\n operator: filterOperator = AND,\n filterByProperty = [],\n sortProperties = [],\n itemsToDisplay,\n filterBy = [],\n sortby,\n sort\n } = props;\n\n const unpublishedEntityName = getUnpublishedEntityName(parentEntity);\n\n const [updatedSortProperties, sortbyFilters] = getUpdatedSortProperties(\n sort,\n sortby,\n sortProperties\n );\n\n const {\n data: mainSchemas = {},\n loading: entityObjloading,\n error: entityObjError\n } = useGetEntitySchemasAsObj([unpublishedEntityName, ...entities]);\n\n const [filterEntity] = entities;\n\n const { [filterEntity]: filterEntitySchema = {} } = mainSchemas;\n\n const entitiesTypes = entities.map(entity => getEntityData(entity, mainSchemas[entity]));\n const graphqlEntityMap = entitiesTypes.reduce(\n (acc, entityType) => ({ ...acc, [entityType.entityType]: entityType.entity }),\n {}\n );\n const docTypes = entitiesTypes.map(({ docType }) => docType);\n const entityTypes = entitiesTypes.map(({ entityType }) => entityType);\n\n const entityFields = buildPropsQuery(filterEntitySchema, ['name', 'url']) || '';\n const parentSchema = mainSchemas[unpublishedEntityName] || {};\n\n const {\n entitySameAsCurrentItemEntity,\n filterEntityRelations,\n inheritedFilters,\n queryProps,\n getAction,\n action\n } = filtersSetup({\n itemEntityUpdated: unpublishedEntityName,\n currentSchema: parentSchema,\n filterEntitySchema,\n filterByProperty,\n entityFields,\n entityTypes,\n filterBy,\n entities\n });\n\n const {\n data: { entityData: parentEntityData = {} } = {},\n error: singleItemQueryError,\n loading: singleItemQueryLoading\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: parentId },\n skip: shouldSkipSingleQuery(entityObjloading, getAction, queryProps)\n });\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n entityObjloading\n );\n\n const getEntitySchemas = Object.values(requiredSchema);\n\n const updatedItemsToDisplay = getUpdatedItemsToDisplay({\n inheritedFilters,\n parentEntityData,\n itemsToDisplay,\n parentSchema\n });\n\n const variableProps = {\n sortProperties: updatedSortProperties,\n filterByProperty,\n sortby: null,\n sort: null,\n filterBy\n };\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n parentEntityData,\n filterEntitySchema,\n parentSchema,\n parentId,\n variableProps\n );\n\n const { variables } = filterQuerySetup({\n itemsToDisplay: updatedItemsToDisplay,\n entitySameAsCurrentItemEntity,\n filterEntityRelations,\n entity: filterEntity,\n docType: docTypes,\n getEntitySchemas,\n updatedFilterBy,\n variableProps,\n filterOperator\n });\n\n const hasNoItemsToDisplayOrFilter = !updatedItemsToDisplay.length && !updatedFilterBy;\n\n const { data = {} } = useQuery(action, {\n variables,\n skip: shouldReturn(\n hasNoItemsToDisplayOrFilter,\n singleItemQueryLoading,\n singleItemQueryError,\n entityObjloading,\n entityObjError,\n schemaLoading,\n schemaError\n )\n });\n\n const { results } = data[SEARCH_PUBLISHED_CONTENT] || {};\n\n if (!results) return null;\n\n return results.map(item => {\n const itemParent = {\n itemId: item.id,\n itemEntity: graphqlEntityMap[item.__typename]\n };\n return <MenuItemRender {...props} parent={itemParent} url={item.url || props.url} />;\n });\n};\n\nMenuEntitiesItem.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n eventType: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n parent: PropTypes.object,\n text: PropTypes.string,\n url: PropTypes.string,\n entities: PropTypes.array,\n limit: PropTypes.number,\n offset: PropTypes.number,\n sortby: PropTypes.array,\n filterBy: PropTypes.array,\n sort: PropTypes.string,\n operator: PropTypes.string.isRequired,\n filterOperator: PropTypes.string.isRequired,\n sortProperties: PropTypes.array,\n filterByProperty: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nMenuEntitiesItem.defaultProps = {\n children: null,\n modifier: '',\n limit: 0,\n offset: 0,\n itemsToDisplay: [],\n sort: '',\n sortby: [],\n sortProperties: [],\n filterByProperty: [],\n parent: {},\n filterBy: [],\n text: '',\n url: '',\n entities: []\n};\n\nexport default MenuEntitiesItem;\n"],"mappings":"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"}
1
+ {"version":3,"file":"MenuEntitiesItem.js","names":["_react","_interopRequireDefault","require","_propTypes","_client","_MenuItemRender","_helpers","_hooks","_query","_constants","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","MenuEntitiesItem","_ref","entities","parent","props","_objectWithoutProperties2","parentEntity","itemEntity","parentId","itemId","_props$operator","operator","filterOperator","AND","_props$filterByProper","filterByProperty","_props$sortProperties","sortProperties","itemsToDisplay","_props$filterBy","filterBy","sortby","sort","unpublishedEntityName","getUnpublishedEntityName","_getUpdatedSortProper","getUpdatedSortProperties","_getUpdatedSortProper2","_slicedToArray2","updatedSortProperties","sortbyFilters","_useGetEntitySchemasA","useGetEntitySchemasAsObj","concat","_toConsumableArray2","_useGetEntitySchemasA2","data","mainSchemas","entityObjloading","loading","entityObjError","error","_entities","filterEntity","_mainSchemas$filterEn","filterEntitySchema","entitiesTypes","map","entity","getEntityData","graphqlEntityMap","reduce","acc","entityType","docTypes","_ref2","docType","entityTypes","_ref3","entityFields","buildPropsQuery","parentSchema","_filtersSetup","filtersSetup","itemEntityUpdated","currentSchema","entitySameAsCurrentItemEntity","filterEntityRelations","inheritedFilters","queryProps","getAction","action","_useQuery","useQuery","generateSingleItemQuery","variables","id","skip","shouldSkipSingleQuery","_useQuery$data","_useQuery$data2","_useQuery$data2$entit","entityData","parentEntityData","singleItemQueryError","singleItemQueryLoading","_useGetEntitySchemasA3","getRequiredSchemas","_useGetEntitySchemasA4","requiredSchema","schemaLoading","schemaError","getEntitySchemas","values","updatedItemsToDisplay","getUpdatedItemsToDisplay","variableProps","updatedFilterBy","getUpdatedFilterBy","_filterQuerySetup","filterQuerySetup","limit","undefined","hasNoItemsToDisplayOrFilter","_useQuery2","shouldReturn","_useQuery2$data","_ref4","SEARCH_PUBLISHED_CONTENT","results","item","itemParent","__typename","createElement","_extends2","url","propTypes","children","PropTypes","oneOfType","arrayOf","node","eventType","string","isRequired","modifier","object","text","array","number","offset","defaultProps","_default","exports"],"sources":["../../../src/components/MenuItem/MenuEntitiesItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport MenuItemRender from './MenuItemRender';\nimport {\n buildPropsQuery,\n getEntityData,\n getRequiredSchemas,\n getUnpublishedEntityName,\n getUpdatedFilterBy,\n filterQuerySetup,\n filtersSetup,\n getUpdatedItemsToDisplay,\n getUpdatedSortProperties,\n shouldReturn,\n shouldSkipSingleQuery\n} from '../../helpers';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { AND, SEARCH_PUBLISHED_CONTENT } from '../../constants';\n\nconst MenuEntitiesItem = ({ entities, parent, ...props }) => {\n const { itemEntity: parentEntity, itemId: parentId } = parent;\n const {\n operator: filterOperator = AND,\n filterByProperty = [],\n sortProperties = [],\n itemsToDisplay,\n filterBy = [],\n sortby,\n sort\n } = props;\n\n const unpublishedEntityName = getUnpublishedEntityName(parentEntity);\n\n const [updatedSortProperties, sortbyFilters] = getUpdatedSortProperties(\n sort,\n sortby,\n sortProperties\n );\n\n const {\n data: mainSchemas = {},\n loading: entityObjloading,\n error: entityObjError\n } = useGetEntitySchemasAsObj([unpublishedEntityName, ...entities]);\n\n const [filterEntity] = entities;\n\n const { [filterEntity]: filterEntitySchema = {} } = mainSchemas;\n\n const entitiesTypes = entities.map(entity => getEntityData(entity, mainSchemas[entity]));\n const graphqlEntityMap = entitiesTypes.reduce(\n (acc, entityType) => ({ ...acc, [entityType.entityType]: entityType.entity }),\n {}\n );\n const docTypes = entitiesTypes.map(({ docType }) => docType);\n const entityTypes = entitiesTypes.map(({ entityType }) => entityType);\n\n const entityFields = buildPropsQuery(filterEntitySchema, ['name', 'url']) || '';\n const parentSchema = mainSchemas[unpublishedEntityName] || {};\n\n const {\n entitySameAsCurrentItemEntity,\n filterEntityRelations,\n inheritedFilters,\n queryProps,\n getAction,\n action\n } = filtersSetup({\n itemEntityUpdated: unpublishedEntityName,\n currentSchema: parentSchema,\n filterEntitySchema,\n filterByProperty,\n entityFields,\n entityTypes,\n filterBy,\n entities\n });\n\n const {\n data: { entityData: parentEntityData = {} } = {},\n error: singleItemQueryError,\n loading: singleItemQueryLoading\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: parentId },\n skip: shouldSkipSingleQuery(entityObjloading, getAction, queryProps)\n });\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n entityObjloading\n );\n\n const getEntitySchemas = Object.values(requiredSchema);\n\n const updatedItemsToDisplay = getUpdatedItemsToDisplay({\n inheritedFilters,\n parentEntityData,\n itemsToDisplay,\n parentSchema\n });\n\n const variableProps = {\n sortProperties: updatedSortProperties,\n filterByProperty,\n sortby: null,\n sort: null,\n filterBy\n };\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n parentEntityData,\n filterEntitySchema,\n parentSchema,\n parentId,\n variableProps\n );\n\n const { variables } = filterQuerySetup({\n itemsToDisplay: updatedItemsToDisplay,\n entitySameAsCurrentItemEntity,\n filterEntityRelations,\n entity: filterEntity,\n docType: docTypes,\n getEntitySchemas,\n updatedFilterBy,\n variableProps,\n filterOperator\n });\n\n variables.limit = props.limit || undefined;\n\n const hasNoItemsToDisplayOrFilter = !updatedItemsToDisplay.length && !updatedFilterBy;\n\n const { data = {} } = useQuery(action, {\n variables,\n skip: shouldReturn(\n hasNoItemsToDisplayOrFilter,\n singleItemQueryLoading,\n singleItemQueryError,\n entityObjloading,\n entityObjError,\n schemaLoading,\n schemaError\n )\n });\n\n const { results } = data[SEARCH_PUBLISHED_CONTENT] || {};\n\n if (!results) return null;\n\n return results.map(item => {\n const itemParent = {\n itemId: item.id,\n itemEntity: graphqlEntityMap[item.__typename]\n };\n return <MenuItemRender {...props} parent={itemParent} url={item.url || props.url} />;\n });\n};\n\nMenuEntitiesItem.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n eventType: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n parent: PropTypes.object,\n text: PropTypes.string,\n url: PropTypes.string,\n entities: PropTypes.array,\n limit: PropTypes.number,\n offset: PropTypes.number,\n sortby: PropTypes.array,\n filterBy: PropTypes.array,\n sort: PropTypes.string,\n operator: PropTypes.string.isRequired,\n filterOperator: PropTypes.string.isRequired,\n sortProperties: PropTypes.array,\n filterByProperty: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nMenuEntitiesItem.defaultProps = {\n children: null,\n modifier: '',\n limit: 0,\n offset: 0,\n itemsToDisplay: [],\n sort: '',\n sortby: [],\n sortProperties: [],\n filterByProperty: [],\n parent: {},\n filterBy: [],\n text: '',\n url: '',\n entities: []\n};\n\nexport default MenuEntitiesItem;\n"],"mappings":"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"}
@@ -60,7 +60,8 @@ var Video = function Video(_ref) {
60
60
  });
61
61
  return /*#__PURE__*/_react["default"].createElement(_Wrapper["default"], {
62
62
  className: "video",
63
- modifiers: modifiers
63
+ modifiers: modifiers,
64
+ key: url
64
65
  }, playInModal ? /*#__PURE__*/_react["default"].createElement(_VideoModal["default"], (0, _extends2["default"])({
65
66
  url: url,
66
67
  modifier: modifier,
@@ -1 +1 @@
1
- {"version":3,"file":"Video.js","names":["_react","_interopRequireDefault","require","_propTypes","_useGetImages2","_VideoRender","_VideoModal","_Wrapper","_getClassModifiers","_helpers","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","Video","_ref","url","modifier","autoplay","isCaptionDisplayed","caption","credits","areVideoCreditsDisplayed","provider","playInModal","imageId","props","_objectWithoutProperties2","_useGetImages","useGetImages","imageData","data","getFile","loading","modifiers","concat","toLowerCase","getClassModifiers","shouldDisplayCaption","shouldShowProperty","isDisplayed","value","shouldDisplayCredits","createElement","className","_extends2","propTypes","PropTypes","string","bool","defaultProps","_default","exports"],"sources":["../../../src/components/Video/Video.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport useGetImages from '../../hooks/use-get-images';\nimport VideoRender from './VideoRender';\nimport VideoModal from './VideoModal';\nimport Wrapper from '../Wrapper';\nimport getClassModifiers from '../../utils/get-class-modifiers';\nimport { shouldShowProperty } from '../../helpers';\n\nconst Video = ({\n url,\n modifier,\n autoplay,\n isCaptionDisplayed,\n caption,\n credits,\n areVideoCreditsDisplayed,\n provider,\n playInModal,\n imageId,\n ...props\n}) => {\n const {\n data: { getFile: imageData },\n loading\n } = useGetImages(imageId);\n\n if (loading) return '';\n if (!url) return null;\n\n const modifiers = `video--${provider.toLowerCase()} ${getClassModifiers('video', {\n modifier,\n ...props\n })}`;\n\n const shouldDisplayCaption = shouldShowProperty({\n isDisplayed: isCaptionDisplayed,\n value: caption\n });\n const shouldDisplayCredits = shouldShowProperty({\n isDisplayed: areVideoCreditsDisplayed,\n value: credits\n });\n\n return (\n <Wrapper className=\"video\" modifiers={modifiers}>\n {playInModal ? (\n <VideoModal\n url={url}\n modifier={modifier}\n autoplay={autoplay}\n provider={provider}\n imageData={imageData}\n {...props}\n />\n ) : (\n <VideoRender\n url={url}\n modifier={modifier}\n autoplay={autoplay}\n provider={provider}\n imageData={imageData}\n {...props}\n />\n )}\n\n {(shouldDisplayCaption || shouldDisplayCredits) && (\n <div className=\"video__details\" data-testid=\"video-details\">\n {shouldDisplayCaption && <div className=\"caption\">{caption}</div>}\n {shouldDisplayCredits && <div className=\"credits\">{credits}</div>}\n </div>\n )}\n </Wrapper>\n );\n};\n\nVideo.propTypes = {\n url: PropTypes.string,\n modifier: PropTypes.string,\n caption: PropTypes.string,\n credits: PropTypes.string,\n autoplay: PropTypes.bool,\n areVideoCreditsDisplayed: PropTypes.bool,\n isCaptionDisplayed: PropTypes.bool,\n provider: PropTypes.string,\n playInModal: PropTypes.bool,\n imageId: PropTypes.string\n};\n\nVideo.defaultProps = {\n caption: '',\n credits: '',\n modifier: '',\n imageId: '',\n url: '',\n provider: 'youtube',\n autoplay: false,\n isCaptionDisplayed: false,\n areVideoCreditsDisplayed: false,\n playInModal: false\n};\n\nexport default Video;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Video.js","names":["_react","_interopRequireDefault","require","_propTypes","_useGetImages2","_VideoRender","_VideoModal","_Wrapper","_getClassModifiers","_helpers","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","Video","_ref","url","modifier","autoplay","isCaptionDisplayed","caption","credits","areVideoCreditsDisplayed","provider","playInModal","imageId","props","_objectWithoutProperties2","_useGetImages","useGetImages","imageData","data","getFile","loading","modifiers","concat","toLowerCase","getClassModifiers","shouldDisplayCaption","shouldShowProperty","isDisplayed","value","shouldDisplayCredits","createElement","className","key","_extends2","propTypes","PropTypes","string","bool","defaultProps","_default","exports"],"sources":["../../../src/components/Video/Video.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport useGetImages from '../../hooks/use-get-images';\nimport VideoRender from './VideoRender';\nimport VideoModal from './VideoModal';\nimport Wrapper from '../Wrapper';\nimport getClassModifiers from '../../utils/get-class-modifiers';\nimport { shouldShowProperty } from '../../helpers';\n\nconst Video = ({\n url,\n modifier,\n autoplay,\n isCaptionDisplayed,\n caption,\n credits,\n areVideoCreditsDisplayed,\n provider,\n playInModal,\n imageId,\n ...props\n}) => {\n const {\n data: { getFile: imageData },\n loading\n } = useGetImages(imageId);\n\n if (loading) return '';\n if (!url) return null;\n\n const modifiers = `video--${provider.toLowerCase()} ${getClassModifiers('video', {\n modifier,\n ...props\n })}`;\n\n const shouldDisplayCaption = shouldShowProperty({\n isDisplayed: isCaptionDisplayed,\n value: caption\n });\n const shouldDisplayCredits = shouldShowProperty({\n isDisplayed: areVideoCreditsDisplayed,\n value: credits\n });\n\n return (\n <Wrapper className=\"video\" modifiers={modifiers} key={url}>\n {playInModal ? (\n <VideoModal\n url={url}\n modifier={modifier}\n autoplay={autoplay}\n provider={provider}\n imageData={imageData}\n {...props}\n />\n ) : (\n <VideoRender\n url={url}\n modifier={modifier}\n autoplay={autoplay}\n provider={provider}\n imageData={imageData}\n {...props}\n />\n )}\n\n {(shouldDisplayCaption || shouldDisplayCredits) && (\n <div className=\"video__details\" data-testid=\"video-details\">\n {shouldDisplayCaption && <div className=\"caption\">{caption}</div>}\n {shouldDisplayCredits && <div className=\"credits\">{credits}</div>}\n </div>\n )}\n </Wrapper>\n );\n};\n\nVideo.propTypes = {\n url: PropTypes.string,\n modifier: PropTypes.string,\n caption: PropTypes.string,\n credits: PropTypes.string,\n autoplay: PropTypes.bool,\n areVideoCreditsDisplayed: PropTypes.bool,\n isCaptionDisplayed: PropTypes.bool,\n provider: PropTypes.string,\n playInModal: PropTypes.bool,\n imageId: PropTypes.string\n};\n\nVideo.defaultProps = {\n caption: '',\n credits: '',\n modifier: '',\n imageId: '',\n url: '',\n provider: 'youtube',\n autoplay: false,\n isCaptionDisplayed: false,\n areVideoCreditsDisplayed: false,\n playInModal: false\n};\n\nexport default Video;\n"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.VideoContextProvider = exports.VideoContextConsumer = exports.VideoContext = void 0;
8
+ var _react = require("react");
9
+ var VideoContext = exports.VideoContext = /*#__PURE__*/(0, _react.createContext)({});
10
+ var VideoContextProvider = exports.VideoContextProvider = VideoContext.Provider;
11
+ var VideoContextConsumer = exports.VideoContextConsumer = VideoContext.Consumer;
12
+ //# sourceMappingURL=VideoContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VideoContext.js","names":["_react","require","VideoContext","exports","createContext","VideoContextProvider","Provider","VideoContextConsumer","Consumer"],"sources":["../../../src/components/Video/VideoContext.js"],"sourcesContent":["import { createContext } from 'react';\n\nconst VideoContext = createContext({});\nconst VideoContextProvider = VideoContext.Provider;\nconst VideoContextConsumer = VideoContext.Consumer;\n\nexport { VideoContext, VideoContextProvider, VideoContextConsumer };\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAMC,YAAY,GAAAC,OAAA,CAAAD,YAAA,gBAAG,IAAAE,oBAAa,EAAC,CAAC,CAAC,CAAC;AACtC,IAAMC,oBAAoB,GAAAF,OAAA,CAAAE,oBAAA,GAAGH,YAAY,CAACI,QAAQ;AAClD,IAAMC,oBAAoB,GAAAJ,OAAA,CAAAI,oBAAA,GAAGL,YAAY,CAACM,QAAQ"}
@@ -1,25 +1,58 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.array.iterator.js");
4
+ require("core-js/modules/es.object.to-string.js");
5
+ require("core-js/modules/es.string.iterator.js");
6
+ require("core-js/modules/es.weak-map.js");
7
+ require("core-js/modules/web.dom-collections.iterator.js");
3
8
  require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
4
10
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
11
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
12
  Object.defineProperty(exports, "__esModule", {
6
13
  value: true
7
14
  });
8
15
  exports["default"] = void 0;
9
16
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
- var _react = _interopRequireDefault(require("react"));
17
+ var _react = _interopRequireWildcard(require("react"));
11
18
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
19
  var _providers = _interopRequireDefault(require("./providers"));
13
20
  var _HOC = require("../../HOC");
21
+ var _VideoContext = require("./VideoContext");
22
+ var _emitGtmEvent = _interopRequireDefault(require("./helpers/emit-gtm-event"));
14
23
  var _excluded = ["provider"];
24
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
25
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
15
26
  var VideoRender = function VideoRender(_ref) {
16
27
  var provider = _ref.provider,
17
28
  props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
29
+ var ref = (0, _react.useRef)(0);
18
30
  var Provider = (0, _providers["default"])(provider);
19
- return /*#__PURE__*/_react["default"].createElement(Provider, props);
31
+ var propEventName = props.gtmEventName;
32
+ var gtmEventName = propEventName || process.env.BLAZE_VIDEO_EVENT_NAME;
33
+ var emitEvent = gtmEventName ? function (_ref2) {
34
+ var action = _ref2.action,
35
+ videoId = _ref2.videoId;
36
+ return (0, _emitGtmEvent["default"])({
37
+ gtmEventName: gtmEventName,
38
+ provider: provider,
39
+ action: action,
40
+ videoId: videoId,
41
+ playCounter: ref
42
+ });
43
+ } : null;
44
+ return /*#__PURE__*/_react["default"].createElement(_VideoContext.VideoContextProvider, {
45
+ value: {
46
+ emitEvent: emitEvent
47
+ }
48
+ }, /*#__PURE__*/_react["default"].createElement(Provider, props));
20
49
  };
21
50
  VideoRender.propTypes = {
22
- provider: _propTypes["default"].string.isRequired
51
+ provider: _propTypes["default"].string.isRequired,
52
+ gtmEventName: _propTypes["default"].string
53
+ };
54
+ VideoRender.defaultProps = {
55
+ gtmEventName: ''
23
56
  };
24
57
  var _default = exports["default"] = (0, _HOC.withTitle)(VideoRender);
25
58
  //# sourceMappingURL=VideoRender.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VideoRender.js","names":["_react","_interopRequireDefault","require","_propTypes","_providers","_HOC","_excluded","VideoRender","_ref","provider","props","_objectWithoutProperties2","Provider","getProvider","createElement","propTypes","PropTypes","string","isRequired","_default","exports","withTitle"],"sources":["../../../src/components/Video/VideoRender.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport getProvider from './providers';\nimport { withTitle } from '../../HOC';\n\nconst VideoRender = ({ provider, ...props }) => {\n const Provider = getProvider(provider);\n return <Provider {...props} />;\n};\n\nVideoRender.propTypes = {\n provider: PropTypes.string.isRequired\n};\n\nexport default withTitle(VideoRender);\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,IAAA,GAAAH,OAAA;AAAsC,IAAAI,SAAA;AAEtC,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAA+B;EAAA,IAAzBC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAKC,KAAK,OAAAC,yBAAA,aAAAH,IAAA,EAAAF,SAAA;EACvC,IAAMM,QAAQ,GAAG,IAAAC,qBAAW,EAACJ,QAAQ,CAAC;EACtC,oBAAOT,MAAA,YAAAc,aAAA,CAACF,QAAQ,EAAKF,KAAQ,CAAC;AAChC,CAAC;AAEDH,WAAW,CAACQ,SAAS,GAAG;EACtBN,QAAQ,EAAEO,qBAAS,CAACC,MAAM,CAACC;AAC7B,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEa,IAAAC,cAAS,EAACd,WAAW,CAAC"}
1
+ {"version":3,"file":"VideoRender.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_providers","_HOC","_VideoContext","_emitGtmEvent","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","VideoRender","_ref","provider","props","_objectWithoutProperties2","ref","useRef","Provider","getProvider","propEventName","gtmEventName","process","env","BLAZE_VIDEO_EVENT_NAME","emitEvent","_ref2","action","videoId","emitGtmEvent","playCounter","createElement","VideoContextProvider","value","propTypes","PropTypes","string","isRequired","defaultProps","_default","exports","withTitle"],"sources":["../../../src/components/Video/VideoRender.js"],"sourcesContent":["import React, { useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport getProvider from './providers';\nimport { withTitle } from '../../HOC';\nimport { VideoContextProvider } from './VideoContext';\nimport emitGtmEvent from './helpers/emit-gtm-event';\n\nconst VideoRender = ({ provider, ...props }) => {\n const ref = useRef(0);\n const Provider = getProvider(provider);\n const { gtmEventName: propEventName } = props;\n const gtmEventName = propEventName || process.env.BLAZE_VIDEO_EVENT_NAME;\n const emitEvent = gtmEventName\n ? ({ action, videoId }) =>\n emitGtmEvent({\n gtmEventName,\n provider,\n action,\n videoId,\n playCounter: ref\n })\n : null;\n\n return (\n <VideoContextProvider value={{ emitEvent }}>\n <Provider {...props} />\n </VideoContextProvider>\n );\n};\n\nVideoRender.propTypes = {\n provider: PropTypes.string.isRequired,\n gtmEventName: PropTypes.string\n};\n\nVideoRender.defaultProps = {\n gtmEventName: ''\n};\n\nexport default withTitle(VideoRender);\n"],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.EVENT_ACTIONS = void 0;
8
+ var EVENT_ACTIONS = exports.EVENT_ACTIONS = {
9
+ START: 'start',
10
+ PLAYING: 'playing',
11
+ PAUSED: 'paused',
12
+ ENDED: 'ended'
13
+ };
14
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","names":["EVENT_ACTIONS","exports","START","PLAYING","PAUSED","ENDED"],"sources":["../../../src/components/Video/constants.js"],"sourcesContent":["export const EVENT_ACTIONS = {\n START: 'start',\n PLAYING: 'playing',\n PAUSED: 'paused',\n ENDED: 'ended'\n};\n"],"mappings":";;;;;;;AAAO,IAAMA,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG;EAC3BE,KAAK,EAAE,OAAO;EACdC,OAAO,EAAE,SAAS;EAClBC,MAAM,EAAE,QAAQ;EAChBC,KAAK,EAAE;AACT,CAAC"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _constants = require("../constants");
9
+ var emitGtmEvent = function emitGtmEvent(_ref) {
10
+ var gtmEventName = _ref.gtmEventName,
11
+ provider = _ref.provider,
12
+ action = _ref.action,
13
+ videoId = _ref.videoId,
14
+ playCounter = _ref.playCounter;
15
+ if (!window.dataLayer || !action) return;
16
+ var actionToUse = action === _constants.EVENT_ACTIONS.PLAYING && playCounter.current < 1 ? _constants.EVENT_ACTIONS.START : action;
17
+ if (action === _constants.EVENT_ACTIONS.PLAYING) {
18
+ // eslint-disable-next-line no-param-reassign
19
+ playCounter.current += 1;
20
+ }
21
+ var playCount = playCounter.current;
22
+ window.dataLayer.push({
23
+ event: gtmEventName,
24
+ video_action: actionToUse,
25
+ video_provider: provider,
26
+ video_id: videoId,
27
+ video_play_count: playCount
28
+ });
29
+ };
30
+ var _default = exports["default"] = emitGtmEvent;
31
+ //# sourceMappingURL=emit-gtm-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emit-gtm-event.js","names":["_constants","require","emitGtmEvent","_ref","gtmEventName","provider","action","videoId","playCounter","window","dataLayer","actionToUse","EVENT_ACTIONS","PLAYING","current","START","playCount","push","event","video_action","video_provider","video_id","video_play_count","_default","exports"],"sources":["../../../../src/components/Video/helpers/emit-gtm-event.js"],"sourcesContent":["import { EVENT_ACTIONS } from '../constants';\n\nconst emitGtmEvent = ({ gtmEventName, provider, action, videoId, playCounter }) => {\n if (!window.dataLayer || !action) return;\n\n const actionToUse =\n action === EVENT_ACTIONS.PLAYING && playCounter.current < 1 ? EVENT_ACTIONS.START : action;\n\n if (action === EVENT_ACTIONS.PLAYING) {\n // eslint-disable-next-line no-param-reassign\n playCounter.current += 1;\n }\n\n const playCount = playCounter.current;\n\n window.dataLayer.push({\n event: gtmEventName,\n video_action: actionToUse,\n video_provider: provider,\n video_id: videoId,\n video_play_count: playCount\n });\n};\n\nexport default emitGtmEvent;\n"],"mappings":";;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAAiE;EAAA,IAA3DC,YAAY,GAAAD,IAAA,CAAZC,YAAY;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM;IAAEC,OAAO,GAAAJ,IAAA,CAAPI,OAAO;IAAEC,WAAW,GAAAL,IAAA,CAAXK,WAAW;EAC1E,IAAI,CAACC,MAAM,CAACC,SAAS,IAAI,CAACJ,MAAM,EAAE;EAElC,IAAMK,WAAW,GACfL,MAAM,KAAKM,wBAAa,CAACC,OAAO,IAAIL,WAAW,CAACM,OAAO,GAAG,CAAC,GAAGF,wBAAa,CAACG,KAAK,GAAGT,MAAM;EAE5F,IAAIA,MAAM,KAAKM,wBAAa,CAACC,OAAO,EAAE;IACpC;IACAL,WAAW,CAACM,OAAO,IAAI,CAAC;EAC1B;EAEA,IAAME,SAAS,GAAGR,WAAW,CAACM,OAAO;EAErCL,MAAM,CAACC,SAAS,CAACO,IAAI,CAAC;IACpBC,KAAK,EAAEd,YAAY;IACnBe,YAAY,EAAER,WAAW;IACzBS,cAAc,EAAEf,QAAQ;IACxBgB,QAAQ,EAAEd,OAAO;IACjBe,gBAAgB,EAAEN;EACpB,CAAC,CAAC;AACJ,CAAC;AAAC,IAAAO,QAAA,GAAAC,OAAA,cAEatB,YAAY"}
@@ -9,12 +9,14 @@ exports["default"] = void 0;
9
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
11
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
+ var _constants = require("../../constants");
12
13
  /*
13
14
  Custom controller to extend and scale the 'react-jw-player' library for future updates.
14
15
  */
15
16
  var JWPlayerController = /*#__PURE__*/function () {
16
- function JWPlayerController() {
17
+ function JWPlayerController(_ref) {
17
18
  var _this = this;
19
+ var _emitEvent = _ref.emitEvent;
18
20
  (0, _classCallCheck2["default"])(this, JWPlayerController);
19
21
  (0, _defineProperty2["default"])(this, "setPlayer", function (player) {
20
22
  _this.player = player;
@@ -22,19 +24,37 @@ var JWPlayerController = /*#__PURE__*/function () {
22
24
  (0, _defineProperty2["default"])(this, "setErrorHandler", function (setError) {
23
25
  _this.setError = setError;
24
26
  });
25
- (0, _defineProperty2["default"])(this, "onError", function (_ref) {
26
- var message = _ref.message;
27
+ (0, _defineProperty2["default"])(this, "onError", function (_ref2) {
28
+ var message = _ref2.message;
27
29
  _this.error = message;
28
30
  });
29
- (0, _defineProperty2["default"])(this, "onSetupError", function (_ref2) {
30
- var message = _ref2.message;
31
+ (0, _defineProperty2["default"])(this, "onSetupError", function (_ref3) {
32
+ var message = _ref3.message;
31
33
  _this.error = message;
32
34
  });
33
- (0, _defineProperty2["default"])(this, "onComplete", function (event) {});
34
- (0, _defineProperty2["default"])(this, "onPause", function (event) {});
35
- (0, _defineProperty2["default"])(this, "onPlay", function (event) {});
35
+ (0, _defineProperty2["default"])(this, "doEmitEvent", function (action) {
36
+ var emitEvent = _this.emitEvent;
37
+ if (emitEvent) {
38
+ var _this$player$getPlayl = _this.player.getPlaylistItem(),
39
+ videoId = _this$player$getPlayl.mediaid;
40
+ emitEvent({
41
+ action: action,
42
+ videoId: videoId
43
+ });
44
+ }
45
+ });
46
+ (0, _defineProperty2["default"])(this, "onComplete", function (event) {
47
+ _this.doEmitEvent(_constants.EVENT_ACTIONS.ENDED);
48
+ });
49
+ (0, _defineProperty2["default"])(this, "onPause", function (event) {
50
+ _this.doEmitEvent(_constants.EVENT_ACTIONS.PAUSED);
51
+ });
52
+ (0, _defineProperty2["default"])(this, "onPlay", function (event) {
53
+ _this.doEmitEvent(_constants.EVENT_ACTIONS.PLAYING);
54
+ });
36
55
  this.player = null;
37
56
  this.error = null;
57
+ this.emitEvent = _emitEvent;
38
58
  }
39
59
  (0, _createClass2["default"])(JWPlayerController, [{
40
60
  key: "events",
@@ -1 +1 @@
1
- {"version":3,"file":"JWPlayerController.js","names":["JWPlayerController","_this","_classCallCheck2","_defineProperty2","player","setError","_ref","message","error","_ref2","event","_createClass2","key","get","play","onPlay","pause","onPause","onError","complete","onComplete","setupError","_default","exports"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerController.js"],"sourcesContent":["/*\n Custom controller to extend and scale the 'react-jw-player' library for future updates.\n*/\n\nclass JWPlayerController {\n constructor() {\n this.player = null;\n this.error = null;\n }\n\n setPlayer = player => {\n this.player = player;\n };\n\n setErrorHandler = setError => {\n this.setError = setError;\n };\n\n onError = ({ message }) => {\n this.error = message;\n };\n\n onSetupError = ({ message }) => {\n this.error = message;\n };\n\n onComplete = event => {};\n\n onPause = event => {};\n\n onPlay = event => {};\n\n get events() {\n return {\n play: this.onPlay,\n pause: this.onPause,\n error: this.onError,\n complete: this.onComplete,\n setupError: this.setupError\n };\n }\n}\n\nexport default JWPlayerController;\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AAFA,IAIMA,kBAAkB;EACtB,SAAAA,mBAAA,EAAc;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAF,kBAAA;IAAA,IAAAG,gBAAA,gCAKF,UAAAC,MAAM,EAAI;MACpBH,KAAI,CAACG,MAAM,GAAGA,MAAM;IACtB,CAAC;IAAA,IAAAD,gBAAA,sCAEiB,UAAAE,QAAQ,EAAI;MAC5BJ,KAAI,CAACI,QAAQ,GAAGA,QAAQ;IAC1B,CAAC;IAAA,IAAAF,gBAAA,8BAES,UAAAG,IAAA,EAAiB;MAAA,IAAdC,OAAO,GAAAD,IAAA,CAAPC,OAAO;MAClBN,KAAI,CAACO,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAA,IAAAJ,gBAAA,mCAEc,UAAAM,KAAA,EAAiB;MAAA,IAAdF,OAAO,GAAAE,KAAA,CAAPF,OAAO;MACvBN,KAAI,CAACO,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAA,IAAAJ,gBAAA,iCAEY,UAAAO,KAAK,EAAI,CAAC,CAAC;IAAA,IAAAP,gBAAA,8BAEd,UAAAO,KAAK,EAAI,CAAC,CAAC;IAAA,IAAAP,gBAAA,6BAEZ,UAAAO,KAAK,EAAI,CAAC,CAAC;IAxBlB,IAAI,CAACN,MAAM,GAAG,IAAI;IAClB,IAAI,CAACI,KAAK,GAAG,IAAI;EACnB;EAAC,IAAAG,aAAA,aAAAX,kBAAA;IAAAY,GAAA;IAAAC,GAAA,EAwBD,SAAAA,IAAA,EAAa;MACX,OAAO;QACLC,IAAI,EAAE,IAAI,CAACC,MAAM;QACjBC,KAAK,EAAE,IAAI,CAACC,OAAO;QACnBT,KAAK,EAAE,IAAI,CAACU,OAAO;QACnBC,QAAQ,EAAE,IAAI,CAACC,UAAU;QACzBC,UAAU,EAAE,IAAI,CAACA;MACnB,CAAC;IACH;EAAC;EAAA,OAAArB,kBAAA;AAAA;AAAA,IAAAsB,QAAA,GAAAC,OAAA,cAGYvB,kBAAkB"}
1
+ {"version":3,"file":"JWPlayerController.js","names":["_constants","require","JWPlayerController","_ref","_this","emitEvent","_classCallCheck2","_defineProperty2","player","setError","_ref2","message","error","_ref3","action","_this$player$getPlayl","getPlaylistItem","videoId","mediaid","event","doEmitEvent","EVENT_ACTIONS","ENDED","PAUSED","PLAYING","_createClass2","key","get","play","onPlay","pause","onPause","onError","complete","onComplete","setupError","_default","exports"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerController.js"],"sourcesContent":["/*\n Custom controller to extend and scale the 'react-jw-player' library for future updates.\n*/\n\nimport { EVENT_ACTIONS } from '../../constants';\n\nclass JWPlayerController {\n constructor({ emitEvent }) {\n this.player = null;\n this.error = null;\n this.emitEvent = emitEvent;\n }\n\n setPlayer = player => {\n this.player = player;\n };\n\n setErrorHandler = setError => {\n this.setError = setError;\n };\n\n onError = ({ message }) => {\n this.error = message;\n };\n\n onSetupError = ({ message }) => {\n this.error = message;\n };\n\n doEmitEvent = action => {\n const { emitEvent } = this;\n if (emitEvent) {\n const { mediaid: videoId } = this.player.getPlaylistItem();\n emitEvent({ action, videoId });\n }\n };\n\n onComplete = event => {\n this.doEmitEvent(EVENT_ACTIONS.ENDED);\n };\n\n onPause = event => {\n this.doEmitEvent(EVENT_ACTIONS.PAUSED);\n };\n\n onPlay = event => {\n this.doEmitEvent(EVENT_ACTIONS.PLAYING);\n };\n\n get events() {\n return {\n play: this.onPlay,\n pause: this.onPause,\n error: this.onError,\n complete: this.onComplete,\n setupError: this.setupError\n };\n }\n}\n\nexport default JWPlayerController;\n"],"mappings":";;;;;;;;;;;AAIA,IAAAA,UAAA,GAAAC,OAAA;AAJA;AACA;AACA;AAFA,IAMMC,kBAAkB;EACtB,SAAAA,mBAAAC,IAAA,EAA2B;IAAA,IAAAC,KAAA;IAAA,IAAbC,UAAS,GAAAF,IAAA,CAATE,SAAS;IAAA,IAAAC,gBAAA,mBAAAJ,kBAAA;IAAA,IAAAK,gBAAA,gCAMX,UAAAC,MAAM,EAAI;MACpBJ,KAAI,CAACI,MAAM,GAAGA,MAAM;IACtB,CAAC;IAAA,IAAAD,gBAAA,sCAEiB,UAAAE,QAAQ,EAAI;MAC5BL,KAAI,CAACK,QAAQ,GAAGA,QAAQ;IAC1B,CAAC;IAAA,IAAAF,gBAAA,8BAES,UAAAG,KAAA,EAAiB;MAAA,IAAdC,OAAO,GAAAD,KAAA,CAAPC,OAAO;MAClBP,KAAI,CAACQ,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAA,IAAAJ,gBAAA,mCAEc,UAAAM,KAAA,EAAiB;MAAA,IAAdF,OAAO,GAAAE,KAAA,CAAPF,OAAO;MACvBP,KAAI,CAACQ,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAA,IAAAJ,gBAAA,kCAEa,UAAAO,MAAM,EAAI;MACtB,IAAQT,SAAS,GAAKD,KAAI,CAAlBC,SAAS;MACjB,IAAIA,SAAS,EAAE;QACb,IAAAU,qBAAA,GAA6BX,KAAI,CAACI,MAAM,CAACQ,eAAe,CAAC,CAAC;UAAzCC,OAAO,GAAAF,qBAAA,CAAhBG,OAAO;QACfb,SAAS,CAAC;UAAES,MAAM,EAANA,MAAM;UAAEG,OAAO,EAAPA;QAAQ,CAAC,CAAC;MAChC;IACF,CAAC;IAAA,IAAAV,gBAAA,iCAEY,UAAAY,KAAK,EAAI;MACpBf,KAAI,CAACgB,WAAW,CAACC,wBAAa,CAACC,KAAK,CAAC;IACvC,CAAC;IAAA,IAAAf,gBAAA,8BAES,UAAAY,KAAK,EAAI;MACjBf,KAAI,CAACgB,WAAW,CAACC,wBAAa,CAACE,MAAM,CAAC;IACxC,CAAC;IAAA,IAAAhB,gBAAA,6BAEQ,UAAAY,KAAK,EAAI;MAChBf,KAAI,CAACgB,WAAW,CAACC,wBAAa,CAACG,OAAO,CAAC;IACzC,CAAC;IAvCC,IAAI,CAAChB,MAAM,GAAG,IAAI;IAClB,IAAI,CAACI,KAAK,GAAG,IAAI;IACjB,IAAI,CAACP,SAAS,GAAGA,UAAS;EAC5B;EAAC,IAAAoB,aAAA,aAAAvB,kBAAA;IAAAwB,GAAA;IAAAC,GAAA,EAsCD,SAAAA,IAAA,EAAa;MACX,OAAO;QACLC,IAAI,EAAE,IAAI,CAACC,MAAM;QACjBC,KAAK,EAAE,IAAI,CAACC,OAAO;QACnBnB,KAAK,EAAE,IAAI,CAACoB,OAAO;QACnBC,QAAQ,EAAE,IAAI,CAACC,UAAU;QACzBC,UAAU,EAAE,IAAI,CAACA;MACnB,CAAC;IACH;EAAC;EAAA,OAAAjC,kBAAA;AAAA;AAAA,IAAAkC,QAAA,GAAAC,OAAA,cAGYnC,kBAAkB"}
@@ -10,21 +10,28 @@ require("core-js/modules/web.dom-collections.for-each.js");
10
10
  require("core-js/modules/es.object.get-own-property-descriptors.js");
11
11
  require("core-js/modules/es.object.define-properties.js");
12
12
  require("core-js/modules/es.object.define-property.js");
13
+ require("core-js/modules/es.array.iterator.js");
14
+ require("core-js/modules/es.string.iterator.js");
15
+ require("core-js/modules/es.weak-map.js");
16
+ require("core-js/modules/web.dom-collections.iterator.js");
13
17
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
18
+ var _typeof = require("@babel/runtime/helpers/typeof");
14
19
  Object.defineProperty(exports, "__esModule", {
15
20
  value: true
16
21
  });
17
22
  exports["default"] = void 0;
18
23
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
19
24
  require("core-js/modules/es.function.name.js");
20
- var _react = _interopRequireDefault(require("react"));
25
+ var _react = _interopRequireWildcard(require("react"));
21
26
  var _propTypes = _interopRequireDefault(require("prop-types"));
22
27
  var _reactJwPlayer = _interopRequireDefault(require("react-jw-player"));
23
28
  var _constants = require("../../../../constants");
24
29
  var _JWPlayerController = _interopRequireDefault(require("./JWPlayerController"));
30
+ var _VideoContext = require("../../VideoContext");
31
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
32
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
25
33
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26
34
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27
- var PlayerController = new _JWPlayerController["default"]();
28
35
  var JWPlayerProvider = function JWPlayerProvider(_ref) {
29
36
  var url = _ref.url,
30
37
  name = _ref.name,
@@ -35,14 +42,19 @@ var JWPlayerProvider = function JWPlayerProvider(_ref) {
35
42
  muted = _ref.muted,
36
43
  imageData = _ref.imageData,
37
44
  repeat = _ref.loop;
45
+ var _useContext = (0, _react.useContext)(_VideoContext.VideoContext),
46
+ emitEvent = _useContext.emitEvent;
47
+ var PlayerController = (0, _react.useRef)(new _JWPlayerController["default"]({
48
+ emitEvent: emitEvent
49
+ }));
38
50
  var handleOnReady = function handleOnReady() {
39
51
  var jwPlayer = window.jwplayer(name);
40
52
  if (jwPlayer) {
41
- PlayerController.setPlayer(jwPlayer);
53
+ PlayerController.current.setPlayer(jwPlayer);
42
54
  }
43
55
  };
44
56
  var getJWPlayerProps = function getJWPlayerProps() {
45
- var events = PlayerController.events;
57
+ var events = PlayerController.current.events;
46
58
  var props = {
47
59
  customProps: {
48
60
  repeat: repeat,
@@ -1 +1 @@
1
- {"version":3,"file":"JWPlayerProvider.js","names":["_react","_interopRequireDefault","require","_propTypes","_reactJwPlayer","_constants","_JWPlayerController","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","PlayerController","JWPlayerController","JWPlayerProvider","_ref","url","name","autoplay","controls","type","urlScript","muted","imageData","repeat","loop","handleOnReady","jwPlayer","window","jwplayer","setPlayer","getJWPlayerProps","events","props","customProps","playerScript","isAutoPlay","isMuted","playerId","onReady","className","VIDEO_WRAPPER_CLASS_NAME","JW_PLAYER_TYPE_FILE","_imageData$url","imageURL","image","file","playlist","createElement","propTypes","PropTypes","string","isRequired","imageId","bool","object","defaultProps","_default","exports"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerProvider.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ReactJWPlayer from 'react-jw-player';\nimport { JW_PLAYER_TYPE_FILE, VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';\nimport JWPlayerController from './JWPlayerController';\n\nconst PlayerController = new JWPlayerController();\n\nconst JWPlayerProvider = ({\n url,\n name,\n autoplay,\n controls,\n type,\n urlScript,\n muted,\n imageData,\n loop: repeat\n}) => {\n const handleOnReady = () => {\n const jwPlayer = window.jwplayer(name);\n if (jwPlayer) {\n PlayerController.setPlayer(jwPlayer);\n }\n };\n\n const getJWPlayerProps = () => {\n const { events } = PlayerController;\n\n const props = {\n customProps: { repeat, controls, events },\n playerScript: urlScript,\n isAutoPlay: autoplay,\n isMuted: muted,\n playerId: name,\n onReady: handleOnReady,\n className: VIDEO_WRAPPER_CLASS_NAME\n };\n\n if (type === JW_PLAYER_TYPE_FILE) {\n const { url: imageURL = '' } = imageData;\n return { ...props, image: imageURL, file: url };\n }\n\n return { ...props, playlist: url };\n };\n\n return <ReactJWPlayer {...getJWPlayerProps()} />;\n};\n\nJWPlayerProvider.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n urlScript: PropTypes.string.isRequired,\n imageId: PropTypes.string,\n autoplay: PropTypes.bool,\n loop: PropTypes.bool,\n controls: PropTypes.bool,\n muted: PropTypes.bool,\n type: PropTypes.string,\n imageData: PropTypes.object\n};\n\nJWPlayerProvider.defaultProps = {\n autoplay: false,\n loop: false,\n controls: true,\n muted: false,\n type: 'playlist',\n imageId: null,\n imageData: {}\n};\n\nexport default JWPlayerProvider;\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAL,sBAAA,CAAAC,OAAA;AAAsD,SAAAK,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAEtD,IAAMoB,gBAAgB,GAAG,IAAIC,8BAAkB,CAAC,CAAC;AAEjD,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAUhB;EAAA,IATJC,GAAG,GAAAD,IAAA,CAAHC,GAAG;IACHC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;IACRC,IAAI,GAAAL,IAAA,CAAJK,IAAI;IACJC,SAAS,GAAAN,IAAA,CAATM,SAAS;IACTC,KAAK,GAAAP,IAAA,CAALO,KAAK;IACLC,SAAS,GAAAR,IAAA,CAATQ,SAAS;IACHC,MAAM,GAAAT,IAAA,CAAZU,IAAI;EAEJ,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAA,EAAS;IAC1B,IAAMC,QAAQ,GAAGC,MAAM,CAACC,QAAQ,CAACZ,IAAI,CAAC;IACtC,IAAIU,QAAQ,EAAE;MACZf,gBAAgB,CAACkB,SAAS,CAACH,QAAQ,CAAC;IACtC;EACF,CAAC;EAED,IAAMI,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA,EAAS;IAC7B,IAAQC,MAAM,GAAKpB,gBAAgB,CAA3BoB,MAAM;IAEd,IAAMC,KAAK,GAAG;MACZC,WAAW,EAAE;QAAEV,MAAM,EAANA,MAAM;QAAEL,QAAQ,EAARA,QAAQ;QAAEa,MAAM,EAANA;MAAO,CAAC;MACzCG,YAAY,EAAEd,SAAS;MACvBe,UAAU,EAAElB,QAAQ;MACpBmB,OAAO,EAAEf,KAAK;MACdgB,QAAQ,EAAErB,IAAI;MACdsB,OAAO,EAAEb,aAAa;MACtBc,SAAS,EAAEC;IACb,CAAC;IAED,IAAIrB,IAAI,KAAKsB,8BAAmB,EAAE;MAChC,IAAAC,cAAA,GAA+BpB,SAAS,CAAhCP,GAAG;QAAE4B,QAAQ,GAAAD,cAAA,cAAG,EAAE,GAAAA,cAAA;MAC1B,OAAAvC,aAAA,CAAAA,aAAA,KAAY6B,KAAK;QAAEY,KAAK,EAAED,QAAQ;QAAEE,IAAI,EAAE9B;MAAG;IAC/C;IAEA,OAAAZ,aAAA,CAAAA,aAAA,KAAY6B,KAAK;MAAEc,QAAQ,EAAE/B;IAAG;EAClC,CAAC;EAED,oBAAOhC,MAAA,YAAAgE,aAAA,CAAC5D,cAAA,WAAa,EAAK2C,gBAAgB,CAAC,CAAI,CAAC;AAClD,CAAC;AAEDjB,gBAAgB,CAACmC,SAAS,GAAG;EAC3BjC,GAAG,EAAEkC,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChCnC,IAAI,EAAEiC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACjC/B,SAAS,EAAE6B,qBAAS,CAACC,MAAM,CAACC,UAAU;EACtCC,OAAO,EAAEH,qBAAS,CAACC,MAAM;EACzBjC,QAAQ,EAAEgC,qBAAS,CAACI,IAAI;EACxB7B,IAAI,EAAEyB,qBAAS,CAACI,IAAI;EACpBnC,QAAQ,EAAE+B,qBAAS,CAACI,IAAI;EACxBhC,KAAK,EAAE4B,qBAAS,CAACI,IAAI;EACrBlC,IAAI,EAAE8B,qBAAS,CAACC,MAAM;EACtB5B,SAAS,EAAE2B,qBAAS,CAACK;AACvB,CAAC;AAEDzC,gBAAgB,CAAC0C,YAAY,GAAG;EAC9BtC,QAAQ,EAAE,KAAK;EACfO,IAAI,EAAE,KAAK;EACXN,QAAQ,EAAE,IAAI;EACdG,KAAK,EAAE,KAAK;EACZF,IAAI,EAAE,UAAU;EAChBiC,OAAO,EAAE,IAAI;EACb9B,SAAS,EAAE,CAAC;AACd,CAAC;AAAC,IAAAkC,QAAA,GAAAC,OAAA,cAEa5C,gBAAgB"}
1
+ {"version":3,"file":"JWPlayerProvider.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_reactJwPlayer","_constants","_JWPlayerController","_VideoContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","JWPlayerProvider","_ref","url","name","autoplay","controls","type","urlScript","muted","imageData","repeat","loop","_useContext","useContext","VideoContext","emitEvent","PlayerController","useRef","JWPlayerController","handleOnReady","jwPlayer","window","jwplayer","current","setPlayer","getJWPlayerProps","events","props","customProps","playerScript","isAutoPlay","isMuted","playerId","onReady","className","VIDEO_WRAPPER_CLASS_NAME","JW_PLAYER_TYPE_FILE","_imageData$url","imageURL","image","file","playlist","createElement","propTypes","PropTypes","string","isRequired","imageId","bool","object","defaultProps","_default","exports"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerProvider.js"],"sourcesContent":["import React, { useContext, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactJWPlayer from 'react-jw-player';\nimport { JW_PLAYER_TYPE_FILE, VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';\nimport JWPlayerController from './JWPlayerController';\nimport { VideoContext } from '../../VideoContext';\n\nconst JWPlayerProvider = ({\n url,\n name,\n autoplay,\n controls,\n type,\n urlScript,\n muted,\n imageData,\n loop: repeat\n}) => {\n const { emitEvent } = useContext(VideoContext);\n const PlayerController = useRef(new JWPlayerController({ emitEvent }));\n\n const handleOnReady = () => {\n const jwPlayer = window.jwplayer(name);\n if (jwPlayer) {\n PlayerController.current.setPlayer(jwPlayer);\n }\n };\n\n const getJWPlayerProps = () => {\n const { events } = PlayerController.current;\n\n const props = {\n customProps: { repeat, controls, events },\n playerScript: urlScript,\n isAutoPlay: autoplay,\n isMuted: muted,\n playerId: name,\n onReady: handleOnReady,\n className: VIDEO_WRAPPER_CLASS_NAME\n };\n\n if (type === JW_PLAYER_TYPE_FILE) {\n const { url: imageURL = '' } = imageData;\n return { ...props, image: imageURL, file: url };\n }\n\n return { ...props, playlist: url };\n };\n\n return <ReactJWPlayer {...getJWPlayerProps()} />;\n};\n\nJWPlayerProvider.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n urlScript: PropTypes.string.isRequired,\n imageId: PropTypes.string,\n autoplay: PropTypes.bool,\n loop: PropTypes.bool,\n controls: PropTypes.bool,\n muted: PropTypes.bool,\n type: PropTypes.string,\n imageData: PropTypes.object\n};\n\nJWPlayerProvider.defaultProps = {\n autoplay: false,\n loop: false,\n controls: true,\n muted: false,\n type: 'playlist',\n imageId: null,\n imageData: {}\n};\n\nexport default JWPlayerProvider;\n"],"mappings":"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"}
@@ -20,8 +20,11 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
20
20
  var _customHooks = require("@blaze-react/utils/lib/customHooks");
21
21
  var _constants = require("../../../../constants");
22
22
  var _helpers = require("./helpers");
23
+ var _VideoContext = require("../../VideoContext");
24
+ var _constants2 = require("../../constants");
23
25
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
24
26
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
27
+ var SCRIPT_ID = 'youtube-iframe-api';
25
28
  var YoutubeEmbeded = function YoutubeEmbeded(_ref) {
26
29
  var autoplay = _ref.autoplay,
27
30
  videoId = _ref.videoId,
@@ -40,6 +43,10 @@ var YoutubeEmbeded = function YoutubeEmbeded(_ref) {
40
43
  priority = _ref.priority,
41
44
  placeholderOnly = _ref.placeholderOnly,
42
45
  imageData = _ref.imageData;
46
+ var ref = (0, _react.useRef)(null);
47
+ var playerRef = (0, _react.useRef)(null);
48
+ var _useContext = (0, _react.useContext)(_VideoContext.VideoContext),
49
+ emitEvent = _useContext.emitEvent;
43
50
  var _useInView = (0, _customHooks.useInView)(_constants.IN_VIEW_CONFIG),
44
51
  _useInView2 = (0, _slicedToArray2["default"])(_useInView, 2),
45
52
  isIntersecting = _useInView2[0],
@@ -74,7 +81,53 @@ var YoutubeEmbeded = function YoutubeEmbeded(_ref) {
74
81
  });
75
82
  var mutedValue = muted ? '&mute=1' : '';
76
83
  var iframeSrc = !playlist ? "".concat(ytUrl, "/embed/").concat(encodedId, "?autoplay=1").concat(mutedValue).concat(paramsImp) : "".concat(ytUrl, "/embed/videoseries?autoplay=1").concat(mutedValue, "&list=").concat(encodedId).concat(paramsImp);
84
+ if (emitEvent) iframeSrc += "&enablejsapi=1&origin=".concat(window.location.origin);
77
85
  var parsedWrapperClassname = "yt-facade ".concat(renderIframe ? 'yt-activated' : '');
86
+ var iframeId = "yt-iframe-".concat(videoId);
87
+ (0, _react.useEffect)(function () {
88
+ if (!emitEvent || !renderIframe) return;
89
+ if (!document.getElementById(SCRIPT_ID)) {
90
+ // if script not already loaded
91
+ var tag = document.createElement('script');
92
+ tag.id = SCRIPT_ID;
93
+ tag.src = 'https://www.youtube.com/iframe_api';
94
+ var firstScriptTag = document.getElementsByTagName('script')[0];
95
+ firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
96
+ }
97
+ var onStateChange = function onStateChange(event) {
98
+ var action = '';
99
+ if (event.data === window.YT.PlayerState.ENDED) {
100
+ action = _constants2.EVENT_ACTIONS.ENDED;
101
+ } else if (event.data === window.YT.PlayerState.PAUSED) {
102
+ action = _constants2.EVENT_ACTIONS.PAUSED;
103
+ } else if (event.data === window.YT.PlayerState.PLAYING) {
104
+ action = _constants2.EVENT_ACTIONS.PLAYING;
105
+ }
106
+ emitEvent({
107
+ action: action,
108
+ videoId: videoId
109
+ });
110
+ };
111
+ if (window.YT) {
112
+ // if script already loaded then attach player
113
+ window.YT.ready(function () {
114
+ playerRef.current = new window.YT.Player(iframeId, {
115
+ events: {
116
+ onStateChange: onStateChange
117
+ }
118
+ });
119
+ });
120
+ } else {
121
+ // called on script load
122
+ window.onYouTubeIframeAPIReady = function () {
123
+ playerRef.current = new window.YT.Player(ref.current, {
124
+ events: {
125
+ onStateChange: onStateChange
126
+ }
127
+ });
128
+ };
129
+ }
130
+ }, [emitEvent, iframeId, renderIframe, videoId]);
78
131
  (0, _react.useEffect)(function () {
79
132
  var isMounted = true;
80
133
  if (!priority && !isIntersecting || imageSize === _helpers.YT_HQ_FORMAT) return;
@@ -135,6 +188,8 @@ var YoutubeEmbeded = function YoutubeEmbeded(_ref) {
135
188
  }, /*#__PURE__*/_react["default"].createElement("div", {
136
189
  className: "yt-facade-button"
137
190
  })), renderIframe && /*#__PURE__*/_react["default"].createElement("iframe", {
191
+ ref: ref,
192
+ id: iframeId,
138
193
  className: iframeClass,
139
194
  title: videoTitle,
140
195
  allow: "accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture",