@chayns-components/core 5.5.45 → 5.5.51

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.
@@ -5,9 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.postImage = void 0;
7
7
  var _chaynsApi = require("chayns-api");
8
- const IMAGE_SERVICE_API_V3_URL = 'https://cube.tobit.cloud/image-service/v3/Images';
9
- const IMAGE_RESIZER_API_URL = 'https://cube.tobit.cloud/image-resizer-backend/api/v1.0/image';
10
-
8
+ var _uploadUrls = require("../../constants/uploadUrls");
11
9
  /**
12
10
  * Uploads an image to the tsimg cloud service
13
11
  */
@@ -28,7 +26,7 @@ const postImage = async ({
28
26
 
29
27
  const body = new FormData();
30
28
  body.append('File', file);
31
- const url = file.size > 10 * 1024 * 1024 ? `${IMAGE_RESIZER_API_URL}/${shouldUploadImageToSite ? site.id : user.personId}` : `${IMAGE_SERVICE_API_V3_URL}/${shouldUploadImageToSite ? site.id : user.personId}`;
29
+ const url = file.size > 10 * 1024 * 1024 ? `${_uploadUrls.IMAGE_RESIZER_API_URL}/${shouldUploadImageToSite ? site.id : user.personId}` : `${_uploadUrls.IMAGE_SERVICE_API_V3_URL}/${shouldUploadImageToSite ? site.id : user.personId}`;
32
30
  const response = await fetch(url, {
33
31
  body,
34
32
  headers: {
@@ -1 +1 @@
1
- {"version":3,"file":"post.js","names":["_chaynsApi","require","IMAGE_SERVICE_API_V3_URL","IMAGE_RESIZER_API_URL","postImage","file","shouldUploadImageToSite","accessToken","getAccessToken","user","getUser","site","getSite","personId","undefined","body","FormData","append","url","size","id","response","fetch","headers","Accept","Authorization","method","ok","image","baseDomain","json","key","path","base","endsWith","slice","meta","preview","width","String","height","Error","status","exports"],"sources":["../../../../src/api/image/post.ts"],"sourcesContent":["import { getAccessToken, getSite, getUser } from 'chayns-api';\nimport type { Meta } from '../../types/file';\n\nexport interface PostImageResult {\n key: string;\n base: string;\n meta?: Meta;\n}\n\ninterface Result {\n requestId: string;\n image: Image;\n baseDomain: string;\n signature: Signature;\n}\n\nexport interface Image {\n path: string;\n width: number;\n height: number;\n size: number;\n hash: string;\n preview: string;\n isSecured: boolean;\n format: string;\n fileExtension: string;\n}\n\nexport interface Signature {\n verify: string;\n signature: string;\n expires: Date;\n}\n\ninterface PostImageOptions {\n file: File;\n shouldUploadImageToSite?: boolean;\n}\n\nconst IMAGE_SERVICE_API_V3_URL = 'https://cube.tobit.cloud/image-service/v3/Images';\nconst IMAGE_RESIZER_API_URL = 'https://cube.tobit.cloud/image-resizer-backend/api/v1.0/image';\n\n/**\n * Uploads an image to the tsimg cloud service\n */\nexport const postImage = async ({\n file,\n shouldUploadImageToSite,\n}: PostImageOptions): Promise<PostImageResult | undefined> => {\n const { accessToken } = await getAccessToken();\n const user = getUser();\n const site = getSite();\n\n if (!accessToken || !user?.personId) {\n return undefined;\n }\n\n // const body = await getFileAsArrayBuffer(file);\n\n const body = new FormData();\n\n body.append('File', file);\n\n const url =\n file.size > 10 * 1024 * 1024\n ? `${IMAGE_RESIZER_API_URL}/${shouldUploadImageToSite ? site.id : user.personId}`\n : `${IMAGE_SERVICE_API_V3_URL}/${shouldUploadImageToSite ? site.id : user.personId}`;\n\n const response = await fetch(url, {\n body,\n headers: {\n Accept: 'application/json',\n Authorization: `bearer ${accessToken}`,\n },\n method: 'POST',\n });\n\n if (response.ok) {\n const { image, baseDomain } = (await response.json()) as Result;\n // Maps image-service-api-v3 result to v2 result.\n return {\n key: image.path,\n // Removes trailing slash from baseDomain, since image-service-api-v2 doesn't have a trailing slash on base.\n base: baseDomain.endsWith('/') ? baseDomain.slice(0, -1) : baseDomain,\n meta: {\n preview: image.preview,\n width: String(image.width),\n height: String(image.height),\n },\n };\n }\n\n throw Error(`Failed to POST image (status code: ${response.status}).`);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAuCA,MAAMC,wBAAwB,GAAG,kDAAkD;AACnF,MAAMC,qBAAqB,GAAG,+DAA+D;;AAE7F;AACA;AACA;AACO,MAAMC,SAAS,GAAG,MAAAA,CAAO;EAC5BC,IAAI;EACJC;AACc,CAAC,KAA2C;EAC1D,MAAM;IAAEC;EAAY,CAAC,GAAG,MAAM,IAAAC,yBAAc,EAAC,CAAC;EAC9C,MAAMC,IAAI,GAAG,IAAAC,kBAAO,EAAC,CAAC;EACtB,MAAMC,IAAI,GAAG,IAAAC,kBAAO,EAAC,CAAC;EAEtB,IAAI,CAACL,WAAW,IAAI,EAACE,IAAI,aAAJA,IAAI,eAAJA,IAAI,CAAEI,QAAQ,GAAE;IACjC,OAAOC,SAAS;EACpB;;EAEA;;EAEA,MAAMC,IAAI,GAAG,IAAIC,QAAQ,CAAC,CAAC;EAE3BD,IAAI,CAACE,MAAM,CAAC,MAAM,EAAEZ,IAAI,CAAC;EAEzB,MAAMa,GAAG,GACLb,IAAI,CAACc,IAAI,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,GACtB,GAAGhB,qBAAqB,IAAIG,uBAAuB,GAAGK,IAAI,CAACS,EAAE,GAAGX,IAAI,CAACI,QAAQ,EAAE,GAC/E,GAAGX,wBAAwB,IAAII,uBAAuB,GAAGK,IAAI,CAACS,EAAE,GAAGX,IAAI,CAACI,QAAQ,EAAE;EAE5F,MAAMQ,QAAQ,GAAG,MAAMC,KAAK,CAACJ,GAAG,EAAE;IAC9BH,IAAI;IACJQ,OAAO,EAAE;MACLC,MAAM,EAAE,kBAAkB;MAC1BC,aAAa,EAAE,UAAUlB,WAAW;IACxC,CAAC;IACDmB,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,IAAIL,QAAQ,CAACM,EAAE,EAAE;IACb,MAAM;MAAEC,KAAK;MAAEC;IAAW,CAAC,GAAI,MAAMR,QAAQ,CAACS,IAAI,CAAC,CAAY;IAC/D;IACA,OAAO;MACHC,GAAG,EAAEH,KAAK,CAACI,IAAI;MACf;MACAC,IAAI,EAAEJ,UAAU,CAACK,QAAQ,CAAC,GAAG,CAAC,GAAGL,UAAU,CAACM,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAGN,UAAU;MACrEO,IAAI,EAAE;QACFC,OAAO,EAAET,KAAK,CAACS,OAAO;QACtBC,KAAK,EAAEC,MAAM,CAACX,KAAK,CAACU,KAAK,CAAC;QAC1BE,MAAM,EAAED,MAAM,CAACX,KAAK,CAACY,MAAM;MAC/B;IACJ,CAAC;EACL;EAEA,MAAMC,KAAK,CAAC,sCAAsCpB,QAAQ,CAACqB,MAAM,IAAI,CAAC;AAC1E,CAAC;AAACC,OAAA,CAAAvC,SAAA,GAAAA,SAAA","ignoreList":[]}
1
+ {"version":3,"file":"post.js","names":["_chaynsApi","require","_uploadUrls","postImage","file","shouldUploadImageToSite","accessToken","getAccessToken","user","getUser","site","getSite","personId","undefined","body","FormData","append","url","size","IMAGE_RESIZER_API_URL","id","IMAGE_SERVICE_API_V3_URL","response","fetch","headers","Accept","Authorization","method","ok","image","baseDomain","json","key","path","base","endsWith","slice","meta","preview","width","String","height","Error","status","exports"],"sources":["../../../../src/api/image/post.ts"],"sourcesContent":["import { getAccessToken, getSite, getUser } from 'chayns-api';\nimport { IMAGE_RESIZER_API_URL, IMAGE_SERVICE_API_V3_URL } from '../../constants/uploadUrls';\nimport type { Meta } from '../../types/file';\n\nexport interface PostImageResult {\n key: string;\n base: string;\n meta?: Meta;\n}\n\ninterface Result {\n requestId: string;\n image: Image;\n baseDomain: string;\n signature: Signature;\n}\n\nexport interface Image {\n path: string;\n width: number;\n height: number;\n size: number;\n hash: string;\n preview: string;\n isSecured: boolean;\n format: string;\n fileExtension: string;\n}\n\nexport interface Signature {\n verify: string;\n signature: string;\n expires: Date;\n}\n\ninterface PostImageOptions {\n file: File;\n shouldUploadImageToSite?: boolean;\n}\n\n/**\n * Uploads an image to the tsimg cloud service\n */\nexport const postImage = async ({\n file,\n shouldUploadImageToSite,\n}: PostImageOptions): Promise<PostImageResult | undefined> => {\n const { accessToken } = await getAccessToken();\n const user = getUser();\n const site = getSite();\n\n if (!accessToken || !user?.personId) {\n return undefined;\n }\n\n // const body = await getFileAsArrayBuffer(file);\n\n const body = new FormData();\n\n body.append('File', file);\n\n const url =\n file.size > 10 * 1024 * 1024\n ? `${IMAGE_RESIZER_API_URL}/${shouldUploadImageToSite ? site.id : user.personId}`\n : `${IMAGE_SERVICE_API_V3_URL}/${shouldUploadImageToSite ? site.id : user.personId}`;\n\n const response = await fetch(url, {\n body,\n headers: {\n Accept: 'application/json',\n Authorization: `bearer ${accessToken}`,\n },\n method: 'POST',\n });\n\n if (response.ok) {\n const { image, baseDomain } = (await response.json()) as Result;\n // Maps image-service-api-v3 result to v2 result.\n return {\n key: image.path,\n // Removes trailing slash from baseDomain, since image-service-api-v2 doesn't have a trailing slash on base.\n base: baseDomain.endsWith('/') ? baseDomain.slice(0, -1) : baseDomain,\n meta: {\n preview: image.preview,\n width: String(image.width),\n height: String(image.height),\n },\n };\n }\n\n throw Error(`Failed to POST image (status code: ${response.status}).`);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAuCA;AACA;AACA;AACO,MAAME,SAAS,GAAG,MAAAA,CAAO;EAC5BC,IAAI;EACJC;AACc,CAAC,KAA2C;EAC1D,MAAM;IAAEC;EAAY,CAAC,GAAG,MAAM,IAAAC,yBAAc,EAAC,CAAC;EAC9C,MAAMC,IAAI,GAAG,IAAAC,kBAAO,EAAC,CAAC;EACtB,MAAMC,IAAI,GAAG,IAAAC,kBAAO,EAAC,CAAC;EAEtB,IAAI,CAACL,WAAW,IAAI,EAACE,IAAI,aAAJA,IAAI,eAAJA,IAAI,CAAEI,QAAQ,GAAE;IACjC,OAAOC,SAAS;EACpB;;EAEA;;EAEA,MAAMC,IAAI,GAAG,IAAIC,QAAQ,CAAC,CAAC;EAE3BD,IAAI,CAACE,MAAM,CAAC,MAAM,EAAEZ,IAAI,CAAC;EAEzB,MAAMa,GAAG,GACLb,IAAI,CAACc,IAAI,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,GACtB,GAAGC,iCAAqB,IAAId,uBAAuB,GAAGK,IAAI,CAACU,EAAE,GAAGZ,IAAI,CAACI,QAAQ,EAAE,GAC/E,GAAGS,oCAAwB,IAAIhB,uBAAuB,GAAGK,IAAI,CAACU,EAAE,GAAGZ,IAAI,CAACI,QAAQ,EAAE;EAE5F,MAAMU,QAAQ,GAAG,MAAMC,KAAK,CAACN,GAAG,EAAE;IAC9BH,IAAI;IACJU,OAAO,EAAE;MACLC,MAAM,EAAE,kBAAkB;MAC1BC,aAAa,EAAE,UAAUpB,WAAW;IACxC,CAAC;IACDqB,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,IAAIL,QAAQ,CAACM,EAAE,EAAE;IACb,MAAM;MAAEC,KAAK;MAAEC;IAAW,CAAC,GAAI,MAAMR,QAAQ,CAACS,IAAI,CAAC,CAAY;IAC/D;IACA,OAAO;MACHC,GAAG,EAAEH,KAAK,CAACI,IAAI;MACf;MACAC,IAAI,EAAEJ,UAAU,CAACK,QAAQ,CAAC,GAAG,CAAC,GAAGL,UAAU,CAACM,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAGN,UAAU;MACrEO,IAAI,EAAE;QACFC,OAAO,EAAET,KAAK,CAACS,OAAO;QACtBC,KAAK,EAAEC,MAAM,CAACX,KAAK,CAACU,KAAK,CAAC;QAC1BE,MAAM,EAAED,MAAM,CAACX,KAAK,CAACY,MAAM;MAC/B;IACJ,CAAC;EACL;EAEA,MAAMC,KAAK,CAAC,sCAAsCpB,QAAQ,CAACqB,MAAM,IAAI,CAAC;AAC1E,CAAC;AAACC,OAAA,CAAAzC,SAAA,GAAAA,SAAA","ignoreList":[]}
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.postVideo = void 0;
7
7
  var _chaynsApi = require("chayns-api");
8
+ var _uploadUrls = require("../../constants/uploadUrls");
8
9
  /**
9
10
  * Uploads a video to the streaming service
10
11
  */
@@ -19,7 +20,7 @@ const postVideo = async ({
19
20
  }
20
21
  const formData = new FormData();
21
22
  formData.append('files', file);
22
- const response = await fetch('https://streamingservice.chayns.space/video?disableIntercom=true', {
23
+ const response = await fetch(`${_uploadUrls.VIDEO_SERVICE_URL}?disableIntercom=true`, {
23
24
  body: formData,
24
25
  headers: {
25
26
  Authorization: `bearer ${accessToken}`
@@ -1 +1 @@
1
- {"version":3,"file":"post.js","names":["_chaynsApi","require","postVideo","file","accessToken","getAccessToken","undefined","formData","FormData","append","response","fetch","body","headers","Authorization","method","ok","data","json","Error","status","exports"],"sources":["../../../../src/api/video/post.ts"],"sourcesContent":["import { getAccessToken } from 'chayns-api';\n\nexport interface PostVideoResult {\n id: string;\n originalVideoQuality: string;\n thumbnailUrl: string;\n url: string;\n urlMP4: string;\n}\n\ninterface PostVideoOptions {\n file: File | Blob;\n}\n\n/**\n * Uploads a video to the streaming service\n */\nexport const postVideo = async ({\n file,\n}: PostVideoOptions): Promise<PostVideoResult | undefined> => {\n const { accessToken } = await getAccessToken();\n\n if (!accessToken) {\n return undefined;\n }\n\n const formData = new FormData();\n\n formData.append('files', file);\n\n const response = await fetch(\n 'https://streamingservice.chayns.space/video?disableIntercom=true',\n {\n body: formData,\n headers: {\n Authorization: `bearer ${accessToken}`,\n },\n method: 'POST',\n },\n );\n\n if (response.ok) {\n const data = (await response.json()) as PostVideoResult[];\n\n return data[0];\n }\n\n throw Error(`Failed to POST video (status code: ${response.status}).`);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAcA;AACA;AACA;AACO,MAAMC,SAAS,GAAG,MAAAA,CAAO;EAC5BC;AACc,CAAC,KAA2C;EAC1D,MAAM;IAAEC;EAAY,CAAC,GAAG,MAAM,IAAAC,yBAAc,EAAC,CAAC;EAE9C,IAAI,CAACD,WAAW,EAAE;IACd,OAAOE,SAAS;EACpB;EAEA,MAAMC,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;EAE/BD,QAAQ,CAACE,MAAM,CAAC,OAAO,EAAEN,IAAI,CAAC;EAE9B,MAAMO,QAAQ,GAAG,MAAMC,KAAK,CACxB,kEAAkE,EAClE;IACIC,IAAI,EAAEL,QAAQ;IACdM,OAAO,EAAE;MACLC,aAAa,EAAE,UAAUV,WAAW;IACxC,CAAC;IACDW,MAAM,EAAE;EACZ,CACJ,CAAC;EAED,IAAIL,QAAQ,CAACM,EAAE,EAAE;IACb,MAAMC,IAAI,GAAI,MAAMP,QAAQ,CAACQ,IAAI,CAAC,CAAuB;IAEzD,OAAOD,IAAI,CAAC,CAAC,CAAC;EAClB;EAEA,MAAME,KAAK,CAAC,sCAAsCT,QAAQ,CAACU,MAAM,IAAI,CAAC;AAC1E,CAAC;AAACC,OAAA,CAAAnB,SAAA,GAAAA,SAAA","ignoreList":[]}
1
+ {"version":3,"file":"post.js","names":["_chaynsApi","require","_uploadUrls","postVideo","file","accessToken","getAccessToken","undefined","formData","FormData","append","response","fetch","VIDEO_SERVICE_URL","body","headers","Authorization","method","ok","data","json","Error","status","exports"],"sources":["../../../../src/api/video/post.ts"],"sourcesContent":["import { getAccessToken } from 'chayns-api';\nimport { VIDEO_SERVICE_URL } from '../../constants/uploadUrls';\n\nexport interface PostVideoResult {\n id: string;\n originalVideoQuality: string;\n thumbnailUrl: string;\n url: string;\n urlMP4: string;\n}\n\ninterface PostVideoOptions {\n file: File | Blob;\n}\n\n/**\n * Uploads a video to the streaming service\n */\nexport const postVideo = async ({\n file,\n}: PostVideoOptions): Promise<PostVideoResult | undefined> => {\n const { accessToken } = await getAccessToken();\n\n if (!accessToken) {\n return undefined;\n }\n\n const formData = new FormData();\n\n formData.append('files', file);\n\n const response = await fetch(`${VIDEO_SERVICE_URL}?disableIntercom=true`, {\n body: formData,\n headers: {\n Authorization: `bearer ${accessToken}`,\n },\n method: 'POST',\n });\n\n if (response.ok) {\n const data = (await response.json()) as PostVideoResult[];\n\n return data[0];\n }\n\n throw Error(`Failed to POST video (status code: ${response.status}).`);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAcA;AACA;AACA;AACO,MAAME,SAAS,GAAG,MAAAA,CAAO;EAC5BC;AACc,CAAC,KAA2C;EAC1D,MAAM;IAAEC;EAAY,CAAC,GAAG,MAAM,IAAAC,yBAAc,EAAC,CAAC;EAE9C,IAAI,CAACD,WAAW,EAAE;IACd,OAAOE,SAAS;EACpB;EAEA,MAAMC,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;EAE/BD,QAAQ,CAACE,MAAM,CAAC,OAAO,EAAEN,IAAI,CAAC;EAE9B,MAAMO,QAAQ,GAAG,MAAMC,KAAK,CAAC,GAAGC,6BAAiB,uBAAuB,EAAE;IACtEC,IAAI,EAAEN,QAAQ;IACdO,OAAO,EAAE;MACLC,aAAa,EAAE,UAAUX,WAAW;IACxC,CAAC;IACDY,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,IAAIN,QAAQ,CAACO,EAAE,EAAE;IACb,MAAMC,IAAI,GAAI,MAAMR,QAAQ,CAACS,IAAI,CAAC,CAAuB;IAEzD,OAAOD,IAAI,CAAC,CAAC,CAAC;EAClB;EAEA,MAAME,KAAK,CAAC,sCAAsCV,QAAQ,CAACW,MAAM,IAAI,CAAC;AAC1E,CAAC;AAACC,OAAA,CAAApB,SAAA,GAAAA,SAAA","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.VIDEO_SERVICE_URL = exports.IMAGE_SERVICE_API_V3_URL = exports.IMAGE_RESIZER_API_URL = void 0;
7
+ /**
8
+ * Reads an environment variable defensively so that accessing `process.env` does
9
+ * not throw a `ReferenceError` in browser environments where `process` is not
10
+ * defined. Returns `undefined` if the variable is not set or not accessible.
11
+ */
12
+ const readEnv = key => {
13
+ try {
14
+ if (typeof process !== 'undefined' && process.env) {
15
+ const value = process.env[key];
16
+ if (typeof value === 'string' && value.length > 0) {
17
+ return value;
18
+ }
19
+ }
20
+ } catch {
21
+ // Accessing `process` can throw in some sandboxed environments.
22
+ }
23
+ return undefined;
24
+ };
25
+
26
+ /**
27
+ * URL of the image service used to upload images.
28
+ *
29
+ * Can be overridden via the `CHAYNS_IMAGE_SERVICE_URL` environment variable
30
+ * (e.g. for OnPremise deployments with a self-hosted image service). Falls back
31
+ * to the default chayns image service when the variable is not defined.
32
+ */
33
+ const IMAGE_SERVICE_API_V3_URL = exports.IMAGE_SERVICE_API_V3_URL = readEnv('CHAYNS_IMAGE_SERVICE_URL') ?? 'https://cube.tobit.cloud/image-service/v3/Images';
34
+
35
+ /**
36
+ * URL of the image resizer service used to upload images larger than 10 MB.
37
+ *
38
+ * Can be overridden via the `CHAYNS_IMAGE_RESIZER_URL` environment variable
39
+ * (e.g. for OnPremise deployments with a self-hosted image service). Falls back
40
+ * to the default chayns image resizer when the variable is not defined.
41
+ */
42
+ const IMAGE_RESIZER_API_URL = exports.IMAGE_RESIZER_API_URL = readEnv('CHAYNS_IMAGE_RESIZER_URL') ?? 'https://cube.tobit.cloud/image-resizer-backend/api/v1.0/image';
43
+
44
+ /**
45
+ * URL of the streaming service used to upload videos.
46
+ *
47
+ * Can be overridden via the `CHAYNS_VIDEO_SERVICE_URL` environment variable
48
+ * (e.g. for OnPremise deployments with a self-hosted video service). Falls back
49
+ * to the default chayns streaming service when the variable is not defined.
50
+ */
51
+ const VIDEO_SERVICE_URL = exports.VIDEO_SERVICE_URL = readEnv('CHAYNS_VIDEO_SERVICE_URL') ?? 'https://streamingservice.chayns.space/video';
52
+ //# sourceMappingURL=uploadUrls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uploadUrls.js","names":["readEnv","key","process","env","value","length","undefined","IMAGE_SERVICE_API_V3_URL","exports","IMAGE_RESIZER_API_URL","VIDEO_SERVICE_URL"],"sources":["../../../src/constants/uploadUrls.ts"],"sourcesContent":["/**\n * Reads an environment variable defensively so that accessing `process.env` does\n * not throw a `ReferenceError` in browser environments where `process` is not\n * defined. Returns `undefined` if the variable is not set or not accessible.\n */\nconst readEnv = (key: string): string | undefined => {\n try {\n if (typeof process !== 'undefined' && process.env) {\n const value = process.env[key];\n\n if (typeof value === 'string' && value.length > 0) {\n return value;\n }\n }\n } catch {\n // Accessing `process` can throw in some sandboxed environments.\n }\n\n return undefined;\n};\n\n/**\n * URL of the image service used to upload images.\n *\n * Can be overridden via the `CHAYNS_IMAGE_SERVICE_URL` environment variable\n * (e.g. for OnPremise deployments with a self-hosted image service). Falls back\n * to the default chayns image service when the variable is not defined.\n */\nexport const IMAGE_SERVICE_API_V3_URL =\n readEnv('CHAYNS_IMAGE_SERVICE_URL') ?? 'https://cube.tobit.cloud/image-service/v3/Images';\n\n/**\n * URL of the image resizer service used to upload images larger than 10 MB.\n *\n * Can be overridden via the `CHAYNS_IMAGE_RESIZER_URL` environment variable\n * (e.g. for OnPremise deployments with a self-hosted image service). Falls back\n * to the default chayns image resizer when the variable is not defined.\n */\nexport const IMAGE_RESIZER_API_URL =\n readEnv('CHAYNS_IMAGE_RESIZER_URL') ??\n 'https://cube.tobit.cloud/image-resizer-backend/api/v1.0/image';\n\n/**\n * URL of the streaming service used to upload videos.\n *\n * Can be overridden via the `CHAYNS_VIDEO_SERVICE_URL` environment variable\n * (e.g. for OnPremise deployments with a self-hosted video service). Falls back\n * to the default chayns streaming service when the variable is not defined.\n */\nexport const VIDEO_SERVICE_URL =\n readEnv('CHAYNS_VIDEO_SERVICE_URL') ?? 'https://streamingservice.chayns.space/video';\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA,MAAMA,OAAO,GAAIC,GAAW,IAAyB;EACjD,IAAI;IACA,IAAI,OAAOC,OAAO,KAAK,WAAW,IAAIA,OAAO,CAACC,GAAG,EAAE;MAC/C,MAAMC,KAAK,GAAGF,OAAO,CAACC,GAAG,CAACF,GAAG,CAAC;MAE9B,IAAI,OAAOG,KAAK,KAAK,QAAQ,IAAIA,KAAK,CAACC,MAAM,GAAG,CAAC,EAAE;QAC/C,OAAOD,KAAK;MAChB;IACJ;EACJ,CAAC,CAAC,MAAM;IACJ;EAAA;EAGJ,OAAOE,SAAS;AACpB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,wBAAwB,GAAAC,OAAA,CAAAD,wBAAA,GACjCP,OAAO,CAAC,0BAA0B,CAAC,IAAI,kDAAkD;;AAE7F;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMS,qBAAqB,GAAAD,OAAA,CAAAC,qBAAA,GAC9BT,OAAO,CAAC,0BAA0B,CAAC,IACnC,+DAA+D;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMU,iBAAiB,GAAAF,OAAA,CAAAE,iBAAA,GAC1BV,OAAO,CAAC,0BAA0B,CAAC,IAAI,6CAA6C","ignoreList":[]}
@@ -1,7 +1,5 @@
1
1
  import { getAccessToken, getSite, getUser } from 'chayns-api';
2
- const IMAGE_SERVICE_API_V3_URL = 'https://cube.tobit.cloud/image-service/v3/Images';
3
- const IMAGE_RESIZER_API_URL = 'https://cube.tobit.cloud/image-resizer-backend/api/v1.0/image';
4
-
2
+ import { IMAGE_RESIZER_API_URL, IMAGE_SERVICE_API_V3_URL } from '../../constants/uploadUrls';
5
3
  /**
6
4
  * Uploads an image to the tsimg cloud service
7
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"post.js","names":["getAccessToken","getSite","getUser","IMAGE_SERVICE_API_V3_URL","IMAGE_RESIZER_API_URL","postImage","file","shouldUploadImageToSite","accessToken","user","site","personId","undefined","body","FormData","append","url","size","id","response","fetch","headers","Accept","Authorization","method","ok","image","baseDomain","json","key","path","base","endsWith","slice","meta","preview","width","String","height","Error","status"],"sources":["../../../../src/api/image/post.ts"],"sourcesContent":["import { getAccessToken, getSite, getUser } from 'chayns-api';\nimport type { Meta } from '../../types/file';\n\nexport interface PostImageResult {\n key: string;\n base: string;\n meta?: Meta;\n}\n\ninterface Result {\n requestId: string;\n image: Image;\n baseDomain: string;\n signature: Signature;\n}\n\nexport interface Image {\n path: string;\n width: number;\n height: number;\n size: number;\n hash: string;\n preview: string;\n isSecured: boolean;\n format: string;\n fileExtension: string;\n}\n\nexport interface Signature {\n verify: string;\n signature: string;\n expires: Date;\n}\n\ninterface PostImageOptions {\n file: File;\n shouldUploadImageToSite?: boolean;\n}\n\nconst IMAGE_SERVICE_API_V3_URL = 'https://cube.tobit.cloud/image-service/v3/Images';\nconst IMAGE_RESIZER_API_URL = 'https://cube.tobit.cloud/image-resizer-backend/api/v1.0/image';\n\n/**\n * Uploads an image to the tsimg cloud service\n */\nexport const postImage = async ({\n file,\n shouldUploadImageToSite,\n}: PostImageOptions): Promise<PostImageResult | undefined> => {\n const { accessToken } = await getAccessToken();\n const user = getUser();\n const site = getSite();\n\n if (!accessToken || !user?.personId) {\n return undefined;\n }\n\n // const body = await getFileAsArrayBuffer(file);\n\n const body = new FormData();\n\n body.append('File', file);\n\n const url =\n file.size > 10 * 1024 * 1024\n ? `${IMAGE_RESIZER_API_URL}/${shouldUploadImageToSite ? site.id : user.personId}`\n : `${IMAGE_SERVICE_API_V3_URL}/${shouldUploadImageToSite ? site.id : user.personId}`;\n\n const response = await fetch(url, {\n body,\n headers: {\n Accept: 'application/json',\n Authorization: `bearer ${accessToken}`,\n },\n method: 'POST',\n });\n\n if (response.ok) {\n const { image, baseDomain } = (await response.json()) as Result;\n // Maps image-service-api-v3 result to v2 result.\n return {\n key: image.path,\n // Removes trailing slash from baseDomain, since image-service-api-v2 doesn't have a trailing slash on base.\n base: baseDomain.endsWith('/') ? baseDomain.slice(0, -1) : baseDomain,\n meta: {\n preview: image.preview,\n width: String(image.width),\n height: String(image.height),\n },\n };\n }\n\n throw Error(`Failed to POST image (status code: ${response.status}).`);\n};\n"],"mappings":"AAAA,SAASA,cAAc,EAAEC,OAAO,EAAEC,OAAO,QAAQ,YAAY;AAuC7D,MAAMC,wBAAwB,GAAG,kDAAkD;AACnF,MAAMC,qBAAqB,GAAG,+DAA+D;;AAE7F;AACA;AACA;AACA,OAAO,MAAMC,SAAS,GAAG,MAAAA,CAAO;EAC5BC,IAAI;EACJC;AACc,CAAC,KAA2C;EAC1D,MAAM;IAAEC;EAAY,CAAC,GAAG,MAAMR,cAAc,CAAC,CAAC;EAC9C,MAAMS,IAAI,GAAGP,OAAO,CAAC,CAAC;EACtB,MAAMQ,IAAI,GAAGT,OAAO,CAAC,CAAC;EAEtB,IAAI,CAACO,WAAW,IAAI,CAACC,IAAI,EAAEE,QAAQ,EAAE;IACjC,OAAOC,SAAS;EACpB;;EAEA;;EAEA,MAAMC,IAAI,GAAG,IAAIC,QAAQ,CAAC,CAAC;EAE3BD,IAAI,CAACE,MAAM,CAAC,MAAM,EAAET,IAAI,CAAC;EAEzB,MAAMU,GAAG,GACLV,IAAI,CAACW,IAAI,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,GACtB,GAAGb,qBAAqB,IAAIG,uBAAuB,GAAGG,IAAI,CAACQ,EAAE,GAAGT,IAAI,CAACE,QAAQ,EAAE,GAC/E,GAAGR,wBAAwB,IAAII,uBAAuB,GAAGG,IAAI,CAACQ,EAAE,GAAGT,IAAI,CAACE,QAAQ,EAAE;EAE5F,MAAMQ,QAAQ,GAAG,MAAMC,KAAK,CAACJ,GAAG,EAAE;IAC9BH,IAAI;IACJQ,OAAO,EAAE;MACLC,MAAM,EAAE,kBAAkB;MAC1BC,aAAa,EAAE,UAAUf,WAAW;IACxC,CAAC;IACDgB,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,IAAIL,QAAQ,CAACM,EAAE,EAAE;IACb,MAAM;MAAEC,KAAK;MAAEC;IAAW,CAAC,GAAI,MAAMR,QAAQ,CAACS,IAAI,CAAC,CAAY;IAC/D;IACA,OAAO;MACHC,GAAG,EAAEH,KAAK,CAACI,IAAI;MACf;MACAC,IAAI,EAAEJ,UAAU,CAACK,QAAQ,CAAC,GAAG,CAAC,GAAGL,UAAU,CAACM,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAGN,UAAU;MACrEO,IAAI,EAAE;QACFC,OAAO,EAAET,KAAK,CAACS,OAAO;QACtBC,KAAK,EAAEC,MAAM,CAACX,KAAK,CAACU,KAAK,CAAC;QAC1BE,MAAM,EAAED,MAAM,CAACX,KAAK,CAACY,MAAM;MAC/B;IACJ,CAAC;EACL;EAEA,MAAMC,KAAK,CAAC,sCAAsCpB,QAAQ,CAACqB,MAAM,IAAI,CAAC;AAC1E,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"post.js","names":["getAccessToken","getSite","getUser","IMAGE_RESIZER_API_URL","IMAGE_SERVICE_API_V3_URL","postImage","file","shouldUploadImageToSite","accessToken","user","site","personId","undefined","body","FormData","append","url","size","id","response","fetch","headers","Accept","Authorization","method","ok","image","baseDomain","json","key","path","base","endsWith","slice","meta","preview","width","String","height","Error","status"],"sources":["../../../../src/api/image/post.ts"],"sourcesContent":["import { getAccessToken, getSite, getUser } from 'chayns-api';\nimport { IMAGE_RESIZER_API_URL, IMAGE_SERVICE_API_V3_URL } from '../../constants/uploadUrls';\nimport type { Meta } from '../../types/file';\n\nexport interface PostImageResult {\n key: string;\n base: string;\n meta?: Meta;\n}\n\ninterface Result {\n requestId: string;\n image: Image;\n baseDomain: string;\n signature: Signature;\n}\n\nexport interface Image {\n path: string;\n width: number;\n height: number;\n size: number;\n hash: string;\n preview: string;\n isSecured: boolean;\n format: string;\n fileExtension: string;\n}\n\nexport interface Signature {\n verify: string;\n signature: string;\n expires: Date;\n}\n\ninterface PostImageOptions {\n file: File;\n shouldUploadImageToSite?: boolean;\n}\n\n/**\n * Uploads an image to the tsimg cloud service\n */\nexport const postImage = async ({\n file,\n shouldUploadImageToSite,\n}: PostImageOptions): Promise<PostImageResult | undefined> => {\n const { accessToken } = await getAccessToken();\n const user = getUser();\n const site = getSite();\n\n if (!accessToken || !user?.personId) {\n return undefined;\n }\n\n // const body = await getFileAsArrayBuffer(file);\n\n const body = new FormData();\n\n body.append('File', file);\n\n const url =\n file.size > 10 * 1024 * 1024\n ? `${IMAGE_RESIZER_API_URL}/${shouldUploadImageToSite ? site.id : user.personId}`\n : `${IMAGE_SERVICE_API_V3_URL}/${shouldUploadImageToSite ? site.id : user.personId}`;\n\n const response = await fetch(url, {\n body,\n headers: {\n Accept: 'application/json',\n Authorization: `bearer ${accessToken}`,\n },\n method: 'POST',\n });\n\n if (response.ok) {\n const { image, baseDomain } = (await response.json()) as Result;\n // Maps image-service-api-v3 result to v2 result.\n return {\n key: image.path,\n // Removes trailing slash from baseDomain, since image-service-api-v2 doesn't have a trailing slash on base.\n base: baseDomain.endsWith('/') ? baseDomain.slice(0, -1) : baseDomain,\n meta: {\n preview: image.preview,\n width: String(image.width),\n height: String(image.height),\n },\n };\n }\n\n throw Error(`Failed to POST image (status code: ${response.status}).`);\n};\n"],"mappings":"AAAA,SAASA,cAAc,EAAEC,OAAO,EAAEC,OAAO,QAAQ,YAAY;AAC7D,SAASC,qBAAqB,EAAEC,wBAAwB,QAAQ,4BAA4B;AAuC5F;AACA;AACA;AACA,OAAO,MAAMC,SAAS,GAAG,MAAAA,CAAO;EAC5BC,IAAI;EACJC;AACc,CAAC,KAA2C;EAC1D,MAAM;IAAEC;EAAY,CAAC,GAAG,MAAMR,cAAc,CAAC,CAAC;EAC9C,MAAMS,IAAI,GAAGP,OAAO,CAAC,CAAC;EACtB,MAAMQ,IAAI,GAAGT,OAAO,CAAC,CAAC;EAEtB,IAAI,CAACO,WAAW,IAAI,CAACC,IAAI,EAAEE,QAAQ,EAAE;IACjC,OAAOC,SAAS;EACpB;;EAEA;;EAEA,MAAMC,IAAI,GAAG,IAAIC,QAAQ,CAAC,CAAC;EAE3BD,IAAI,CAACE,MAAM,CAAC,MAAM,EAAET,IAAI,CAAC;EAEzB,MAAMU,GAAG,GACLV,IAAI,CAACW,IAAI,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,GACtB,GAAGd,qBAAqB,IAAII,uBAAuB,GAAGG,IAAI,CAACQ,EAAE,GAAGT,IAAI,CAACE,QAAQ,EAAE,GAC/E,GAAGP,wBAAwB,IAAIG,uBAAuB,GAAGG,IAAI,CAACQ,EAAE,GAAGT,IAAI,CAACE,QAAQ,EAAE;EAE5F,MAAMQ,QAAQ,GAAG,MAAMC,KAAK,CAACJ,GAAG,EAAE;IAC9BH,IAAI;IACJQ,OAAO,EAAE;MACLC,MAAM,EAAE,kBAAkB;MAC1BC,aAAa,EAAE,UAAUf,WAAW;IACxC,CAAC;IACDgB,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,IAAIL,QAAQ,CAACM,EAAE,EAAE;IACb,MAAM;MAAEC,KAAK;MAAEC;IAAW,CAAC,GAAI,MAAMR,QAAQ,CAACS,IAAI,CAAC,CAAY;IAC/D;IACA,OAAO;MACHC,GAAG,EAAEH,KAAK,CAACI,IAAI;MACf;MACAC,IAAI,EAAEJ,UAAU,CAACK,QAAQ,CAAC,GAAG,CAAC,GAAGL,UAAU,CAACM,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAGN,UAAU;MACrEO,IAAI,EAAE;QACFC,OAAO,EAAET,KAAK,CAACS,OAAO;QACtBC,KAAK,EAAEC,MAAM,CAACX,KAAK,CAACU,KAAK,CAAC;QAC1BE,MAAM,EAAED,MAAM,CAACX,KAAK,CAACY,MAAM;MAC/B;IACJ,CAAC;EACL;EAEA,MAAMC,KAAK,CAAC,sCAAsCpB,QAAQ,CAACqB,MAAM,IAAI,CAAC;AAC1E,CAAC","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  import { getAccessToken } from 'chayns-api';
2
+ import { VIDEO_SERVICE_URL } from '../../constants/uploadUrls';
2
3
  /**
3
4
  * Uploads a video to the streaming service
4
5
  */
@@ -13,7 +14,7 @@ export const postVideo = async ({
13
14
  }
14
15
  const formData = new FormData();
15
16
  formData.append('files', file);
16
- const response = await fetch('https://streamingservice.chayns.space/video?disableIntercom=true', {
17
+ const response = await fetch(`${VIDEO_SERVICE_URL}?disableIntercom=true`, {
17
18
  body: formData,
18
19
  headers: {
19
20
  Authorization: `bearer ${accessToken}`
@@ -1 +1 @@
1
- {"version":3,"file":"post.js","names":["getAccessToken","postVideo","file","accessToken","undefined","formData","FormData","append","response","fetch","body","headers","Authorization","method","ok","data","json","Error","status"],"sources":["../../../../src/api/video/post.ts"],"sourcesContent":["import { getAccessToken } from 'chayns-api';\n\nexport interface PostVideoResult {\n id: string;\n originalVideoQuality: string;\n thumbnailUrl: string;\n url: string;\n urlMP4: string;\n}\n\ninterface PostVideoOptions {\n file: File | Blob;\n}\n\n/**\n * Uploads a video to the streaming service\n */\nexport const postVideo = async ({\n file,\n}: PostVideoOptions): Promise<PostVideoResult | undefined> => {\n const { accessToken } = await getAccessToken();\n\n if (!accessToken) {\n return undefined;\n }\n\n const formData = new FormData();\n\n formData.append('files', file);\n\n const response = await fetch(\n 'https://streamingservice.chayns.space/video?disableIntercom=true',\n {\n body: formData,\n headers: {\n Authorization: `bearer ${accessToken}`,\n },\n method: 'POST',\n },\n );\n\n if (response.ok) {\n const data = (await response.json()) as PostVideoResult[];\n\n return data[0];\n }\n\n throw Error(`Failed to POST video (status code: ${response.status}).`);\n};\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,YAAY;AAc3C;AACA;AACA;AACA,OAAO,MAAMC,SAAS,GAAG,MAAAA,CAAO;EAC5BC;AACc,CAAC,KAA2C;EAC1D,MAAM;IAAEC;EAAY,CAAC,GAAG,MAAMH,cAAc,CAAC,CAAC;EAE9C,IAAI,CAACG,WAAW,EAAE;IACd,OAAOC,SAAS;EACpB;EAEA,MAAMC,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;EAE/BD,QAAQ,CAACE,MAAM,CAAC,OAAO,EAAEL,IAAI,CAAC;EAE9B,MAAMM,QAAQ,GAAG,MAAMC,KAAK,CACxB,kEAAkE,EAClE;IACIC,IAAI,EAAEL,QAAQ;IACdM,OAAO,EAAE;MACLC,aAAa,EAAE,UAAUT,WAAW;IACxC,CAAC;IACDU,MAAM,EAAE;EACZ,CACJ,CAAC;EAED,IAAIL,QAAQ,CAACM,EAAE,EAAE;IACb,MAAMC,IAAI,GAAI,MAAMP,QAAQ,CAACQ,IAAI,CAAC,CAAuB;IAEzD,OAAOD,IAAI,CAAC,CAAC,CAAC;EAClB;EAEA,MAAME,KAAK,CAAC,sCAAsCT,QAAQ,CAACU,MAAM,IAAI,CAAC;AAC1E,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"post.js","names":["getAccessToken","VIDEO_SERVICE_URL","postVideo","file","accessToken","undefined","formData","FormData","append","response","fetch","body","headers","Authorization","method","ok","data","json","Error","status"],"sources":["../../../../src/api/video/post.ts"],"sourcesContent":["import { getAccessToken } from 'chayns-api';\nimport { VIDEO_SERVICE_URL } from '../../constants/uploadUrls';\n\nexport interface PostVideoResult {\n id: string;\n originalVideoQuality: string;\n thumbnailUrl: string;\n url: string;\n urlMP4: string;\n}\n\ninterface PostVideoOptions {\n file: File | Blob;\n}\n\n/**\n * Uploads a video to the streaming service\n */\nexport const postVideo = async ({\n file,\n}: PostVideoOptions): Promise<PostVideoResult | undefined> => {\n const { accessToken } = await getAccessToken();\n\n if (!accessToken) {\n return undefined;\n }\n\n const formData = new FormData();\n\n formData.append('files', file);\n\n const response = await fetch(`${VIDEO_SERVICE_URL}?disableIntercom=true`, {\n body: formData,\n headers: {\n Authorization: `bearer ${accessToken}`,\n },\n method: 'POST',\n });\n\n if (response.ok) {\n const data = (await response.json()) as PostVideoResult[];\n\n return data[0];\n }\n\n throw Error(`Failed to POST video (status code: ${response.status}).`);\n};\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,YAAY;AAC3C,SAASC,iBAAiB,QAAQ,4BAA4B;AAc9D;AACA;AACA;AACA,OAAO,MAAMC,SAAS,GAAG,MAAAA,CAAO;EAC5BC;AACc,CAAC,KAA2C;EAC1D,MAAM;IAAEC;EAAY,CAAC,GAAG,MAAMJ,cAAc,CAAC,CAAC;EAE9C,IAAI,CAACI,WAAW,EAAE;IACd,OAAOC,SAAS;EACpB;EAEA,MAAMC,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;EAE/BD,QAAQ,CAACE,MAAM,CAAC,OAAO,EAAEL,IAAI,CAAC;EAE9B,MAAMM,QAAQ,GAAG,MAAMC,KAAK,CAAC,GAAGT,iBAAiB,uBAAuB,EAAE;IACtEU,IAAI,EAAEL,QAAQ;IACdM,OAAO,EAAE;MACLC,aAAa,EAAE,UAAUT,WAAW;IACxC,CAAC;IACDU,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,IAAIL,QAAQ,CAACM,EAAE,EAAE;IACb,MAAMC,IAAI,GAAI,MAAMP,QAAQ,CAACQ,IAAI,CAAC,CAAuB;IAEzD,OAAOD,IAAI,CAAC,CAAC,CAAC;EAClB;EAEA,MAAME,KAAK,CAAC,sCAAsCT,QAAQ,CAACU,MAAM,IAAI,CAAC;AAC1E,CAAC","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Reads an environment variable defensively so that accessing `process.env` does
3
+ * not throw a `ReferenceError` in browser environments where `process` is not
4
+ * defined. Returns `undefined` if the variable is not set or not accessible.
5
+ */
6
+ const readEnv = key => {
7
+ try {
8
+ if (typeof process !== 'undefined' && process.env) {
9
+ const value = process.env[key];
10
+ if (typeof value === 'string' && value.length > 0) {
11
+ return value;
12
+ }
13
+ }
14
+ } catch {
15
+ // Accessing `process` can throw in some sandboxed environments.
16
+ }
17
+ return undefined;
18
+ };
19
+
20
+ /**
21
+ * URL of the image service used to upload images.
22
+ *
23
+ * Can be overridden via the `CHAYNS_IMAGE_SERVICE_URL` environment variable
24
+ * (e.g. for OnPremise deployments with a self-hosted image service). Falls back
25
+ * to the default chayns image service when the variable is not defined.
26
+ */
27
+ export const IMAGE_SERVICE_API_V3_URL = readEnv('CHAYNS_IMAGE_SERVICE_URL') ?? 'https://cube.tobit.cloud/image-service/v3/Images';
28
+
29
+ /**
30
+ * URL of the image resizer service used to upload images larger than 10 MB.
31
+ *
32
+ * Can be overridden via the `CHAYNS_IMAGE_RESIZER_URL` environment variable
33
+ * (e.g. for OnPremise deployments with a self-hosted image service). Falls back
34
+ * to the default chayns image resizer when the variable is not defined.
35
+ */
36
+ export const IMAGE_RESIZER_API_URL = readEnv('CHAYNS_IMAGE_RESIZER_URL') ?? 'https://cube.tobit.cloud/image-resizer-backend/api/v1.0/image';
37
+
38
+ /**
39
+ * URL of the streaming service used to upload videos.
40
+ *
41
+ * Can be overridden via the `CHAYNS_VIDEO_SERVICE_URL` environment variable
42
+ * (e.g. for OnPremise deployments with a self-hosted video service). Falls back
43
+ * to the default chayns streaming service when the variable is not defined.
44
+ */
45
+ export const VIDEO_SERVICE_URL = readEnv('CHAYNS_VIDEO_SERVICE_URL') ?? 'https://streamingservice.chayns.space/video';
46
+ //# sourceMappingURL=uploadUrls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uploadUrls.js","names":["readEnv","key","process","env","value","length","undefined","IMAGE_SERVICE_API_V3_URL","IMAGE_RESIZER_API_URL","VIDEO_SERVICE_URL"],"sources":["../../../src/constants/uploadUrls.ts"],"sourcesContent":["/**\n * Reads an environment variable defensively so that accessing `process.env` does\n * not throw a `ReferenceError` in browser environments where `process` is not\n * defined. Returns `undefined` if the variable is not set or not accessible.\n */\nconst readEnv = (key: string): string | undefined => {\n try {\n if (typeof process !== 'undefined' && process.env) {\n const value = process.env[key];\n\n if (typeof value === 'string' && value.length > 0) {\n return value;\n }\n }\n } catch {\n // Accessing `process` can throw in some sandboxed environments.\n }\n\n return undefined;\n};\n\n/**\n * URL of the image service used to upload images.\n *\n * Can be overridden via the `CHAYNS_IMAGE_SERVICE_URL` environment variable\n * (e.g. for OnPremise deployments with a self-hosted image service). Falls back\n * to the default chayns image service when the variable is not defined.\n */\nexport const IMAGE_SERVICE_API_V3_URL =\n readEnv('CHAYNS_IMAGE_SERVICE_URL') ?? 'https://cube.tobit.cloud/image-service/v3/Images';\n\n/**\n * URL of the image resizer service used to upload images larger than 10 MB.\n *\n * Can be overridden via the `CHAYNS_IMAGE_RESIZER_URL` environment variable\n * (e.g. for OnPremise deployments with a self-hosted image service). Falls back\n * to the default chayns image resizer when the variable is not defined.\n */\nexport const IMAGE_RESIZER_API_URL =\n readEnv('CHAYNS_IMAGE_RESIZER_URL') ??\n 'https://cube.tobit.cloud/image-resizer-backend/api/v1.0/image';\n\n/**\n * URL of the streaming service used to upload videos.\n *\n * Can be overridden via the `CHAYNS_VIDEO_SERVICE_URL` environment variable\n * (e.g. for OnPremise deployments with a self-hosted video service). Falls back\n * to the default chayns streaming service when the variable is not defined.\n */\nexport const VIDEO_SERVICE_URL =\n readEnv('CHAYNS_VIDEO_SERVICE_URL') ?? 'https://streamingservice.chayns.space/video';\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA,MAAMA,OAAO,GAAIC,GAAW,IAAyB;EACjD,IAAI;IACA,IAAI,OAAOC,OAAO,KAAK,WAAW,IAAIA,OAAO,CAACC,GAAG,EAAE;MAC/C,MAAMC,KAAK,GAAGF,OAAO,CAACC,GAAG,CAACF,GAAG,CAAC;MAE9B,IAAI,OAAOG,KAAK,KAAK,QAAQ,IAAIA,KAAK,CAACC,MAAM,GAAG,CAAC,EAAE;QAC/C,OAAOD,KAAK;MAChB;IACJ;EACJ,CAAC,CAAC,MAAM;IACJ;EAAA;EAGJ,OAAOE,SAAS;AACpB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GACjCP,OAAO,CAAC,0BAA0B,CAAC,IAAI,kDAAkD;;AAE7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMQ,qBAAqB,GAC9BR,OAAO,CAAC,0BAA0B,CAAC,IACnC,+DAA+D;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMS,iBAAiB,GAC1BT,OAAO,CAAC,0BAA0B,CAAC,IAAI,6CAA6C","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * URL of the image service used to upload images.
3
+ *
4
+ * Can be overridden via the `CHAYNS_IMAGE_SERVICE_URL` environment variable
5
+ * (e.g. for OnPremise deployments with a self-hosted image service). Falls back
6
+ * to the default chayns image service when the variable is not defined.
7
+ */
8
+ export declare const IMAGE_SERVICE_API_V3_URL: string;
9
+ /**
10
+ * URL of the image resizer service used to upload images larger than 10 MB.
11
+ *
12
+ * Can be overridden via the `CHAYNS_IMAGE_RESIZER_URL` environment variable
13
+ * (e.g. for OnPremise deployments with a self-hosted image service). Falls back
14
+ * to the default chayns image resizer when the variable is not defined.
15
+ */
16
+ export declare const IMAGE_RESIZER_API_URL: string;
17
+ /**
18
+ * URL of the streaming service used to upload videos.
19
+ *
20
+ * Can be overridden via the `CHAYNS_VIDEO_SERVICE_URL` environment variable
21
+ * (e.g. for OnPremise deployments with a self-hosted video service). Falls back
22
+ * to the default chayns streaming service when the variable is not defined.
23
+ */
24
+ export declare const VIDEO_SERVICE_URL: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chayns-components/core",
3
- "version": "5.5.45",
3
+ "version": "5.5.51",
4
4
  "description": "A set of beautiful React components for developing your own applications with chayns.",
5
5
  "sideEffects": false,
6
6
  "browserslist": [
@@ -93,5 +93,5 @@
93
93
  "publishConfig": {
94
94
  "access": "public"
95
95
  },
96
- "gitHead": "2fdb77365e5c584e61610bf190ab9c36a5e588ad"
96
+ "gitHead": "5a52e13c899d061e982e5c39da6c2bc24de0c862"
97
97
  }