@morscherlab/mint-sdk 1.3.0-beta.4 → 1.3.0-beta.6
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.
- package/README.md +23 -140
- package/dist/{ResourcePickerListInternal-c3IT8PIu.js → ResourcePickerListInternal-BEXnyBNz.js} +7 -3
- package/dist/ResourcePickerListInternal-BEXnyBNz.js.map +1 -0
- package/dist/components/WellPlate.colors.d.ts +1 -5
- package/dist/components/WellPlate.rendering.d.ts +5 -2
- package/dist/components/index.d.ts +32 -17
- package/dist/components/index.js +3 -3
- package/dist/{components-CF0XMy8W.js → components-C-CAD2Ma.js} +84 -134
- package/dist/components-C-CAD2Ma.js.map +1 -0
- package/dist/composables/index.d.ts +0 -3
- package/dist/composables/index.js +4 -4
- package/dist/composables/useAutoGroup.d.ts +1 -1
- package/dist/composables/useBioTemplateComponents.d.ts +15 -3
- package/dist/composables/useBioTemplateControls.d.ts +5 -1
- package/dist/composables/useBioTemplatePackWorkspace.d.ts +2 -0
- package/dist/composables/useBioTemplatePresetWorkspace.d.ts +5 -1
- package/dist/composables/useBioTemplateWorkspace.d.ts +5 -1
- package/dist/composables/useExperimentSave.d.ts +5 -1
- package/dist/composables/useGroupAssignment.d.ts +5 -1
- package/dist/composables/usePlatformContext.d.ts +3 -0
- package/dist/composables/useTemplateCollection.d.ts +5 -1
- package/dist/composables-BKhsoONv.js +591 -0
- package/dist/composables-BKhsoONv.js.map +1 -0
- package/dist/index.js +24 -24
- package/dist/index.js.map +1 -1
- package/dist/install.js +1 -1
- package/dist/lcms.d.ts +11 -11
- package/dist/styles.css +50 -143
- package/dist/templates/index.js +1 -1
- package/dist/{templates-Bj9hZ7iV.js → templates-DcxyATPT.js} +31 -44
- package/dist/templates-DcxyATPT.js.map +1 -0
- package/dist/types/auth.d.ts +0 -31
- package/dist/types/index.d.ts +1 -1
- package/dist/types/platform.d.ts +2 -0
- package/dist/utils/rack.d.ts +16 -16
- package/dist/{validation-B4Y8_eEe.js → validation-kbTxfKYD.js} +50 -12
- package/dist/validation-kbTxfKYD.js.map +1 -0
- package/package.json +1 -6
- package/src/__tests__/components/AppTopBar.test.ts +24 -8
- package/src/__tests__/components/EmptyState.test.ts +15 -0
- package/src/__tests__/components/FileUploader.test.ts +6 -9
- package/src/__tests__/components/WellPlate.decoration.test.ts +4 -28
- package/src/__tests__/components/WellPlate.rendering.test.ts +20 -33
- package/src/__tests__/components/WellPlate.sampleTypeIndicator.test.ts +7 -7
- package/src/__tests__/docs/frontendDocsCatalog.test.ts +2 -2
- package/src/__tests__/styles/controlRefreshRules.test.ts +0 -6
- package/src/__tests__/styles/menusShellRefresh.test.ts +8 -2
- package/src/__tests__/templates/templatesDeprecation.test.ts +58 -11
- package/src/components/AppTopBar.vue +5 -4
- package/src/components/EmptyState.vue +3 -1
- package/src/components/FileUploader.vue +30 -46
- package/src/components/WellPlate.colors.ts +6 -10
- package/src/components/WellPlate.legend.ts +4 -4
- package/src/components/WellPlate.rendering.ts +9 -8
- package/src/components/WellPlate.vue +5 -22
- package/src/components/index.ts +32 -17
- package/src/composables/autoGroup/index.ts +1 -1
- package/src/composables/index.ts +0 -7
- package/src/composables/useAutoGroup.ts +1 -1
- package/src/composables/useBioTemplateComponents.ts +15 -3
- package/src/composables/useBioTemplateControls.ts +5 -1
- package/src/composables/useBioTemplatePackWorkspace.ts +2 -0
- package/src/composables/useBioTemplatePresetWorkspace.ts +5 -1
- package/src/composables/useBioTemplateWorkspace.ts +5 -1
- package/src/composables/useExperimentSave.ts +5 -1
- package/src/composables/useGroupAssignment.ts +5 -1
- package/src/composables/useTemplateCollection.ts +5 -1
- package/src/index.ts +1 -1
- package/src/lcms.ts +11 -11
- package/src/styles/components/app-top-bar.css +7 -31
- package/src/styles/components/empty-state.css +3 -2
- package/src/styles/components/file-uploader.css +22 -55
- package/src/styles/components/well-plate.css +18 -55
- package/src/types/auth.ts +0 -41
- package/src/types/index.ts +0 -5
- package/src/types/platform.ts +2 -0
- package/src/utils/rack.ts +16 -16
- package/dist/ResourcePickerListInternal-c3IT8PIu.js.map +0 -1
- package/dist/__tests__/composables/useAuth.test.d.ts +0 -1
- package/dist/__tests__/composables/usePasskey.test.d.ts +0 -1
- package/dist/components-CF0XMy8W.js.map +0 -1
- package/dist/composables/useAuth.d.ts +0 -47
- package/dist/composables/usePasskey.d.ts +0 -10
- package/dist/composables/useWellPlateEditor.d.ts +0 -33
- package/dist/composables-Dlyz_Aiv.js +0 -1256
- package/dist/composables-Dlyz_Aiv.js.map +0 -1
- package/dist/plotly.min-DDhZCNEM.js +0 -168582
- package/dist/plotly.min-DDhZCNEM.js.map +0 -1
- package/dist/templates-Bj9hZ7iV.js.map +0 -1
- package/dist/validation-B4Y8_eEe.js.map +0 -1
- package/src/__tests__/composables/useAuth.test.ts +0 -290
- package/src/__tests__/composables/usePasskey.test.ts +0 -38
- package/src/composables/useAuth.ts +0 -470
- package/src/composables/usePasskey.ts +0 -216
- package/src/composables/useWellPlateEditor.ts +0 -415
package/dist/styles.css
CHANGED
|
@@ -2813,29 +2813,18 @@ button, input, select, textarea {
|
|
|
2813
2813
|
flex-shrink: 0;
|
|
2814
2814
|
}
|
|
2815
2815
|
|
|
2816
|
+
/* Slotted logos sized above 32px shrink to fit instead of turning into a 32x36 tile. */
|
|
2817
|
+
.mint-topbar__identity > * {
|
|
2818
|
+
max-width: 100%;
|
|
2819
|
+
max-height: 100%;
|
|
2820
|
+
}
|
|
2821
|
+
|
|
2816
2822
|
/* The 36px plugin tile would push the bar past 52px; the bar uses the 32px control height. */
|
|
2817
2823
|
.mint-topbar__identity .mint-plugin-icon--topbar {
|
|
2818
2824
|
width: 2rem;
|
|
2819
2825
|
height: 2rem;
|
|
2820
2826
|
}
|
|
2821
2827
|
|
|
2822
|
-
/* Integrated: the tile joins the static identity as a 20px mark (icon + name + version). */
|
|
2823
|
-
.mint-topbar__brand:has(+ .mint-topbar__plugin-identity) .mint-topbar__identity {
|
|
2824
|
-
width: auto;
|
|
2825
|
-
padding-left: 0.125rem;
|
|
2826
|
-
}
|
|
2827
|
-
|
|
2828
|
-
.mint-topbar__brand:has(+ .mint-topbar__plugin-identity) .mint-plugin-icon--topbar {
|
|
2829
|
-
width: 1.25rem;
|
|
2830
|
-
height: 1.25rem;
|
|
2831
|
-
border-radius: var(--radius-sm);
|
|
2832
|
-
}
|
|
2833
|
-
|
|
2834
|
-
.mint-topbar__brand:has(+ .mint-topbar__plugin-identity) .mint-plugin-icon--topbar :is(.mint-plugin-icon__svg, .mint-plugin-icon__img) {
|
|
2835
|
-
width: 0.75rem;
|
|
2836
|
-
height: 0.75rem;
|
|
2837
|
-
}
|
|
2838
|
-
|
|
2839
2828
|
/* Centered section — absolute so asymmetric left/right weight never shifts the
|
|
2840
2829
|
pill-nav off the topbar midline. Pointer-events: none lets the pill-nav
|
|
2841
2830
|
overlay the background while remaining interactive via its own children. */
|
|
@@ -2892,7 +2881,7 @@ button, input, select, textarea {
|
|
|
2892
2881
|
color: var(--text-primary);
|
|
2893
2882
|
}
|
|
2894
2883
|
|
|
2895
|
-
/* Static plugin identity: name
|
|
2884
|
+
/* Static plugin identity: name only, not a control (5a) */
|
|
2896
2885
|
.mint-topbar__plugin-identity {
|
|
2897
2886
|
display: inline-flex;
|
|
2898
2887
|
align-items: baseline;
|
|
@@ -2910,19 +2899,6 @@ button, input, select, textarea {
|
|
|
2910
2899
|
text-overflow: ellipsis;
|
|
2911
2900
|
}
|
|
2912
2901
|
|
|
2913
|
-
.mint-topbar__plugin-version {
|
|
2914
|
-
font-family: var(--font-mono);
|
|
2915
|
-
font-size: 0.6875rem;
|
|
2916
|
-
color: var(--text-secondary);
|
|
2917
|
-
}
|
|
2918
|
-
|
|
2919
|
-
.mint-topbar__divider {
|
|
2920
|
-
width: 1px;
|
|
2921
|
-
height: 1.25rem;
|
|
2922
|
-
flex-shrink: 0;
|
|
2923
|
-
background-color: var(--border-color);
|
|
2924
|
-
}
|
|
2925
|
-
|
|
2926
2902
|
/* Variant: card - inline card with margins and rounded corners */
|
|
2927
2903
|
.mint-topbar--card {
|
|
2928
2904
|
width: calc(100% - 2rem);
|
|
@@ -4718,113 +4694,80 @@ button, input, select, textarea {
|
|
|
4718
4694
|
|
|
4719
4695
|
.mint-file-uploader__dropzone {
|
|
4720
4696
|
position: relative;
|
|
4721
|
-
border:
|
|
4697
|
+
border: 2px dashed var(--border-color);
|
|
4722
4698
|
border-radius: var(--radius-lg);
|
|
4723
4699
|
cursor: pointer;
|
|
4724
4700
|
background: var(--bg-secondary);
|
|
4725
4701
|
transition: border-color 0.15s ease, background-color 0.15s ease;
|
|
4726
4702
|
}
|
|
4727
4703
|
|
|
4728
|
-
/* 2g: hover only changes the surface; the border change is reserved for dragover. */
|
|
4729
4704
|
.mint-file-uploader__dropzone:hover {
|
|
4730
|
-
|
|
4705
|
+
border-color: var(--color-primary);
|
|
4706
|
+
background: color-mix(in srgb, var(--color-primary) 3%, var(--bg-secondary));
|
|
4731
4707
|
}
|
|
4732
4708
|
|
|
4733
4709
|
.mint-file-uploader__dropzone:focus-visible {
|
|
4734
|
-
outline:
|
|
4735
|
-
|
|
4710
|
+
outline: 2px solid var(--color-primary);
|
|
4711
|
+
outline-offset: 2px;
|
|
4736
4712
|
}
|
|
4737
4713
|
|
|
4738
|
-
.mint-file-uploader__dropzone--dragover
|
|
4739
|
-
|
|
4740
|
-
|
|
4741
|
-
background: var(--color-primary-soft);
|
|
4714
|
+
.mint-file-uploader__dropzone--dragover {
|
|
4715
|
+
border-color: var(--color-primary);
|
|
4716
|
+
background: color-mix(in srgb, var(--color-primary) 5%, var(--bg-secondary));
|
|
4742
4717
|
}
|
|
4743
4718
|
|
|
4744
|
-
.mint-file-uploader__dropzone--disabled
|
|
4745
|
-
.mint-file-uploader__dropzone--disabled:hover {
|
|
4746
|
-
background: var(--bg-tertiary);
|
|
4719
|
+
.mint-file-uploader__dropzone--disabled {
|
|
4747
4720
|
opacity: var(--mint-disabled-opacity);
|
|
4748
4721
|
cursor: not-allowed;
|
|
4749
4722
|
}
|
|
4750
4723
|
|
|
4751
4724
|
.mint-file-uploader__dropzone--sm {
|
|
4752
|
-
padding:
|
|
4725
|
+
padding: 1.25rem;
|
|
4753
4726
|
}
|
|
4754
4727
|
|
|
4755
4728
|
.mint-file-uploader__dropzone--md {
|
|
4756
|
-
padding: 1.
|
|
4729
|
+
padding: 1.5rem;
|
|
4757
4730
|
}
|
|
4758
4731
|
|
|
4759
4732
|
.mint-file-uploader__dropzone--lg {
|
|
4760
|
-
padding:
|
|
4733
|
+
padding: 2rem;
|
|
4761
4734
|
}
|
|
4762
4735
|
|
|
4763
4736
|
/* ==========================================================================
|
|
4764
|
-
Content area
|
|
4737
|
+
Content area
|
|
4765
4738
|
========================================================================== */
|
|
4766
4739
|
|
|
4767
4740
|
.mint-file-uploader__content {
|
|
4768
4741
|
display: flex;
|
|
4742
|
+
flex-direction: column;
|
|
4769
4743
|
align-items: center;
|
|
4770
|
-
|
|
4744
|
+
text-align: center;
|
|
4771
4745
|
}
|
|
4772
4746
|
|
|
4773
4747
|
.mint-file-uploader__input {
|
|
4774
4748
|
display: none;
|
|
4775
4749
|
}
|
|
4776
4750
|
|
|
4777
|
-
.mint-file-uploader__icon
|
|
4778
|
-
display: flex;
|
|
4779
|
-
align-items: center;
|
|
4780
|
-
justify-content: center;
|
|
4781
|
-
flex-shrink: 0;
|
|
4751
|
+
.mint-file-uploader__icon {
|
|
4782
4752
|
width: 2rem;
|
|
4783
4753
|
height: 2rem;
|
|
4784
|
-
|
|
4785
|
-
|
|
4786
|
-
color: var(--text-secondary);
|
|
4787
|
-
transition: background-color 0.15s ease, color 0.15s ease;
|
|
4788
|
-
}
|
|
4789
|
-
|
|
4790
|
-
.mint-file-uploader__dropzone--dragover .mint-file-uploader__icon-tile {
|
|
4791
|
-
background: var(--color-primary);
|
|
4792
|
-
color: white;
|
|
4793
|
-
}
|
|
4794
|
-
|
|
4795
|
-
.mint-file-uploader__icon {
|
|
4796
|
-
width: 1rem;
|
|
4797
|
-
height: 1rem;
|
|
4798
|
-
stroke-width: 1.8;
|
|
4754
|
+
color: var(--text-muted);
|
|
4755
|
+
margin-bottom: 0.5rem;
|
|
4799
4756
|
}
|
|
4800
4757
|
|
|
4801
|
-
.mint-file-
|
|
4802
|
-
|
|
4803
|
-
|
|
4804
|
-
gap: 0.125rem;
|
|
4805
|
-
min-width: 0;
|
|
4758
|
+
.mint-file-uploader__dropzone:hover .mint-file-uploader__icon,
|
|
4759
|
+
.mint-file-uploader__dropzone--dragover .mint-file-uploader__icon {
|
|
4760
|
+
color: var(--color-primary);
|
|
4806
4761
|
}
|
|
4807
4762
|
|
|
4808
4763
|
.mint-file-uploader__text {
|
|
4809
|
-
color: var(--text-
|
|
4764
|
+
color: var(--text-secondary);
|
|
4810
4765
|
font-size: 0.8125rem;
|
|
4811
4766
|
font-weight: 500;
|
|
4812
4767
|
margin: 0;
|
|
4813
4768
|
padding: 0;
|
|
4814
4769
|
}
|
|
4815
4770
|
|
|
4816
|
-
.mint-file-uploader__dropzone--dragover .mint-file-uploader__text {
|
|
4817
|
-
color: var(--_ink-primary);
|
|
4818
|
-
}
|
|
4819
|
-
|
|
4820
|
-
.mint-file-uploader__formats {
|
|
4821
|
-
color: var(--text-secondary);
|
|
4822
|
-
font-family: var(--font-mono);
|
|
4823
|
-
font-size: 0.6875rem;
|
|
4824
|
-
margin: 0;
|
|
4825
|
-
padding: 0;
|
|
4826
|
-
}
|
|
4827
|
-
|
|
4828
4771
|
/* ==========================================================================
|
|
4829
4772
|
Actions slot
|
|
4830
4773
|
========================================================================== */
|
|
@@ -9230,10 +9173,9 @@ html.dark .mint-toast__item {
|
|
|
9230
9173
|
/* Header cells */
|
|
9231
9174
|
.mint-well-plate__col-header,
|
|
9232
9175
|
.mint-well-plate__row-header {
|
|
9233
|
-
font-
|
|
9234
|
-
font-weight: 400;
|
|
9176
|
+
font-weight: 500;
|
|
9235
9177
|
text-align: center;
|
|
9236
|
-
color: var(--text-
|
|
9178
|
+
color: var(--text-muted);
|
|
9237
9179
|
}
|
|
9238
9180
|
|
|
9239
9181
|
.mint-well-plate__row-header {
|
|
@@ -9254,9 +9196,8 @@ html.dark .mint-toast__item {
|
|
|
9254
9196
|
font-weight: 500;
|
|
9255
9197
|
cursor: pointer;
|
|
9256
9198
|
transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
|
|
9257
|
-
|
|
9258
|
-
|
|
9259
|
-
border: 1px solid color-mix(in srgb, var(--text-secondary) 35%, var(--border-color));
|
|
9199
|
+
background-color: var(--bg-tertiary);
|
|
9200
|
+
border: 1px dashed var(--border-color);
|
|
9260
9201
|
}
|
|
9261
9202
|
|
|
9262
9203
|
.mint-well-plate__well--rounded {
|
|
@@ -9268,7 +9209,7 @@ html.dark .mint-toast__item {
|
|
|
9268
9209
|
}
|
|
9269
9210
|
|
|
9270
9211
|
.mint-well-plate__well--filled {
|
|
9271
|
-
|
|
9212
|
+
border-style: solid;
|
|
9272
9213
|
}
|
|
9273
9214
|
|
|
9274
9215
|
.mint-well-plate__well--disabled {
|
|
@@ -9277,29 +9218,27 @@ html.dark .mint-toast__item {
|
|
|
9277
9218
|
}
|
|
9278
9219
|
|
|
9279
9220
|
/* Well states */
|
|
9280
|
-
/* Neutral ring + shape only, so a ring never vanishes into a sample color (2b). */
|
|
9281
9221
|
.mint-well-plate__well--selected {
|
|
9282
|
-
box-shadow: 0 0 0 2px var(--
|
|
9222
|
+
box-shadow: 0 0 0 2px var(--mint-success), 0 0 0 3px var(--bg-card);
|
|
9283
9223
|
}
|
|
9284
9224
|
|
|
9285
9225
|
.mint-well-plate__well--drag-over {
|
|
9286
9226
|
box-shadow: 0 0 0 2px var(--color-primary);
|
|
9287
|
-
background-color: var(--color-primary
|
|
9227
|
+
background-color: color-mix(in srgb, var(--color-primary) 20%, transparent);
|
|
9288
9228
|
}
|
|
9289
9229
|
|
|
9290
9230
|
.mint-well-plate__well--hovered {
|
|
9291
|
-
box-shadow: 0 0 0
|
|
9231
|
+
box-shadow: 0 0 0 2px color-mix(in srgb, var(--mint-success) 50%, transparent);
|
|
9292
9232
|
}
|
|
9293
9233
|
|
|
9294
|
-
/* !important: wellStyle() sets an inline solid `border` on every draggable well. */
|
|
9295
9234
|
.mint-well-plate__well--drag-source {
|
|
9296
|
-
|
|
9235
|
+
box-shadow: 0 0 0 2px var(--mint-warning);
|
|
9297
9236
|
opacity: 0.5;
|
|
9298
9237
|
}
|
|
9299
9238
|
|
|
9300
9239
|
.mint-well-plate__well--drag-target {
|
|
9301
|
-
box-shadow: 0 0 0 2px var(--
|
|
9302
|
-
background-color: var(--
|
|
9240
|
+
box-shadow: 0 0 0 2px var(--mint-success), 0 0 0 3px var(--bg-card);
|
|
9241
|
+
background-color: color-mix(in srgb, var(--mint-success) 20%, transparent);
|
|
9303
9242
|
}
|
|
9304
9243
|
|
|
9305
9244
|
/* Optional semantic classes for `wellClass` callbacks. */
|
|
@@ -9339,18 +9278,6 @@ html.dark .mint-toast__item {
|
|
|
9339
9278
|
color: var(--text-primary);
|
|
9340
9279
|
}
|
|
9341
9280
|
|
|
9342
|
-
/* Q / i marker glyph when the centre holds a label or well ID (iQC has no other cue) */
|
|
9343
|
-
.mint-well-plate__corner-glyph {
|
|
9344
|
-
position: absolute;
|
|
9345
|
-
top: 3px;
|
|
9346
|
-
left: 6px;
|
|
9347
|
-
font-size: 10px;
|
|
9348
|
-
font-weight: 700;
|
|
9349
|
-
line-height: 1;
|
|
9350
|
-
pointer-events: none;
|
|
9351
|
-
color: var(--text-primary);
|
|
9352
|
-
}
|
|
9353
|
-
|
|
9354
9281
|
/* Well ID text */
|
|
9355
9282
|
.mint-well-plate__well-id {
|
|
9356
9283
|
font-weight: 500;
|
|
@@ -9439,34 +9366,21 @@ html.dark .mint-toast__item {
|
|
|
9439
9366
|
/* Badge (injection count / custom method indicator) */
|
|
9440
9367
|
.mint-well-plate__badge {
|
|
9441
9368
|
position: absolute;
|
|
9442
|
-
top: -
|
|
9443
|
-
right: -
|
|
9444
|
-
|
|
9445
|
-
|
|
9446
|
-
height: 14px;
|
|
9447
|
-
padding: 0 3px;
|
|
9369
|
+
top: -4px;
|
|
9370
|
+
right: -4px;
|
|
9371
|
+
width: 16px;
|
|
9372
|
+
height: 16px;
|
|
9448
9373
|
border-radius: 9999px;
|
|
9449
|
-
|
|
9450
|
-
font-family: var(--font-mono);
|
|
9451
|
-
font-size: 9px;
|
|
9374
|
+
font-size: 10px;
|
|
9452
9375
|
font-weight: 700;
|
|
9453
9376
|
display: flex;
|
|
9454
9377
|
align-items: center;
|
|
9455
9378
|
justify-content: center;
|
|
9456
|
-
color:
|
|
9379
|
+
color: white;
|
|
9457
9380
|
pointer-events: none;
|
|
9458
9381
|
line-height: 1;
|
|
9459
9382
|
}
|
|
9460
9383
|
|
|
9461
|
-
/* Custom method: a plain dot (7a) */
|
|
9462
|
-
.mint-well-plate__badge--dot {
|
|
9463
|
-
top: -2px;
|
|
9464
|
-
right: -2px;
|
|
9465
|
-
min-width: 8px;
|
|
9466
|
-
height: 8px;
|
|
9467
|
-
padding: 0;
|
|
9468
|
-
}
|
|
9469
|
-
|
|
9470
9384
|
/* Sample type legend bar */
|
|
9471
9385
|
.mint-well-plate__sample-legend {
|
|
9472
9386
|
margin-top: 0.5rem;
|
|
@@ -9483,23 +9397,15 @@ html.dark .mint-toast__item {
|
|
|
9483
9397
|
}
|
|
9484
9398
|
|
|
9485
9399
|
.mint-well-plate__sample-legend-dot {
|
|
9486
|
-
display: inline-flex;
|
|
9487
|
-
align-items: center;
|
|
9488
|
-
justify-content: center;
|
|
9489
|
-
box-sizing: border-box;
|
|
9490
9400
|
width: 0.875rem;
|
|
9491
9401
|
height: 0.875rem;
|
|
9492
9402
|
border-radius: var(--radius-sm);
|
|
9493
9403
|
flex-shrink: 0;
|
|
9494
|
-
font-family: var(--font-mono);
|
|
9495
|
-
font-size: 0.625rem;
|
|
9496
|
-
font-weight: 600;
|
|
9497
|
-
line-height: 1;
|
|
9498
9404
|
}
|
|
9499
9405
|
|
|
9500
9406
|
.mint-well-plate__sample-legend-text {
|
|
9501
9407
|
font-size: 0.75rem;
|
|
9502
|
-
color: var(--text-
|
|
9408
|
+
color: var(--text-muted);
|
|
9503
9409
|
}
|
|
9504
9410
|
|
|
9505
9411
|
/* Empty / loading / error placeholder host (content comes from EmptyState) */
|
|
@@ -14307,8 +14213,9 @@ html.dark .mint-dataframe__loading {
|
|
|
14307
14213
|
color: var(--text-muted);
|
|
14308
14214
|
}
|
|
14309
14215
|
|
|
14310
|
-
/* Action */
|
|
14311
|
-
.mint-empty-state--illustrated .mint-empty-state__action
|
|
14216
|
+
/* Action — slotted content sits in a block so a child's own larger top margin collapses into this one. */
|
|
14217
|
+
.mint-empty-state--illustrated .mint-empty-state__action,
|
|
14218
|
+
.mint-empty-state--illustrated .mint-empty-state__content {
|
|
14312
14219
|
margin-top: 0.625rem;
|
|
14313
14220
|
}
|
|
14314
14221
|
|
package/dist/templates/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as toTimeCourseDataFrame, $t as getBioTemplatePackInfo, A as createSamplePrepTemplate, At as toCalibrationCurveDataFrame, B as toBioTemplateComponentProps, Bt as validateInstrumentRunData, C as createFlowCytometryPanelTemplate, Ct as toInstrumentRunRows, D as createTimeCourseTemplate, Dt as toFlowPanelDataFrame, E as createProtocolStepsTemplate, Et as toFlowPanelColumns, F as getBioTemplateComponentProps, Ft as toAssayMatrixSampleOptions, G as toTemplateDataFrame, Gt as validateSamplePrepData, H as toBioTemplateComponentPropsById, Ht as validateProtocolStepsData, I as listBioTemplateComponentBindings, It as validateAssayMatrixData, J as toDoseConditions, Jt as bioTemplatePresets, K as toWellMapArray, Kt as validateSampleSheetData, L as toBioTemplateComponentBindings, Lt as validateCalibrationCurveData, M as createPlateMapTemplate, Mt as toAssayMatrixColumns, N as bioTemplatePresetControlValuesToOptions, Nt as toAssayMatrixDataFrame, O as createCalibrationCurveTemplate, Ot as toFlowPanelRows, P as getBioTemplateComponentBindings, Pt as toAssayMatrixRows, Q as toTimeCourseColumns, Qt as bioTemplatePacks, R as toBioTemplateComponentBindingsById, Rt as validateDoseResponseData, S as createInstrumentRunTemplate, St as toInstrumentRunDataFrame, T as createAssayMatrixTemplate, Tt as toInstrumentRunSteps, U as toBioTemplateComponentSnippets, Ut as validateQpcrPlateData, V as toBioTemplateComponentPropsByComponent, Vt as validatePlateMapData, W as toBioTemplateComponentUsage, Wt as validateReagentListData, X as toPlateMapEditorState, Xt as listBioTemplatePresets, Y as toDoseLayoutState, Yt as getBioTemplatePresetInfo, Z as toWellPlateWells, Zt as searchBioTemplatePresets, _ as createElisaAssayCollection, _t as toProtocolColumns, a as getBioTemplateControlDefaults, an as searchBioTemplateCatalog, at as toSampleRows, b as createQpcrExpressionCollection, bt as toProtocolSteps, c as listBioTemplatePresetControlSchemas, cn as createTemplateCollection, ct as toSamplePrepRows, d as createBioTemplatePresetCollectionFromControls, dn as ensureTemplateFromCollection, dt as toReagentListItems, en as listBioTemplatePacks, et as toTimeCourseRows, f as createWellPlateScreenCollection, fn as extractTemplateCollection, ft as toReagentRows, g as createFlowCytometryAssayCollection, gt as toQpcrWellPlateWells, h as createWesternBlotAssayCollection, ht as toQpcrRows, i as createBioTemplateControlToolkit, in as listBioTemplateCatalog, it as toSampleOptions, j as createSampleSheetTemplate, jt as toCalibrationCurveRows, k as createDoseResponseTemplate, kt as toCalibrationCurveColumns, l as requireBioTemplateControlSchema, ln as createTemplateEnvelope, lt as toReagentColumns, m as createDefaultBioTemplate, mt as toQpcrDataFrame, n as bioTemplateControlsToSectionFormSchemas, nn as bioTemplateCatalog, nt as toSampleColumns, o as getBioTemplateControlSchema, on as TEMPLATE_COLLECTION_KEY, ot as toSamplePrepColumns, p as createBioTemplatePackCollection, pn as getTemplateData, pt as toQpcrColumns, q as racksFromPlateState, qt as validateTimeCourseData, r as bioTemplateControlsToSidebarPanels, rn as getBioTemplateInfo, rt as toSampleDataFrame, s as listBioTemplateControlSchemas, sn as assertTemplateEnvelope, st as toSamplePrepDataFrame, t as bioTemplateControlsToFormSchema, tn as searchBioTemplatePacks, tt as toTimeCourseSteps, u as createBioTemplatePresetCollection, un as ensureTemplateEnvelope, ut as toReagentDataFrame, v as createTargetedMetabolomicsCollection, vt as toProtocolDataFrame, w as createReagentListTemplate, wt as toInstrumentRunScheduleEvents, x as createQpcrPlateTemplate, xt as toInstrumentRunColumns, y as createLcmsBatchCollection, yt as toProtocolRows, z as toBioTemplateComponentImports, zt as validateFlowCytometryPanelData } from "../templates-
|
|
1
|
+
import { $ as toTimeCourseDataFrame, $t as getBioTemplatePackInfo, A as createSamplePrepTemplate, At as toCalibrationCurveDataFrame, B as toBioTemplateComponentProps, Bt as validateInstrumentRunData, C as createFlowCytometryPanelTemplate, Ct as toInstrumentRunRows, D as createTimeCourseTemplate, Dt as toFlowPanelDataFrame, E as createProtocolStepsTemplate, Et as toFlowPanelColumns, F as getBioTemplateComponentProps, Ft as toAssayMatrixSampleOptions, G as toTemplateDataFrame, Gt as validateSamplePrepData, H as toBioTemplateComponentPropsById, Ht as validateProtocolStepsData, I as listBioTemplateComponentBindings, It as validateAssayMatrixData, J as toDoseConditions, Jt as bioTemplatePresets, K as toWellMapArray, Kt as validateSampleSheetData, L as toBioTemplateComponentBindings, Lt as validateCalibrationCurveData, M as createPlateMapTemplate, Mt as toAssayMatrixColumns, N as bioTemplatePresetControlValuesToOptions, Nt as toAssayMatrixDataFrame, O as createCalibrationCurveTemplate, Ot as toFlowPanelRows, P as getBioTemplateComponentBindings, Pt as toAssayMatrixRows, Q as toTimeCourseColumns, Qt as bioTemplatePacks, R as toBioTemplateComponentBindingsById, Rt as validateDoseResponseData, S as createInstrumentRunTemplate, St as toInstrumentRunDataFrame, T as createAssayMatrixTemplate, Tt as toInstrumentRunSteps, U as toBioTemplateComponentSnippets, Ut as validateQpcrPlateData, V as toBioTemplateComponentPropsByComponent, Vt as validatePlateMapData, W as toBioTemplateComponentUsage, Wt as validateReagentListData, X as toPlateMapEditorState, Xt as listBioTemplatePresets, Y as toDoseLayoutState, Yt as getBioTemplatePresetInfo, Z as toWellPlateWells, Zt as searchBioTemplatePresets, _ as createElisaAssayCollection, _t as toProtocolColumns, a as getBioTemplateControlDefaults, an as searchBioTemplateCatalog, at as toSampleRows, b as createQpcrExpressionCollection, bt as toProtocolSteps, c as listBioTemplatePresetControlSchemas, cn as createTemplateCollection, ct as toSamplePrepRows, d as createBioTemplatePresetCollectionFromControls, dn as ensureTemplateFromCollection, dt as toReagentListItems, en as listBioTemplatePacks, et as toTimeCourseRows, f as createWellPlateScreenCollection, fn as extractTemplateCollection, ft as toReagentRows, g as createFlowCytometryAssayCollection, gt as toQpcrWellPlateWells, h as createWesternBlotAssayCollection, ht as toQpcrRows, i as createBioTemplateControlToolkit, in as listBioTemplateCatalog, it as toSampleOptions, j as createSampleSheetTemplate, jt as toCalibrationCurveRows, k as createDoseResponseTemplate, kt as toCalibrationCurveColumns, l as requireBioTemplateControlSchema, ln as createTemplateEnvelope, lt as toReagentColumns, m as createDefaultBioTemplate, mt as toQpcrDataFrame, n as bioTemplateControlsToSectionFormSchemas, nn as bioTemplateCatalog, nt as toSampleColumns, o as getBioTemplateControlSchema, on as TEMPLATE_COLLECTION_KEY, ot as toSamplePrepColumns, p as createBioTemplatePackCollection, pn as getTemplateData, pt as toQpcrColumns, q as racksFromPlateState, qt as validateTimeCourseData, r as bioTemplateControlsToSidebarPanels, rn as getBioTemplateInfo, rt as toSampleDataFrame, s as listBioTemplateControlSchemas, sn as assertTemplateEnvelope, st as toSamplePrepDataFrame, t as bioTemplateControlsToFormSchema, tn as searchBioTemplatePacks, tt as toTimeCourseSteps, u as createBioTemplatePresetCollection, un as ensureTemplateEnvelope, ut as toReagentDataFrame, v as createTargetedMetabolomicsCollection, vt as toProtocolDataFrame, w as createReagentListTemplate, wt as toInstrumentRunScheduleEvents, x as createQpcrPlateTemplate, xt as toInstrumentRunColumns, y as createLcmsBatchCollection, yt as toProtocolRows, z as toBioTemplateComponentImports, zt as validateFlowCytometryPanelData } from "../templates-DcxyATPT.js";
|
|
2
2
|
export { TEMPLATE_COLLECTION_KEY, assertTemplateEnvelope, bioTemplateCatalog, bioTemplateControlsToFormSchema, bioTemplateControlsToSectionFormSchemas, bioTemplateControlsToSidebarPanels, bioTemplatePacks, bioTemplatePresetControlValuesToOptions, bioTemplatePresets, createAssayMatrixTemplate, createBioTemplateControlToolkit, createBioTemplatePackCollection, createBioTemplatePresetCollection, createBioTemplatePresetCollectionFromControls, createCalibrationCurveTemplate, createDefaultBioTemplate, createDoseResponseTemplate, createElisaAssayCollection, createFlowCytometryAssayCollection, createFlowCytometryPanelTemplate, createInstrumentRunTemplate, createLcmsBatchCollection, createPlateMapTemplate, createProtocolStepsTemplate, createQpcrExpressionCollection, createQpcrPlateTemplate, createReagentListTemplate, createSamplePrepTemplate, createSampleSheetTemplate, createTargetedMetabolomicsCollection, createTemplateCollection, createTemplateEnvelope, createTimeCourseTemplate, createWellPlateScreenCollection, createWesternBlotAssayCollection, ensureTemplateEnvelope, ensureTemplateFromCollection, extractTemplateCollection, getBioTemplateComponentBindings, getBioTemplateComponentProps, getBioTemplateControlDefaults, getBioTemplateControlSchema, getBioTemplateInfo, getBioTemplatePackInfo, getBioTemplatePresetInfo, getTemplateData, listBioTemplateCatalog, listBioTemplateComponentBindings, listBioTemplateControlSchemas, listBioTemplatePacks, listBioTemplatePresetControlSchemas, listBioTemplatePresets, racksFromPlateState, requireBioTemplateControlSchema, searchBioTemplateCatalog, searchBioTemplatePacks, searchBioTemplatePresets, toAssayMatrixColumns, toAssayMatrixDataFrame, toAssayMatrixRows, toAssayMatrixSampleOptions, toBioTemplateComponentBindings, toBioTemplateComponentBindingsById, toBioTemplateComponentImports, toBioTemplateComponentProps, toBioTemplateComponentPropsByComponent, toBioTemplateComponentPropsById, toBioTemplateComponentSnippets, toBioTemplateComponentUsage, toCalibrationCurveColumns, toCalibrationCurveDataFrame, toCalibrationCurveRows, toDoseConditions, toDoseLayoutState, toFlowPanelColumns, toFlowPanelDataFrame, toFlowPanelRows, toInstrumentRunColumns, toInstrumentRunDataFrame, toInstrumentRunRows, toInstrumentRunScheduleEvents, toInstrumentRunSteps, toPlateMapEditorState, toProtocolColumns, toProtocolDataFrame, toProtocolRows, toProtocolSteps, toQpcrColumns, toQpcrDataFrame, toQpcrRows, toQpcrWellPlateWells, toReagentColumns, toReagentDataFrame, toReagentListItems, toReagentRows, toSampleColumns, toSampleDataFrame, toSampleOptions, toSamplePrepColumns, toSamplePrepDataFrame, toSamplePrepRows, toSampleRows, toTemplateDataFrame, toTimeCourseColumns, toTimeCourseDataFrame, toTimeCourseRows, toTimeCourseSteps, toWellMapArray, toWellPlateWells, validateAssayMatrixData, validateCalibrationCurveData, validateDoseResponseData, validateFlowCytometryPanelData, validateInstrumentRunData, validatePlateMapData, validateProtocolStepsData, validateQpcrPlateData, validateReagentListData, validateSamplePrepData, validateSampleSheetData, validateTimeCourseData };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as tryUseSettingsStore, c as mintApiErrorFromResponse, s as MintApiError } from "./settings-BLr8lzw6.js";
|
|
2
2
|
import { c as formatExperimentDate, f as BaseModal_default, h as BaseButton_default, m as useEventListener, p as useFocusTrap } from "./experiment-utils-DTANyVKV.js";
|
|
3
|
-
import { a as normalizeOptionInput, i as BaseSelect_default, o as BaseInput_default, t as ResourcePickerListInternal_default } from "./ResourcePickerListInternal-
|
|
3
|
+
import { a as normalizeOptionInput, i as BaseSelect_default, o as BaseInput_default, t as ResourcePickerListInternal_default } from "./ResourcePickerListInternal-BEXnyBNz.js";
|
|
4
4
|
import { Fragment, Teleport, Transition, TransitionGroup, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createStaticVNode, createTextVNode, createVNode, defineComponent, getCurrentInstance, getCurrentScope, inject, nextTick, normalizeClass, normalizeStyle, onBeforeUnmount, onMounted, onScopeDispose, onUnmounted, openBlock, ref, renderList, renderSlot, shallowRef, toDisplayString, toValue, unref, useId, useTemplateRef, vModelText, watch, withCtx, withDirectives, withKeys, withModifiers } from "vue";
|
|
5
5
|
import { autoUpdate, computePosition, flip, offset, shift } from "@floating-ui/dom";
|
|
6
6
|
//#region src/components/BaseTextarea.vue?vue&type=script&setup=true&lang.ts
|
|
@@ -2588,8 +2588,7 @@ var _hoisted_3$6 = [
|
|
|
2588
2588
|
"webkitdirectory"
|
|
2589
2589
|
];
|
|
2590
2590
|
var _hoisted_4$6 = { class: "mint-file-uploader__content" };
|
|
2591
|
-
var _hoisted_5$5 = {
|
|
2592
|
-
var _hoisted_6$5 = {
|
|
2591
|
+
var _hoisted_5$5 = {
|
|
2593
2592
|
key: 0,
|
|
2594
2593
|
class: "mint-file-uploader__icon",
|
|
2595
2594
|
fill: "none",
|
|
@@ -2599,7 +2598,7 @@ var _hoisted_6$5 = {
|
|
|
2599
2598
|
"stroke-linejoin": "round",
|
|
2600
2599
|
viewBox: "0 0 24 24"
|
|
2601
2600
|
};
|
|
2602
|
-
var
|
|
2601
|
+
var _hoisted_6$5 = {
|
|
2603
2602
|
key: 1,
|
|
2604
2603
|
class: "mint-file-uploader__icon",
|
|
2605
2604
|
fill: "none",
|
|
@@ -2609,29 +2608,24 @@ var _hoisted_7$5 = {
|
|
|
2609
2608
|
"stroke-linejoin": "round",
|
|
2610
2609
|
viewBox: "0 0 24 24"
|
|
2611
2610
|
};
|
|
2612
|
-
var
|
|
2613
|
-
var
|
|
2614
|
-
var _hoisted_10$2 = {
|
|
2615
|
-
key: 0,
|
|
2616
|
-
class: "mint-file-uploader__formats"
|
|
2617
|
-
};
|
|
2618
|
-
var _hoisted_11$1 = {
|
|
2611
|
+
var _hoisted_7$5 = { class: "mint-file-uploader__text" };
|
|
2612
|
+
var _hoisted_8$5 = {
|
|
2619
2613
|
key: 0,
|
|
2620
2614
|
class: "mint-file-uploader__actions"
|
|
2621
2615
|
};
|
|
2622
|
-
var
|
|
2616
|
+
var _hoisted_9$3 = {
|
|
2623
2617
|
key: 1,
|
|
2624
2618
|
class: "mint-file-uploader__folder-summary"
|
|
2625
2619
|
};
|
|
2626
|
-
var
|
|
2627
|
-
var
|
|
2628
|
-
var
|
|
2629
|
-
var
|
|
2630
|
-
var
|
|
2631
|
-
var
|
|
2632
|
-
var
|
|
2633
|
-
var
|
|
2634
|
-
var
|
|
2620
|
+
var _hoisted_10$2 = { class: "mint-file-uploader__folder-info" };
|
|
2621
|
+
var _hoisted_11$1 = { class: "mint-file-uploader__folder-details" };
|
|
2622
|
+
var _hoisted_12$1 = { class: "mint-file-uploader__folder-name" };
|
|
2623
|
+
var _hoisted_13$1 = { class: "mint-file-uploader__folder-count" };
|
|
2624
|
+
var _hoisted_14$1 = { class: "mint-file-uploader__file-info" };
|
|
2625
|
+
var _hoisted_15$1 = { class: "mint-file-uploader__file-meta" };
|
|
2626
|
+
var _hoisted_16$1 = { class: "mint-file-uploader__file-name" };
|
|
2627
|
+
var _hoisted_17$1 = { class: "mint-file-uploader__file-size" };
|
|
2628
|
+
var _hoisted_18$1 = ["aria-label", "onClick"];
|
|
2635
2629
|
//#endregion
|
|
2636
2630
|
//#region src/components/FileUploader.vue
|
|
2637
2631
|
var FileUploader_default = /* @__PURE__ */ defineComponent({
|
|
@@ -2666,7 +2660,6 @@ var FileUploader_default = /* @__PURE__ */ defineComponent({
|
|
|
2666
2660
|
const props = __props;
|
|
2667
2661
|
const emit = __emit;
|
|
2668
2662
|
const isDragOver = ref(false);
|
|
2669
|
-
const dragCount = ref(0);
|
|
2670
2663
|
const inputRef = ref();
|
|
2671
2664
|
const selectedFiles = ref([]);
|
|
2672
2665
|
const folderName = ref(null);
|
|
@@ -2677,14 +2670,9 @@ var FileUploader_default = /* @__PURE__ */ defineComponent({
|
|
|
2677
2670
|
}, { immediate: true });
|
|
2678
2671
|
const isFolder = computed(() => props.mode === "folder");
|
|
2679
2672
|
const isMixed = computed(() => props.mode === "file+folder");
|
|
2680
|
-
const
|
|
2681
|
-
if (
|
|
2682
|
-
|
|
2683
|
-
return `Release to add ${dragCount.value} file${dragCount.value === 1 ? "" : "s"}`;
|
|
2684
|
-
}
|
|
2685
|
-
if (isMixed.value) return "Drop files or a folder, or click to choose files";
|
|
2686
|
-
if (isFolder.value) return "Drop a folder, or click to choose";
|
|
2687
|
-
return props.multiple ? "Drop files, or click to choose" : "Drop a file, or click to choose";
|
|
2673
|
+
const acceptLabel = computed(() => {
|
|
2674
|
+
if (!props.accept) return isFolder.value ? "a folder" : "any file";
|
|
2675
|
+
return props.accept.split(",").map((a) => a.trim().replace(".", "").toUpperCase()).join(", ");
|
|
2688
2676
|
});
|
|
2689
2677
|
const maxSizeLabel = computed(() => {
|
|
2690
2678
|
if (!props.maxSize) return null;
|
|
@@ -2693,8 +2681,6 @@ var FileUploader_default = /* @__PURE__ */ defineComponent({
|
|
|
2693
2681
|
if (props.maxSize >= 1024) return `${(props.maxSize / 1024).toFixed(1)} KB`;
|
|
2694
2682
|
return `${props.maxSize} bytes`;
|
|
2695
2683
|
});
|
|
2696
|
-
/** Accepted formats exactly as the caller wrote them, plus the size cap. */
|
|
2697
|
-
const formatsLabel = computed(() => [props.accept?.split(",").map((a) => a.trim()).filter(Boolean).join(" "), maxSizeLabel.value && `max ${maxSizeLabel.value}`].filter(Boolean).join(" · "));
|
|
2698
2684
|
const fileTypeMap = {
|
|
2699
2685
|
csv: {
|
|
2700
2686
|
color: "#10B981",
|
|
@@ -2903,10 +2889,7 @@ var FileUploader_default = /* @__PURE__ */ defineComponent({
|
|
|
2903
2889
|
}
|
|
2904
2890
|
function handleDragOver(event) {
|
|
2905
2891
|
event.preventDefault();
|
|
2906
|
-
if (!props.disabled)
|
|
2907
|
-
isDragOver.value = true;
|
|
2908
|
-
dragCount.value = event.dataTransfer?.items?.length ?? 0;
|
|
2909
|
-
}
|
|
2892
|
+
if (!props.disabled) isDragOver.value = true;
|
|
2910
2893
|
}
|
|
2911
2894
|
function handleDragLeave() {
|
|
2912
2895
|
isDragOver.value = false;
|
|
@@ -2965,9 +2948,13 @@ var FileUploader_default = /* @__PURE__ */ defineComponent({
|
|
|
2965
2948
|
webkitdirectory: isFolder.value || void 0,
|
|
2966
2949
|
class: "mint-file-uploader__input",
|
|
2967
2950
|
onChange: handleInputChange
|
|
2968
|
-
}, null, 40, _hoisted_3$6), createElementVNode("div", _hoisted_4$6, [
|
|
2969
|
-
|
|
2970
|
-
|
|
2951
|
+
}, null, 40, _hoisted_3$6), createElementVNode("div", _hoisted_4$6, [isFolder.value ? (openBlock(), createElementBlock("svg", _hoisted_5$5, [..._cache[0] || (_cache[0] = [createElementVNode("path", { d: "M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z" }, null, -1)])])) : (openBlock(), createElementBlock("svg", _hoisted_6$5, [..._cache[1] || (_cache[1] = [
|
|
2952
|
+
createElementVNode("path", { d: "M20.39 18.39A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.3" }, null, -1),
|
|
2953
|
+
createElementVNode("path", { d: "m16 16-4-4-4 4" }, null, -1),
|
|
2954
|
+
createElementVNode("path", { d: "M12 12v9" }, null, -1)
|
|
2955
|
+
])])), createElementVNode("p", _hoisted_7$5, toDisplayString(isMixed.value ? "Drop files or a folder, or click to choose files" : `Drop ${acceptLabel.value} or click`), 1)])], 42, _hoisted_2$6),
|
|
2956
|
+
_ctx.$slots.actions ? (openBlock(), createElementBlock("div", _hoisted_8$5, [renderSlot(_ctx.$slots, "actions")])) : createCommentVNode("", true),
|
|
2957
|
+
__props.showFiles && isFolder.value && folderName.value && selectedFiles.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_9$3, [createElementVNode("div", _hoisted_10$2, [_cache[2] || (_cache[2] = createElementVNode("div", { class: "mint-file-uploader__folder-icon-wrapper" }, [createElementVNode("svg", {
|
|
2971
2958
|
class: "mint-file-uploader__folder-icon",
|
|
2972
2959
|
fill: "none",
|
|
2973
2960
|
stroke: "currentColor",
|
|
@@ -2975,7 +2962,7 @@ var FileUploader_default = /* @__PURE__ */ defineComponent({
|
|
|
2975
2962
|
"stroke-linecap": "round",
|
|
2976
2963
|
"stroke-linejoin": "round",
|
|
2977
2964
|
viewBox: "0 0 24 24"
|
|
2978
|
-
}, [createElementVNode("path", { d: "m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2" })])], -1)), createElementVNode("div",
|
|
2965
|
+
}, [createElementVNode("path", { d: "m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2" })])], -1)), createElementVNode("div", _hoisted_11$1, [createElementVNode("span", _hoisted_12$1, toDisplayString(folderName.value), 1), createElementVNode("span", _hoisted_13$1, toDisplayString(selectedFiles.value.length) + " file" + toDisplayString(selectedFiles.value.length !== 1 ? "s" : ""), 1)])]), createElementVNode("button", {
|
|
2979
2966
|
type: "button",
|
|
2980
2967
|
"aria-label": "Clear folder",
|
|
2981
2968
|
class: "mint-file-uploader__remove-btn",
|
|
@@ -2999,10 +2986,10 @@ var FileUploader_default = /* @__PURE__ */ defineComponent({
|
|
|
2999
2986
|
return openBlock(), createElementBlock("li", {
|
|
3000
2987
|
key: `${file.name}-${file.size}-${index}`,
|
|
3001
2988
|
class: "mint-file-uploader__file"
|
|
3002
|
-
}, [createElementVNode("div",
|
|
2989
|
+
}, [createElementVNode("div", _hoisted_14$1, [createElementVNode("span", {
|
|
3003
2990
|
class: "mint-file-uploader__file-badge",
|
|
3004
2991
|
style: normalizeStyle({ "--badge-color": getFileType(file.name).color })
|
|
3005
|
-
}, toDisplayString(getFileType(file.name).label), 5), createElementVNode("div",
|
|
2992
|
+
}, toDisplayString(getFileType(file.name).label), 5), createElementVNode("div", _hoisted_15$1, [createElementVNode("span", _hoisted_16$1, toDisplayString(file.name), 1), createElementVNode("span", _hoisted_17$1, toDisplayString(formatFileSize(file.size)), 1)])]), createElementVNode("button", {
|
|
3006
2993
|
type: "button",
|
|
3007
2994
|
"aria-label": `Remove ${file.name}`,
|
|
3008
2995
|
class: "mint-file-uploader__remove-btn",
|
|
@@ -3015,7 +3002,7 @@ var FileUploader_default = /* @__PURE__ */ defineComponent({
|
|
|
3015
3002
|
"stroke-linecap": "round",
|
|
3016
3003
|
"stroke-linejoin": "round",
|
|
3017
3004
|
viewBox: "0 0 24 24"
|
|
3018
|
-
}, [createElementVNode("path", { d: "M18 6 6 18" }), createElementVNode("path", { d: "m6 6 12 12" })], -1)])], 8,
|
|
3005
|
+
}, [createElementVNode("path", { d: "M18 6 6 18" }), createElementVNode("path", { d: "m6 6 12 12" })], -1)])], 8, _hoisted_18$1)]);
|
|
3019
3006
|
}), 128))]),
|
|
3020
3007
|
_: 1
|
|
3021
3008
|
})) : createCommentVNode("", true)
|
|
@@ -12314,4 +12301,4 @@ function getBioTemplateControlDefaults(target) {
|
|
|
12314
12301
|
//#endregion
|
|
12315
12302
|
export { toTimeCourseDataFrame as $, FormulaInput_default as $n, snapToSlot as $r, getBioTemplatePackInfo as $t, createSamplePrepTemplate as A, getControlDefaults as An, isPluginSecretLocked as Ar, toCalibrationCurveDataFrame as At, toBioTemplateComponentProps as B, getDefaultControlView as Bn, addMinutes$1 as Br, validateInstrumentRunData as Bt, createFlowCytometryPanelTemplate as C, SAMPLE_GROUP_TOKENS as Cn, FileUploader_default as Cr, toInstrumentRunRows as Ct, createTimeCourseTemplate as D, hslToHex as Dn, PLUGIN_SECRET_FORMAT_REF as Dr, toFlowPanelDataFrame as Dt, createProtocolStepsTemplate as E, hexToHsl as En, PLUGIN_SECRET_FORMAT_KEY as Er, toFlowPanelColumns as Et, getBioTemplateComponentProps as F, controlsToSettingsSchema as Fn, pluginSecretState as Fr, toAssayMatrixSampleOptions as Ft, toTemplateDataFrame as G, getFieldRegistryEntry as Gn, formatDuration as Gr, validateSamplePrepData as Gt, toBioTemplateComponentPropsById as H, omitUndefined as Hn, durationMinutes as Hr, validateProtocolStepsData as Ht, listBioTemplateComponentBindings as I, controlsToSidebarPanels as In, setPluginSecret as Ir, validateAssayMatrixData as It, toDoseConditions as J, UnitInput_default as Jn, fromMinutes as Jr, bioTemplatePresets as Jt, toWellMapArray as K, getTypeDefault as Kn, formatTime as Kr, validateSampleSheetData as Kt, toBioTemplateComponentBindings as L, controlsToTopBarSettingsConfig as Ln, usesPluginSecretReferences as Lr, validateCalibrationCurveData as Lt, createPlateMapTemplate as M, controlsToFormSchema as Mn, keepPluginSecret as Mr, toAssayMatrixColumns as Mt, bioTemplatePresetControlValuesToOptions as N, controlsToSectionFormSchema as Nn, pluginSecretId as Nr, toAssayMatrixDataFrame as Nt, createCalibrationCurveTemplate as O, defineControlComponentBindings as On, PLUGIN_SECRET_REF_KEY as Or, toFlowPanelRows as Ot, getBioTemplateComponentBindings as P, controlsToSectionFormSchemas as Pn, pluginSecretLabel as Pr, toAssayMatrixRows as Pt, toTimeCourseColumns as Q, useSequenceUtils as Qn, rangesOverlap as Qr, bioTemplatePacks as Qt, toBioTemplateComponentBindingsById as R, controlsToViewIds as Rn, TagsInput_default as Rr, validateDoseResponseData as Rt, createInstrumentRunTemplate as S, SAMPLE_COLOR_SCALE as Sn, _plugin_vue_export_helper_default as Sr, toInstrumentRunDataFrame as St, createAssayMatrixTemplate as T, deriveShade as Tn, SecretInput_default as Tr, toInstrumentRunSteps as Tt, toBioTemplateComponentSnippets as U, recordValue as Un, findAvailableSlots as Ur, validateQpcrPlateData as Ut, toBioTemplateComponentPropsByComponent as V, normalizeControlDefinition as Vn, compareTime as Vr, validatePlateMapData as Vt, toBioTemplateComponentUsage as W, replaceRecord as Wn, findNearestTimeSlotIndex as Wr, validateReagentListData as Wt, toPlateMapEditorState as X, MoleculeInput_default as Xn, isTimeInRange as Xr, listBioTemplatePresets as Xt, toDoseLayoutState as Y, useConcentrationUnits as Yn, generateTimeSlots as Yr, getBioTemplatePresetInfo as Yt, toWellPlateWells as Z, SequenceInput_default as Zn, parseTime as Zr, searchBioTemplatePresets as Zt, createElisaAssayCollection as _, createPlateRowLabels as _n, resolveJobCapabilities as _r, toProtocolColumns as _t, getBioTemplateControlDefaults as a, useListSelection as ai, searchBioTemplateCatalog as an, getInjectedPlatformContext as ar, toSampleRows as at, createQpcrExpressionCollection as b, rowIndex as bn, isRecord as br, toProtocolSteps as bt, listBioTemplatePresetControlSchemas as c, BaseRadioGroup_default as ci, createTemplateCollection as cn, resolveCurrentPluginId as cr, toSamplePrepRows as ct, createBioTemplatePresetCollectionFromControls as d, Tooltip_default as di, ensureTemplateFromCollection as dn, usePluginJobs as dr, toReagentListItems as dt, toMinutes as ei, listBioTemplatePacks as en, ATOMIC_WEIGHTS as er, toTimeCourseRows as et, createWellPlateScreenCollection as f, BaseTextarea_default as fi, extractTemplateCollection as fn, isActiveJobStatus as fr, toReagentRows as ft, createFlowCytometryAssayCollection as g, createPlateColumnLabels as gn, normalizeJobState as gr, toQpcrWellPlateWells as gt, createWesternBlotAssayCollection as h, WELL_PLATE_SIZE_CONFIGS as hn, normalizeJobPercent as hr, toQpcrRows as ht, createBioTemplateControlToolkit as i, MultiSelect_default as ii, listBioTemplateCatalog as in, currentExperimentFromContext as ir, toSampleOptions as it, createSampleSheetTemplate as j, useControlSchema as jn, isPluginSecretRef as jr, toCalibrationCurveRows as jt, createDoseResponseTemplate as k, defineControls as kn, clearPluginSecret as kr, toCalibrationCurveColumns as kt, requireBioTemplateControlSchema as l, BaseToggle_default as li, createTemplateEnvelope as ln, createGeneratedAnalysisTransport as lr, toReagentColumns as lt, createDefaultBioTemplate as m, PLATE_CONFIGS as mn, jobStatusLabel as mr, toQpcrDataFrame as mt, bioTemplateControlsToSectionFormSchemas as n, DatePicker_default as ni, bioTemplateCatalog as nn, GeneratedPathInput_default as nr, toSampleColumns as nt, getBioTemplateControlSchema as o, useSelectionLimit as oi, TEMPLATE_COLLECTION_KEY as on, parseExperimentId as or, toSamplePrepColumns as ot, createBioTemplatePackCollection as p, getTemplateData as pn, isTerminalJobStatus as pr, toQpcrColumns as pt, racksFromPlateState as q, ConcentrationInput_default as qn, formatTimeSlot as qr, validateTimeCourseData as qt, bioTemplateControlsToSidebarPanels as r, useDropdownState as ri, getBioTemplateInfo as rn, GENERATED_JOBS_API_KEY as rr, toSampleDataFrame as rt, listBioTemplateControlSchemas as s, BaseSlider_default as si, assertTemplateEnvelope as sn, resolveCurrentExperimentId as sr, toSamplePrepDataFrame as st, bioTemplateControlsToFormSchema as t, useTimeUtils as ti, searchBioTemplatePacks as tn, useChemicalFormula as tr, toTimeCourseSteps as tt, createBioTemplatePresetCollection as u, BaseCheckbox_default as ui, ensureTemplateEnvelope as un, useGeneratedAnalysis as ur, toReagentDataFrame as ut, createTargetedMetabolomicsCollection as v, createWellGrid as vn, useEventStream as vr, toProtocolDataFrame as vt, createReagentListTemplate as w, SLOT_ORDER as wn, NumberInput_default as wr, toInstrumentRunScheduleEvents as wt, createQpcrPlateTemplate as x, rowLabel as xn, useMenuKeyboard as xr, toInstrumentRunColumns as xt, createLcmsBatchCollection as y, getRectangleWellIds as yn, DateTimePicker_default as yr, toProtocolRows as yt, toBioTemplateComponentImports as z, controlsToViewItems as zn, TimePicker_default as zr, validateFlowCytometryPanelData as zt };
|
|
12316
12303
|
|
|
12317
|
-
//# sourceMappingURL=templates-
|
|
12304
|
+
//# sourceMappingURL=templates-DcxyATPT.js.map
|