@platforma-sdk/ui-vue 1.42.5 → 1.42.8

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.
@@ -1,6 +1,6 @@
1
1
   WARN  Issue while reading "/home/runner/_work/platforma/platforma/.npmrc". Failed to replace env in config: ${NPMJS_TOKEN}
2
2
 
3
- > @platforma-sdk/ui-vue@1.42.5 build /home/runner/_work/platforma/platforma/sdk/ui-vue
3
+ > @platforma-sdk/ui-vue@1.42.8 build /home/runner/_work/platforma/platforma/sdk/ui-vue
4
4
  > vite build
5
5
 
6
6
  vite v6.3.5 building for production...
@@ -10,7 +10,7 @@ rendering chunks...
10
10
 
11
11
  [vite:dts] Start generate declaration files...
12
12
  computing gzip size...
13
- [vite:dts] Declaration files built in 5816ms.
13
+ [vite:dts] Declaration files built in 6005ms.
14
14
 
15
15
  dist/_virtual/re.js  0.08 kB │ gzip: 0.10 kB │ map: 0.09 kB
16
16
  dist/lib/ui/uikit/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/constant.js  0.09 kB │ gzip: 0.10 kB │ map: 0.32 kB
@@ -48,8 +48,8 @@ computing gzip size...
48
48
  dist/components/PlTableFilters/PlTableAddFilterV2.vue2.js  0.12 kB │ gzip: 0.12 kB │ map: 0.11 kB
49
49
  dist/plugins/Monetization/MonetizationSidebar.vue2.js  0.13 kB │ gzip: 0.12 kB │ map: 0.11 kB
50
50
  dist/components/PlTableFilters/PlTableFilterEntryV2.vue2.js  0.13 kB │ gzip: 0.12 kB │ map: 0.11 kB
51
- dist/components/PlAgGridColumnManager/PlAgGridColumnManager.vue2.js  0.13 kB │ gzip: 0.12 kB │ map: 0.11 kB
52
51
  dist/components/PlAgTextAndButtonCell/PlAgTextAndButtonCell.vue2.js  0.13 kB │ gzip: 0.12 kB │ map: 0.11 kB
52
+ dist/components/PlAgGridColumnManager/PlAgGridColumnManager.vue2.js  0.13 kB │ gzip: 0.12 kB │ map: 0.11 kB
53
53
  dist/lib/ui/uikit/dist/components/PlRadio/keys.js  0.13 kB │ gzip: 0.13 kB │ map: 0.46 kB
54
54
  dist/lib/ui/uikit/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/size.js  0.13 kB │ gzip: 0.13 kB │ map: 0.49 kB
55
55
  dist/components/ValueOrErrorsComponent.vue2.js  0.13 kB │ gzip: 0.12 kB │ map: 0.11 kB
@@ -151,8 +151,8 @@ computing gzip size...
151
151
  dist/lib/ui/uikit/dist/components/PlRadio/PlRadio.vue.js  0.27 kB │ gzip: 0.21 kB │ map: 0.10 kB
152
152
  dist/_virtual/index.js  0.27 kB │ gzip: 0.21 kB │ map: 0.09 kB
153
153
  dist/components/PlMultiSequenceAlignment/Toolbar.vue.js  0.27 kB │ gzip: 0.21 kB │ map: 0.10 kB
154
- dist/lib/ui/uikit/dist/assets/icons/icon-assets-min/24_linetype-longdash.svg.js  0.27 kB │ gzip: 0.23 kB │ map: 0.50 kB
155
154
  dist/lib/ui/uikit/dist/components/PlChartStackedBar/Legends.vue.js  0.27 kB │ gzip: 0.21 kB │ map: 0.10 kB
155
+ dist/lib/ui/uikit/dist/assets/icons/icon-assets-min/24_linetype-longdash.svg.js  0.27 kB │ gzip: 0.23 kB │ map: 0.50 kB
156
156
  dist/lib/ui/uikit/dist/assets/icons/icon-assets-min/16_chevron-first.svg.js  0.28 kB │ gzip: 0.23 kB │ map: 0.48 kB
157
157
  dist/lib/ui/uikit/dist/components/PlIcon16/PlIcon16.vue.js  0.28 kB │ gzip: 0.22 kB │ map: 0.10 kB
158
158
  dist/lib/ui/uikit/dist/components/PlIcon24/PlIcon24.vue.js  0.28 kB │ gzip: 0.22 kB │ map: 0.10 kB
@@ -773,11 +773,11 @@ computing gzip size...
773
773
  dist/lib/ui/uikit/dist/components/PlCheckboxGroup/PlCheckboxGroup.vue.js  2.80 kB │ gzip: 1.25 kB │ map: 2.65 kB
774
774
  dist/lib/ui/uikit/dist/components/PlEditableTitle/PlEditableTitle.vue.js  2.89 kB │ gzip: 1.23 kB │ map: 3.54 kB
775
775
  dist/lib/ui/uikit/dist/components/PlDropdown/OptionList.vue.js  2.92 kB │ gzip: 1.09 kB │ map: 3.07 kB
776
- dist/composition/fileContent.js  2.92 kB │ gzip: 1.06 kB │ map: 8.69 kB
777
776
  dist/components/PlAgDataTable/sources/row-number.js  3.10 kB │ gzip: 1.34 kB │ map: 8.35 kB
778
777
  dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/locale.js  3.12 kB │ gzip: 1.35 kB │ map: 10.44 kB
779
778
  dist/lib/ui/uikit/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/locale.js  3.12 kB │ gzip: 1.35 kB │ map: 10.46 kB
780
779
  dist/components/PlMultiSequenceAlignment/SeqLogo.vue.js  3.17 kB │ gzip: 1.28 kB │ map: 6.04 kB
780
+ dist/composition/fileContent.js  3.22 kB │ gzip: 1.21 kB │ map: 9.49 kB
781
781
  dist/lib/ui/uikit/dist/colors/palette.js  3.25 kB │ gzip: 1.22 kB │ map: 7.00 kB
782
782
  dist/lib/ui/uikit/dist/components/PlEditableTitle/pl-editable-title.module.scss.js  3.31 kB │ gzip: 1.18 kB │ map: 0.13 kB
783
783
  dist/components/PlAgColumnHeader/PlAgColumnHeader.vue.js  3.32 kB │ gzip: 1.34 kB │ map: 4.05 kB
@@ -854,11 +854,11 @@ computing gzip size...
854
854
  dist/lib/ui/uikit/dist/components/PlFileInput/PlFileInput.vue.js  10.78 kB │ gzip: 3.38 kB │ map: 8.09 kB
855
855
  dist/lib/ui/uikit/dist/demo-site-data/all-css-variables.js  11.00 kB │ gzip: 1.76 kB │ map: 18.24 kB
856
856
  dist/lib/ui/uikit/dist/components/PlDropdownLine/PlDropdownLine.vue.js  14.70 kB │ gzip: 3.91 kB │ map: 12.75 kB
857
- dist/lib/ui/uikit/dist/lib/model/common/dist/index.js  15.38 kB │ gzip: 4.26 kB │ map: 89.67 kB
857
+ dist/lib/ui/uikit/dist/lib/model/common/dist/index.js  15.38 kB │ gzip: 4.26 kB │ map: 91.55 kB
858
858
  dist/lib/ui/uikit/dist/components/PlDropdown/PlDropdown.vue.js  16.33 kB │ gzip: 4.80 kB │ map: 14.67 kB
859
859
  dist/lib/ui/uikit/dist/components/PlDropdownLegacy/PlDropdownLegacy.vue.js  17.39 kB │ gzip: 4.84 kB │ map: 14.46 kB
860
860
  dist/lib/ui/uikit/dist/components/PlAutocomplete/PlAutocomplete.vue.js  17.76 kB │ gzip: 5.14 kB │ map: 17.09 kB
861
- dist/lib/model/common/dist/index.js  19.07 kB │ gzip: 5.35 kB │ map: 109.10 kB
861
+ dist/lib/model/common/dist/index.js  19.07 kB │ gzip: 5.35 kB │ map: 110.98 kB
862
862
  dist/lib/ui/uikit/dist/components/PlDropdownMulti/PlDropdownMulti.vue.js  20.23 kB │ gzip: 5.27 kB │ map: 12.97 kB
863
863
  dist/components/PlAgDataTable/PlAgOverlayNoRows.vue3.js  35.48 kB │ gzip: 26.70 kB │ map: 0.11 kB
864
864
  dist/node_modules/.pnpm/lru-cache@11.1.0/node_modules/lru-cache/dist/esm/index.js  37.21 kB │ gzip: 9.81 kB │ map: 127.30 kB
@@ -879,4 +879,4 @@ computing gzip size...
879
879
  dist/lib/ui/uikit/dist/index.js 497.77 kB │ gzip: 191.75 kB │ map: 0.18 kB
880
880
  dist/lib/ui/uikit/dist/components/PlSlideModal/PlPureSlideModal.vue.js 601.12 kB │ gzip: 204.71 kB │ map: 0.21 kB
881
881
  dist/lib/ui/uikit/dist/components/DataTable/TableComponent.vue.js 603.01 kB │ gzip: 205.56 kB │ map: 0.27 kB
882
- ✓ built in 10.92s
882
+ ✓ built in 10.24s
@@ -1,5 +1,5 @@
1
1
   WARN  Issue while reading "/home/runner/_work/platforma/platforma/.npmrc". Failed to replace env in config: ${NPMJS_TOKEN}
2
2
 
3
- > @platforma-sdk/ui-vue@1.42.5 type-check /home/runner/_work/platforma/platforma/sdk/ui-vue
3
+ > @platforma-sdk/ui-vue@1.42.8 type-check /home/runner/_work/platforma/platforma/sdk/ui-vue
4
4
  > vue-tsc --noEmit --project ./tsconfig.json
5
5
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # @platforma-sdk/ui-vue
2
2
 
3
+ ## 1.42.8
4
+
5
+ ### Patch Changes
6
+
7
+ - @platforma-sdk/model@1.42.8
8
+ - @milaboratories/uikit@2.3.28
9
+
3
10
  ## 1.42.5
4
11
 
5
12
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"fileContent.d.ts","sourceRoot":"","sources":["../../src/composition/fileContent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fileContent.d.ts","sourceRoot":"","sources":["../../src/composition/fileContent.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,19 @@
1
- var f = Object.defineProperty;
2
- var h = (i, t, s) => t in i ? f(i, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : i[t] = s;
3
- var n = (i, t, s) => h(i, typeof t != "symbol" ? t + "" : t, s);
4
- import { getRawPlatformaInstance as d } from "../sdk/model/dist/index.js";
5
- import { LRUCache as g } from "../node_modules/.pnpm/lru-cache@11.1.0/node_modules/lru-cache/dist/esm/index.js";
6
- import { shallowRef as u, computed as r } from "vue";
7
- const v = {
1
+ var u = Object.defineProperty;
2
+ var g = (i, t, e) => t in i ? u(i, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : i[t] = e;
3
+ var a = (i, t, e) => g(i, typeof t != "symbol" ? t + "" : t, e);
4
+ import { getRawPlatformaInstance as v } from "../sdk/model/dist/index.js";
5
+ import { LRUCache as w } from "../node_modules/.pnpm/lru-cache@11.1.0/node_modules/lru-cache/dist/esm/index.js";
6
+ import { shallowRef as m, computed as d } from "vue";
7
+ const D = {
8
8
  cacheSize: 15e6
9
9
  // 15 Mb
10
10
  };
11
- class w {
11
+ class J {
12
12
  constructor(t) {
13
- n(this, "_str");
14
- n(this, "_rawJson");
15
- n(this, "_zodSchema");
16
- n(this, "_validatedJson");
13
+ a(this, "_str");
14
+ a(this, "_rawJson");
15
+ a(this, "_zodSchema");
16
+ a(this, "_validatedJson");
17
17
  this.bytes = t;
18
18
  }
19
19
  get str() {
@@ -23,74 +23,77 @@ class w {
23
23
  return this._rawJson === void 0 && (this._rawJson = JSON.parse(this.str)), this._rawJson;
24
24
  }
25
25
  validatedJson(t) {
26
- return this._zodSchema !== t && (this._validatedJson = t.parse(this.rawJson), this._zodSchema = t), this._validatedJson;
26
+ var e;
27
+ return this._zodSchema !== t && (this._validatedJson = t.safeParse(this.rawJson), this._zodSchema = t), (e = this._validatedJson) != null && e.success ? this._validatedJson.data : void 0;
27
28
  }
28
29
  }
29
- const a = class a {
30
+ const o = class o {
30
31
  constructor(t) {
31
- n(this, "fileDataCache");
32
- n(this, "fileDataRefs", /* @__PURE__ */ new Map());
33
- const s = { ...v, ...t ?? {} };
34
- this.fileDataCache = new g({
35
- maxSize: s.cacheSize,
36
- fetchMethod: async (e) => new w(await d().blobDriver.getContent(e)),
37
- sizeCalculation: (e) => e.bytes.length,
32
+ a(this, "fileDataCache");
33
+ a(this, "fileDataRefs", /* @__PURE__ */ new Map());
34
+ const e = { ...D, ...t ?? {} };
35
+ this.fileDataCache = new w({
36
+ maxSize: e.cacheSize,
37
+ fetchMethod: async (s) => new J(await v().blobDriver.getContent(s)),
38
+ sizeCalculation: (s) => s.bytes.length,
38
39
  /** Will also be called on error fetching the file */
39
- dispose: (e, o) => {
40
- this.fileDataRefs.delete(o);
40
+ dispose: (s, r) => {
41
+ this.fileDataRefs.delete(r);
41
42
  }
42
43
  });
43
44
  }
44
45
  getDataRef(t) {
45
- const s = this.fileDataRefs.get(t);
46
- if (s !== void 0) return s;
47
- const e = u();
48
- return this.fileDataRefs.set(t, e), (async () => {
49
- try {
50
- const o = await this.fileDataCache.fetch(t);
51
- e.value = o;
52
- } catch (o) {
53
- console.error(o);
54
- }
55
- })(), e;
46
+ const e = this.fileDataRefs.get(t);
47
+ if (e !== void 0) return e;
48
+ const s = m();
49
+ return this.fileDataRefs.set(t, s), (async () => {
50
+ for (let n = 0; n < 4; n++)
51
+ try {
52
+ const l = await this.fileDataCache.fetch(t);
53
+ s.value = l;
54
+ return;
55
+ } catch (l) {
56
+ console.error(`File download attempt ${n + 1}/4 failed:`, l), n < 3 ? await new Promise((h) => setTimeout(h, 1e3)) : console.error("Failed to download file after 4 attempts");
57
+ }
58
+ })(), s;
56
59
  }
57
60
  getContentBytes(t) {
58
61
  if (t === void 0) return;
59
- const s = this.getDataRef(t);
60
- return r(() => {
61
- var e;
62
- return (e = s.value) == null ? void 0 : e.bytes;
62
+ const e = this.getDataRef(t);
63
+ return d(() => {
64
+ var s;
65
+ return (s = e.value) == null ? void 0 : s.bytes;
63
66
  });
64
67
  }
65
68
  getContentString(t) {
66
69
  if (t === void 0) return;
67
- const s = this.getDataRef(t);
68
- return r(() => {
69
- var e;
70
- return (e = s == null ? void 0 : s.value) == null ? void 0 : e.str;
70
+ const e = this.getDataRef(t);
71
+ return d(() => {
72
+ var s;
73
+ return (s = e == null ? void 0 : e.value) == null ? void 0 : s.str;
71
74
  });
72
75
  }
73
- getContentJson(t, s) {
76
+ getContentJson(t, e) {
74
77
  if (t === void 0) return;
75
- const e = this.getDataRef(t);
76
- return r(() => {
77
- var o, c;
78
- return s === void 0 ? (o = e == null ? void 0 : e.value) == null ? void 0 : o.rawJson : (c = e == null ? void 0 : e.value) == null ? void 0 : c.validatedJson(s);
78
+ const s = this.getDataRef(t);
79
+ return d(() => {
80
+ var r, c;
81
+ return e === void 0 ? (r = s == null ? void 0 : s.value) == null ? void 0 : r.rawJson : (c = s == null ? void 0 : s.value) == null ? void 0 : c.validatedJson(e);
79
82
  });
80
83
  }
81
84
  static getContentBytes(t) {
82
- return a.globalInstance.getContentBytes(t);
85
+ return o.globalInstance.getContentBytes(t);
83
86
  }
84
87
  static getContentString(t) {
85
- return a.globalInstance.getContentString(t);
88
+ return o.globalInstance.getContentString(t);
86
89
  }
87
- static getContentJson(t, s) {
88
- return a.globalInstance.getContentJson(t, s);
90
+ static getContentJson(t, e) {
91
+ return o.globalInstance.getContentJson(t, e);
89
92
  }
90
93
  };
91
- n(a, "globalInstance", new a());
92
- let l = a;
94
+ a(o, "globalInstance", new o());
95
+ let f = o;
93
96
  export {
94
- l as ReactiveFileContent
97
+ f as ReactiveFileContent
95
98
  };
96
99
  //# sourceMappingURL=fileContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fileContent.js","sources":["../../src/composition/fileContent.ts"],"sourcesContent":["import type { BlobHandleAndSize } from '@platforma-sdk/model';\nimport { getRawPlatformaInstance } from '@platforma-sdk/model';\nimport { LRUCache } from 'lru-cache';\nimport type { ComputedRef, ShallowRef } from 'vue';\nimport { computed, shallowRef } from 'vue';\nimport type { ZodSchema } from 'zod';\n\ntype FileHandle = BlobHandleAndSize['handle'];\n\nexport type ReactiveFileContentOps = {\n /** Maximum size in bytes of file content to cache */\n cacheSize: number;\n};\n\nconst DefaultReactiveFileContentOps: ReactiveFileContentOps = {\n cacheSize: 15_000_000, // 15 Mb\n};\n\nclass FileContentData {\n private _str: string | undefined = undefined;\n private _rawJson: unknown | undefined = undefined;\n private _zodSchema: ZodSchema | undefined = undefined;\n private _validatedJson: unknown | undefined = undefined;\n\n constructor(public readonly bytes: Uint8Array) {}\n\n public get str(): string {\n if (this._str === undefined) this._str = new TextDecoder().decode(this.bytes);\n return this._str;\n }\n\n public get rawJson(): unknown {\n if (this._rawJson === undefined) this._rawJson = JSON.parse(this.str);\n return this._rawJson;\n }\n\n public validatedJson<T>(schema: ZodSchema<T>): T {\n if (this._zodSchema !== schema) {\n this._validatedJson = schema.parse(this.rawJson);\n this._zodSchema = schema;\n }\n return this._validatedJson as T;\n }\n}\n\nexport class ReactiveFileContent {\n private readonly fileDataCache: LRUCache<FileHandle, FileContentData>;\n private readonly fileDataRefs = new Map<FileHandle, ShallowRef<FileContentData | undefined>>();\n constructor(_ops?: Partial<ReactiveFileContentOps>) {\n const ops: ReactiveFileContentOps = { ...DefaultReactiveFileContentOps, ...(_ops ?? {}) };\n this.fileDataCache = new LRUCache<FileHandle, FileContentData>({\n maxSize: ops.cacheSize,\n fetchMethod: async (key) => new FileContentData(await getRawPlatformaInstance().blobDriver.getContent(key)),\n sizeCalculation: (value) => value.bytes.length,\n /** Will also be called on error fetching the file */\n dispose: (_, key) => {\n this.fileDataRefs.delete(key);\n },\n });\n }\n\n private getDataRef(handle: FileHandle): ShallowRef<FileContentData | undefined> {\n const refFromMap = this.fileDataRefs.get(handle);\n if (refFromMap !== undefined) return refFromMap;\n const newRef = shallowRef<FileContentData>();\n this.fileDataRefs.set(handle, newRef);\n\n // Initiating actual fetch from the cache, that will in turn initiate upload\n (async () => {\n try {\n const data = await this.fileDataCache.fetch(handle);\n newRef.value = data;\n } catch (err: unknown) {\n console.error(err);\n }\n })();\n\n return newRef;\n }\n\n public getContentBytes(handle: FileHandle): ComputedRef<Uint8Array | undefined>;\n public getContentBytes(handle: FileHandle | undefined): ComputedRef<Uint8Array | undefined> | undefined;\n public getContentBytes(handle: FileHandle | undefined): ComputedRef<Uint8Array | undefined> | undefined {\n if (handle === undefined) return undefined;\n const dataRef = this.getDataRef(handle);\n return computed(() => dataRef.value?.bytes);\n }\n\n public getContentString(handle: FileHandle): ComputedRef<string | undefined>;\n public getContentString(handle: FileHandle | undefined): ComputedRef<string | undefined> | undefined;\n public getContentString(handle: FileHandle | undefined): ComputedRef<string | undefined> | undefined {\n if (handle === undefined) return undefined;\n const dataRef = this.getDataRef(handle);\n return computed(() => dataRef?.value?.str);\n }\n\n public getContentJson<T>(handle: FileHandle, schema: ZodSchema<T>): ComputedRef<T | undefined>;\n public getContentJson<T>(handle: FileHandle | undefined, schema: ZodSchema<T>): ComputedRef<T | undefined> | undefined;\n public getContentJson<T = unknown>(handle: FileHandle): ComputedRef<T | undefined>;\n public getContentJson<T = unknown>(handle: FileHandle | undefined): ComputedRef<T | undefined> | undefined;\n public getContentJson<T>(handle: FileHandle | undefined, schema?: ZodSchema<T>): ComputedRef<T | undefined> | undefined;\n public getContentJson<T>(handle: FileHandle | undefined, schema?: ZodSchema<T>): ComputedRef<T | undefined> | undefined {\n if (handle === undefined) return undefined;\n const dataRef = this.getDataRef(handle);\n return computed(() => (schema === undefined ? dataRef?.value?.rawJson : dataRef?.value?.validatedJson(schema)) as T);\n }\n\n private static globalInstance = new ReactiveFileContent();\n\n public static getContentBytes(handle: FileHandle): ComputedRef<Uint8Array | undefined>;\n public static getContentBytes(handle: FileHandle | undefined): ComputedRef<Uint8Array | undefined> | undefined;\n public static getContentBytes(handle: FileHandle | undefined): ComputedRef<Uint8Array | undefined> | undefined {\n return ReactiveFileContent.globalInstance.getContentBytes(handle);\n }\n\n public static getContentString(handle: FileHandle): ComputedRef<string | undefined>;\n public static getContentString(handle: FileHandle | undefined): ComputedRef<string | undefined> | undefined;\n public static getContentString(handle: FileHandle | undefined): ComputedRef<string | undefined> | undefined {\n return ReactiveFileContent.globalInstance.getContentString(handle);\n }\n\n public static getContentJson<T>(handle: FileHandle, schema: ZodSchema<T>): ComputedRef<T | undefined>;\n public static getContentJson<T>(handle: FileHandle | undefined, schema: ZodSchema<T>): ComputedRef<T | undefined> | undefined;\n public static getContentJson<T = unknown>(handle: FileHandle): ComputedRef<T | undefined>;\n public static getContentJson<T = unknown>(handle: FileHandle | undefined): ComputedRef<T | undefined> | undefined;\n public static getContentJson<T>(handle: FileHandle | undefined, schema?: ZodSchema<T>): ComputedRef<T | undefined> | undefined {\n return ReactiveFileContent.globalInstance.getContentJson(handle, schema);\n }\n}\n"],"names":["DefaultReactiveFileContentOps","FileContentData","bytes","__publicField","schema","_ReactiveFileContent","_ops","ops","LRUCache","key","getRawPlatformaInstance","value","_","handle","refFromMap","newRef","shallowRef","data","err","dataRef","computed","_a","_b","ReactiveFileContent"],"mappings":"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"}
1
+ {"version":3,"file":"fileContent.js","sources":["../../src/composition/fileContent.ts"],"sourcesContent":["import type { BlobHandleAndSize } from '@platforma-sdk/model';\nimport { getRawPlatformaInstance } from '@platforma-sdk/model';\nimport { LRUCache } from 'lru-cache';\nimport type { ComputedRef, ShallowRef } from 'vue';\nimport { computed, shallowRef } from 'vue';\nimport type { ZodSchema } from 'zod';\n\ntype FileHandle = BlobHandleAndSize['handle'];\n\nexport type ReactiveFileContentOps = {\n /** Maximum size in bytes of file content to cache */\n cacheSize: number;\n};\n\nconst DefaultReactiveFileContentOps: ReactiveFileContentOps = {\n cacheSize: 15_000_000, // 15 Mb\n};\n\nclass FileContentData {\n private _str: string | undefined = undefined;\n private _rawJson: unknown | undefined = undefined;\n private _zodSchema: ZodSchema | undefined = undefined;\n private _validatedJson: Zod.SafeParseReturnType<unknown, unknown> | undefined = undefined;\n\n constructor(public readonly bytes: Uint8Array) {}\n\n public get str(): string {\n if (this._str === undefined) this._str = new TextDecoder().decode(this.bytes);\n return this._str;\n }\n\n public get rawJson(): unknown {\n if (this._rawJson === undefined) this._rawJson = JSON.parse(this.str);\n return this._rawJson;\n }\n\n public validatedJson<T>(schema: ZodSchema<T>): T | undefined {\n if (this._zodSchema !== schema) {\n this._validatedJson = schema.safeParse(this.rawJson);\n this._zodSchema = schema;\n }\n return this._validatedJson?.success ? (this._validatedJson.data as T) : undefined;\n }\n}\n\nexport class ReactiveFileContent {\n private readonly fileDataCache: LRUCache<FileHandle, FileContentData>;\n private readonly fileDataRefs = new Map<FileHandle, ShallowRef<FileContentData | undefined>>();\n constructor(_ops?: Partial<ReactiveFileContentOps>) {\n const ops: ReactiveFileContentOps = { ...DefaultReactiveFileContentOps, ...(_ops ?? {}) };\n this.fileDataCache = new LRUCache<FileHandle, FileContentData>({\n maxSize: ops.cacheSize,\n fetchMethod: async (key) => new FileContentData(await getRawPlatformaInstance().blobDriver.getContent(key)),\n sizeCalculation: (value) => value.bytes.length,\n /** Will also be called on error fetching the file */\n dispose: (_, key) => {\n this.fileDataRefs.delete(key);\n },\n });\n }\n\n private getDataRef(handle: FileHandle): ShallowRef<FileContentData | undefined> {\n const refFromMap = this.fileDataRefs.get(handle);\n if (refFromMap !== undefined) return refFromMap;\n const newRef = shallowRef<FileContentData>();\n this.fileDataRefs.set(handle, newRef);\n\n // Initiating actual fetch from the cache, that will in turn initiate upload\n (async () => {\n const maxRetries = 4;\n const retryDelay = 1000; // 1 second\n\n for (let attempt = 0; attempt < maxRetries; attempt++) {\n try {\n const data = await this.fileDataCache.fetch(handle);\n newRef.value = data;\n return;\n } catch (err: unknown) {\n console.error(`File download attempt ${attempt + 1}/${maxRetries} failed:`, err);\n\n if (attempt < maxRetries - 1) {\n await new Promise((resolve) => setTimeout(resolve, retryDelay));\n } else {\n console.error(`Failed to download file after ${maxRetries} attempts`);\n }\n }\n }\n })();\n\n return newRef;\n }\n\n public getContentBytes(handle: FileHandle): ComputedRef<Uint8Array | undefined>;\n public getContentBytes(handle: FileHandle | undefined): ComputedRef<Uint8Array | undefined> | undefined;\n public getContentBytes(handle: FileHandle | undefined): ComputedRef<Uint8Array | undefined> | undefined {\n if (handle === undefined) return undefined;\n const dataRef = this.getDataRef(handle);\n return computed(() => dataRef.value?.bytes);\n }\n\n public getContentString(handle: FileHandle): ComputedRef<string | undefined>;\n public getContentString(handle: FileHandle | undefined): ComputedRef<string | undefined> | undefined;\n public getContentString(handle: FileHandle | undefined): ComputedRef<string | undefined> | undefined {\n if (handle === undefined) return undefined;\n const dataRef = this.getDataRef(handle);\n return computed(() => dataRef?.value?.str);\n }\n\n public getContentJson<T>(handle: FileHandle, schema: ZodSchema<T>): ComputedRef<T | undefined>;\n public getContentJson<T>(handle: FileHandle | undefined, schema: ZodSchema<T>): ComputedRef<T | undefined> | undefined;\n public getContentJson<T = unknown>(handle: FileHandle): ComputedRef<T | undefined>;\n public getContentJson<T = unknown>(handle: FileHandle | undefined): ComputedRef<T | undefined> | undefined;\n public getContentJson<T>(handle: FileHandle | undefined, schema?: ZodSchema<T>): ComputedRef<T | undefined> | undefined;\n public getContentJson<T>(handle: FileHandle | undefined, schema?: ZodSchema<T>): ComputedRef<T | undefined> | undefined {\n if (handle === undefined) return undefined;\n const dataRef = this.getDataRef(handle);\n return computed(() => (schema === undefined ? dataRef?.value?.rawJson : dataRef?.value?.validatedJson(schema)) as T);\n }\n\n private static globalInstance = new ReactiveFileContent();\n\n public static getContentBytes(handle: FileHandle): ComputedRef<Uint8Array | undefined>;\n public static getContentBytes(handle: FileHandle | undefined): ComputedRef<Uint8Array | undefined> | undefined;\n public static getContentBytes(handle: FileHandle | undefined): ComputedRef<Uint8Array | undefined> | undefined {\n return ReactiveFileContent.globalInstance.getContentBytes(handle);\n }\n\n public static getContentString(handle: FileHandle): ComputedRef<string | undefined>;\n public static getContentString(handle: FileHandle | undefined): ComputedRef<string | undefined> | undefined;\n public static getContentString(handle: FileHandle | undefined): ComputedRef<string | undefined> | undefined {\n return ReactiveFileContent.globalInstance.getContentString(handle);\n }\n\n public static getContentJson<T>(handle: FileHandle, schema: ZodSchema<T>): ComputedRef<T | undefined>;\n public static getContentJson<T>(handle: FileHandle | undefined, schema: ZodSchema<T>): ComputedRef<T | undefined> | undefined;\n public static getContentJson<T = unknown>(handle: FileHandle): ComputedRef<T | undefined>;\n public static getContentJson<T = unknown>(handle: FileHandle | undefined): ComputedRef<T | undefined> | undefined;\n public static getContentJson<T>(handle: FileHandle | undefined, schema?: ZodSchema<T>): ComputedRef<T | undefined> | undefined {\n return ReactiveFileContent.globalInstance.getContentJson(handle, schema);\n }\n}\n"],"names":["DefaultReactiveFileContentOps","FileContentData","bytes","__publicField","schema","_a","_ReactiveFileContent","_ops","ops","LRUCache","key","getRawPlatformaInstance","value","_","handle","refFromMap","newRef","shallowRef","attempt","data","err","resolve","dataRef","computed","_b","ReactiveFileContent"],"mappings":"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"}