@atlaskit/media-client 33.3.1 → 33.4.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.
File without changes
@@ -9,7 +9,7 @@ import { type MediaSubscribable } from '../../utils/mediaSubscribable';
9
9
  import { type Dimensions } from '../../utils/getDimensionsFromBlob';
10
10
  import { type MediaTraceContext } from '@atlaskit/media-common';
11
11
  import { type FilePreview, type FileState, type MediaStore } from '@atlaskit/media-state';
12
- import { type UploadArtifactParams } from '../media-store/types';
12
+ import { type UploadArtifactParams, type DeleteArtifactParams } from '../media-store/types';
13
13
  export type { FileFetcherErrorAttributes, FileFetcherErrorReason } from './error';
14
14
  export { isFileFetcherError, FileFetcherError } from './error';
15
15
  export interface CopySourceFile {
@@ -42,6 +42,7 @@ export interface FileFetcher {
42
42
  getFileBinaryURL(id: string, collectionName?: string, maxAge?: number): Promise<string>;
43
43
  registerCopyIntent(id: string, collectionName?: string): Promise<void>;
44
44
  uploadArtifact(id: string, file: File, params: UploadArtifactParams, collectionName?: string, traceContext?: MediaTraceContext): Promise<MediaItemDetails>;
45
+ deleteArtifact(id: string, params: DeleteArtifactParams, collectionName?: string, traceContext?: MediaTraceContext): Promise<void>;
45
46
  /** @exprimental This is exprimental for the purposes of COMMIT-18082 and is prone to breaking changes */
46
47
  getVideoDurations(files: Array<{
47
48
  id: string;
@@ -74,6 +75,7 @@ export declare class FileFetcherImpl implements FileFetcher {
74
75
  private copyFileWithIntent;
75
76
  copyFile(source: CopySourceFile, destination: CopyDestination, options?: CopyFileOptions, traceContext?: MediaTraceContext): Promise<MediaFile>;
76
77
  uploadArtifact: FileFetcher['uploadArtifact'];
78
+ deleteArtifact: FileFetcher['deleteArtifact'];
77
79
  private getOrFetchFileState;
78
80
  private getDurationOfVideo;
79
81
  getVideoDurations: (files: Array<{
@@ -4,6 +4,7 @@ import { type MediaFileArtifacts } from '@atlaskit/media-state';
4
4
  import type { ItemsPayload, ImageMetadata, MediaStoreResponse, MediaStoreTouchFileParams, TouchFileDescriptor, MediaStoreTouchFileBody, RejectedTouchFile, MediaStoreRequestOptions, MediaStoreCreateFileFromUploadParams, MediaStoreCreateFileFromUploadBody, MediaStoreGetFileParams, MediaStoreGetFileImageParams, MediaStoreCopyFileWithTokenBody, MediaStoreCopyFileWithTokenParams, AppendChunksToUploadRequestBody, TouchedFiles, MediaApi, CopyFileParams } from './types';
5
5
  import { type MediaFile, type MediaUpload } from '../../models/media';
6
6
  import { ChunkHashAlgorithm } from '@atlaskit/media-core';
7
+ import { GetDocumentPageImage, type DocumentPageRangeContent, type GetDocumentContentOptions } from '../../models/document';
7
8
  export declare class MediaStore implements MediaApi {
8
9
  private readonly config;
9
10
  private readonly _chunkHashAlgorithm;
@@ -23,11 +24,14 @@ export declare class MediaStore implements MediaApi {
23
24
  getArtifactURL(artifacts: MediaFileArtifacts, artifactName: keyof MediaFileArtifacts, collectionName?: string, maxAge?: number): Promise<string>;
24
25
  getArtifactBinary: MediaApi['getArtifactBinary'];
25
26
  uploadArtifact: MediaApi['uploadArtifact'];
27
+ deleteArtifact: MediaApi['deleteArtifact'];
26
28
  getImage(id: string, params?: MediaStoreGetFileImageParams, controller?: AbortController, fetchMaxRes?: boolean, traceContext?: MediaTraceContext): Promise<Blob>;
27
29
  getItems(ids: string[], collectionName?: string, traceContext?: MediaTraceContext, includeHashForDuplicateFiles?: boolean): Promise<MediaStoreResponse<ItemsPayload>>;
28
30
  getImageMetadata(id: string, params?: MediaStoreGetFileImageParams, traceContext?: MediaTraceContext): Promise<{
29
31
  metadata: ImageMetadata;
30
32
  }>;
33
+ getDocumentContent(id: string, options: GetDocumentContentOptions): Promise<DocumentPageRangeContent>;
34
+ getDocumentPageImage(id: string, options: GetDocumentPageImage): Promise<Blob>;
31
35
  appendChunksToUpload(uploadId: string, body: AppendChunksToUploadRequestBody, collectionName?: string, traceContext?: MediaTraceContext): Promise<void>;
32
36
  copyFileWithToken(body: MediaStoreCopyFileWithTokenBody, params: MediaStoreCopyFileWithTokenParams, traceContext?: MediaTraceContext): Promise<MediaStoreResponse<MediaFile>>;
33
37
  copyFile(id: string, params: CopyFileParams, traceContext?: MediaTraceContext): Promise<MediaStoreResponse<MediaFile>>;
@@ -4,6 +4,7 @@ import { type MediaFileArtifacts } from '@atlaskit/media-state';
4
4
  import { type MediaItemDetails, type MediaFile, type MediaUpload } from '../../models/media';
5
5
  import { type ClientOptions, type RequestHeaders, type RequestMethod, type RequestParams, type RequestMetadata } from '../../utils/request/types';
6
6
  import { type ChunkHashAlgorithm } from '@atlaskit/media-core';
7
+ import { type DocumentPageRangeContent, type GetDocumentPageImage, type GetDocumentContentOptions } from '../../models/document';
7
8
  export interface ResponseFileItem {
8
9
  id: string;
9
10
  type: 'file';
@@ -163,6 +164,9 @@ export type UploadArtifactCaptionsParams = {
163
164
  language: string;
164
165
  };
165
166
  export type UploadArtifactParams = UploadArtifactCaptionsParams;
167
+ export type DeleteArtifactParams = {
168
+ artifactName: string;
169
+ };
166
170
  export interface MediaApi {
167
171
  removeCollectionFile: (id: string, collectionName: string, occurrenceKey?: string, traceContext?: MediaTraceContext) => Promise<void>;
168
172
  createUpload: (createUpTo: number, collectionName?: string, traceContext?: MediaTraceContext, chunkChunkHashAlgorithm?: ChunkHashAlgorithm) => Promise<MediaStoreResponse<MediaUpload[]>>;
@@ -178,6 +182,7 @@ export interface MediaApi {
178
182
  getArtifactURL: (artifacts: MediaFileArtifacts, artifactName: keyof MediaFileArtifacts, collectionName?: string) => Promise<string>;
179
183
  getArtifactBinary(artifacts: MediaFileArtifacts, artifactName: keyof MediaFileArtifacts, options: GetArtifactBinaryOptions): Promise<Blob>;
180
184
  uploadArtifact(id: string, file: File, params: UploadArtifactParams, collectionName?: string, traceContext?: MediaTraceContext): Promise<MediaStoreResponse<MediaItemDetails>>;
185
+ deleteArtifact(id: string, params: DeleteArtifactParams, collectionName?: string, traceContext?: MediaTraceContext): Promise<void>;
181
186
  getImage: (id: string, params?: MediaStoreGetFileImageParams, controller?: AbortController, fetchMaxRes?: boolean, traceContext?: MediaTraceContext) => Promise<Blob>;
182
187
  getItems: (ids: string[], collectionName?: string, traceContext?: MediaTraceContext, includeHashForDuplicateFiles?: boolean) => Promise<MediaStoreResponse<ItemsPayload>>;
183
188
  getImageMetadata: (id: string, params?: MediaStoreGetFileImageParams, traceContext?: MediaTraceContext) => Promise<{
@@ -196,4 +201,8 @@ export interface MediaApi {
196
201
  }) => Promise<void>;
197
202
  resolveAuth: (authContext?: AuthContext) => Promise<Auth>;
198
203
  resolveInitialAuth: () => Auth;
204
+ /** @exprimental This is exprimental for the purposes of enabling the document viewer and not ready for external use, it is prone to breaking changes */
205
+ getDocumentContent(id: string, options: GetDocumentContentOptions): Promise<DocumentPageRangeContent>;
206
+ /** @exprimental This is exprimental for the purposes of enabling the document viewer and not ready for external use, it is prone to breaking changes */
207
+ getDocumentPageImage(id: string, options: GetDocumentPageImage): Promise<Blob>;
199
208
  }
@@ -0,0 +1,54 @@
1
+ export type Font = {
2
+ name: string;
3
+ size: number;
4
+ weight: number;
5
+ is_all_caps: boolean;
6
+ is_bold_reenforced: boolean;
7
+ is_cursive: boolean;
8
+ is_fixed_pitch: boolean;
9
+ is_italic: boolean;
10
+ is_non_symbolic: boolean;
11
+ is_proportional_pitch: boolean;
12
+ is_sans_serif: boolean;
13
+ is_serif: boolean;
14
+ is_small_caps: boolean;
15
+ is_symbolic: boolean;
16
+ };
17
+ export type Span = {
18
+ text: string;
19
+ fi: number;
20
+ r: number;
21
+ x: number;
22
+ y: number;
23
+ h: number;
24
+ l: number;
25
+ };
26
+ export type Line = {
27
+ r: number;
28
+ spans: readonly Span[];
29
+ };
30
+ export type DocumentPageContent = {
31
+ rotation: number;
32
+ width: number;
33
+ height: number;
34
+ lines: readonly Line[];
35
+ };
36
+ export type DocumentPageRangeContent = {
37
+ total_pages: number;
38
+ start_index: number;
39
+ end_index: number;
40
+ fonts: readonly Font[];
41
+ pages: readonly DocumentPageContent[];
42
+ };
43
+ export type GetDocumentContentOptions = {
44
+ pageStart: number;
45
+ pageEnd: number;
46
+ collectionName?: string;
47
+ maxAge?: number;
48
+ };
49
+ export type GetDocumentPageImage = {
50
+ page: number;
51
+ zoom: number;
52
+ collectionName?: string;
53
+ maxAge?: number;
54
+ };
@@ -9,7 +9,7 @@ import { type MediaSubscribable } from '../../utils/mediaSubscribable';
9
9
  import { type Dimensions } from '../../utils/getDimensionsFromBlob';
10
10
  import { type MediaTraceContext } from '@atlaskit/media-common';
11
11
  import { type FilePreview, type FileState, type MediaStore } from '@atlaskit/media-state';
12
- import { type UploadArtifactParams } from '../media-store/types';
12
+ import { type UploadArtifactParams, type DeleteArtifactParams } from '../media-store/types';
13
13
  export type { FileFetcherErrorAttributes, FileFetcherErrorReason } from './error';
14
14
  export { isFileFetcherError, FileFetcherError } from './error';
15
15
  export interface CopySourceFile {
@@ -42,6 +42,7 @@ export interface FileFetcher {
42
42
  getFileBinaryURL(id: string, collectionName?: string, maxAge?: number): Promise<string>;
43
43
  registerCopyIntent(id: string, collectionName?: string): Promise<void>;
44
44
  uploadArtifact(id: string, file: File, params: UploadArtifactParams, collectionName?: string, traceContext?: MediaTraceContext): Promise<MediaItemDetails>;
45
+ deleteArtifact(id: string, params: DeleteArtifactParams, collectionName?: string, traceContext?: MediaTraceContext): Promise<void>;
45
46
  /** @exprimental This is exprimental for the purposes of COMMIT-18082 and is prone to breaking changes */
46
47
  getVideoDurations(files: Array<{
47
48
  id: string;
@@ -74,6 +75,7 @@ export declare class FileFetcherImpl implements FileFetcher {
74
75
  private copyFileWithIntent;
75
76
  copyFile(source: CopySourceFile, destination: CopyDestination, options?: CopyFileOptions, traceContext?: MediaTraceContext): Promise<MediaFile>;
76
77
  uploadArtifact: FileFetcher['uploadArtifact'];
78
+ deleteArtifact: FileFetcher['deleteArtifact'];
77
79
  private getOrFetchFileState;
78
80
  private getDurationOfVideo;
79
81
  getVideoDurations: (files: Array<{
@@ -4,6 +4,7 @@ import { type MediaFileArtifacts } from '@atlaskit/media-state';
4
4
  import type { ItemsPayload, ImageMetadata, MediaStoreResponse, MediaStoreTouchFileParams, TouchFileDescriptor, MediaStoreTouchFileBody, RejectedTouchFile, MediaStoreRequestOptions, MediaStoreCreateFileFromUploadParams, MediaStoreCreateFileFromUploadBody, MediaStoreGetFileParams, MediaStoreGetFileImageParams, MediaStoreCopyFileWithTokenBody, MediaStoreCopyFileWithTokenParams, AppendChunksToUploadRequestBody, TouchedFiles, MediaApi, CopyFileParams } from './types';
5
5
  import { type MediaFile, type MediaUpload } from '../../models/media';
6
6
  import { ChunkHashAlgorithm } from '@atlaskit/media-core';
7
+ import { GetDocumentPageImage, type DocumentPageRangeContent, type GetDocumentContentOptions } from '../../models/document';
7
8
  export declare class MediaStore implements MediaApi {
8
9
  private readonly config;
9
10
  private readonly _chunkHashAlgorithm;
@@ -23,11 +24,14 @@ export declare class MediaStore implements MediaApi {
23
24
  getArtifactURL(artifacts: MediaFileArtifacts, artifactName: keyof MediaFileArtifacts, collectionName?: string, maxAge?: number): Promise<string>;
24
25
  getArtifactBinary: MediaApi['getArtifactBinary'];
25
26
  uploadArtifact: MediaApi['uploadArtifact'];
27
+ deleteArtifact: MediaApi['deleteArtifact'];
26
28
  getImage(id: string, params?: MediaStoreGetFileImageParams, controller?: AbortController, fetchMaxRes?: boolean, traceContext?: MediaTraceContext): Promise<Blob>;
27
29
  getItems(ids: string[], collectionName?: string, traceContext?: MediaTraceContext, includeHashForDuplicateFiles?: boolean): Promise<MediaStoreResponse<ItemsPayload>>;
28
30
  getImageMetadata(id: string, params?: MediaStoreGetFileImageParams, traceContext?: MediaTraceContext): Promise<{
29
31
  metadata: ImageMetadata;
30
32
  }>;
33
+ getDocumentContent(id: string, options: GetDocumentContentOptions): Promise<DocumentPageRangeContent>;
34
+ getDocumentPageImage(id: string, options: GetDocumentPageImage): Promise<Blob>;
31
35
  appendChunksToUpload(uploadId: string, body: AppendChunksToUploadRequestBody, collectionName?: string, traceContext?: MediaTraceContext): Promise<void>;
32
36
  copyFileWithToken(body: MediaStoreCopyFileWithTokenBody, params: MediaStoreCopyFileWithTokenParams, traceContext?: MediaTraceContext): Promise<MediaStoreResponse<MediaFile>>;
33
37
  copyFile(id: string, params: CopyFileParams, traceContext?: MediaTraceContext): Promise<MediaStoreResponse<MediaFile>>;
@@ -4,6 +4,7 @@ import { type MediaFileArtifacts } from '@atlaskit/media-state';
4
4
  import { type MediaItemDetails, type MediaFile, type MediaUpload } from '../../models/media';
5
5
  import { type ClientOptions, type RequestHeaders, type RequestMethod, type RequestParams, type RequestMetadata } from '../../utils/request/types';
6
6
  import { type ChunkHashAlgorithm } from '@atlaskit/media-core';
7
+ import { type DocumentPageRangeContent, type GetDocumentPageImage, type GetDocumentContentOptions } from '../../models/document';
7
8
  export interface ResponseFileItem {
8
9
  id: string;
9
10
  type: 'file';
@@ -163,6 +164,9 @@ export type UploadArtifactCaptionsParams = {
163
164
  language: string;
164
165
  };
165
166
  export type UploadArtifactParams = UploadArtifactCaptionsParams;
167
+ export type DeleteArtifactParams = {
168
+ artifactName: string;
169
+ };
166
170
  export interface MediaApi {
167
171
  removeCollectionFile: (id: string, collectionName: string, occurrenceKey?: string, traceContext?: MediaTraceContext) => Promise<void>;
168
172
  createUpload: (createUpTo: number, collectionName?: string, traceContext?: MediaTraceContext, chunkChunkHashAlgorithm?: ChunkHashAlgorithm) => Promise<MediaStoreResponse<MediaUpload[]>>;
@@ -178,6 +182,7 @@ export interface MediaApi {
178
182
  getArtifactURL: (artifacts: MediaFileArtifacts, artifactName: keyof MediaFileArtifacts, collectionName?: string) => Promise<string>;
179
183
  getArtifactBinary(artifacts: MediaFileArtifacts, artifactName: keyof MediaFileArtifacts, options: GetArtifactBinaryOptions): Promise<Blob>;
180
184
  uploadArtifact(id: string, file: File, params: UploadArtifactParams, collectionName?: string, traceContext?: MediaTraceContext): Promise<MediaStoreResponse<MediaItemDetails>>;
185
+ deleteArtifact(id: string, params: DeleteArtifactParams, collectionName?: string, traceContext?: MediaTraceContext): Promise<void>;
181
186
  getImage: (id: string, params?: MediaStoreGetFileImageParams, controller?: AbortController, fetchMaxRes?: boolean, traceContext?: MediaTraceContext) => Promise<Blob>;
182
187
  getItems: (ids: string[], collectionName?: string, traceContext?: MediaTraceContext, includeHashForDuplicateFiles?: boolean) => Promise<MediaStoreResponse<ItemsPayload>>;
183
188
  getImageMetadata: (id: string, params?: MediaStoreGetFileImageParams, traceContext?: MediaTraceContext) => Promise<{
@@ -196,4 +201,8 @@ export interface MediaApi {
196
201
  }) => Promise<void>;
197
202
  resolveAuth: (authContext?: AuthContext) => Promise<Auth>;
198
203
  resolveInitialAuth: () => Auth;
204
+ /** @exprimental This is exprimental for the purposes of enabling the document viewer and not ready for external use, it is prone to breaking changes */
205
+ getDocumentContent(id: string, options: GetDocumentContentOptions): Promise<DocumentPageRangeContent>;
206
+ /** @exprimental This is exprimental for the purposes of enabling the document viewer and not ready for external use, it is prone to breaking changes */
207
+ getDocumentPageImage(id: string, options: GetDocumentPageImage): Promise<Blob>;
199
208
  }
@@ -0,0 +1,54 @@
1
+ export type Font = {
2
+ name: string;
3
+ size: number;
4
+ weight: number;
5
+ is_all_caps: boolean;
6
+ is_bold_reenforced: boolean;
7
+ is_cursive: boolean;
8
+ is_fixed_pitch: boolean;
9
+ is_italic: boolean;
10
+ is_non_symbolic: boolean;
11
+ is_proportional_pitch: boolean;
12
+ is_sans_serif: boolean;
13
+ is_serif: boolean;
14
+ is_small_caps: boolean;
15
+ is_symbolic: boolean;
16
+ };
17
+ export type Span = {
18
+ text: string;
19
+ fi: number;
20
+ r: number;
21
+ x: number;
22
+ y: number;
23
+ h: number;
24
+ l: number;
25
+ };
26
+ export type Line = {
27
+ r: number;
28
+ spans: readonly Span[];
29
+ };
30
+ export type DocumentPageContent = {
31
+ rotation: number;
32
+ width: number;
33
+ height: number;
34
+ lines: readonly Line[];
35
+ };
36
+ export type DocumentPageRangeContent = {
37
+ total_pages: number;
38
+ start_index: number;
39
+ end_index: number;
40
+ fonts: readonly Font[];
41
+ pages: readonly DocumentPageContent[];
42
+ };
43
+ export type GetDocumentContentOptions = {
44
+ pageStart: number;
45
+ pageEnd: number;
46
+ collectionName?: string;
47
+ maxAge?: number;
48
+ };
49
+ export type GetDocumentPageImage = {
50
+ page: number;
51
+ zoom: number;
52
+ collectionName?: string;
53
+ maxAge?: number;
54
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/media-client",
3
- "version": "33.3.1",
3
+ "version": "33.4.0",
4
4
  "description": "Media API Web Client Library",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -57,7 +57,7 @@
57
57
  "@atlaskit/media-core": "^36.1.0",
58
58
  "@atlaskit/media-state": "^1.6.0",
59
59
  "@atlaskit/ssr": "workspace:^",
60
- "@atlaskit/tokens": "^4.9.0",
60
+ "@atlaskit/tokens": "^5.1.0",
61
61
  "@atlassian/feature-flags-test-utils": "^0.3.0",
62
62
  "@emotion/react": "^11.7.1",
63
63
  "@types/deep-equal": "^1.0.1",