@atlaskit/media-card 77.1.2 → 77.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/card/card.js +1 -1
  3. package/dist/cjs/card/media-card-analytics-error-boundary.js +1 -1
  4. package/dist/cjs/card/useBreakpoint.js +29 -0
  5. package/dist/cjs/card/v2/cardV2.js +3 -5
  6. package/dist/cjs/card/v2/cardViewV2.js +5 -22
  7. package/dist/cjs/card/v2/inlinePlayerLazyV2.js +35 -0
  8. package/dist/cjs/card/v2/inlinePlayerV2.js +222 -0
  9. package/dist/cjs/inline/loader.js +1 -1
  10. package/dist/cjs/utils/ufoExperiences.js +1 -1
  11. package/dist/es2019/card/card.js +1 -1
  12. package/dist/es2019/card/media-card-analytics-error-boundary.js +1 -1
  13. package/dist/es2019/card/useBreakpoint.js +22 -0
  14. package/dist/es2019/card/v2/cardV2.js +3 -5
  15. package/dist/es2019/card/v2/cardViewV2.js +4 -18
  16. package/dist/es2019/card/v2/inlinePlayerLazyV2.js +10 -0
  17. package/dist/es2019/card/v2/inlinePlayerV2.js +164 -0
  18. package/dist/es2019/inline/loader.js +1 -1
  19. package/dist/es2019/utils/ufoExperiences.js +1 -1
  20. package/dist/esm/card/card.js +1 -1
  21. package/dist/esm/card/media-card-analytics-error-boundary.js +1 -1
  22. package/dist/esm/card/useBreakpoint.js +24 -0
  23. package/dist/esm/card/v2/cardV2.js +3 -5
  24. package/dist/esm/card/v2/cardViewV2.js +7 -24
  25. package/dist/esm/card/v2/inlinePlayerLazyV2.js +23 -0
  26. package/dist/esm/card/v2/inlinePlayerV2.js +212 -0
  27. package/dist/esm/inline/loader.js +1 -1
  28. package/dist/esm/utils/ufoExperiences.js +1 -1
  29. package/dist/types/card/useBreakpoint.d.ts +3 -0
  30. package/dist/types/card/v2/inlinePlayerLazyV2.d.ts +2 -0
  31. package/dist/types/card/v2/inlinePlayerV2.d.ts +23 -0
  32. package/dist/types-ts4.5/card/actions.d.ts +9 -0
  33. package/dist/types-ts4.5/card/card.d.ts +64 -0
  34. package/dist/types-ts4.5/card/cardAnalytics.d.ts +10 -0
  35. package/dist/types-ts4.5/card/cardConstants.d.ts +1 -0
  36. package/dist/types-ts4.5/card/cardLoader.d.ts +6 -0
  37. package/dist/types-ts4.5/card/cardState.d.ts +9 -0
  38. package/dist/types-ts4.5/card/cardSwitcher.d.ts +4 -0
  39. package/dist/types-ts4.5/card/cardView.d.ts +78 -0
  40. package/dist/types-ts4.5/card/classnames.d.ts +2 -0
  41. package/dist/types-ts4.5/card/getCardPreview/cache.d.ts +21 -0
  42. package/dist/types-ts4.5/card/getCardPreview/filePreviewStatus.d.ts +4 -0
  43. package/dist/types-ts4.5/card/getCardPreview/helpers.d.ts +10 -0
  44. package/dist/types-ts4.5/card/getCardPreview/index.d.ts +53 -0
  45. package/dist/types-ts4.5/card/getCardStatus.d.ts +4 -0
  46. package/dist/types-ts4.5/card/index.d.ts +1 -0
  47. package/dist/types-ts4.5/card/inlinePlayer.d.ts +52 -0
  48. package/dist/types-ts4.5/card/inlinePlayerLazy.d.ts +2 -0
  49. package/dist/types-ts4.5/card/inlinePlayerWrapper.d.ts +4 -0
  50. package/dist/types-ts4.5/card/inlinePlayerWrapperStyles.d.ts +6 -0
  51. package/dist/types-ts4.5/card/media-card-analytics-error-boundary.d.ts +14 -0
  52. package/dist/types-ts4.5/card/types.d.ts +13 -0
  53. package/dist/types-ts4.5/card/ui/actionsBar/actionsBar.d.ts +5 -0
  54. package/dist/types-ts4.5/card/ui/actionsBar/actionsBarWrapper.d.ts +4 -0
  55. package/dist/types-ts4.5/card/ui/actionsBar/cardActions/cardActionButton.d.ts +3 -0
  56. package/dist/types-ts4.5/card/ui/actionsBar/cardActions/cardActionIconButton.d.ts +12 -0
  57. package/dist/types-ts4.5/card/ui/actionsBar/cardActions/cardActionsDropdownMenu.d.ts +14 -0
  58. package/dist/types-ts4.5/card/ui/actionsBar/cardActions/cardActionsView.d.ts +16 -0
  59. package/dist/types-ts4.5/card/ui/actionsBar/cardActions/index.d.ts +7 -0
  60. package/dist/types-ts4.5/card/ui/actionsBar/cardActions/styles.d.ts +18 -0
  61. package/dist/types-ts4.5/card/ui/actionsBar/styles.d.ts +6 -0
  62. package/dist/types-ts4.5/card/ui/actionsBar/types.d.ts +10 -0
  63. package/dist/types-ts4.5/card/ui/blanket/blanket.d.ts +6 -0
  64. package/dist/types-ts4.5/card/ui/blanket/styles.d.ts +6 -0
  65. package/dist/types-ts4.5/card/ui/common.d.ts +23 -0
  66. package/dist/types-ts4.5/card/ui/iconMessage/iconMessageWrapper.d.ts +4 -0
  67. package/dist/types-ts4.5/card/ui/iconMessage/index.d.ts +8 -0
  68. package/dist/types-ts4.5/card/ui/iconMessage/styles.d.ts +5 -0
  69. package/dist/types-ts4.5/card/ui/iconMessage/types.d.ts +19 -0
  70. package/dist/types-ts4.5/card/ui/iconWrapper/iconWrapper.d.ts +4 -0
  71. package/dist/types-ts4.5/card/ui/iconWrapper/styles.d.ts +7 -0
  72. package/dist/types-ts4.5/card/ui/iconWrapper/types.d.ts +6 -0
  73. package/dist/types-ts4.5/card/ui/imageRenderer/imageRenderer.d.ts +15 -0
  74. package/dist/types-ts4.5/card/ui/imageRenderer/resizeModeToMediaImageProps.d.ts +5 -0
  75. package/dist/types-ts4.5/card/ui/playButton/playButton.d.ts +2 -0
  76. package/dist/types-ts4.5/card/ui/playButton/playButtonBackground.d.ts +3 -0
  77. package/dist/types-ts4.5/card/ui/playButton/playButtonWrapper.d.ts +3 -0
  78. package/dist/types-ts4.5/card/ui/playButton/styles.d.ts +5 -0
  79. package/dist/types-ts4.5/card/ui/progressBar/progressBar.d.ts +10 -0
  80. package/dist/types-ts4.5/card/ui/progressBar/styledBar.d.ts +4 -0
  81. package/dist/types-ts4.5/card/ui/progressBar/styles.d.ts +7 -0
  82. package/dist/types-ts4.5/card/ui/progressBar/types.d.ts +7 -0
  83. package/dist/types-ts4.5/card/ui/styles.d.ts +13 -0
  84. package/dist/types-ts4.5/card/ui/tickBox/styles.d.ts +7 -0
  85. package/dist/types-ts4.5/card/ui/tickBox/tickBox.d.ts +3 -0
  86. package/dist/types-ts4.5/card/ui/tickBox/tickBoxWrapper.d.ts +4 -0
  87. package/dist/types-ts4.5/card/ui/tickBox/types.d.ts +4 -0
  88. package/dist/types-ts4.5/card/ui/titleBox/failedTitleBox.d.ts +3 -0
  89. package/dist/types-ts4.5/card/ui/titleBox/styles.d.ts +15 -0
  90. package/dist/types-ts4.5/card/ui/titleBox/titleBox.d.ts +4 -0
  91. package/dist/types-ts4.5/card/ui/titleBox/titleBoxComponents.d.ts +8 -0
  92. package/dist/types-ts4.5/card/ui/titleBox/types.d.ts +34 -0
  93. package/dist/types-ts4.5/card/ui/unhandledErrorCard/index.d.ts +7 -0
  94. package/dist/types-ts4.5/card/ui/unhandledErrorCard/types.d.ts +6 -0
  95. package/dist/types-ts4.5/card/ui/wrapper/index.d.ts +1 -0
  96. package/dist/types-ts4.5/card/ui/wrapper/styles.d.ts +5 -0
  97. package/dist/types-ts4.5/card/ui/wrapper/types.d.ts +25 -0
  98. package/dist/types-ts4.5/card/ui/wrapper/wrapper.d.ts +4 -0
  99. package/dist/types-ts4.5/card/useBreakpoint.d.ts +3 -0
  100. package/dist/types-ts4.5/card/v2/cardV2.d.ts +63 -0
  101. package/dist/types-ts4.5/card/v2/cardV2Loader.d.ts +4 -0
  102. package/dist/types-ts4.5/card/v2/cardViewV2.d.ts +44 -0
  103. package/dist/types-ts4.5/card/v2/inlinePlayerLazyV2.d.ts +2 -0
  104. package/dist/types-ts4.5/card/v2/inlinePlayerV2.d.ts +23 -0
  105. package/dist/types-ts4.5/classnames.d.ts +5 -0
  106. package/dist/types-ts4.5/errors.d.ts +53 -0
  107. package/dist/types-ts4.5/index.d.ts +15 -0
  108. package/dist/types-ts4.5/inline/index.d.ts +1 -0
  109. package/dist/types-ts4.5/inline/loader.d.ts +26 -0
  110. package/dist/types-ts4.5/inline/mediaInlineAnalyticsErrorBoundary.d.ts +12 -0
  111. package/dist/types-ts4.5/inline/mediaInlineCard.d.ts +15 -0
  112. package/dist/types-ts4.5/inline/mediaInlineCardAnalytics.d.ts +6 -0
  113. package/dist/types-ts4.5/types.d.ts +105 -0
  114. package/dist/types-ts4.5/utils/analytics.d.ts +101 -0
  115. package/dist/types-ts4.5/utils/cardDimensions.d.ts +14 -0
  116. package/dist/types-ts4.5/utils/containsPixelUnit.d.ts +1 -0
  117. package/dist/types-ts4.5/utils/dimensionComparer.d.ts +3 -0
  118. package/dist/types-ts4.5/utils/document.d.ts +2 -0
  119. package/dist/types-ts4.5/utils/generateUniqueId.d.ts +1 -0
  120. package/dist/types-ts4.5/utils/getCSSUnitValue.d.ts +1 -0
  121. package/dist/types-ts4.5/utils/getDataURIDimension.d.ts +9 -0
  122. package/dist/types-ts4.5/utils/getElementDimension.d.ts +2 -0
  123. package/dist/types-ts4.5/utils/getMediaCardCursor.d.ts +6 -0
  124. package/dist/types-ts4.5/utils/globalScope/getSSRData.d.ts +3 -0
  125. package/dist/types-ts4.5/utils/globalScope/globalScope.d.ts +21 -0
  126. package/dist/types-ts4.5/utils/globalScope/index.d.ts +4 -0
  127. package/dist/types-ts4.5/utils/globalScope/types.d.ts +8 -0
  128. package/dist/types-ts4.5/utils/index.d.ts +6 -0
  129. package/dist/types-ts4.5/utils/isRetina.d.ts +1 -0
  130. package/dist/types-ts4.5/utils/isValidPercentageUnit.d.ts +1 -0
  131. package/dist/types-ts4.5/utils/lightCards/cardError.d.ts +12 -0
  132. package/dist/types-ts4.5/utils/lightCards/cardLoading.d.ts +5 -0
  133. package/dist/types-ts4.5/utils/lightCards/errorIcon/index.d.ts +12 -0
  134. package/dist/types-ts4.5/utils/lightCards/errorIcon/styles.d.ts +1 -0
  135. package/dist/types-ts4.5/utils/lightCards/getDimensionsWithDefault.d.ts +2 -0
  136. package/dist/types-ts4.5/utils/lightCards/lightCardWrappers.d.ts +4 -0
  137. package/dist/types-ts4.5/utils/lightCards/styles.d.ts +2 -0
  138. package/dist/types-ts4.5/utils/lightCards/types.d.ts +15 -0
  139. package/dist/types-ts4.5/utils/metadata.d.ts +2 -0
  140. package/dist/types-ts4.5/utils/mockIntersectionObserver.d.ts +20 -0
  141. package/dist/types-ts4.5/utils/objectURLCache.d.ts +12 -0
  142. package/dist/types-ts4.5/utils/preventClickThrough.d.ts +8 -0
  143. package/dist/types-ts4.5/utils/printScript.d.ts +2 -0
  144. package/dist/types-ts4.5/utils/ufoExperiences.d.ts +14 -0
  145. package/dist/types-ts4.5/utils/videoIsPlayable.d.ts +2 -0
  146. package/dist/types-ts4.5/utils/videoSnapshot.d.ts +1 -0
  147. package/dist/types-ts4.5/utils/viewportDetector.d.ts +6 -0
  148. package/package.json +5 -4
  149. package/tmp/api-report-tmp.d.ts +345 -0
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const PlayButton: () => JSX.Element;
@@ -0,0 +1,3 @@
1
+ /**@jsx jsx */
2
+ import { jsx } from '@emotion/react';
3
+ export declare const PlayButtonBackground: () => jsx.JSX.Element;
@@ -0,0 +1,3 @@
1
+ /**@jsx jsx */
2
+ import { jsx } from '@emotion/react';
3
+ export declare const PlayButtonWrapper: (props: any) => jsx.JSX.Element;
@@ -0,0 +1,5 @@
1
+ export declare const playButtonClassName = "media-card-play-button";
2
+ export declare const bkgClassName = "play-icon-background";
3
+ export declare const fixedPlayButtonStyles: string;
4
+ export declare const playButtonWrapperStyles: import("@emotion/react").SerializedStyles;
5
+ export declare const backgroundStyles: import("@emotion/react").SerializedStyles;
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import { Breakpoint } from '../common';
3
+ export type ProgressBarProps = {
4
+ progress?: number;
5
+ breakpoint?: Breakpoint;
6
+ positionBottom?: boolean;
7
+ showOnTop?: boolean;
8
+ };
9
+ export declare const getNormalizedProgress: (progress?: number) => number;
10
+ export declare const ProgressBar: ({ progress, breakpoint, positionBottom, showOnTop, }: ProgressBarProps) => JSX.Element;
@@ -0,0 +1,4 @@
1
+ /**@jsx jsx */
2
+ import { jsx } from '@emotion/react';
3
+ import { StyledBarProps } from './types';
4
+ export declare const StyledBar: (props: StyledBarProps) => jsx.JSX.Element;
@@ -0,0 +1,7 @@
1
+ import { Breakpoint } from '../common';
2
+ import { StyledBarProps } from './types';
3
+ export declare function generateResponsiveStyles(breakpoint: Breakpoint, positionBottom: boolean, showOnTop: boolean, multiplier?: number): string;
4
+ export declare const styledBarStyles: {
5
+ (props: StyledBarProps): import("@emotion/react").SerializedStyles;
6
+ displayName: string;
7
+ };
@@ -0,0 +1,7 @@
1
+ import { Breakpoint } from '../common';
2
+ export type StyledBarProps = {
3
+ progress?: number;
4
+ breakpoint: Breakpoint;
5
+ positionBottom: boolean;
6
+ showOnTop: boolean;
7
+ };
@@ -0,0 +1,13 @@
1
+ import { CardDimensions, CardAppearance } from '../../types';
2
+ import { Breakpoint } from './common';
3
+ import { MediaCardCursor } from '../../types';
4
+ export declare const calcBreakpointSize: (wrapperWidth?: number) => Breakpoint;
5
+ export declare const generateResponsiveStyles: (breakpoint?: Breakpoint) => string;
6
+ export declare const getWrapperDimensions: (dimensions?: CardDimensions, appearance?: CardAppearance) => string;
7
+ export declare const getWrapperShadow: (disableOverlay: boolean, selected: boolean) => string;
8
+ export declare const getCursorStyle: (cursor: MediaCardCursor | undefined) => string;
9
+ export declare const getClickablePlayButtonStyles: (isPlayButtonClickable: boolean) => string;
10
+ export declare const getSelectableTickBoxStyles: (isTickBoxSelectable: boolean) => string;
11
+ export declare const cardImageContainerStyles: import("@emotion/react").SerializedStyles;
12
+ export declare const transition: (propertyName?: string) => string;
13
+ export declare const rgba: (hex: any, opacity: any) => string;
@@ -0,0 +1,7 @@
1
+ export declare const tickBoxClassName = "media-card-tickbox";
2
+ export declare const tickboxFixedStyles: string;
3
+ export declare const getSelectedStyles: (selected?: boolean) => string;
4
+ export declare const wrapperStyles: {
5
+ (selected?: boolean): import("@emotion/react").SerializedStyles;
6
+ displayName: string;
7
+ };
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { TickBoxProps } from './types';
3
+ export declare const TickBox: ({ selected }: TickBoxProps) => JSX.Element;
@@ -0,0 +1,4 @@
1
+ /**@jsx jsx */
2
+ import { jsx } from '@emotion/react';
3
+ import { TickBoxProps } from './types';
4
+ export declare const TickBoxWrapper: (props: TickBoxProps) => jsx.JSX.Element;
@@ -0,0 +1,4 @@
1
+ export type TickBoxProps = {
2
+ selected?: boolean;
3
+ children?: any;
4
+ };
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { FailedTitleBoxProps } from './types';
3
+ export declare const FailedTitleBox: React.FC<FailedTitleBoxProps>;
@@ -0,0 +1,15 @@
1
+ import { TitleBoxFooterProps, TitleBoxHeaderProps, TitleBoxWrapperProps } from './types';
2
+ export declare const titleBoxWrapperStyles: {
3
+ ({ breakpoint, titleBoxBgColor, theme, }: TitleBoxWrapperProps): import("@emotion/react").SerializedStyles;
4
+ displayName: string;
5
+ };
6
+ export declare const titleBoxHeaderStyles: {
7
+ ({ hasIconOverlap, }: TitleBoxHeaderProps): import("@emotion/react").SerializedStyles;
8
+ displayName: string;
9
+ };
10
+ export declare const titleBoxFooterStyles: {
11
+ ({ hasIconOverlap, }: TitleBoxFooterProps): import("@emotion/react").SerializedStyles;
12
+ displayName: string;
13
+ };
14
+ export declare const titleBoxIconStyles: import("@emotion/react").SerializedStyles;
15
+ export declare const errorMessageWrapperStyles: import("@emotion/react").SerializedStyles;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { FormattedDateProps, TitleBoxProps } from './types';
3
+ export declare const FormattedDate: React.ComponentType<FormattedDateProps>;
4
+ export declare const TitleBox: ({ name, createdAt, breakpoint, titleBoxBgColor, titleBoxIcon, }: TitleBoxProps) => JSX.Element;
@@ -0,0 +1,8 @@
1
+ /** @jsx jsx */
2
+ import { jsx } from '@emotion/react';
3
+ import { TitleBoxFooterProps, TitleBoxHeaderProps, TitleBoxWrapperProps } from './types';
4
+ export declare const TitleBoxWrapper: (props: TitleBoxWrapperProps) => jsx.JSX.Element;
5
+ export declare const TitleBoxHeader: (props: TitleBoxHeaderProps) => jsx.JSX.Element;
6
+ export declare const TitleBoxFooter: (props: TitleBoxFooterProps) => jsx.JSX.Element;
7
+ export declare const TitleBoxIcon: (props: any) => jsx.JSX.Element;
8
+ export declare const ErrorMessageWrapper: (props: any) => jsx.JSX.Element;
@@ -0,0 +1,34 @@
1
+ /// <reference types="react" />
2
+ import { MessageDescriptor } from 'react-intl-next';
3
+ import { Breakpoint } from '../common';
4
+ import { TitleBoxIcon as TitleBoxIconType } from '../../../types';
5
+ import { GlobalThemeTokens } from '@atlaskit/theme/components';
6
+ export type TitleBoxProps = {
7
+ name: string;
8
+ breakpoint: Breakpoint;
9
+ createdAt?: number;
10
+ titleBoxBgColor?: string;
11
+ titleBoxIcon?: TitleBoxIconType;
12
+ };
13
+ export type FormattedDateProps = {
14
+ timestamp: number;
15
+ };
16
+ export type TitleBoxWrapperProps = {
17
+ breakpoint: Breakpoint;
18
+ titleBoxBgColor?: string;
19
+ children?: JSX.Element | JSX.Element[] | any;
20
+ theme?: GlobalThemeTokens;
21
+ };
22
+ export type TitleBoxFooterProps = {
23
+ hasIconOverlap: boolean;
24
+ children?: JSX.Element;
25
+ };
26
+ export type TitleBoxHeaderProps = {
27
+ hasIconOverlap: boolean;
28
+ children?: JSX.Element;
29
+ };
30
+ export type OnRetryFunction = () => void;
31
+ export type FailedTitleBoxProps = {
32
+ breakpoint: Breakpoint;
33
+ customMessage?: MessageDescriptor;
34
+ };
@@ -0,0 +1,7 @@
1
+ /** @jsx jsx */
2
+ import { Component } from 'react';
3
+ import { jsx } from '@emotion/react';
4
+ import { UnhandledErrorCardProps } from './types';
5
+ export declare class UnhandledErrorCard extends Component<UnhandledErrorCardProps, {}> {
6
+ render(): jsx.JSX.Element;
7
+ }
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import { CardDimensions } from '../../../types';
3
+ export interface UnhandledErrorCardProps {
4
+ dimensions?: CardDimensions;
5
+ onClick?: (event: React.MouseEvent<HTMLElement>) => void;
6
+ }
@@ -0,0 +1 @@
1
+ export { Wrapper } from './wrapper';
@@ -0,0 +1,5 @@
1
+ import { WrapperProps } from './types';
2
+ export declare const wrapperStyles: {
3
+ ({ breakpoint, dimensions, appearance, disableOverlay, displayBackground, selected, isPlayButtonClickable, isTickBoxSelectable, shouldDisplayTooltip, mediaCardCursor, theme, }: WrapperProps): import("@emotion/react").SerializedStyles;
4
+ displayName: string;
5
+ };
@@ -0,0 +1,25 @@
1
+ import React, { MouseEvent, RefObject } from 'react';
2
+ import { UIAnalyticsEvent } from '@atlaskit/analytics-next';
3
+ import { CardDimensions, CardAppearance } from '../../../types';
4
+ import { Breakpoint } from '../common';
5
+ import { MediaCardCursor } from '../../../types';
6
+ import { GlobalThemeTokens } from '@atlaskit/theme/components';
7
+ export interface WrapperProps {
8
+ testId?: string;
9
+ breakpoint: Breakpoint;
10
+ mediaCardCursor?: MediaCardCursor;
11
+ dimensions?: CardDimensions;
12
+ appearance?: CardAppearance;
13
+ onClick?: (event: React.MouseEvent<HTMLDivElement>, analyticsEvent?: UIAnalyticsEvent) => void;
14
+ onMouseEnter?: (event: MouseEvent<HTMLDivElement>) => void;
15
+ mediaType?: string;
16
+ disableOverlay: boolean;
17
+ displayBackground: boolean;
18
+ selected: boolean;
19
+ isPlayButtonClickable: boolean;
20
+ isTickBoxSelectable: boolean;
21
+ shouldDisplayTooltip: boolean;
22
+ innerRef?: RefObject<HTMLDivElement>;
23
+ children?: JSX.Element;
24
+ theme?: GlobalThemeTokens;
25
+ }
@@ -0,0 +1,4 @@
1
+ /**@jsx jsx */
2
+ import { jsx } from '@emotion/react';
3
+ import { WrapperProps } from './types';
4
+ export declare const Wrapper: (props: WrapperProps) => jsx.JSX.Element;
@@ -0,0 +1,3 @@
1
+ import { Breakpoint } from './ui/common';
2
+ import { CardDimensionValue } from '../types';
3
+ export declare const useBreakpoint: (dimensionWidth: CardDimensionValue | undefined, divRef: React.RefObject<HTMLDivElement>) => Breakpoint;
@@ -0,0 +1,63 @@
1
+ import React, { Component } from 'react';
2
+ import { UIAnalyticsEvent, WithAnalyticsEventsProps } from '@atlaskit/analytics-next';
3
+ import { FileState, MediaSubscription } from '@atlaskit/media-client';
4
+ import { WrappedComponentProps } from 'react-intl-next';
5
+ import { CardAction } from '../actions';
6
+ import { CardProps, CardState, CardStatus } from '../../types';
7
+ export type CardV2BaseProps = CardProps & WithAnalyticsEventsProps & Partial<WrappedComponentProps>;
8
+ export declare class CardV2Base extends Component<CardV2BaseProps, CardState> {
9
+ private internalOccurrenceKey;
10
+ private hasBeenMounted;
11
+ private fileStateFlags;
12
+ private ssrReliability;
13
+ private timeElapsedTillCommenced;
14
+ subscription?: MediaSubscription;
15
+ private ssrData?;
16
+ private traceContext;
17
+ static defaultProps: Partial<CardProps>;
18
+ constructor(props: CardV2BaseProps);
19
+ private getSSRPreview;
20
+ componentDidMount(): void;
21
+ componentDidUpdate(prevProps: CardProps, prevState: CardState): void;
22
+ componentWillUnmount(): void;
23
+ updateStateForIdentifier(): void;
24
+ private getImageURLParams;
25
+ private getMediaBlobUrlAttrs;
26
+ private getCardPreviewParams;
27
+ private setCacheSSRPreview;
28
+ private refetchSSRPreview;
29
+ private resolveUpfrontPreview;
30
+ private fetchAndCacheRemotePreview;
31
+ private resolvePreview;
32
+ updateFileStateFlag(fileState?: FileState): void;
33
+ private subscribeFileState;
34
+ private get requestedDimensions();
35
+ private get metadata();
36
+ private get fileAttributes();
37
+ private getPerformanceAttributes;
38
+ private logSSRImageError;
39
+ private onImageError;
40
+ private onImageLoad;
41
+ private fireOperationalEvent;
42
+ private fireCommencedEvent;
43
+ private fireAbortedEvent;
44
+ private fireCopiedEvent;
45
+ private fireScreenEvent;
46
+ private fireNonCriticalErrorEvent;
47
+ private safeSetState;
48
+ get actions(): CardAction[];
49
+ onCardViewClick: (event: React.MouseEvent<HTMLDivElement>, analyticsEvent?: UIAnalyticsEvent) => void;
50
+ onInlinePlayerError: () => void;
51
+ setRef: (cardRef: HTMLDivElement | null) => void;
52
+ renderInlinePlayer: () => JSX.Element;
53
+ onMediaViewerClose: () => void;
54
+ private onDisplayImage;
55
+ renderMediaViewer: () => React.ReactPortal | undefined;
56
+ renderCard: (withCallbacks?: boolean, cardStatusOverride?: CardStatus, izLazyOverride?: boolean) => JSX.Element;
57
+ private storeSSRData;
58
+ render(): JSX.Element;
59
+ private onCardInViewport;
60
+ onClick: (event: React.MouseEvent<HTMLDivElement>, analyticsEvent?: UIAnalyticsEvent) => void;
61
+ onMouseEnter: (event: React.MouseEvent<HTMLDivElement>) => void;
62
+ }
63
+ export declare const CardV2: React.ComponentType<CardV2BaseProps>;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { CardWithMediaClientConfigProps } from '../cardLoader';
3
+ declare const CardLoader: React.FC<CardWithMediaClientConfigProps>;
4
+ export default CardLoader;
@@ -0,0 +1,44 @@
1
+ /** @jsx jsx */
2
+ import { jsx } from '@emotion/react';
3
+ import React, { MouseEvent } from 'react';
4
+ import { MessageDescriptor } from 'react-intl-next';
5
+ import { MediaItemType, FileDetails } from '@atlaskit/media-client';
6
+ import { WithAnalyticsEventsProps, UIAnalyticsEvent } from '@atlaskit/analytics-next';
7
+ import { SharedCardProps, CardStatus, CardPreview, MediaCardCursor } from '../../types';
8
+ import { MediaCardError } from '../../errors';
9
+ export interface CardViewV2OwnProps extends SharedCardProps {
10
+ readonly status: CardStatus;
11
+ readonly mediaItemType: MediaItemType;
12
+ readonly mediaCardCursor?: MediaCardCursor;
13
+ readonly metadata?: FileDetails;
14
+ readonly error?: MediaCardError;
15
+ readonly onClick?: (event: React.MouseEvent<HTMLDivElement>, analyticsEvent?: UIAnalyticsEvent) => void;
16
+ readonly onMouseEnter?: (event: MouseEvent<HTMLDivElement>) => void;
17
+ readonly onDisplayImage?: () => void;
18
+ readonly cardPreview?: CardPreview;
19
+ readonly progress?: number;
20
+ readonly innerRef?: (instance: HTMLDivElement | null) => void;
21
+ readonly onImageLoad?: (cardPreview: CardPreview) => void;
22
+ readonly onImageError?: (cardPreview: CardPreview) => void;
23
+ readonly nativeLazyLoad?: boolean;
24
+ readonly forceSyncDisplay?: boolean;
25
+ disableAnimation?: boolean;
26
+ shouldHideTooltip?: boolean;
27
+ }
28
+ export type CardViewV2Props = CardViewV2OwnProps & WithAnalyticsEventsProps;
29
+ export interface RenderConfigByStatusV2 {
30
+ renderTypeIcon?: boolean;
31
+ iconMessage?: JSX.Element;
32
+ renderImageRenderer?: boolean;
33
+ renderPlayButton?: boolean;
34
+ renderTitleBox?: boolean;
35
+ renderBlanket?: boolean;
36
+ isFixedBlanket?: boolean;
37
+ renderProgressBar?: boolean;
38
+ renderSpinner?: boolean;
39
+ renderFailedTitleBox?: boolean;
40
+ renderTickBox?: boolean;
41
+ customTitleMessage?: MessageDescriptor;
42
+ }
43
+ export declare const CardViewV2Base: ({ innerRef, onImageLoad, onImageError, dimensions, appearance, onClick, onMouseEnter, testId, metadata, status, selected, selectable, cardPreview, mediaCardCursor, shouldHideTooltip, progress, alt, resizeMode, onDisplayImage, nativeLazyLoad, forceSyncDisplay, actions, disableOverlay, titleBoxBgColor, titleBoxIcon, error, disableAnimation, }: CardViewV2Props) => jsx.JSX.Element;
44
+ export declare const CardViewV2: React.ForwardRefExoticComponent<Omit<CardViewV2Props, keyof WithAnalyticsEventsProps> & React.RefAttributes<any>>;
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const InlinePlayerLazyV2: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<Pick<import("./inlinePlayerV2").InlinePlayerProps, "createAnalyticsEvent" | keyof import("./inlinePlayerV2").InlinePlayerOwnProps> & import("react").RefAttributes<HTMLDivElement>>>;
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ import { FileIdentifier, FileState, MediaFileArtifacts } from '@atlaskit/media-client';
3
+ import { NumericalCardDimensions } from '@atlaskit/media-common';
4
+ import { CardDimensions } from '../../types';
5
+ import { WithAnalyticsEventsProps, UIAnalyticsEvent } from '@atlaskit/analytics-next';
6
+ import type { CardPreview } from '../../types';
7
+ export interface InlinePlayerOwnProps {
8
+ identifier: FileIdentifier;
9
+ dimensions?: CardDimensions;
10
+ originalDimensions?: NumericalCardDimensions;
11
+ autoplay: boolean;
12
+ selected?: boolean;
13
+ onFullscreenChange?: (fullscreen: boolean) => void;
14
+ onError?: (error: Error) => void;
15
+ readonly onClick?: (event: React.MouseEvent<HTMLDivElement>, analyticsEvent?: UIAnalyticsEvent) => void;
16
+ testId?: string;
17
+ readonly cardPreview?: CardPreview;
18
+ readonly forwardRef?: React.Ref<HTMLDivElement>;
19
+ }
20
+ export type InlinePlayerProps = InlinePlayerOwnProps & WithAnalyticsEventsProps;
21
+ export declare const getPreferredVideoArtifact: (fileState: FileState) => keyof MediaFileArtifacts | undefined;
22
+ export declare const InlinePlayerBaseV2: ({ identifier, onError, onClick, dimensions, originalDimensions, selected, testId, forwardRef, autoplay, cardPreview, onFullscreenChange, }: InlinePlayerProps) => JSX.Element;
23
+ export declare const InlinePlayerV2: React.ForwardRefExoticComponent<Pick<InlinePlayerProps, "createAnalyticsEvent" | keyof InlinePlayerOwnProps> & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Entry Point: @atlaskit/media-card/classnames
3
+ * tsconfig.entry-points.json
4
+ */
5
+ export { fileCardImageViewSelector } from './card/classnames';
@@ -0,0 +1,53 @@
1
+ import { MediaClientErrorReason } from '@atlaskit/media-client';
2
+ import { CardPreview } from './types';
3
+ /**
4
+ * Primary reason is logged through Data Portal.
5
+ * Make sure all the values are whitelisted in Measure -> Event Regitry -> "mediaCardRender failed" event
6
+ */
7
+ export type MediaCardErrorPrimaryReason = 'upload' | 'metadata-fetch' | 'error-file-state' | RemotePreviewPrimaryReason | LocalPreviewPrimaryReason | ImageLoadPrimaryReason | SsrPreviewPrimaryReason | 'missing-error-data' | 'preview-fetch';
8
+ export type ImageLoadPrimaryReason = 'cache-remote-uri' | 'cache-local-uri' | 'local-uri' | 'remote-uri' | 'external-uri' | 'unknown-uri';
9
+ export type RemotePreviewPrimaryReason = 'remote-preview-fetch' | 'remote-preview-not-ready' | 'remote-preview-fetch-ssr';
10
+ export type LocalPreviewPrimaryReason = 'local-preview-get' | 'local-preview-unsupported' | 'local-preview-rejected' | 'local-preview-image' | 'local-preview-video';
11
+ export type SsrPreviewPrimaryReason = 'ssr-client-uri' | 'ssr-client-load' | 'ssr-server-uri' | 'ssr-server-load';
12
+ export declare class MediaFileStateError extends Error {
13
+ readonly id: string;
14
+ readonly reason?: string | undefined;
15
+ readonly message: string;
16
+ readonly details?: Record<string, any> | undefined;
17
+ constructor(id: string, reason?: string | undefined, message?: string, details?: Record<string, any> | undefined);
18
+ }
19
+ export declare function isMediaFileStateError(err: Error): err is MediaFileStateError;
20
+ export declare function getFileStateErrorReason(err: MediaFileStateError): MediaClientErrorReason | 'unknown';
21
+ export declare function isPollingError(err?: Error): boolean;
22
+ export declare function isRateLimitedError(error?: Error): boolean;
23
+ export declare class MediaCardError extends Error {
24
+ readonly primaryReason: MediaCardErrorPrimaryReason;
25
+ readonly secondaryError?: Error | undefined;
26
+ constructor(primaryReason: MediaCardErrorPrimaryReason, secondaryError?: Error | undefined);
27
+ }
28
+ export declare class LocalPreviewError extends MediaCardError {
29
+ readonly primaryReason: LocalPreviewPrimaryReason;
30
+ readonly secondaryError?: Error | undefined;
31
+ constructor(primaryReason: LocalPreviewPrimaryReason, secondaryError?: Error | undefined);
32
+ }
33
+ export declare class RemotePreviewError extends MediaCardError {
34
+ readonly primaryReason: RemotePreviewPrimaryReason;
35
+ readonly secondaryError?: Error | undefined;
36
+ constructor(primaryReason: RemotePreviewPrimaryReason, secondaryError?: Error | undefined);
37
+ }
38
+ export declare class SsrPreviewError extends MediaCardError {
39
+ readonly primaryReason: SsrPreviewPrimaryReason;
40
+ readonly secondaryError?: Error | undefined;
41
+ constructor(primaryReason: SsrPreviewPrimaryReason, secondaryError?: Error | undefined);
42
+ }
43
+ export declare const getImageLoadPrimaryReason: (source?: CardPreview['source']) => ImageLoadPrimaryReason;
44
+ export declare class ImageLoadError extends MediaCardError {
45
+ constructor(source?: CardPreview['source']);
46
+ }
47
+ export declare function isMediaCardError(err: Error): err is MediaCardError;
48
+ export declare const isLocalPreviewError: (err: Error) => err is LocalPreviewError;
49
+ export declare const isRemotePreviewError: (err: Error) => err is LocalPreviewError;
50
+ export declare const isUnsupportedLocalPreviewError: (err: Error) => boolean;
51
+ export declare function isImageLoadError(err: Error): err is ImageLoadError;
52
+ export declare const ensureMediaCardError: (primaryReason: MediaCardErrorPrimaryReason, error: Error, updatePrimaryReason?: boolean) => MediaCardError;
53
+ export declare const isUploadError: (error?: MediaCardError) => boolean | undefined;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Entry Point: @atlaskit/media-card
3
+ * tsconfig.entry-points.json
4
+ */
5
+ export type { NumericalCardDimensions } from '@atlaskit/media-common';
6
+ export type { CardAction, CardEventHandler } from './card/actions';
7
+ export type { CardStatus, CardAppearance, CardDimensionValue, CardPreview, TitleBoxIcon, CardEvent, InlineCardEvent, SharedCardProps, CardOnClickCallback, InlineCardOnClickCallback, CardProps, CardState, CardDimensions, } from './types';
8
+ export { Card } from './card';
9
+ export { MediaInlineCard } from './inline';
10
+ export { CardLoading } from './utils/lightCards/cardLoading';
11
+ export { CardError } from './utils/lightCards/cardError';
12
+ export { defaultImageCardDimensions } from './utils/cardDimensions';
13
+ export { fileCardImageViewSelector } from './card/classnames';
14
+ export { inlinePlayerClassName } from './card/inlinePlayerWrapperStyles';
15
+ export { newFileExperienceClassName } from './card/cardConstants';
@@ -0,0 +1 @@
1
+ export { default as MediaInlineCard } from './loader';
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import { WithMediaClientConfigProps } from '@atlaskit/media-client';
3
+ import { MediaInlineCardProps } from './mediaInlineCard';
4
+ export type MediaInlineCardWithMediaClientConfigProps = WithMediaClientConfigProps<MediaInlineCardProps>;
5
+ type MediaInlineCardWithMediaClientConfigComponent = React.ComponentType<MediaInlineCardWithMediaClientConfigProps>;
6
+ type ErrorBoundaryComponent = React.ComponentType<{
7
+ data?: {
8
+ [k: string]: any;
9
+ };
10
+ isSelected?: boolean;
11
+ }>;
12
+ export interface MediaInlineCardLoaderState {
13
+ MediaInlineCard?: MediaInlineCardWithMediaClientConfigComponent;
14
+ ErrorBoundary?: ErrorBoundaryComponent;
15
+ }
16
+ export default class MediaInlineCardLoader extends React.PureComponent<MediaInlineCardWithMediaClientConfigProps & MediaInlineCardLoaderState, MediaInlineCardLoaderState> {
17
+ static displayName: string;
18
+ static MediaInlineCard?: MediaInlineCardWithMediaClientConfigComponent;
19
+ static ErrorBoundary?: ErrorBoundaryComponent;
20
+ mounted: boolean;
21
+ state: MediaInlineCardLoaderState;
22
+ componentDidMount(): Promise<void>;
23
+ componentWillUnmount(): Promise<void>;
24
+ render(): JSX.Element;
25
+ }
26
+ export {};
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { MediaFeatureFlags } from '@atlaskit/media-common';
3
+ import { WithAnalyticsEventsProps } from '@atlaskit/analytics-next';
4
+ export type MediaInlineAnalyticsErrorBoundaryProps = {
5
+ isSelected?: boolean;
6
+ data?: {
7
+ [k: string]: any;
8
+ };
9
+ featureFlags?: MediaFeatureFlags;
10
+ } & WithAnalyticsEventsProps;
11
+ declare const MediaInlineAnalyticsErrorBoundary: React.ComponentType<MediaInlineAnalyticsErrorBoundaryProps & WithAnalyticsEventsProps>;
12
+ export default MediaInlineAnalyticsErrorBoundary;
@@ -0,0 +1,15 @@
1
+ import React, { FC } from 'react';
2
+ import { FileIdentifier, Identifier, MediaClient } from '@atlaskit/media-client';
3
+ import { WrappedComponentProps } from 'react-intl-next';
4
+ import { InlineCardOnClickCallback } from '../types';
5
+ export interface MediaInlineCardProps {
6
+ identifier: FileIdentifier;
7
+ mediaClient: MediaClient;
8
+ shouldOpenMediaViewer?: boolean;
9
+ shouldDisplayToolTip?: boolean;
10
+ isSelected?: boolean;
11
+ onClick?: InlineCardOnClickCallback;
12
+ mediaViewerItems?: Identifier[];
13
+ }
14
+ export declare const MediaInlineCardInternal: FC<MediaInlineCardProps & WrappedComponentProps>;
15
+ export declare const MediaInlineCard: React.FC<MediaInlineCardProps>;
@@ -0,0 +1,6 @@
1
+ import { FileState } from '@atlaskit/media-client';
2
+ import { RenderInlineCardFailedEventPayload, RenderInlineCardSucceededEventPayload } from '../utils/analytics';
3
+ import { MediaCardError } from '../errors';
4
+ export declare const getSucceededStatusPayload: (fileState?: FileState) => RenderInlineCardSucceededEventPayload;
5
+ export declare const getErrorStatusPayload: (error: MediaCardError, fileState?: FileState) => RenderInlineCardFailedEventPayload;
6
+ export declare const getFailedProcessingStatusPayload: (fileState?: FileState) => RenderInlineCardFailedEventPayload;
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Entry Point: @atlaskit/media-card/types
3
+ * tsconfig.entry-points.json
4
+ */
5
+ import { MouseEvent } from 'react';
6
+ import { FileDetails, MediaClient, Identifier, ImageResizeMode, FileState } from '@atlaskit/media-client';
7
+ import { UIAnalyticsEvent } from '@atlaskit/analytics-next';
8
+ import { MediaFeatureFlags, NumericalCardDimensions, SSR } from '@atlaskit/media-common';
9
+ import { CardAction } from './card/actions';
10
+ import { MediaCardError } from './errors';
11
+ export type CardStatus = 'uploading' | 'loading' | 'processing' | 'loading-preview' | 'complete' | 'error' | 'failed-processing';
12
+ export type FilePreviewStatus = {
13
+ hasFilesize: boolean;
14
+ isPreviewable: boolean;
15
+ hasPreview: boolean;
16
+ isSupportedByBrowser: boolean;
17
+ };
18
+ export type FileStateFlags = {
19
+ wasStatusProcessing: boolean;
20
+ wasStatusUploading: boolean;
21
+ };
22
+ export type CardAppearance = 'auto' | 'image' | 'square' | 'horizontal';
23
+ export declare type CardDimensionValue = number | string;
24
+ export type CardPreviewSource = 'local' | 'remote' | 'ssr-server' | 'ssr-client' | 'ssr-data' | 'cache-local' | 'cache-remote' | 'cache-ssr-client' | 'cache-ssr-server' | 'external';
25
+ export interface CardPreview {
26
+ dataURI: string;
27
+ orientation?: number;
28
+ dimensions?: CardDimensions;
29
+ source: CardPreviewSource;
30
+ }
31
+ export declare enum MediaCardCursor {
32
+ Action = "pointer",
33
+ NotReady = "wait"
34
+ }
35
+ export interface CardDimensions {
36
+ width?: CardDimensionValue;
37
+ height?: CardDimensionValue;
38
+ }
39
+ export type TitleBoxIcon = 'LockFilledIcon';
40
+ export interface CardEvent {
41
+ event: MouseEvent<HTMLElement>;
42
+ mediaItemDetails?: FileDetails;
43
+ }
44
+ export interface InlineCardEvent {
45
+ event: MouseEvent<HTMLElement> | React.KeyboardEvent;
46
+ mediaItemDetails?: FileDetails;
47
+ }
48
+ export interface SharedCardProps {
49
+ readonly disableOverlay?: boolean;
50
+ readonly resizeMode?: ImageResizeMode;
51
+ readonly featureFlags?: MediaFeatureFlags;
52
+ readonly appearance?: CardAppearance;
53
+ readonly dimensions?: CardDimensions;
54
+ readonly originalDimensions?: NumericalCardDimensions;
55
+ readonly actions?: Array<CardAction>;
56
+ readonly selectable?: boolean;
57
+ readonly selected?: boolean;
58
+ readonly alt?: string;
59
+ readonly testId?: string;
60
+ readonly titleBoxBgColor?: string;
61
+ readonly titleBoxIcon?: TitleBoxIcon;
62
+ }
63
+ export interface CardOnClickCallback {
64
+ (result: CardEvent, analyticsEvent?: UIAnalyticsEvent): void;
65
+ }
66
+ export interface InlineCardOnClickCallback {
67
+ (result: InlineCardEvent, analyticsEvent?: UIAnalyticsEvent): void;
68
+ }
69
+ export interface CardEventProps {
70
+ readonly onClick?: CardOnClickCallback;
71
+ readonly onMouseEnter?: (result: CardEvent) => void;
72
+ /** Callback function to be called when video enters and exit fullscreen.
73
+ * `fullscreen = true` indicates video enters fullscreen
74
+ * `fullscreen = false` indicates video exits fullscreen
75
+ */
76
+ readonly onFullscreenChange?: (fullscreen: boolean) => void;
77
+ }
78
+ export interface CardProps extends SharedCardProps, CardEventProps {
79
+ readonly mediaClient: MediaClient;
80
+ readonly identifier: Identifier;
81
+ readonly isLazy?: boolean;
82
+ readonly useInlinePlayer?: boolean;
83
+ readonly shouldOpenMediaViewer?: boolean;
84
+ readonly mediaViewerItems?: Identifier[];
85
+ readonly contextId?: string;
86
+ readonly shouldEnableDownloadButton?: boolean;
87
+ readonly ssr?: SSR;
88
+ readonly shouldHideTooltip?: boolean;
89
+ }
90
+ export interface CardState {
91
+ status: CardStatus;
92
+ isCardVisible: boolean;
93
+ shouldAutoplay?: boolean;
94
+ isPlayingFile: boolean;
95
+ mediaViewerSelectedItem?: Identifier;
96
+ fileState?: FileState;
97
+ progress?: number;
98
+ cardPreview?: CardPreview;
99
+ error?: MediaCardError;
100
+ cardRef: HTMLDivElement | null;
101
+ isBannedLocalPreview: boolean;
102
+ previewDidRender: boolean;
103
+ wasResolvedUpfrontPreview: boolean;
104
+ shouldUpdateStateForIdentifier?: boolean;
105
+ }