@milaboratories/graph-maker 1.1.150 → 1.1.151

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 (69) hide show
  1. package/dist/GraphMaker/components/DragAndDrop/DnDBasketChip.vue.d.ts +3 -10
  2. package/dist/GraphMaker/components/DragAndDrop/DnDBasketChip.vue.d.ts.map +1 -1
  3. package/dist/GraphMaker/components/DragAndDrop/DnDBasketChip.vue.js +42 -83
  4. package/dist/GraphMaker/components/DragAndDrop/DnDBasketChip.vue.js.map +1 -1
  5. package/dist/GraphMaker/components/DragAndDrop/DnDRangeChip.vue.d.ts +1 -5
  6. package/dist/GraphMaker/components/DragAndDrop/DnDRangeChip.vue.d.ts.map +1 -1
  7. package/dist/GraphMaker/components/DragAndDrop/DnDRangeChip.vue.js +43 -85
  8. package/dist/GraphMaker/components/DragAndDrop/DnDRangeChip.vue.js.map +1 -1
  9. package/dist/GraphMaker/components/DragAndDrop/DndBasket.vue.d.ts +1 -3
  10. package/dist/GraphMaker/components/DragAndDrop/DndBasket.vue.d.ts.map +1 -1
  11. package/dist/GraphMaker/components/DragAndDrop/DndBasket.vue.js +73 -85
  12. package/dist/GraphMaker/components/DragAndDrop/DndBasket.vue.js.map +1 -1
  13. package/dist/GraphMaker/components/DragAndDrop/DndDoubleChip.vue.d.ts +1 -5
  14. package/dist/GraphMaker/components/DragAndDrop/DndDoubleChip.vue.d.ts.map +1 -1
  15. package/dist/GraphMaker/components/DragAndDrop/DndDoubleChip.vue.js +51 -91
  16. package/dist/GraphMaker/components/DragAndDrop/DndDoubleChip.vue.js.map +1 -1
  17. package/dist/GraphMaker/components/DragAndDrop/types.d.ts +0 -19
  18. package/dist/GraphMaker/components/DragAndDrop/types.d.ts.map +1 -1
  19. package/dist/GraphMaker/constantsCommon.d.ts +0 -1
  20. package/dist/GraphMaker/constantsCommon.d.ts.map +1 -1
  21. package/dist/GraphMaker/constantsCommon.js +45 -46
  22. package/dist/GraphMaker/constantsCommon.js.map +1 -1
  23. package/dist/GraphMaker/forms/DataMappingForm/DendroForm.vue.d.ts.map +1 -1
  24. package/dist/GraphMaker/forms/DataMappingForm/DendroForm.vue.js +115 -145
  25. package/dist/GraphMaker/forms/DataMappingForm/DendroForm.vue.js.map +1 -1
  26. package/dist/GraphMaker/forms/DataMappingForm/useBaskets.d.ts.map +1 -1
  27. package/dist/GraphMaker/forms/DataMappingForm/useBaskets.js +95 -125
  28. package/dist/GraphMaker/forms/DataMappingForm/useBaskets.js.map +1 -1
  29. package/dist/GraphMaker/forms/DataMappingForm/utils.d.ts.map +1 -1
  30. package/dist/GraphMaker/forms/DataMappingForm/utils.js +77 -153
  31. package/dist/GraphMaker/forms/DataMappingForm/utils.js.map +1 -1
  32. package/dist/GraphMaker/store.d.ts.map +1 -1
  33. package/dist/GraphMaker/store.js +41 -43
  34. package/dist/GraphMaker/store.js.map +1 -1
  35. package/dist/GraphMaker/utils/loadDefaultSources.d.ts +1 -2
  36. package/dist/GraphMaker/utils/loadDefaultSources.d.ts.map +1 -1
  37. package/dist/GraphMaker/utils/loadDefaultSources.js +43 -47
  38. package/dist/GraphMaker/utils/loadDefaultSources.js.map +1 -1
  39. package/dist/GraphMaker/utils/loadUniqueValuesToSave.d.ts.map +1 -1
  40. package/dist/GraphMaker/utils/loadUniqueValuesToSave.js +34 -36
  41. package/dist/GraphMaker/utils/loadUniqueValuesToSave.js.map +1 -1
  42. package/dist/node_modules/@milaboratories/pf-plots/dist/constants.js +6 -5
  43. package/dist/node_modules/@milaboratories/pf-plots/dist/constants.js.map +1 -1
  44. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/ComponentController.js +146 -149
  45. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/ComponentController.js.map +1 -1
  46. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/ControllerBase.js +165 -218
  47. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/ControllerBase.js.map +1 -1
  48. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/bubble.js +95 -102
  49. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/bubble.js.map +1 -1
  50. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/dendro.js +145 -156
  51. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/dendro.js.map +1 -1
  52. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/discrete.js +68 -75
  53. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/discrete.js.map +1 -1
  54. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/heatmap.js +154 -159
  55. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/heatmap.js.map +1 -1
  56. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/histogram.js +48 -55
  57. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/histogram.js.map +1 -1
  58. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/scatterplot-umap.js +114 -122
  59. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/scatterplot-umap.js.map +1 -1
  60. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/scatterplot.js +111 -119
  61. package/dist/node_modules/@milaboratories/pf-plots/dist/controllers/controllersByChartType/scatterplot.js.map +1 -1
  62. package/dist/node_modules/@milaboratories/pf-plots/dist/index.js +4 -4
  63. package/dist/node_modules/@milaboratories/pf-plots/dist/pframe/ColumnsProvider.js +70 -69
  64. package/dist/node_modules/@milaboratories/pf-plots/dist/pframe/ColumnsProvider.js.map +1 -1
  65. package/dist/node_modules/@milaboratories/pf-plots/dist/spec.js +2 -2
  66. package/dist/node_modules/@milaboratories/pf-plots/dist/spec.js.map +1 -1
  67. package/dist/node_modules/@milaboratories/pf-plots/dist/utils.js +183 -187
  68. package/dist/node_modules/@milaboratories/pf-plots/dist/utils.js.map +1 -1
  69. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  import { ListOption } from '@platforma-sdk/ui-vue';
2
- import { ChipInfo, FixedAxisData } from './types.ts';
2
+ import { ChipInfo } from './types.ts';
3
3
  type __VLS_Props = {
4
4
  error: boolean;
5
5
  info: ChipInfo;
@@ -8,16 +8,9 @@ type __VLS_Props = {
8
8
  searchOptions: (sourceId: string, searchStr: string) => Promise<ListOption<string>[]>;
9
9
  loadOptions: (sourceId: string) => Promise<ListOption<string>[] | null>;
10
10
  };
11
- type __VLS_PublicProps = {
12
- modelValue?: Record<string, FixedAxisData>;
13
- } & __VLS_Props;
14
- declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
15
- "update:modelValue": (value: Record<string, FixedAxisData>) => any;
16
- } & {
17
- "update:modelValue": (item: Record<string, FixedAxisData>) => any;
11
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
18
12
  "close-chip": (item: string) => any;
19
- }, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
20
- "onUpdate:modelValue"?: ((value: Record<string, FixedAxisData>) => any) | undefined;
13
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
21
14
  "onClose-chip"?: ((item: string) => any) | undefined;
22
15
  }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
23
16
  chipRoot: HTMLDivElement;
@@ -1 +1 @@
1
- {"version":3,"file":"DnDBasketChip.vue.d.ts","sourceRoot":"","sources":["../../../../src/GraphMaker/components/DragAndDrop/DnDBasketChip.vue"],"names":[],"mappings":"AA4HA,OAAO,EAAE,UAAU,EAAwC,MAAM,uBAAuB,CAAC;AAEzF,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAIrD,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,CAAC,QAAQ,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IACpF,aAAa,EAAE,CAAC,QAAQ,EAAC,MAAM,EAAE,SAAS,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACpF,WAAW,EAAE,CAAC,QAAQ,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;CACxE,CAAC;AAkEF,KAAK,iBAAiB,GAAG;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CAC1C,GAAG,WAAW,CAAC;;;;;;;;;;;;AAyLhB,wBASG"}
1
+ {"version":3,"file":"DnDBasketChip.vue.d.ts","sourceRoot":"","sources":["../../../../src/GraphMaker/components/DragAndDrop/DnDBasketChip.vue"],"names":[],"mappings":"AAsEA,OAAO,EAAE,UAAU,EAAY,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAItC,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,CAAC,QAAQ,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IACpF,aAAa,EAAE,CAAC,QAAQ,EAAC,MAAM,EAAE,SAAS,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACpF,WAAW,EAAE,CAAC,QAAQ,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;CACxE,CAAC;;;;;;;;AA4IF,wBASG"}
@@ -1,117 +1,76 @@
1
- import { defineComponent as w, mergeModels as y, useModel as C, ref as m, computed as I, onMounted as S, watch as b, createElementBlock as s, openBlock as i, createElementVNode as u, createCommentVNode as p, normalizeClass as f, createVNode as D, createBlock as c, unref as d, toDisplayString as x, Fragment as B, renderList as P } from "vue";
2
- import { PlIcon16 as v, PlDropdown as U, PlAutocomplete as $ } from "@platforma-sdk/ui-vue";
3
- import { useStore as A } from "../../store.js";
4
- import H from "../../assets/drag-and-drop/img/chip-close.svg.js";
5
- const L = {
1
+ import { defineComponent as b, ref as c, computed as v, onMounted as C, createElementBlock as s, openBlock as o, createElementVNode as t, normalizeClass as r, createCommentVNode as d, createVNode as g, createBlock as p, unref as i, toDisplayString as u } from "vue";
2
+ import { PlIcon16 as l } from "@platforma-sdk/ui-vue";
3
+ import { useStore as B } from "../../store.js";
4
+ import F from "../../assets/drag-and-drop/img/chip-close.svg.js";
5
+ const M = {
6
6
  key: 0,
7
7
  class: "dnd-basket-chip__handler"
8
- }, N = { class: "dnd-basket-chip__title-wrapper" }, j = ["title"], E = ["title"], R = ["innerHTML"], q = {
9
- key: 0,
10
- class: "dnd-basket-chip__fixed-axes-block"
11
- }, Q = /* @__PURE__ */ w({
8
+ }, O = { class: "dnd-basket-chip__title-wrapper" }, S = ["title"], V = ["title"], w = ["innerHTML"], I = /* @__PURE__ */ b({
12
9
  __name: "DnDBasketChip",
13
- props: /* @__PURE__ */ y({
10
+ props: {
14
11
  error: { type: Boolean },
15
12
  info: {},
16
13
  sortable: { type: Boolean },
17
14
  searchModel: { type: Function },
18
15
  searchOptions: { type: Function },
19
16
  loadOptions: { type: Function }
20
- }, {
21
- modelValue: { default: {} },
22
- modelModifiers: {}
23
- }),
24
- emits: /* @__PURE__ */ y(["close-chip", "update:modelValue"], ["update:modelValue"]),
25
- setup(h, { emit: F }) {
26
- const t = h, T = A(), n = C(h, "modelValue"), V = F, g = m(), k = I(
27
- () => t.info.uniqueValues.join("/")
17
+ },
18
+ emits: ["close-chip"],
19
+ setup(m, { emit: h }) {
20
+ const n = m;
21
+ B();
22
+ const f = h, _ = c(), a = v(
23
+ () => n.info.uniqueValues.join("/")
28
24
  );
29
- function _() {
30
- V("close-chip", t.info.id);
25
+ function k() {
26
+ f("close-chip", n.info.id);
31
27
  }
32
- const M = m(), r = m(t.info.axesToBeFixed.reduce((e, a) => (e[a] = void 0, e), {}));
33
- return S(async () => {
34
- M.value = await t.loadOptions(t.info.id);
35
- }), b(() => T.value.inputGuide.value, async (e) => {
36
- if (!Object.values(r.value).every((a) => a !== void 0) && t.info.axesToBeFixed.every((a) => e.axesToBeFixedSet.has(a))) {
37
- const a = await Promise.all(t.info.axesToBeFixed.map((o) => t.loadOptions(o)));
38
- r.value = t.info.axesToBeFixed.reduce((o, l, O) => (o[l] = a[O], o), {});
39
- }
40
- }, { immediate: !0 }), b(() => r.value, async (e) => {
41
- for (let a = 0; a < t.info.axesToBeFixed.length; a++) {
42
- const o = t.info.axesToBeFixed[a];
43
- if (n.value[o].axisValue !== void 0 || e[o] === void 0)
44
- continue;
45
- let l = e[o];
46
- e[o] === null && (l = await t.searchOptions(o, "")), l != null && l.length && (n.value[o].axisValue = l[0].value), V("update:modelValue", n.value);
47
- }
48
- }, { immediate: !0 }), (e, a) => (i(), s("div", {
28
+ const y = c();
29
+ return C(async () => {
30
+ y.value = await n.loadOptions(n.info.id);
31
+ }), (e, D) => (o(), s("div", {
49
32
  ref_key: "chipRoot",
50
- ref: g,
33
+ ref: _,
51
34
  class: "dnd-basket-chip__group"
52
35
  }, [
53
- u("div", {
54
- class: f([{ error: e.error, sortable: e.sortable }, "dnd-basket-chip"])
36
+ t("div", {
37
+ class: r([{ error: e.error, sortable: e.sortable }, "dnd-basket-chip"])
55
38
  }, [
56
- u("div", {
57
- class: f(["dnd-basket-chip__icon", { error: e.error }])
39
+ t("div", {
40
+ class: r(["dnd-basket-chip__icon", { error: e.error }])
58
41
  }, [
59
- e.error ? (i(), c(d(v), {
42
+ e.error ? (o(), p(i(l), {
60
43
  key: 0,
61
44
  name: "warning",
62
- class: f({ error: e.error })
63
- }, null, 8, ["class"])) : (i(), c(d(v), {
45
+ class: r({ error: e.error })
46
+ }, null, 8, ["class"])) : (o(), p(i(l), {
64
47
  key: 1,
65
48
  name: e.info.isSubsetFilter ? "cell-type-subset" : e.info.type === "String" ? "cell-type-txt" : "cell-type-num"
66
49
  }, null, 8, ["name"]))
67
50
  ], 2),
68
- e.sortable ? (i(), s("div", L)) : p("", !0),
69
- D(d(v), { name: "drag-dots" }),
70
- u("div", N, [
71
- u("div", {
51
+ e.sortable ? (o(), s("div", M)) : d("", !0),
52
+ g(i(l), { name: "drag-dots" }),
53
+ t("div", O, [
54
+ t("div", {
72
55
  class: "dnd-basket-chip__title",
73
56
  title: e.info.title
74
- }, x(e.info.title), 9, j),
75
- e.info.nonHomogenous ? (i(), s("div", {
57
+ }, u(e.info.title), 9, S),
58
+ e.info.nonHomogenous ? (o(), s("div", {
76
59
  key: 0,
77
60
  class: "dnd-basket-chip__sub-title",
78
- title: k.value
79
- }, x(k.value), 9, E)) : p("", !0)
61
+ title: a.value
62
+ }, u(a.value), 9, V)) : d("", !0)
80
63
  ]),
81
- u("div", {
82
- innerHTML: d(H),
64
+ t("div", {
65
+ innerHTML: i(F),
83
66
  class: "dnd-basket-chip__icon-close",
84
- onClick: _
85
- }, null, 8, R)
86
- ], 2),
87
- e.info.axesToBeFixed.length > 0 ? (i(), s("div", q, [
88
- (i(!0), s(B, null, P(e.info.axesToBeFixed, (o) => (i(), s(B, { key: o }, [
89
- n.value[o] && r.value[o] !== null ? (i(), c(d(U), {
90
- key: 0,
91
- modelValue: n.value[o].axisValue,
92
- "onUpdate:modelValue": [
93
- (l) => n.value[o].axisValue = l,
94
- a[0] || (a[0] = (l) => e.$emit("update:modelValue", n.value))
95
- ],
96
- options: r.value[o],
97
- label: e.info.axesToBeFixedInfo[o].title
98
- }, null, 8, ["modelValue", "onUpdate:modelValue", "options", "label"])) : n.value[o] ? (i(), c(d($), {
99
- key: 1,
100
- modelValue: n.value[o].axisValue,
101
- "onUpdate:modelValue": [
102
- (l) => n.value[o].axisValue = l,
103
- a[1] || (a[1] = (l) => e.$emit("update:modelValue", n.value))
104
- ],
105
- "options-search": (l) => e.searchOptions(o, l),
106
- "model-search": (l) => e.searchModel(o, l),
107
- label: e.info.axesToBeFixedInfo[o].title
108
- }, null, 8, ["modelValue", "onUpdate:modelValue", "options-search", "model-search", "label"])) : p("", !0)
109
- ], 64))), 128))
110
- ])) : p("", !0)
67
+ onClick: k
68
+ }, null, 8, w)
69
+ ], 2)
111
70
  ], 512));
112
71
  }
113
72
  });
114
73
  export {
115
- Q as default
74
+ I as default
116
75
  };
117
76
  //# sourceMappingURL=DnDBasketChip.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DnDBasketChip.vue.js","sources":["../../../../src/GraphMaker/components/DragAndDrop/DnDBasketChip.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ListOption, PlAutocomplete, PlDropdown, PlIcon16 } from '@platforma-sdk/ui-vue';\nimport { computed, onMounted, ref, watch } from 'vue';\nimport { ChipInfo, FixedAxisData } from './types.ts';\nimport { useStore } from '../../store';\nimport CloseChipIcon from '../../assets/drag-and-drop/img/chip-close.svg?raw';\n\nconst props = defineProps<{\n error: boolean;\n info: ChipInfo;\n sortable?: boolean;\n searchModel: (sourceId:string, selectedValue:string) => Promise<ListOption<string>>;\n searchOptions: (sourceId:string, searchStr:string) => Promise<ListOption<string>[]>;\n loadOptions: (sourceId:string) => Promise<ListOption<string>[] | null>;\n}>();\n\nconst store = useStore();\n\nconst fixedAxesModel = defineModel<Record<string, FixedAxisData>>({default: {}});\n\nconst emit = defineEmits<{\n (e: 'close-chip', item: ChipInfo['id']): void;\n (e: 'update:modelValue', item: Record<string, FixedAxisData>): void;\n}>();\n\nconst chipRoot = ref<HTMLElement>();\n\nconst dimensionsTitle = computed(() =>\n props.info.uniqueValues.join('/')\n);\n\nfunction closeChip() {\n emit('close-chip', props.info['id']);\n}\n\nconst preloadedOptions = ref<ListOption[]|null|undefined>();\nconst preloadedOptionsForAxesToBeFixed = ref<Record<string, ListOption[] | null | undefined>>(props.info.axesToBeFixed.reduce((res, v) => {\n res[v] = undefined;\n return res;\n}, {} as Record<string, ListOption[] | null | undefined>))\nonMounted(async () => {\n preloadedOptions.value = await props.loadOptions(props.info.id);\n});\nwatch(() => store.value.inputGuide.value, async (ig) => {\n if (Object.values(preloadedOptionsForAxesToBeFixed.value).every(v => v !== undefined)) {\n return;\n }\n if (props.info.axesToBeFixed.every((axisId) => ig.axesToBeFixedSet.has(axisId))) {\n const axesToBeFixedOptions = await Promise.all(props.info.axesToBeFixed.map((id) => props.loadOptions(id)));\n preloadedOptionsForAxesToBeFixed.value = props.info.axesToBeFixed.reduce((res, v, idx) => {\n res[v] = axesToBeFixedOptions[idx];\n return res;\n }, {} as Record<string, ListOption[] | null | undefined>)\n }\n}, {immediate: true});\n\nwatch(() => preloadedOptionsForAxesToBeFixed.value, async (opts) => {\n for (let i = 0; i < props.info.axesToBeFixed.length; i++) {\n const axisId = props.info.axesToBeFixed[i];\n if (fixedAxesModel.value[axisId].axisValue !== undefined || opts[axisId] === undefined) {\n continue;\n }\n let availableOptions = opts[axisId];\n if (opts[axisId] === null) {\n availableOptions = await props.searchOptions(axisId, '');\n }\n if (availableOptions?.length) {\n fixedAxesModel.value[axisId].axisValue = availableOptions[0].value as string;\n }\n emit('update:modelValue', fixedAxesModel.value);\n }\n}, {immediate: true});\n\n</script>\n<template>\n <div ref=\"chipRoot\" class=\"dnd-basket-chip__group\">\n <div :class=\"{ error, sortable }\" class=\"dnd-basket-chip\">\n <div class=\"dnd-basket-chip__icon\" :class=\"{error}\">\n <PlIcon16 v-if=\"error\" name=\"warning\" :class=\"{error}\" />\n <PlIcon16 v-else :name=\"info.isSubsetFilter ? 'cell-type-subset' : info.type === 'String' ? 'cell-type-txt' : 'cell-type-num'\"/>\n </div>\n <div v-if=\"sortable\" class=\"dnd-basket-chip__handler\"></div>\n <PlIcon16 name=\"drag-dots\" />\n <div class=\"dnd-basket-chip__title-wrapper\">\n <div class=\"dnd-basket-chip__title\" :title=\"info.title\">\n {{ info.title }}\n </div>\n <div\n v-if=\"info.nonHomogenous\"\n class=\"dnd-basket-chip__sub-title\"\n :title=\"dimensionsTitle\"\n >\n {{ dimensionsTitle }}\n </div>\n </div>\n <div\n v-html=\"CloseChipIcon\"\n class=\"dnd-basket-chip__icon-close\"\n @click=\"closeChip\"\n />\n </div>\n <div class=\"dnd-basket-chip__fixed-axes-block\" v-if=\"info.axesToBeFixed.length > 0\">\n <template v-for=\"id in info.axesToBeFixed\" :key=\"id\">\n <PlDropdown\n v-if=\"fixedAxesModel[id] && preloadedOptionsForAxesToBeFixed[id] !== null\"\n v-model=\"fixedAxesModel[id].axisValue\"\n @update:model-value=\"$emit('update:modelValue', fixedAxesModel)\"\n :options=\"preloadedOptionsForAxesToBeFixed[id]\"\n :label=\"info.axesToBeFixedInfo[id].title\"\n />\n <PlAutocomplete\n v-else-if=\"fixedAxesModel[id]\"\n v-model=\"fixedAxesModel[id].axisValue\"\n @update:model-value=\"$emit('update:modelValue', fixedAxesModel)\"\n :options-search=\"(str) => searchOptions(id, str)\"\n :model-search=\"(v) => searchModel(id, v as string)\"\n :label=\"info.axesToBeFixedInfo[id].title\"\n />\n </template>\n </div>\n </div>\n</template>\n"],"names":["props","__props","store","useStore","fixedAxesModel","_useModel","emit","__emit","chipRoot","ref","dimensionsTitle","computed","closeChip","preloadedOptions","preloadedOptionsForAxesToBeFixed","res","v","onMounted","watch","ig","axisId","axesToBeFixedOptions","id","idx","opts","i","availableOptions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAOA,UAAMA,IAAQC,GASRC,IAAQC,EAAA,GAERC,IAAiBC,EAA0CJ,GAAA,YAAc,GAEzEK,IAAOC,GAKPC,IAAWC,EAAA,GAEXC,IAAkBC;AAAA,MAAS,MAC/BX,EAAM,KAAK,aAAa,KAAK,GAAG;AAAA,IAAA;AAGlC,aAASY,IAAY;AACnB,MAAAN,EAAK,cAAcN,EAAM,KAAK,EAAK;AAAA,IACrC;AAEA,UAAMa,IAAmBJ,EAAA,GACnBK,IAAmCL,EAAqDT,EAAM,KAAK,cAAc,OAAO,CAACe,GAAKC,OAClID,EAAIC,CAAC,IAAI,QACFD,IACN,CAAA,CAAqD,CAAC;AACzD,WAAAE,EAAU,YAAY;AACpB,MAAAJ,EAAiB,QAAQ,MAAMb,EAAM,YAAYA,EAAM,KAAK,EAAE;AAAA,IAChE,CAAC,GACDkB,EAAM,MAAMhB,EAAM,MAAM,WAAW,OAAO,OAAOiB,MAAO;AACtD,UAAI,QAAO,OAAOL,EAAiC,KAAK,EAAE,MAAM,CAAAE,MAAKA,MAAM,MAAS,KAGhFhB,EAAM,KAAK,cAAc,MAAM,CAACoB,MAAWD,EAAG,iBAAiB,IAAIC,CAAM,CAAC,GAAG;AAC/E,cAAMC,IAAuB,MAAM,QAAQ,IAAIrB,EAAM,KAAK,cAAc,IAAI,CAACsB,MAAOtB,EAAM,YAAYsB,CAAE,CAAC,CAAC;AAC1G,QAAAR,EAAiC,QAAQd,EAAM,KAAK,cAAc,OAAO,CAACe,GAAKC,GAAGO,OAChFR,EAAIC,CAAC,IAAIK,EAAqBE,CAAG,GAC1BR,IACN,CAAA,CAAqD;AAAA,MAC1D;AAAA,IACF,GAAG,EAAC,WAAW,IAAK,GAEpBG,EAAM,MAAMJ,EAAiC,OAAO,OAAOU,MAAS;AAClE,eAASC,IAAI,GAAGA,IAAIzB,EAAM,KAAK,cAAc,QAAQyB,KAAK;AACxD,cAAML,IAASpB,EAAM,KAAK,cAAcyB,CAAC;AACzC,YAAIrB,EAAe,MAAMgB,CAAM,EAAE,cAAc,UAAaI,EAAKJ,CAAM,MAAM;AAC3E;AAEF,YAAIM,IAAmBF,EAAKJ,CAAM;AAClC,QAAII,EAAKJ,CAAM,MAAM,SACnBM,IAAmB,MAAM1B,EAAM,cAAcoB,GAAQ,EAAE,IAErDM,KAAA,QAAAA,EAAkB,WACpBtB,EAAe,MAAMgB,CAAM,EAAE,YAAYM,EAAiB,CAAC,EAAE,QAE/DpB,EAAK,qBAAqBF,EAAe,KAAK;AAAA,MAChD;AAAA,IACF,GAAG,EAAC,WAAW,IAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"DnDBasketChip.vue.js","sources":["../../../../src/GraphMaker/components/DragAndDrop/DnDBasketChip.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ListOption, PlIcon16 } from '@platforma-sdk/ui-vue';\nimport { computed, onMounted, ref } from 'vue';\nimport { ChipInfo } from './types.ts';\nimport { useStore } from '../../store';\nimport CloseChipIcon from '../../assets/drag-and-drop/img/chip-close.svg?raw';\n\nconst props = defineProps<{\n error: boolean;\n info: ChipInfo;\n sortable?: boolean;\n searchModel: (sourceId:string, selectedValue:string) => Promise<ListOption<string>>;\n searchOptions: (sourceId:string, searchStr:string) => Promise<ListOption<string>[]>;\n loadOptions: (sourceId:string) => Promise<ListOption<string>[] | null>;\n}>();\n\nconst store = useStore();\n\n\nconst emit = defineEmits<{\n (e: 'close-chip', item: ChipInfo['id']): void;\n}>();\n\nconst chipRoot = ref<HTMLElement>();\n\nconst dimensionsTitle = computed(() =>\n props.info.uniqueValues.join('/')\n);\n\nfunction closeChip() {\n emit('close-chip', props.info['id']);\n}\n\nconst preloadedOptions = ref<ListOption[]|null|undefined>();\nonMounted(async () => {\n preloadedOptions.value = await props.loadOptions(props.info.id);\n});\n\n</script>\n<template>\n <div ref=\"chipRoot\" class=\"dnd-basket-chip__group\">\n <div :class=\"{ error, sortable }\" class=\"dnd-basket-chip\">\n <div class=\"dnd-basket-chip__icon\" :class=\"{error}\">\n <PlIcon16 v-if=\"error\" name=\"warning\" :class=\"{error}\" />\n <PlIcon16 v-else :name=\"info.isSubsetFilter ? 'cell-type-subset' : info.type === 'String' ? 'cell-type-txt' : 'cell-type-num'\"/>\n </div>\n <div v-if=\"sortable\" class=\"dnd-basket-chip__handler\"></div>\n <PlIcon16 name=\"drag-dots\" />\n <div class=\"dnd-basket-chip__title-wrapper\">\n <div class=\"dnd-basket-chip__title\" :title=\"info.title\">\n {{ info.title }}\n </div>\n <div\n v-if=\"info.nonHomogenous\"\n class=\"dnd-basket-chip__sub-title\"\n :title=\"dimensionsTitle\"\n >\n {{ dimensionsTitle }}\n </div>\n </div>\n <div\n v-html=\"CloseChipIcon\"\n class=\"dnd-basket-chip__icon-close\"\n @click=\"closeChip\"\n />\n </div>\n </div>\n</template>\n"],"names":["props","__props","useStore","emit","__emit","chipRoot","ref","dimensionsTitle","computed","closeChip","preloadedOptions","onMounted"],"mappings":";;;;;;;;;;;;;;;;;;;AAOA,UAAMA,IAAQC;AASA,IAAAC,EAAA;AAGd,UAAMC,IAAOC,GAIPC,IAAWC,EAAA,GAEXC,IAAkBC;AAAA,MAAS,MAC/BR,EAAM,KAAK,aAAa,KAAK,GAAG;AAAA,IAAA;AAGlC,aAASS,IAAY;AACnB,MAAAN,EAAK,cAAcH,EAAM,KAAK,EAAK;AAAA,IACrC;AAEA,UAAMU,IAAmBJ,EAAA;AACzB,WAAAK,EAAU,YAAY;AACpB,MAAAD,EAAiB,QAAQ,MAAMV,EAAM,YAAYA,EAAM,KAAK,EAAE;AAAA,IAChE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- import { ChipInfo, FixedAxisData } from './types.ts';
1
+ import { ChipInfo } from './types.ts';
2
2
  import { ListOption } from '@platforma-sdk/ui-vue';
3
3
  type __VLS_Props = {
4
4
  info: ChipInfo;
@@ -9,18 +9,14 @@ type __VLS_Props = {
9
9
  };
10
10
  type __VLS_PublicProps = {
11
11
  'filter': any;
12
- 'fixedAxes': Record<string, FixedAxisData>;
13
12
  } & __VLS_Props;
14
13
  declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
15
14
  "update:filter": (value: any) => any;
16
- "update:fixedAxes": (value: Record<string, FixedAxisData>) => any;
17
15
  } & {
18
16
  "close-chip": (id: string) => any;
19
- "update:fixedAxes": (id: Record<string, FixedAxisData>) => any;
20
17
  }, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
21
18
  "onClose-chip"?: ((id: string) => any) | undefined;
22
19
  "onUpdate:filter"?: ((value: any) => any) | undefined;
23
- "onUpdate:fixedAxes"?: ((value: Record<string, FixedAxisData>) => any) | undefined;
24
20
  }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
25
21
  chipRoot: HTMLDivElement;
26
22
  }, HTMLDivElement>;
@@ -1 +1 @@
1
- {"version":3,"file":"DnDRangeChip.vue.d.ts","sourceRoot":"","sources":["../../../../src/GraphMaker/components/DragAndDrop/DnDRangeChip.vue"],"names":[],"mappings":"AAmIA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGrD,OAAO,EAAwC,UAAU,EAAiB,MAAM,uBAAuB,CAAC;AAGxG,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,CAAC,QAAQ,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IACpF,aAAa,EAAE,CAAC,QAAQ,EAAC,MAAM,EAAE,SAAS,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACpF,WAAW,EAAE,CAAC,QAAQ,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;CACxE,CAAC;AA8DF,KAAK,iBAAiB,GAAG;IACzB,QAAQ,EAAE,GAAG,CAAC;IACd,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CAC1C,GAAG,WAAW,CAAC;;;;;;;;;;;;;;AAgMhB,wBASG"}
1
+ {"version":3,"file":"DnDRangeChip.vue.d.ts","sourceRoot":"","sources":["../../../../src/GraphMaker/components/DragAndDrop/DnDRangeChip.vue"],"names":[],"mappings":"AA4EA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,OAAO,EAAY,UAAU,EAAiB,MAAM,uBAAuB,CAAC;AAG5E,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,CAAC,QAAQ,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IACpF,aAAa,EAAE,CAAC,QAAQ,EAAC,MAAM,EAAE,SAAS,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACpF,WAAW,EAAE,CAAC,QAAQ,EAAC,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;CACxE,CAAC;AA0BF,KAAK,iBAAiB,GAAG;IACzB,QAAQ,EAAE,GAAG,CAAC;CACb,GAAG,WAAW,CAAC;;;;;;;;;;;AA0HhB,wBASG"}
@@ -1,16 +1,13 @@
1
- import { defineComponent as M, mergeModels as V, useModel as b, reactive as A, watch as f, ref as C, createElementBlock as m, openBlock as d, createElementVNode as a, createCommentVNode as _, normalizeClass as w, createVNode as x, unref as s, toDisplayString as I, Fragment as B, renderList as U, createBlock as F } from "vue";
2
- import $ from "../../assets/drag-and-drop/img/chip-close.svg.js";
3
- import { PlIcon16 as P, PlNumberField as T, PlDropdown as D, PlAutocomplete as E } from "@platforma-sdk/ui-vue";
4
- import { useStore as N } from "../../store.js";
5
- const L = {
1
+ import { defineComponent as _, mergeModels as u, useModel as f, reactive as h, watch as b, createElementBlock as v, openBlock as M, createElementVNode as e, normalizeClass as g, createVNode as s, unref as l, toDisplayString as O } from "vue";
2
+ import V from "../../assets/drag-and-drop/img/chip-close.svg.js";
3
+ import { PlIcon16 as C, PlNumberField as p } from "@platforma-sdk/ui-vue";
4
+ import { useStore as y } from "../../store.js";
5
+ const k = {
6
6
  ref: "chipRoot",
7
7
  class: "dnd-double-chip__group"
8
- }, S = { class: "dnd-double-chip__top" }, q = { class: "dnd-double-chip__icon" }, H = ["title"], R = { class: "dnd-double-chip__title" }, j = ["innerHTML"], z = { class: "dnd-double-chip__bottom-range" }, G = { class: "dnd-double-chip__bottom-range-row" }, J = { class: "dnd-double-chip__bottom-range-row" }, K = {
9
- key: 0,
10
- class: "dnd-basket-chip__fixed-axes-block"
11
- }, Z = /* @__PURE__ */ M({
8
+ }, B = { class: "dnd-double-chip__top" }, w = { class: "dnd-double-chip__icon" }, E = ["title"], F = { class: "dnd-double-chip__title" }, I = ["innerHTML"], D = { class: "dnd-double-chip__bottom-range" }, N = { class: "dnd-double-chip__bottom-range-row" }, x = { class: "dnd-double-chip__bottom-range-row" }, T = /* @__PURE__ */ _({
12
9
  __name: "DnDRangeChip",
13
- props: /* @__PURE__ */ V({
10
+ props: /* @__PURE__ */ u({
14
11
  info: {},
15
12
  error: { type: Boolean },
16
13
  searchModel: { type: Function },
@@ -18,107 +15,68 @@ const L = {
18
15
  loadOptions: { type: Function }
19
16
  }, {
20
17
  filter: { required: !0 },
21
- filterModifiers: {},
22
- fixedAxes: { required: !0 },
23
- fixedAxesModifiers: {}
18
+ filterModifiers: {}
24
19
  }),
25
- emits: /* @__PURE__ */ V(["close-chip", "update:fixedAxes"], ["update:filter", "update:fixedAxes"]),
26
- setup(p, { emit: y }) {
27
- var v, h;
28
- const n = p, O = N(), g = y, c = b(p, "filter"), i = b(p, "fixedAxes"), u = A({
29
- min: (v = c.value) == null ? void 0 : v[0],
30
- max: (h = c.value) == null ? void 0 : h[1]
20
+ emits: /* @__PURE__ */ u(["close-chip"], ["update:filter"]),
21
+ setup(r, { emit: H }) {
22
+ var a, c;
23
+ const m = r;
24
+ y();
25
+ const d = f(r, "filter"), n = h({
26
+ min: (a = d.value) == null ? void 0 : a[0],
27
+ max: (c = d.value) == null ? void 0 : c[1]
31
28
  });
32
- f(
33
- () => u,
29
+ return b(
30
+ () => n,
34
31
  (o) => {
35
- c.value = o;
32
+ d.value = o;
36
33
  },
37
34
  { deep: !0 }
38
- );
39
- const r = C(n.info.axesToBeFixed.reduce((o, l) => (o[l] = void 0, o), {}));
40
- return f(() => O.value.inputGuide.value, async (o) => {
41
- if (!Object.values(r.value).every((l) => l !== void 0) && n.info.axesToBeFixed.every((l) => o.axesToBeFixedSet.has(l))) {
42
- const l = await Promise.all(n.info.axesToBeFixed.map((e) => n.loadOptions(e)));
43
- r.value = n.info.axesToBeFixed.reduce((e, t, k) => (e[t] = l[k], e), {});
44
- }
45
- }, { immediate: !0 }), f(() => r.value, async (o) => {
46
- for (let l = 0; l < n.info.axesToBeFixed.length; l++) {
47
- const e = n.info.axesToBeFixed[l];
48
- if (i.value[e].axisValue !== void 0 || o[e] === void 0)
49
- continue;
50
- let t = o[e];
51
- o[e] === null && (t = await n.searchOptions(e, "")), t != null && t.length && (i.value[e].axisValue = t[0].value), g("update:fixedAxes", i.value);
52
- }
53
- }, { immediate: !0 }), (o, l) => (d(), m("div", L, [
54
- a("div", {
55
- class: w([{ error: o.error }, "dnd-double-chip"])
35
+ ), (o, t) => (M(), v("div", k, [
36
+ e("div", {
37
+ class: g([{ error: o.error }, "dnd-double-chip"])
56
38
  }, [
57
- a("div", S, [
58
- a("div", q, [
59
- x(s(P), { name: "cell-type-num" })
39
+ e("div", B, [
40
+ e("div", w, [
41
+ s(l(C), { name: "cell-type-num" })
60
42
  ]),
61
- a("div", {
43
+ e("div", {
62
44
  class: "dnd-double-chip__title-wrapper",
63
45
  title: o.info.title
64
46
  }, [
65
- a("div", R, I(o.info.title), 1)
66
- ], 8, H),
67
- a("div", {
68
- innerHTML: s($),
47
+ e("div", F, O(o.info.title), 1)
48
+ ], 8, E),
49
+ e("div", {
50
+ innerHTML: l(V),
69
51
  class: "dnd-double-chip__icon-close",
70
- onClick: l[0] || (l[0] = (e) => o.$emit("close-chip", n.info.id))
71
- }, null, 8, j)
52
+ onClick: t[0] || (t[0] = (i) => o.$emit("close-chip", m.info.id))
53
+ }, null, 8, I)
72
54
  ]),
73
- a("div", z, [
74
- a("div", G, [
75
- x(s(T), {
55
+ e("div", D, [
56
+ e("div", N, [
57
+ s(l(p), {
76
58
  label: "Min",
77
- modelValue: u.min,
78
- "onUpdate:modelValue": l[1] || (l[1] = (e) => u.min = e),
59
+ modelValue: n.min,
60
+ "onUpdate:modelValue": t[1] || (t[1] = (i) => n.min = i),
79
61
  updateOnEnterOrClickOutside: !0,
80
62
  useIncrementButtons: !1
81
63
  }, null, 8, ["modelValue"])
82
64
  ]),
83
- a("div", J, [
84
- x(s(T), {
65
+ e("div", x, [
66
+ s(l(p), {
85
67
  label: "Max",
86
- modelValue: u.max,
87
- "onUpdate:modelValue": l[2] || (l[2] = (e) => u.max = e),
68
+ modelValue: n.max,
69
+ "onUpdate:modelValue": t[2] || (t[2] = (i) => n.max = i),
88
70
  updateOnEnterOrClickOutside: !0,
89
71
  useIncrementButtons: !1
90
72
  }, null, 8, ["modelValue"])
91
73
  ])
92
74
  ])
93
- ], 2),
94
- o.info.axesToBeFixed.length > 0 ? (d(), m("div", K, [
95
- (d(!0), m(B, null, U(o.info.axesToBeFixed, (e) => (d(), m(B, { key: e }, [
96
- i.value[e] && r.value[e] !== null ? (d(), F(s(D), {
97
- key: 0,
98
- modelValue: i.value[e].axisValue,
99
- "onUpdate:modelValue": [
100
- (t) => i.value[e].axisValue = t,
101
- l[3] || (l[3] = (t) => o.$emit("update:fixedAxes", i.value))
102
- ],
103
- options: r.value[e],
104
- label: o.info.axesToBeFixedInfo[e].title
105
- }, null, 8, ["modelValue", "onUpdate:modelValue", "options", "label"])) : i.value[e] ? (d(), F(s(E), {
106
- key: 1,
107
- modelValue: i.value[e].axisValue,
108
- "onUpdate:modelValue": [
109
- (t) => i.value[e].axisValue = t,
110
- l[4] || (l[4] = (t) => o.$emit("update:fixedAxes", i.value))
111
- ],
112
- "options-search": (t) => o.searchOptions(e, t),
113
- "model-search": (t) => o.searchModel(e, t),
114
- label: o.info.axesToBeFixedInfo[e].title
115
- }, null, 8, ["modelValue", "onUpdate:modelValue", "options-search", "model-search", "label"])) : _("", !0)
116
- ], 64))), 128))
117
- ])) : _("", !0)
75
+ ], 2)
118
76
  ], 512));
119
77
  }
120
78
  });
121
79
  export {
122
- Z as default
80
+ T as default
123
81
  };
124
82
  //# sourceMappingURL=DnDRangeChip.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DnDRangeChip.vue.js","sources":["../../../../src/GraphMaker/components/DragAndDrop/DnDRangeChip.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ChipInfo, FixedAxisData } from './types.ts';\nimport CloseIcon from '../../assets/drag-and-drop/img/chip-close.svg?raw';\nimport { reactive, watch, ref } from 'vue';\nimport { PlAutocomplete, PlDropdown, PlIcon16, ListOption, PlNumberField } from '@platforma-sdk/ui-vue';\nimport { useStore } from '../../store';\n\nconst props = defineProps<{\n info: ChipInfo;\n error: boolean;\n searchModel: (sourceId:string, selectedValue:string) => Promise<ListOption<string>>;\n searchOptions: (sourceId:string, searchStr:string) => Promise<ListOption<string>[]>;\n loadOptions: (sourceId:string) => Promise<ListOption<string>[] | null>;\n}>();\n\nconst store = useStore();\n\nconst emit = defineEmits<{\n (e: 'close-chip', id: ChipInfo['id']): void;\n (e: 'update:fixedAxes', id: Record<string, FixedAxisData>): void;\n}>();\n\nconst filterModel = defineModel('filter', { required: true });\nconst fixedAxesModel = defineModel<Record<string, FixedAxisData>>('fixedAxes', {required: true});\n\nconst range = reactive({\n min: (filterModel.value as number[])?.[0] as number | undefined,\n max: (filterModel.value as number[])?.[1] as number | undefined\n});\n\nwatch(() => range, (rangeValue) => {\n filterModel.value = rangeValue;\n }, { deep: true }\n);\n\nconst preloadedOptionsForAxesToBeFixed = ref<Record<string, ListOption[] | null | undefined>>(props.info.axesToBeFixed.reduce((res, v) => {\n res[v] = undefined;\n return res;\n}, {} as Record<string, ListOption[] | null | undefined>));\n\nwatch(() => store.value.inputGuide.value, async (ig) => {\n if (Object.values(preloadedOptionsForAxesToBeFixed.value).every(v => v !== undefined)) {\n return;\n }\n if (props.info.axesToBeFixed.every((axisId) => ig.axesToBeFixedSet.has(axisId))) {\n const axesToBeFixedOptions = await Promise.all(props.info.axesToBeFixed.map((id) => props.loadOptions(id)));\n preloadedOptionsForAxesToBeFixed.value = props.info.axesToBeFixed.reduce((res, v, idx) => {\n res[v] = axesToBeFixedOptions[idx];\n return res;\n }, {} as Record<string, ListOption[] | null | undefined>)\n }\n}, {immediate: true});\n\nwatch(() => preloadedOptionsForAxesToBeFixed.value, async (opts) => {\n for (let i = 0; i < props.info.axesToBeFixed.length; i++) {\n const axisId = props.info.axesToBeFixed[i];\n if (fixedAxesModel.value[axisId].axisValue !== undefined || opts[axisId] === undefined) {\n continue;\n }\n let availableOptions = opts[axisId];\n if (opts[axisId] === null) {\n availableOptions = await props.searchOptions(axisId, '');\n }\n if (availableOptions?.length) {\n fixedAxesModel.value[axisId].axisValue = availableOptions[0].value as string;\n }\n emit('update:fixedAxes', fixedAxesModel.value);\n }\n}, {immediate: true});\n</script>\n\n<template>\n <div ref=\"chipRoot\" class=\"dnd-double-chip__group\">\n <div :class=\"{ error }\" class=\"dnd-double-chip\">\n <div class=\"dnd-double-chip__top\">\n <div class=\"dnd-double-chip__icon\">\n <PlIcon16 name=\"cell-type-num\" />\n </div>\n <div class=\"dnd-double-chip__title-wrapper\" :title=\"info.title\">\n <div class=\"dnd-double-chip__title\">\n {{ info.title }}\n </div>\n </div>\n <div\n v-html=\"CloseIcon\"\n class=\"dnd-double-chip__icon-close\"\n @click=\"$emit('close-chip', props.info.id)\"\n />\n </div>\n <div class=\"dnd-double-chip__bottom-range\">\n <div class=\"dnd-double-chip__bottom-range-row\">\n <PlNumberField\n label=\"Min\"\n v-model=\"range.min\"\n :updateOnEnterOrClickOutside=\"true\"\n :useIncrementButtons=\"false\"\n />\n </div>\n <div class=\"dnd-double-chip__bottom-range-row\">\n <PlNumberField\n label=\"Max\"\n v-model=\"range.max\"\n :updateOnEnterOrClickOutside=\"true\"\n :useIncrementButtons=\"false\"\n />\n </div>\n </div>\n </div>\n <div class=\"dnd-basket-chip__fixed-axes-block\" v-if=\"info.axesToBeFixed.length > 0\">\n <template v-for=\"id in info.axesToBeFixed\" :key=\"id\">\n <PlDropdown\n v-if=\"fixedAxesModel[id] && preloadedOptionsForAxesToBeFixed[id] !== null\"\n v-model=\"fixedAxesModel[id].axisValue\"\n @update:model-value=\"$emit('update:fixedAxes', fixedAxesModel)\"\n :options=\"preloadedOptionsForAxesToBeFixed[id]\"\n :label=\"info.axesToBeFixedInfo[id].title\"\n />\n <PlAutocomplete\n v-else-if=\"fixedAxesModel[id]\"\n v-model=\"fixedAxesModel[id].axisValue\"\n @update:model-value=\"$emit('update:fixedAxes', fixedAxesModel)\"\n :options-search=\"(str) => searchOptions(id, str)\"\n :model-search=\"(v) => searchModel(id, v as string)\"\n :label=\"info.axesToBeFixedInfo[id].title\"\n />\n </template>\n </div>\n </div>\n</template>\n"],"names":["props","__props","store","useStore","emit","__emit","filterModel","_useModel","fixedAxesModel","range","reactive","_a","_b","watch","rangeValue","preloadedOptionsForAxesToBeFixed","ref","res","v","ig","axisId","axesToBeFixedOptions","id","idx","opts","i","availableOptions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,UAAMA,IAAQC,GAQRC,IAAQC,EAAA,GAERC,IAAOC,GAKPC,IAAcC,EAAWN,GAAC,QAA4B,GACtDO,IAAiBD,EAA0CN,GAAC,WAA6B,GAEzFQ,IAAQC,EAAS;AAAA,MACrB,MAAMC,IAAAL,EAAY,UAAZ,gBAAAK,EAAiC;AAAA,MACvC,MAAMC,IAAAN,EAAY,UAAZ,gBAAAM,EAAiC;AAAA,IAAC,CACzC;AAED,IAAAC;AAAA,MAAM,MAAMJ;AAAA,MAAO,CAACK,MAAe;AAC/B,QAAAR,EAAY,QAAQQ;AAAA,MACtB;AAAA,MAAG,EAAE,MAAM,GAAA;AAAA,IAAK;AAGlB,UAAMC,IAAmCC,EAAqDhB,EAAM,KAAK,cAAc,OAAO,CAACiB,GAAKC,OAClID,EAAIC,CAAC,IAAI,QACFD,IACN,CAAA,CAAqD,CAAC;AAEzD,WAAAJ,EAAM,MAAMX,EAAM,MAAM,WAAW,OAAO,OAAOiB,MAAO;AACtD,UAAI,QAAO,OAAOJ,EAAiC,KAAK,EAAE,MAAM,CAAAG,MAAKA,MAAM,MAAS,KAGhFlB,EAAM,KAAK,cAAc,MAAM,CAACoB,MAAWD,EAAG,iBAAiB,IAAIC,CAAM,CAAC,GAAG;AAC/E,cAAMC,IAAuB,MAAM,QAAQ,IAAIrB,EAAM,KAAK,cAAc,IAAI,CAACsB,MAAOtB,EAAM,YAAYsB,CAAE,CAAC,CAAC;AAC1G,QAAAP,EAAiC,QAAQf,EAAM,KAAK,cAAc,OAAO,CAACiB,GAAKC,GAAGK,OAChFN,EAAIC,CAAC,IAAIG,EAAqBE,CAAG,GAC1BN,IACN,CAAA,CAAqD;AAAA,MAC1D;AAAA,IACF,GAAG,EAAC,WAAW,IAAK,GAEpBJ,EAAM,MAAME,EAAiC,OAAO,OAAOS,MAAS;AAClE,eAASC,IAAI,GAAGA,IAAIzB,EAAM,KAAK,cAAc,QAAQyB,KAAK;AACxD,cAAML,IAASpB,EAAM,KAAK,cAAcyB,CAAC;AACzC,YAAIjB,EAAe,MAAMY,CAAM,EAAE,cAAc,UAAaI,EAAKJ,CAAM,MAAM;AAC3E;AAEF,YAAIM,IAAmBF,EAAKJ,CAAM;AAClC,QAAII,EAAKJ,CAAM,MAAM,SACnBM,IAAmB,MAAM1B,EAAM,cAAcoB,GAAQ,EAAE,IAErDM,KAAA,QAAAA,EAAkB,WACpBlB,EAAe,MAAMY,CAAM,EAAE,YAAYM,EAAiB,CAAC,EAAE,QAE/DtB,EAAK,oBAAoBI,EAAe,KAAK;AAAA,MAC/C;AAAA,IACF,GAAG,EAAC,WAAW,IAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"DnDRangeChip.vue.js","sources":["../../../../src/GraphMaker/components/DragAndDrop/DnDRangeChip.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ChipInfo } from './types.ts';\nimport CloseIcon from '../../assets/drag-and-drop/img/chip-close.svg?raw';\nimport { reactive, watch, ref } from 'vue';\nimport { PlIcon16, ListOption, PlNumberField } from '@platforma-sdk/ui-vue';\nimport { useStore } from '../../store';\n\nconst props = defineProps<{\n info: ChipInfo;\n error: boolean;\n searchModel: (sourceId:string, selectedValue:string) => Promise<ListOption<string>>;\n searchOptions: (sourceId:string, searchStr:string) => Promise<ListOption<string>[]>;\n loadOptions: (sourceId:string) => Promise<ListOption<string>[] | null>;\n}>();\n\nconst store = useStore();\n\nconst emit = defineEmits<{\n (e: 'close-chip', id: ChipInfo['id']): void;\n}>();\n\nconst filterModel = defineModel('filter', { required: true });\n\nconst range = reactive({\n min: (filterModel.value as number[])?.[0] as number | undefined,\n max: (filterModel.value as number[])?.[1] as number | undefined\n});\n\nwatch(() => range, (rangeValue) => {\n filterModel.value = rangeValue;\n }, { deep: true }\n);\n\n</script>\n\n<template>\n <div ref=\"chipRoot\" class=\"dnd-double-chip__group\">\n <div :class=\"{ error }\" class=\"dnd-double-chip\">\n <div class=\"dnd-double-chip__top\">\n <div class=\"dnd-double-chip__icon\">\n <PlIcon16 name=\"cell-type-num\" />\n </div>\n <div class=\"dnd-double-chip__title-wrapper\" :title=\"info.title\">\n <div class=\"dnd-double-chip__title\">\n {{ info.title }}\n </div>\n </div>\n <div\n v-html=\"CloseIcon\"\n class=\"dnd-double-chip__icon-close\"\n @click=\"$emit('close-chip', props.info.id)\"\n />\n </div>\n <div class=\"dnd-double-chip__bottom-range\">\n <div class=\"dnd-double-chip__bottom-range-row\">\n <PlNumberField\n label=\"Min\"\n v-model=\"range.min\"\n :updateOnEnterOrClickOutside=\"true\"\n :useIncrementButtons=\"false\"\n />\n </div>\n <div class=\"dnd-double-chip__bottom-range-row\">\n <PlNumberField\n label=\"Max\"\n v-model=\"range.max\"\n :updateOnEnterOrClickOutside=\"true\"\n :useIncrementButtons=\"false\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["props","__props","useStore","filterModel","_useModel","range","reactive","_a","_b","watch","rangeValue"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAOA,UAAMA,IAAQC;AAQA,IAAAC,EAAA;AAMd,UAAMC,IAAcC,EAAWH,GAAC,QAA4B,GAEtDI,IAAQC,EAAS;AAAA,MACrB,MAAMC,IAAAJ,EAAY,UAAZ,gBAAAI,EAAiC;AAAA,MACvC,MAAMC,IAAAL,EAAY,UAAZ,gBAAAK,EAAiC;AAAA,IAAC,CACzC;AAED,WAAAC;AAAA,MAAM,MAAMJ;AAAA,MAAO,CAACK,MAAe;AAC/B,QAAAP,EAAY,QAAQO;AAAA,MACtB;AAAA,MAAG,EAAE,MAAM,GAAA;AAAA,IAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,18 +1,16 @@
1
- import { DndBasketProps, SelectFilterValueEvent, SelectFixedAxisValueEvent } from './types';
1
+ import { DndBasketProps, SelectFilterValueEvent } from './types';
2
2
  type __VLS_Props = DndBasketProps;
3
3
  declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
4
4
  "drop-item": (data: import('./types').DropItemEvent<any>) => any;
5
5
  "remove-item": (data: import('./types').RemoveItemEvent<any>) => any;
6
6
  "select-filter-value": (data: SelectFilterValueEvent) => any;
7
7
  "select-filter-range": (data: SelectFilterValueEvent) => any;
8
- "select-fixed-axis-value": (data: SelectFixedAxisValueEvent) => any;
9
8
  reorder: (data: string[]) => any;
10
9
  }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
11
10
  "onDrop-item"?: ((data: import('./types').DropItemEvent<any>) => any) | undefined;
12
11
  "onRemove-item"?: ((data: import('./types').RemoveItemEvent<any>) => any) | undefined;
13
12
  "onSelect-filter-value"?: ((data: SelectFilterValueEvent) => any) | undefined;
14
13
  "onSelect-filter-range"?: ((data: SelectFilterValueEvent) => any) | undefined;
15
- "onSelect-fixed-axis-value"?: ((data: SelectFixedAxisValueEvent) => any) | undefined;
16
14
  onReorder?: ((data: string[]) => any) | undefined;
17
15
  }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
18
16
  basketRoot: HTMLDivElement;
@@ -1 +1 @@
1
- {"version":3,"file":"DndBasket.vue.d.ts","sourceRoot":"","sources":["../../../../src/GraphMaker/components/DragAndDrop/DndBasket.vue"],"names":[],"mappings":"AA6MA,OAAO,EAEL,cAAc,EACd,sBAAsB,EACtB,yBAAyB,EAC1B,MAAM,SAAS,CAAC;AAEjB,KAAK,WAAW,GAAG,cAAc,CAAC;;;;;;;;;;;;;;;;;;;AAkVlC,wBASG"}
1
+ {"version":3,"file":"DndBasket.vue.d.ts","sourceRoot":"","sources":["../../../../src/GraphMaker/components/DragAndDrop/DndBasket.vue"],"names":[],"mappings":"AA+LA,OAAO,EAEL,cAAc,EACd,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB,KAAK,WAAW,GAAG,cAAc,CAAC;;;;;;;;;;;;;;;;;AAwTlC,wBASG"}