quantized-lab 0.8.0__py3-none-any.whl
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.
- quantized/__init__.py +11 -0
- quantized/__main__.py +14 -0
- quantized/api.py +220 -0
- quantized/app.py +206 -0
- quantized/calc/__init__.py +8 -0
- quantized/calc/_clipfit.py +76 -0
- quantized/calc/_natural_neighbor.py +219 -0
- quantized/calc/aggregate.py +159 -0
- quantized/calc/backgrounds.py +353 -0
- quantized/calc/baseline.py +349 -0
- quantized/calc/batch_fit.py +148 -0
- quantized/calc/constants.py +27 -0
- quantized/calc/corrections.py +192 -0
- quantized/calc/crystallography.py +400 -0
- quantized/calc/diffusion.py +120 -0
- quantized/calc/electrical.py +248 -0
- quantized/calc/electrochemistry.py +176 -0
- quantized/calc/element_data.json +1 -0
- quantized/calc/element_data.py +59 -0
- quantized/calc/errors.py +246 -0
- quantized/calc/figure.py +417 -0
- quantized/calc/figure_break.py +152 -0
- quantized/calc/figure_categorical.py +156 -0
- quantized/calc/figure_corner.py +229 -0
- quantized/calc/figure_facets.py +127 -0
- quantized/calc/figure_field.py +137 -0
- quantized/calc/figure_hitmap.py +116 -0
- quantized/calc/figure_labels.py +62 -0
- quantized/calc/figure_map.py +287 -0
- quantized/calc/figure_overrides.py +159 -0
- quantized/calc/figure_page.py +266 -0
- quantized/calc/figure_scale.py +125 -0
- quantized/calc/figure_statplots.py +167 -0
- quantized/calc/figure_styles.py +131 -0
- quantized/calc/figure_ternary.py +239 -0
- quantized/calc/figure_ticks.py +217 -0
- quantized/calc/fit_autoguess.py +156 -0
- quantized/calc/fit_bootstrap.py +163 -0
- quantized/calc/fit_bumps.py +258 -0
- quantized/calc/fit_constraints.py +114 -0
- quantized/calc/fit_equation.py +264 -0
- quantized/calc/fit_findxy.py +80 -0
- quantized/calc/fit_models.py +195 -0
- quantized/calc/fit_models_special.py +189 -0
- quantized/calc/fit_odr.py +99 -0
- quantized/calc/fit_scan.py +243 -0
- quantized/calc/fit_stats.py +215 -0
- quantized/calc/fitting.py +199 -0
- quantized/calc/formula.py +90 -0
- quantized/calc/global_curve_fit.py +305 -0
- quantized/calc/global_fit.py +181 -0
- quantized/calc/interp2d.py +260 -0
- quantized/calc/linecut.py +269 -0
- quantized/calc/magnetic.py +414 -0
- quantized/calc/magnetometry.py +464 -0
- quantized/calc/map.py +228 -0
- quantized/calc/mcmc.py +177 -0
- quantized/calc/optics.py +228 -0
- quantized/calc/pawley.py +251 -0
- quantized/calc/peak_batch.py +128 -0
- quantized/calc/peak_fit.py +259 -0
- quantized/calc/peak_integrate.py +104 -0
- quantized/calc/peak_multifit.py +260 -0
- quantized/calc/peak_track.py +134 -0
- quantized/calc/peaks.py +298 -0
- quantized/calc/peakshapes.py +85 -0
- quantized/calc/plotting.py +147 -0
- quantized/calc/processing.py +232 -0
- quantized/calc/qspace.py +48 -0
- quantized/calc/reductions.py +155 -0
- quantized/calc/reductions_fft.py +383 -0
- quantized/calc/refl_sld_presets.json +1 -0
- quantized/calc/reflectivity.py +80 -0
- quantized/calc/registry.py +303 -0
- quantized/calc/relaxation.py +119 -0
- quantized/calc/report.py +253 -0
- quantized/calc/report_emit.py +227 -0
- quantized/calc/resample.py +142 -0
- quantized/calc/rsm.py +91 -0
- quantized/calc/rsm_analyze.py +245 -0
- quantized/calc/semiconductor.py +488 -0
- quantized/calc/sld.py +131 -0
- quantized/calc/sld_formula.py +138 -0
- quantized/calc/spectral.py +357 -0
- quantized/calc/statplots.py +214 -0
- quantized/calc/stats.py +399 -0
- quantized/calc/stats_anova2.py +202 -0
- quantized/calc/stats_anova_ext.py +338 -0
- quantized/calc/stats_dist.py +196 -0
- quantized/calc/stats_glm.py +245 -0
- quantized/calc/stats_multivar.py +289 -0
- quantized/calc/stats_roc.py +157 -0
- quantized/calc/stats_survival.py +261 -0
- quantized/calc/stats_tests.py +380 -0
- quantized/calc/substrates.py +181 -0
- quantized/calc/superconductor.py +359 -0
- quantized/calc/surface_fit.py +290 -0
- quantized/calc/surface_models.py +156 -0
- quantized/calc/thermal.py +119 -0
- quantized/calc/thin_film.py +425 -0
- quantized/calc/unit_convert.py +259 -0
- quantized/calc/units.py +80 -0
- quantized/calc/vacuum.py +290 -0
- quantized/calc/xray.py +169 -0
- quantized/cli.py +214 -0
- quantized/datastruct.py +153 -0
- quantized/io/__init__.py +11 -0
- quantized/io/_hdf5_layout.py +308 -0
- quantized/io/_jcamp_asdf.py +135 -0
- quantized/io/_xrdml_scan.py +291 -0
- quantized/io/base.py +82 -0
- quantized/io/bruker_brml.py +177 -0
- quantized/io/bruker_raw.py +158 -0
- quantized/io/cif.py +266 -0
- quantized/io/consolidated.py +122 -0
- quantized/io/delimited.py +222 -0
- quantized/io/excel.py +135 -0
- quantized/io/hdf5.py +192 -0
- quantized/io/import_filters.py +178 -0
- quantized/io/import_preview.py +262 -0
- quantized/io/jcamp.py +179 -0
- quantized/io/lakeshore.py +163 -0
- quantized/io/ncnr.py +278 -0
- quantized/io/netcdf.py +195 -0
- quantized/io/opus.py +231 -0
- quantized/io/origin.py +346 -0
- quantized/io/origin_com.py +194 -0
- quantized/io/origin_project/__init__.py +221 -0
- quantized/io/origin_project/annotation_marks.py +288 -0
- quantized/io/origin_project/container.py +262 -0
- quantized/io/origin_project/curve_style_color.py +359 -0
- quantized/io/origin_project/figure_geometry.py +108 -0
- quantized/io/origin_project/figure_layers.py +333 -0
- quantized/io/origin_project/figure_text.py +258 -0
- quantized/io/origin_project/figures.py +210 -0
- quantized/io/origin_project/figures_opju.py +440 -0
- quantized/io/origin_project/notes.py +302 -0
- quantized/io/origin_project/opj.py +459 -0
- quantized/io/origin_project/opj_curves.py +297 -0
- quantized/io/origin_project/opj_shapes.py +148 -0
- quantized/io/origin_project/opju.py +146 -0
- quantized/io/origin_project/opju_axis_real_form.py +418 -0
- quantized/io/origin_project/opju_axis_specimen_form.py +167 -0
- quantized/io/origin_project/opju_codec.py +370 -0
- quantized/io/origin_project/opju_curves.py +497 -0
- quantized/io/origin_project/opju_curves_allcols.py +258 -0
- quantized/io/origin_project/opju_figure_curves.py +302 -0
- quantized/io/origin_project/opju_figure_text.py +245 -0
- quantized/io/origin_project/opju_reports.py +129 -0
- quantized/io/origin_project/origin_richtext.py +145 -0
- quantized/io/origin_project/preview.py +132 -0
- quantized/io/origin_project/templates.py +314 -0
- quantized/io/origin_project/tree.py +379 -0
- quantized/io/origin_project/tree_opju.py +228 -0
- quantized/io/origin_project/windows.py +238 -0
- quantized/io/origin_project/windows_opju.py +393 -0
- quantized/io/origin_project/writer.py +156 -0
- quantized/io/origin_project/writer_blocks.py +282 -0
- quantized/io/qd.py +380 -0
- quantized/io/refl1d.py +132 -0
- quantized/io/registry.py +210 -0
- quantized/io/report_export.py +347 -0
- quantized/io/rigaku.py +100 -0
- quantized/io/sims.py +398 -0
- quantized/io/spc.py +311 -0
- quantized/io/xrd_csv.py +308 -0
- quantized/io/xrdml.py +394 -0
- quantized/jobs.py +173 -0
- quantized/plugins/__init__.py +50 -0
- quantized/plugins/contract.py +111 -0
- quantized/plugins/loader.py +394 -0
- quantized/plugins/steps.py +90 -0
- quantized/routes/__init__.py +7 -0
- quantized/routes/_bookcache.py +62 -0
- quantized/routes/_export_common.py +27 -0
- quantized/routes/_payload.py +58 -0
- quantized/routes/_uploadcache.py +59 -0
- quantized/routes/aggregate.py +46 -0
- quantized/routes/baseline.py +210 -0
- quantized/routes/books.py +117 -0
- quantized/routes/calc.py +56 -0
- quantized/routes/corrections.py +78 -0
- quantized/routes/crystallography.py +80 -0
- quantized/routes/diffusion.py +58 -0
- quantized/routes/electrical.py +101 -0
- quantized/routes/electrochemistry.py +83 -0
- quantized/routes/export.py +280 -0
- quantized/routes/export_facets.py +83 -0
- quantized/routes/export_figures.py +471 -0
- quantized/routes/export_page.py +125 -0
- quantized/routes/fitting.py +379 -0
- quantized/routes/fitting_bumps.py +97 -0
- quantized/routes/import_template.py +97 -0
- quantized/routes/import_wizard.py +150 -0
- quantized/routes/jobs_api.py +59 -0
- quantized/routes/magnetic.py +135 -0
- quantized/routes/magnetometry.py +133 -0
- quantized/routes/optics.py +98 -0
- quantized/routes/parsers.py +281 -0
- quantized/routes/peaks.py +184 -0
- quantized/routes/plot.py +103 -0
- quantized/routes/reductions.py +121 -0
- quantized/routes/reference.py +58 -0
- quantized/routes/reflectivity.py +91 -0
- quantized/routes/report_export.py +119 -0
- quantized/routes/rsm.py +136 -0
- quantized/routes/samples.py +32 -0
- quantized/routes/semiconductor.py +207 -0
- quantized/routes/sld.py +42 -0
- quantized/routes/spectral.py +54 -0
- quantized/routes/statplots.py +99 -0
- quantized/routes/stats.py +418 -0
- quantized/routes/stats_design.py +321 -0
- quantized/routes/substrates.py +46 -0
- quantized/routes/superconductor.py +139 -0
- quantized/routes/thermal.py +57 -0
- quantized/routes/thin_film.py +153 -0
- quantized/routes/vacuum.py +113 -0
- quantized/routes/xray.py +32 -0
- quantized/samples/demo_vsm.csv +42 -0
- quantized/server_launch.py +251 -0
- quantized/web/assets/JetBrainsMono-Bold-CUogYd9I.woff2 +0 -0
- quantized/web/assets/JetBrainsMono-Regular-CA-Os4ii.woff2 +0 -0
- quantized/web/assets/index-BHmmCL-x.js +27 -0
- quantized/web/assets/index-BiZzN7J6.css +1 -0
- quantized/web/index.html +13 -0
- quantized/web/loading.html +69 -0
- quantized_lab-0.8.0.dist-info/METADATA +122 -0
- quantized_lab-0.8.0.dist-info/RECORD +233 -0
- quantized_lab-0.8.0.dist-info/WHEEL +4 -0
- quantized_lab-0.8.0.dist-info/entry_points.txt +4 -0
- quantized_lab-0.8.0.dist-info/licenses/LICENSE +201 -0
- quantized_lab-0.8.0.dist-info/licenses/NOTICE +11 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.uplot,.uplot *,.uplot :before,.uplot :after{box-sizing:border-box}.uplot{width:min-content;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{-webkit-user-select:none;user-select:none;position:relative}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{width:100%;height:100%;display:block;position:relative}.u-axis{position:absolute}.u-legend{text-align:center;margin:auto;font-size:14px}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{pointer-events:none;background:#00000012;position:absolute}.u-cursor-x,.u-cursor-y{pointer-events:none;will-change:transform;position:absolute;top:0;left:0}.u-hz .u-cursor-x,.u-vt .u-cursor-y{border-right:1px dashed #607d8b;height:100%}.u-hz .u-cursor-y,.u-vt .u-cursor-x{border-bottom:1px dashed #607d8b;width:100%}.u-cursor-pt{pointer-events:none;will-change:transform;border:0 solid;border-radius:50%;position:absolute;top:0;left:0;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}@font-face{font-family:JetBrains Mono;src:url(/assets/JetBrainsMono-Regular-CA-Os4ii.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/assets/JetBrainsMono-Bold-CUogYd9I.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root,[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--surface-0:oklch(16% .008 280);--surface-1:oklch(20% .008 280);--surface-2:oklch(24% .008 280);--surface-3:oklch(29% .009 280);--border-soft:oklch(28% .01 280);--border:oklch(34% .01 280);--border-strong:oklch(44% .012 280);--text:oklch(93% .005 280);--text-dim:oklch(72% .008 280);--text-faint:oklch(55% .01 280);--accent:oklch(70% .17 295);--accent-soft:oklch(70% .17 295/.18);--accent-text:oklch(82% .12 295);--capture:oklch(78% .14 75);--capture-soft:oklch(78% .14 75/.16);--ok:oklch(74% .16 150);--danger:oklch(66% .2 18);--warn:oklch(78% .14 75);--series-1:oklch(70% .17 295);--series-2:oklch(74% .13 185);--series-3:oklch(78% .14 75);--series-4:oklch(66% .2 18);--series-5:oklch(74% .16 150);--series-6:oklch(68% .15 250);--series-7:oklch(72% .16 12);--series-8:oklch(80% .1 95);--glass:oklch(20% .008 280/.78);--glass-border:oklch(60% .01 280/.25);--axes-bg:oklch(13% .006 280);--grid-line:oklch(30% .008 280);--shadow:0 6px 24px oklch(0% 0 0/.4)}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--surface-0:oklch(96% .004 280);--surface-1:oklch(93% .004 280);--surface-2:oklch(89% .005 280);--surface-3:oklch(85% .006 280);--border-soft:oklch(88% .005 280);--border:oklch(80% .006 280);--border-strong:oklch(68% .008 280);--text:oklch(22% .01 280);--text-dim:oklch(42% .01 280);--text-faint:oklch(58% .01 280);--accent:oklch(55% .18 295);--accent-soft:oklch(55% .18 295/.14);--accent-text:oklch(45% .16 295);--capture:oklch(66% .15 75);--capture-soft:oklch(66% .15 75/.16);--ok:oklch(60% .15 150);--danger:oklch(58% .2 18);--warn:oklch(66% .15 75);--series-1:oklch(55% .18 295);--series-2:oklch(58% .12 185);--series-3:oklch(66% .15 75);--series-4:oklch(58% .2 18);--series-5:oklch(60% .15 150);--series-6:oklch(53% .18 252);--series-7:oklch(57% .19 15);--series-8:oklch(62% .12 95);--glass:oklch(96% .004 280/.82);--glass-border:oklch(40% .01 280/.2);--axes-bg:oklch(13% .006 280);--grid-line:oklch(30% .008 280);--shadow:0 6px 24px oklch(0% 0 0/.18)}[data-theme=dark][data-accent=violet]{--accent:oklch(70% .17 295);--accent-soft:oklch(70% .17 295/.18);--accent-text:oklch(82% .12 295);--series-1:oklch(70% .17 295)}[data-theme=dark][data-accent=teal]{--accent:oklch(74% .13 185);--accent-soft:oklch(74% .13 185/.2);--accent-text:oklch(84% .1 185);--series-1:oklch(74% .13 185)}[data-theme=dark][data-accent=ocean]{--accent:oklch(68% .15 250);--accent-soft:oklch(68% .15 250/.2);--accent-text:oklch(82% .11 250);--series-1:oklch(68% .15 250)}[data-theme=dark][data-accent=amber]{--accent:oklch(78% .14 75);--accent-soft:oklch(78% .14 75/.2);--accent-text:oklch(86% .1 78);--series-1:oklch(78% .14 75);--capture:oklch(80% .12 205);--capture-soft:oklch(80% .12 205/.18)}[data-theme=dark][data-accent=rose]{--accent:oklch(72% .16 12);--accent-soft:oklch(72% .16 12/.2);--accent-text:oklch(83% .11 12);--series-1:oklch(72% .16 12)}:root{--ink-on-dark:oklch(93% .005 280);--ink-dim-on-dark:oklch(72% .008 280);--axes-bg-light:oklch(98% .004 280);--grid-line-light:oklch(86% .006 280);--ink-on-light:oklch(22% .01 280);--ink-dim-on-light:oklch(42% .01 280);--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--type-label:11px;--type-micro:10px;--type-nano:9px;--type-title:14px;--type-display:15px;--tracking-label:.06em;--tracking-wide:.1em;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:12px;--space-6:16px;--space-7:24px;--radius:8px;--radius-sm:5px;--radius-pill:99px}:root,[data-density=regular]{--pad:8px;--pad-lg:12px;--row-h:28px;--font-size:13px;--font-size-sm:11px}[data-density=compact]{--pad:5px;--pad-lg:8px;--row-h:24px;--font-size:12px;--font-size-sm:10px}[data-density=comfy]{--pad:11px;--pad-lg:16px;--row-h:32px;--font-size:14px;--font-size-sm:12px}.qz-btn{height:var(--row-h);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-3);color:var(--text-dim);font-family:var(--font-ui);font-size:var(--font-size-sm);cursor:default;white-space:nowrap;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:6px;padding:0 11px;display:inline-flex}.qz-btn:hover{color:var(--text);border-color:var(--border-strong)}.qz-btn:active{transform:translateY(.5px)}.qz-btn.qz-primary{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}.qz-btn.qz-primary:hover{background:color-mix(in oklab, var(--accent-soft), var(--accent) 16%)}.qz-btn.qz-ghost{background:0 0;border-color:#0000}.qz-btn.qz-ghost:hover{background:var(--surface-3)}.qz-btn.qz-danger:hover{color:var(--danger);border-color:var(--danger)}.qz-btn.qz-sm{height:22px;padding:0 8px}.qz-btn:disabled,.qz-btn.qz-disabled{opacity:.4;pointer-events:none}.qz-icon-btn{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--text-faint);cursor:default;background:0 0;border:none;place-items:center;font-size:13px;display:grid}.qz-icon-btn:hover{background:var(--surface-3);color:var(--text)}.qz-icon-btn.qz-active{background:var(--accent-soft);color:var(--accent-text)}.qz-seg{border:1px solid var(--border);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.qz-seg-btn{color:var(--text-faint);height:calc(var(--row-h) - 2px);font-family:var(--font-ui);font-size:var(--font-size-sm);cursor:default;white-space:nowrap;background:0 0;border:none;padding:3px 11px}.qz-seg-btn+.qz-seg-btn{border-left:1px solid var(--border)}.qz-seg-btn:hover{color:var(--text-dim)}.qz-seg-btn.qz-active{background:var(--accent-soft);color:var(--accent-text)}.qz-pill{font-family:var(--font-ui);font-size:var(--font-size-sm);border-radius:var(--radius-pill);border:1px solid var(--border-soft);background:var(--surface-2);color:var(--text-dim);cursor:default;padding:3px 11px}.qz-pill:hover{border-color:var(--border-strong)}.qz-pill.qz-active{border-color:var(--accent);color:var(--accent);background:var(--surface-3)}.qz-chip{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-3);color:var(--text-dim);font-family:var(--font-mono);font-size:var(--font-size-sm);cursor:default;align-items:center;gap:5px;padding:2px 8px;display:inline-flex}.qz-chip.qz-active{background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent)}.qz-badge{font-family:var(--font-mono);font-size:var(--type-nano);border-radius:var(--radius-sm);background:var(--surface-3);color:var(--text-faint);align-items:center;padding:1px 6px;display:inline-flex}.qz-badge.qz-accent{background:var(--accent-soft);color:var(--accent-text)}.qz-badge.qz-ok{background:color-mix(in oklab, var(--ok) 18%, transparent);color:var(--ok)}.qz-badge.qz-danger{background:color-mix(in oklab, var(--danger) 18%, transparent);color:var(--danger)}.qz-input{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-ui);font-size:var(--font-size-sm);height:var(--row-h);min-width:0;padding:0 8px}.qz-input.qz-num{font-family:var(--font-mono);text-align:right}.qz-input:focus-visible{border-color:var(--accent);outline:none}.qz-input::placeholder{color:var(--text-faint)}.qz-select{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-ui);font-size:var(--font-size-sm);height:var(--row-h);padding:0 6px}.qz-select:focus-visible{border-color:var(--accent);outline:none}.qz-check{font-size:var(--font-size-sm);color:var(--text-dim);cursor:default;align-items:center;gap:7px;display:inline-flex}.qz-check input{accent-color:var(--accent);width:14px;height:14px}.qz-switch{border-radius:var(--radius-pill);background:var(--surface-3);border:1px solid var(--border);cursor:default;flex:none;width:32px;height:18px;transition:background .12s,border-color .12s;position:relative}.qz-switch:after{content:"";background:var(--text-dim);border-radius:50%;width:12px;height:12px;transition:transform .12s,background .12s;position:absolute;top:2px;left:2px}.qz-switch.qz-on{background:var(--accent-soft);border-color:var(--accent)}.qz-switch.qz-on:after{background:var(--accent);transform:translate(14px)}.qz-slider-row{align-items:center;gap:var(--pad);font-size:var(--font-size-sm);display:flex}.qz-slider-row .qz-k{color:var(--text-faint);min-width:40px}.qz-slider-row .qz-v{font-family:var(--font-mono);color:var(--text-dim);text-align:right;min-width:48px}.qz-slider-row input[type=range]{accent-color:var(--accent);flex:1}.qz-range-slider{flex:1;min-width:80px;height:20px;position:relative}.qz-range-track,.qz-range-fill{pointer-events:none;border-radius:2px;height:3px;position:absolute;top:50%;transform:translateY(-50%)}.qz-range-track{background:var(--border);left:0;right:0}.qz-range-fill{left:var(--qz-range-lo,0%);right:calc(100% - var(--qz-range-hi,100%));background:var(--accent)}.qz-range-slider input[type=range]{pointer-events:none;appearance:none;background:0 0;width:100%;margin:0;position:absolute;inset:0}.qz-range-slider input[type=range]::-webkit-slider-runnable-track{background:0 0}.qz-range-slider input[type=range]::-moz-range-track{background:0 0;border:none}.qz-range-slider input[type=range]::-webkit-slider-thumb{appearance:none;pointer-events:auto;background:var(--accent);border:2px solid var(--surface-1,#fff);cursor:pointer;border-radius:50%;width:14px;height:14px;margin-top:-6px}.qz-range-slider input[type=range]::-moz-range-thumb{pointer-events:auto;background:var(--accent);border:2px solid var(--surface-1,#fff);cursor:pointer;border-radius:50%;width:14px;height:14px}.qz-card{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius);padding:var(--pad-lg)}.qz-card>summary,.qz-card-title{cursor:default;font-size:var(--type-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-faint);margin:0 0 var(--pad);-webkit-user-select:none;user-select:none;align-items:center;gap:6px;list-style:none;display:flex}.qz-card>summary::-webkit-details-marker{display:none}.qz-card>summary:before{content:"▾";color:var(--text-faint);font-size:9px}.qz-card:not([open])>summary:before{content:"▸"}.qz-card:not([open])>summary{margin-bottom:0}.qz-meta-row{font-size:var(--font-size-sm);justify-content:space-between;gap:12px;padding:2px 0;display:flex}.qz-meta-row .qz-k{color:var(--text-faint)}.qz-meta-row .qz-v{font-family:var(--font-mono);color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qz-provenance-row{font-size:var(--font-size-sm);padding:3px 0}.qz-provenance-row>summary{cursor:default;list-style:none}.qz-provenance-row>summary::-webkit-details-marker{display:none}.qz-provenance-row>summary:before{content:"▸ ";color:var(--text-faint);font-size:9px}.qz-provenance-row[open]>summary:before{content:"▾ "}.qz-dot{background:var(--text-faint);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.qz-dot.qz-ok{background:var(--ok)}.qz-dot.qz-danger{background:var(--danger)}.qz-dot.qz-warn{background:var(--warn)}.qz-dot.qz-accent{background:var(--accent)}.qz-swatch{cursor:default;border:2px solid #0000;border-radius:50%;flex:none;width:18px;height:18px}.qz-swatch.qz-active{border-color:var(--accent)}.qz-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);font-size:var(--font-size-sm)}.qz-table th{text-align:right;color:var(--text-faint);font-weight:var(--weight-medium);border-bottom:1px solid var(--border);background:var(--surface-2);padding:4px 8px;position:sticky;top:0}.qz-table th:first-child,.qz-table td:first-child{text-align:left;color:var(--text-faint)}.qz-table td{text-align:right;color:var(--text-dim);border-bottom:1px solid var(--border-soft);padding:3px 8px}.qz-table tr:hover td{background:var(--surface-3)}*{box-sizing:border-box}body{font-family:var(--font-ui);font-size:var(--font-size);color:var(--text);background:var(--surface-0);-webkit-user-select:none;user-select:none;overflow:hidden}.qzk-app{grid-template-rows:38px 30px 1fr 24px;height:100%;display:grid}.qzk-main{grid-template-columns:var(--lw,210px) 1fr var(--rw,296px);min-height:0;display:grid}.qzk-main.lc{grid-template-columns:0 1fr var(--rw,296px)}.qzk-main.rc{grid-template-columns:var(--lw,210px) 1fr 0}.qzk-calc-app{grid-template-rows:38px 1fr;height:100%;display:grid}.qzk-calc-body{padding:var(--pad-lg);width:100%;max-width:480px;margin:0 auto;overflow-y:auto}.qzk-titlebar{background:var(--surface-1);border-bottom:1px solid var(--border-soft);padding:0 var(--pad-lg);grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.qzk-brand{align-items:center;gap:9px;display:flex}.qzk-brand img{width:19px;height:19px}.qzk-brand .nm{font-weight:var(--weight-semibold);font-size:var(--font-size)}.qzk-doc{text-align:center;font-size:var(--font-size-sm);color:var(--text-dim);white-space:nowrap}.qzk-doc .ext{color:var(--text-faint)}.qzk-tbar-right{justify-content:flex-end;align-items:center;gap:4px;display:flex}.qzk-menubar{background:var(--surface-1);border-bottom:1px solid var(--border-soft);padding:0 var(--pad);z-index:30;align-items:center;gap:2px;display:flex;position:relative}.qzk-menu{border-radius:var(--radius-sm);color:var(--text-dim);cursor:default;font-size:var(--font-size-sm);padding:3px 9px}.qzk-menu:hover,.qzk-menu.open{background:var(--surface-3);color:var(--text)}.qzk-spacer{flex:1}.qzk-search{background:var(--surface-2);border:1px solid var(--border-soft);color:var(--text-faint);font-size:var(--font-size-sm);cursor:default;white-space:nowrap;border-radius:7px;align-items:center;gap:7px;margin:2px;padding:3px 9px;display:flex}.qzk-search:hover{border-color:var(--border);color:var(--text-dim)}.qzk-ws-chip{background:var(--surface-2);border:1px solid var(--border-soft);color:var(--text-dim);font-size:var(--font-size-sm);cursor:default;white-space:nowrap;border-radius:7px;align-items:center;gap:6px;margin:2px;padding:3px 9px;display:flex}.qzk-ws-chip:hover{border-color:var(--border);color:var(--text)}.qzk-ws-chip .ic{color:var(--accent)}.qzk-dropdown{background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-border);border-radius:var(--radius);min-width:220px;box-shadow:var(--shadow);z-index:40;padding:4px;position:absolute;top:100%}.qzk-entry{border-radius:var(--radius-sm);white-space:nowrap;cursor:default;font-size:var(--font-size-sm);color:var(--text-dim);justify-content:space-between;align-items:center;gap:16px;padding:5px 9px;display:flex}.qzk-entry:hover{background:var(--accent-soft);color:var(--accent-text)}.qzk-entry .sc{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text-faint)}.qzk-sep{background:var(--border-soft);height:1px;margin:4px 6px}.qzk-menu-wrap{position:relative}.qzk-menu-pop{background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-border);border-radius:var(--radius);min-width:200px;box-shadow:var(--shadow);z-index:40;flex-direction:column;padding:4px;display:flex;position:absolute;top:100%;left:0}.qzk-menu-item{text-align:left;border-radius:var(--radius-sm);white-space:nowrap;cursor:default;width:100%;font-size:var(--font-size-sm);color:var(--text-dim);background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:5px 9px;text-decoration:none;display:flex}.qzk-menu-item:hover{background:var(--accent-soft);color:var(--accent-text)}.qzk-menu-item:disabled{opacity:.4;pointer-events:none}.qzk-menu-item.danger{color:var(--danger,#e5484d)}.qzk-menu-item.danger:hover{background:color-mix(in srgb, var(--danger,#e5484d) 18%, transparent);color:var(--danger,#e5484d)}.qzk-menu-sep{background:var(--border-soft);height:1px;margin:4px 6px}.qzk-menu-label{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-faint);padding:3px 9px}.qzk-menu-trunc{text-overflow:ellipsis;max-width:220px;overflow:hidden}.qzk-stage.tool-pointer .u-over{cursor:default}.qzk-stage.tool-pan,.qzk-stage.tool-pan .u-over{cursor:grab}.qzk-stage.tool-pan .u-over:active{cursor:grabbing}.qzk-stage.tool-zoom .u-over,.qzk-stage.tool-cursor .u-over,.qzk-stage.tool-measure .u-over,.qzk-stage.tool-stats .u-over,.qzk-stage.tool-region .u-over{cursor:crosshair}.qzk-prefs-overlay{justify-content:center;align-items:flex-start;display:flex}.qzk-prefs{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);width:min(640px,94vw);max-height:80vh;box-shadow:var(--shadow);flex-direction:column;margin-top:7vh;display:flex;overflow:hidden}.qzk-prefs-head{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.qzk-prefs-head .ttl{font-weight:var(--weight-semibold);font-size:var(--font-size)}.qzk-prefs-x{width:22px;height:22px;color:var(--text-faint);border-radius:var(--radius-sm);cursor:default;background:0 0;border:none;font-size:13px}.qzk-prefs-x:hover{background:var(--surface-3);color:var(--text)}.qzk-prefs-body{grid-template-columns:148px 1fr;min-height:320px;display:grid}.qzk-prefs-nav{border-right:1px solid var(--border-soft);background:var(--surface-0);flex-direction:column;gap:2px;padding:8px;display:flex}.qzk-prefs-tab{border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--text-dim);cursor:default;padding:6px 10px}.qzk-prefs-tab:hover{background:var(--surface-2);color:var(--text)}.qzk-prefs-tab.active{background:var(--accent-soft);color:var(--accent-text)}.qzk-prefs-pane{padding:16px 18px;overflow-y:auto}.qzk-pref-row{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:18px;padding:9px 0;display:flex}.qzk-pref-row:last-child{border-bottom:none}.qzk-pref-lbl{font-size:var(--font-size);color:var(--text);flex-direction:column;gap:2px;display:flex}.qzk-pref-lbl .hint{color:var(--text-faint);font-size:10px}.qzk-pref-ctl{flex:none}.qzk-pref-note{font-size:var(--font-size-sm);color:var(--text-faint);border-bottom:1px solid var(--border-soft);padding:10px 0;line-height:1.6}.qzk-prefs-foot{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;display:flex}.qzk-pref-hint{font-size:var(--font-size-sm);color:var(--text-faint)}.qzk-accent-swatches{gap:5px;display:flex}.qzk-swatch{border-radius:var(--radius-pill);border:1px solid var(--border-soft);background:var(--surface-2);color:var(--text-faint);cursor:default;text-transform:capitalize;align-items:center;gap:5px;padding:4px 8px 4px 6px;font-size:10px;display:inline-flex}.qzk-swatch .dot{border-radius:50%;width:9px;height:9px}.qzk-swatch:hover{border-color:var(--border);color:var(--text-dim)}.qzk-swatch.on{border-color:var(--sw);color:var(--text);box-shadow:0 0 0 1px var(--sw)}.qzk-ctx{min-width:180px;position:fixed;top:auto;left:auto}.qzk-ctx-sep{background:var(--glass-border);height:1px;margin:4px 6px}.qzk-ctx-header{letter-spacing:.02em;color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;max-width:220px;padding:4px 9px 2px;font-size:11px;font-weight:600;overflow:hidden}.qzk-ctx-arrow{opacity:.7;margin-left:auto}.qzk-ctx-check{color:var(--accent);margin-left:auto}.qzk-ctx-hassub{justify-content:space-between}.qzk-ctx-subwrap{display:flex;position:relative}.qzk-ctx-subwrap>.qzk-menu-item{width:100%}.qzk-ctx-swatches{flex-wrap:wrap;gap:4px;max-width:200px;padding:5px 9px;display:flex}.qzk-ctx-swatch{border:1px solid var(--border);cursor:default;border-radius:3px;width:16px;height:16px;padding:0}.qzk-ctx-swatch:hover{outline:1px solid var(--accent);outline-offset:1px}.qzk-ctx-swatch.active{border:2px solid var(--text)}.qzk-library{background:var(--surface-1);border-right:1px solid var(--border-soft);padding:var(--pad);gap:var(--pad);flex-direction:column;display:flex;overflow-y:auto}.qzk-library.dragover{outline:2px dashed var(--accent);outline-offset:-6px;background:var(--accent-soft)}.qzk-lib-head{justify-content:space-between;align-items:center;padding:2px;display:flex}.qzk-lib-title{font-size:var(--type-label);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-faint)}.qzk-ds{border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-2);cursor:default;flex-direction:column;gap:5px;padding:8px 9px;display:flex}.qzk-ds:hover{border-color:var(--border)}.qzk-ds.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.qzk-ds.selected{background:color-mix(in srgb, var(--accent) 14%, var(--surface-2));border-color:var(--accent)}.qzk-ds-top{align-items:center;gap:7px;display:flex}.qzk-ds-name{min-width:0;font-size:var(--font-size-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.qzk-ds-spark{width:100%;height:26px;display:block}.qzk-ds.qzk-ds-sheet{margin-left:14px}.qzk-ds-sheet-chip{color:var(--text-faint);font-size:var(--type-nano);font-family:var(--font-mono);white-space:nowrap;flex-shrink:0}.qzk-ds-foot{justify-content:space-between;align-items:center;gap:6px;display:flex}.qzk-ds-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.qzk-ds-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);font-size:var(--type-nano);color:var(--text-faint);overflow:hidden}.qzk-ds-tags{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.qzk-tag{background:var(--accent-soft);height:18px;color:var(--accent);font-size:var(--type-nano);cursor:pointer;border:none;border-radius:9px;align-items:center;gap:3px;padding:0 6px;display:inline-flex}.qzk-tag-x{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;padding:0;font-size:12px;line-height:1}.qzk-tag-x:hover{opacity:1}.qzk-tag-add{color:var(--text-faint);border:1px dashed var(--border);background:0 0}.qzk-tag-input{width:76px;height:18px;font-size:var(--type-nano);padding:0 4px}.qzk-lib-group{gap:var(--pad);flex-direction:column;display:flex}.qzk-group-head{cursor:pointer;width:100%;color:var(--text-faint);font-size:var(--type-label);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-label);background:0 0;border:none;align-items:center;gap:6px;padding:2px;display:flex}.qzk-group-caret{width:10px;color:var(--text-dim)}.qzk-group-name{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;min-width:0;overflow:hidden}.qzk-group-count{color:var(--text-dim);font-variant-numeric:tabular-nums;font-family:var(--font-mono)}.qzk-folder-head{border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--text);font-size:var(--font-size-sm);font-weight:var(--weight-semibold);text-align:left;background:0 0;border:none;align-items:center;gap:6px;padding:3px 4px;display:flex}.qzk-folder-head:hover{background:var(--surface-2)}.qzk-folder-head.dropinto{box-shadow:inset 0 0 0 2px var(--accent);background:var(--surface-2)}.qzk-folder-rename{flex:1;min-width:0}.qzk-ds.drop-above,.qzk-folder-head.drop-above{box-shadow:inset 0 2px 0 0 var(--accent)}.qzk-ds.drop-below,.qzk-folder-head.drop-below{box-shadow:inset 0 -2px 0 0 var(--accent)}.qzk-fig-item{text-align:left;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--surface-2);cursor:default;width:100%;color:var(--text);font-size:var(--font-size-sm);justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;display:flex}.qzk-fig-item:hover:not(:disabled){border-color:var(--accent)}.qzk-fig-item:disabled{opacity:.45;cursor:default}.qzk-fig-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.qzk-fig-meta{color:var(--text-faint);font-size:var(--type-nano);font-family:var(--font-mono);flex-shrink:0}.qzk-reason-list{color:var(--text-dim);font-size:var(--font-size-sm);flex-direction:column;gap:2px;margin:6px 0 8px;padding:0;list-style:none;display:flex}.qzk-reason-list li:before{content:"· ";color:var(--text-faint)}.qzk-report-section{margin-top:10px}.qzk-report-text{color:var(--text-dim);font-size:var(--font-size-sm);margin:6px 0 0}.qzk-report-tablewrap{max-height:260px;margin-top:6px;overflow-y:auto}.qzk-report-caption{color:var(--text-faint);font-size:var(--type-nano);margin-top:3px}.qzk-fam-row{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--surface-2);align-items:center;gap:8px;padding:6px 8px;display:flex}.qzk-fam-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);font-size:var(--font-size-sm);flex:1;overflow:hidden}.qzk-fam-count{color:var(--text-faint);font-size:var(--type-nano);font-family:var(--font-mono);flex-shrink:0}.qzk-macro-list{flex-direction:column;gap:2px;max-height:200px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.qzk-macro-list li{font-size:var(--font-size-sm);color:var(--text-dim);align-items:baseline;gap:6px;display:flex}.qzk-macro-num{font-family:var(--font-mono);font-size:var(--type-nano);color:var(--text-faint);text-align:right;font-variant-numeric:tabular-nums;min-width:16px}.qzk-macro-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.qzk-cell-edit{width:100%;min-width:60px;font-family:var(--font-mono);font-size:inherit;box-sizing:border-box;padding:1px 4px}.qzk-col-x{color:var(--text-faint);cursor:pointer;font-size:var(--type-nano);background:0 0;border:none;margin-left:4px;padding:0 3px;line-height:1}.qzk-col-x:hover{color:var(--danger)}.qzk-stage-cell{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.qzk-tabs{background:var(--surface-1);border-bottom:1px solid var(--border-soft);padding:0 var(--pad);align-items:center;gap:2px;height:30px;display:flex}.qzk-tab{font-size:var(--font-size-sm);color:var(--text-faint);cursor:default;border-bottom:2px solid #0000;margin-bottom:-1px;padding:4px 12px}.qzk-tab:hover{color:var(--text-dim)}.qzk-tab.active{color:var(--text);border-bottom-color:var(--accent)}.qzk-stage{background:var(--axes-bg);flex:1;min-height:0;position:relative;overflow:hidden}.u-title{color:var(--text);font-size:14px;font-weight:var(--weight-semibold);padding-bottom:4px;line-height:20px}.u-select{background:color-mix(in srgb, var(--accent) 16%, transparent);border:1px dashed var(--accent)}.qzk-glass{background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow);position:absolute}.qzk-float-tools{gap:3px;padding:4px;display:flex;top:12px;left:50%;transform:translate(-50%)}.qzk-tool-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-dim);cursor:default;background:0 0;border:none;place-items:center;font-size:15px;display:grid}.qzk-tool-btn:hover{background:var(--surface-3);color:var(--text)}.qzk-tool-btn.active{background:var(--capture-soft);color:var(--capture)}.qzk-tool-sep{background:var(--border);align-self:stretch;width:1px;margin:4px 2px}.qzk-zoom-chip{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text-dim);align-items:center;gap:6px;padding:3px 9px;display:flex;bottom:12px;left:12px}.qzk-readout{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text-dim);padding:3px 9px;bottom:12px;right:12px}.qzk-result-chips{pointer-events:none;flex-direction:column-reverse;align-items:center;gap:6px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.qzk-result-chip{pointer-events:auto;font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--accent-text);align-items:center;gap:7px;padding:3px 5px 3px 10px;display:flex}.qzk-result-chip .g{color:var(--accent);font-size:14px}.qzk-result-chip .v{color:var(--accent-text)}.qzk-result-chip .lbl{color:var(--text-faint)}.qzk-chip-reset{color:var(--text-faint);cursor:default;border-radius:var(--radius-sm);background:0 0;border:none;place-items:center;width:18px;height:18px;padding:0;font-size:13px;display:grid}.qzk-chip-reset:hover{background:var(--surface-3);color:var(--text)}.qzk-gadget-chip{flex-wrap:wrap;gap:6px;max-width:min(92vw,560px);padding:5px 6px 5px 10px}.qzk-gadget-chip .qz-select{font-size:var(--font-size-sm);padding:2px 6px}.qzk-legend{flex-direction:column;gap:4px;padding:6px 10px;display:flex}.qzk-stage.tool-pointer .qzk-legend{cursor:move}.qzk-stage.tool-pointer .qzk-legend .it{cursor:default}.qzk-legend.ne{top:12px;right:12px}.qzk-legend.nw{top:12px;left:12px}.qzk-legend.se{bottom:12px;right:12px}.qzk-legend.sw{bottom:12px;left:12px}.qzk-legend .it{font-size:var(--font-size);color:var(--text-dim);align-items:center;gap:7px;display:flex}.qzk-legend .ln{border-radius:2px;width:16px;height:3px}.qzk-legend .ln.dash{border-top:2px dashed var(--capture);height:0;background:0 0!important}.qzk-colorbar-grad{border:1px solid var(--glass-border);border-radius:2px;width:48px;height:8px;display:inline-block}.qzk-colorbar-lbl{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text-faint)}.qzk-axis-drop-zones{pointer-events:none;z-index:10;position:absolute;inset:0}.qzk-axis-zone{background:color-mix(in srgb, var(--accent) 7%, transparent);border:1px dashed var(--border);transition:background .1s,border-color .1s;position:absolute}.qzk-axis-zone.active{background:color-mix(in srgb, var(--accent) 24%, transparent);border-color:var(--accent)}.qzk-axis-zone.x{height:clamp(32px,22%,88px);bottom:0;left:0;right:0}.qzk-axis-zone.y{width:clamp(32px,16%,88px);top:0;bottom:0;left:0}.qzk-axis-zone.y2{width:clamp(32px,16%,88px);top:0;bottom:0;right:0}.qzk-zone-wells{grid-template-columns:1fr 1fr;gap:6px;display:grid}.qzk-zone-well{border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--surface-1);padding:6px 8px;transition:border-color .1s,background .1s}.qzk-zone-well.over{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border-style:solid}.qzk-zone-well-hd{align-items:baseline;gap:6px;display:flex}.qzk-zone-well-title{font-weight:var(--weight-semibold);color:var(--text)}.qzk-zone-well-hint{font-size:var(--type-nano);color:var(--text-faint)}.qzk-zone-well-body{flex-wrap:wrap;align-items:center;gap:4px;min-height:20px;margin:4px 0;display:flex}.qzk-zone-well-empty{font-size:var(--font-size-sm);color:var(--text-faint);font-style:italic}.qzk-zone-well-note{font-size:var(--type-nano);color:var(--text-faint)}.qzk-zone-chip{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-text);font-size:var(--font-size-sm);align-items:center;gap:4px;padding:1px 4px 1px 6px;display:inline-flex}.qzk-zone-chip-x{color:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;line-height:1}.qzk-zone-well-add{width:100%;margin-top:2px}.qzk-graph-mark-row{align-items:center;gap:8px;margin-top:10px;display:flex}.qzk-graph-mark-label{font-family:var(--font-mono);color:var(--text)}.qzk-graph-preview{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-0);height:200px;margin-top:8px;position:relative;overflow:hidden}.qzk-graph-preview-msg{text-align:center;color:var(--text-faint);font-size:var(--font-size-sm);place-items:center;padding:16px;display:grid;position:absolute;inset:0}.qzk-graph-preview-msg.note{color:var(--text-dim)}.qzk-graph-preview-approx{font-size:var(--type-nano);color:var(--text-faint);position:absolute;bottom:4px;left:6px}.qzk-graph-actions{gap:8px;margin-top:10px;display:flex}.qzk-sheet{background:var(--surface-0);flex-direction:column;flex:1;min-height:0;display:flex}.qzk-grid{min-height:0;font-family:var(--font-mono);font-size:var(--font-size-sm);flex:1;overflow:auto}.qzk-grid-row{display:flex}.qzk-grid-row:hover .qzk-grid-cell{background:var(--surface-1)}.qzk-grid-cell,.qzk-grid-headcell{border:1px solid var(--border-soft);text-align:right;color:var(--text-dim);box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;padding:3px 10px;overflow:hidden}.qzk-grid-headcell{border-color:var(--border);background:var(--surface-2);color:var(--text-dim);font-weight:var(--weight-medium);cursor:pointer;white-space:normal}.qzk-grid-footer .qzk-grid-headcell,.qzk-grid-header .qzk-grid-rownum{cursor:default}.qzk-grid-headcell .role{font-size:var(--type-nano);color:var(--accent-text);text-transform:uppercase;letter-spacing:var(--tracking-label);display:block}.qzk-grid-headcell .comment{font-size:var(--type-nano);color:var(--text-faint);font-weight:var(--weight-regular);text-transform:none;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.qzk-grid-rownum{background:var(--surface-1);color:var(--text-faint);text-align:center;cursor:pointer}.qzk-grid-footer .qzk-grid-rownum{cursor:default}.qzk-col-resize{cursor:col-resize;z-index:5;touch-action:none;width:7px;position:absolute;top:0;bottom:0;right:0}.qzk-col-resize:after{content:"";background:0 0;width:2px;position:absolute;top:0;bottom:0;right:0}.qzk-col-resize:hover:after,.qzk-col-resize:active:after{background:var(--accent)}.qzk-sheet-tabs{background:var(--surface-1);border-top:1px solid var(--border-soft);padding:0 var(--pad);flex-shrink:0;align-items:center;gap:2px;height:26px;display:flex;overflow-x:auto}.qzk-sheet-tab{font-size:var(--font-size-sm);color:var(--text-faint);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-top:2px solid #0000;align-items:center;gap:5px;padding:3px 10px;display:flex}.qzk-sheet-tab:hover{color:var(--text-dim)}.qzk-sheet-tab.active{color:var(--text);border-top-color:var(--accent);background:var(--surface-0)}.qzk-sheet-tab-num{font-family:var(--font-mono);font-size:var(--type-nano);color:var(--text-faint)}.qzk-inspector{background:var(--surface-1);border-left:1px solid var(--border-soft);padding:var(--pad);gap:var(--pad);flex-direction:column;display:flex;overflow-y:auto}.qzk-row{font-size:var(--font-size-sm);color:var(--text-dim);justify-content:space-between;align-items:center;gap:10px;padding:2px 0;display:flex}.qzk-row .k{color:var(--text-faint)}.qzk-field-lbl{text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-faint);margin-bottom:4px;font-size:10px;display:block}.qzk-field{flex-direction:column;gap:3px;display:inline-flex}.qzk-field>span{text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-faint);font-size:10px}.qzk-wf-list{border:1px solid var(--border-soft);border-radius:var(--radius-sm);flex-direction:column;gap:2px;max-height:120px;padding:5px 7px;display:flex;overflow-y:auto}.qzk-wf-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qzk-statusbar{align-items:center;gap:var(--pad-lg);background:var(--surface-1);border-top:1px solid var(--border-soft);padding:0 var(--pad-lg);font-size:var(--font-size-sm);font-family:var(--font-mono);color:var(--text-faint);white-space:nowrap;display:flex;overflow:hidden}.qzk-statusbar .grow{flex:1}.qzk-conn{align-items:center;gap:5px;display:inline-flex}.qzk-fit-row{font-family:var(--font-mono);font-size:var(--font-size-sm);justify-content:space-between;padding:2px 0;display:flex}.qzk-fit-row .k{color:var(--text-faint)}.qzk-fit-row .v{color:var(--text-dim)}.qzk-win{z-index:20;flex-direction:column;width:360px;max-height:calc(100% - 24px);display:flex;position:absolute}.qzk-win-title{border-bottom:1px solid var(--border-soft);font-size:var(--font-size-sm);font-weight:var(--weight-semibold);color:var(--text-dim);cursor:default;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:7px 10px;display:flex}.qzk-win-title .grow{flex:1}.qzk-win-close{border:1px solid var(--border-strong);background:var(--surface-3);cursor:default;border-radius:50%;width:12px;height:12px;padding:0}.qzk-win-close:hover{background:var(--danger);border-color:var(--danger)}.qzk-win-body{padding:var(--pad-lg);gap:var(--pad);flex-direction:column;display:flex;overflow-y:auto}.qzk-win-section{text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-faint);border-bottom:1px solid var(--border-soft);margin-top:4px;padding-bottom:3px;font-size:10px}.qzk-wincanvas{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.qzk-wincanvas-frames{background:var(--axes-bg);flex:1;min-height:0;position:relative;overflow:hidden}.qzk-wincanvas-frames.dropping{outline:1px dashed var(--accent);outline-offset:-3px}.qzk-plotwin{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);flex-direction:column;display:flex;position:absolute;overflow:hidden}.qzk-plotwin.focused{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), var(--shadow)}.qzk-plotwin.dropping{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent), var(--shadow)}.qzk-plotwin-titlebar{background:var(--surface-2);border-bottom:1px solid var(--border-soft);height:28px;font-size:var(--font-size-sm);color:var(--text-dim);cursor:default;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;align-items:center;gap:8px;padding:0 6px 0 10px;display:flex}.qzk-plotwin.focused .qzk-plotwin-titlebar{background:var(--accent-soft);color:var(--accent-text)}.qzk-plotwin-title{text-overflow:ellipsis;white-space:nowrap;font-weight:var(--weight-medium);flex:1;overflow:hidden}.qzk-plotwin-rename{height:20px;font-size:var(--font-size-sm);flex:1;padding:0 4px}.qzk-plotwin-badge{font-family:var(--font-mono);font-size:var(--type-nano);color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;max-width:40%;overflow:hidden}.qzk-plotwin.focused .qzk-plotwin-badge{color:var(--accent-text)}.qzk-plotwin-meta{flex-shrink:0}.qzk-plotwin-frozen,.qzk-plotwin-kind{flex-shrink:0;display:inline-flex}.qzk-plotwin-bg{width:18px;height:18px;color:var(--text-faint);cursor:default;background:0 0;border:none;border-radius:3px;flex-shrink:0;place-items:center;padding:0;font-size:11px;line-height:1;display:grid}.qzk-plotwin-bg:hover{background:var(--surface-3);color:var(--text)}.qzk-plotwin-link{min-width:18px;height:18px;color:var(--text-faint);cursor:default;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;gap:1px;padding:0 2px;font-size:11px;line-height:1;display:flex}.qzk-plotwin-link:hover{background:var(--surface-3);color:var(--text)}.qzk-plotwin-link.linked{color:var(--accent)}.qzk-plotwin-link-n{font-family:var(--font-mono);font-size:10px}.qzk-plotwin-pin{width:18px;height:18px;color:var(--text-faint);cursor:default;background:0 0;border:none;border-radius:3px;flex-shrink:0;place-items:center;padding:0;font-size:11px;line-height:1;display:grid}.qzk-plotwin-pin:hover{background:var(--surface-3);color:var(--text)}.qzk-plotwin-pin.pinned{background:var(--accent-soft);color:var(--accent)}.qzk-plotwin-close{border:1px solid var(--border-strong);background:var(--surface-3);cursor:default;border-radius:50%;flex-shrink:0;width:14px;height:14px;padding:0}.qzk-plotwin-close:hover{background:var(--danger);border-color:var(--danger)}.qzk-plotwin-body{flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.qzk-panel-grid{flex:1;gap:4px;min-height:0;padding:4px;display:grid}.qzk-panel-cell{background:var(--axes-bg);border:1px solid var(--border-soft);border-radius:var(--radius-sm);flex-direction:column;min-width:60px;min-height:60px;display:flex;position:relative;overflow:hidden}.qzk-panel-overlay{flex:1;min-height:0;position:relative}.qzk-panel-empty{text-align:center;color:var(--text-faint);font-family:var(--font-mono);font-size:var(--type-nano);flex:1;place-items:center;padding:16px;display:grid}.qzk-panel-cell-hd{background:var(--surface-2);border-bottom:1px solid var(--border-soft);cursor:grab;flex-shrink:0;align-items:center;gap:4px;height:22px;padding:0 4px 0 6px;display:flex}.qzk-panel-cell-hd:active{cursor:grabbing}.qzk-panel-cell-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--type-nano);font-weight:var(--weight-semibold);color:var(--text-dim);flex:1;overflow:hidden}.qzk-panel-cell-remove{border-radius:var(--radius-sm);width:16px;height:16px;color:var(--text-faint);cursor:default;background:0 0;border:none;flex-shrink:0;place-items:center;padding:0;font-size:13px;line-height:1;display:grid}.qzk-panel-cell-remove:hover{background:var(--surface-3);color:var(--text)}.qzk-panel-cell-body{flex:1;min-height:0;position:relative}.qzk-panel-cell.dragging{opacity:.45}.qzk-panel-cell.drop-target{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.qzk-plotwin-resize{cursor:nwse-resize;touch-action:none;background:linear-gradient(135deg, transparent 0 50%, var(--border-strong) 50% 60%, transparent 60% 70%, var(--border-strong) 70% 80%, transparent 80% 100%);width:14px;height:14px;position:absolute;bottom:0;right:0}.qzk-winstrip{background:var(--surface-2);border-top:1px solid var(--border-soft);flex-shrink:0;align-items:center;gap:6px;height:30px;padding:0 8px;display:flex;overflow-x:auto}.qzk-winstrip-item{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--surface-3);max-width:160px;color:var(--text-dim);font-size:var(--font-size-sm);cursor:default;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;align-items:center;padding:3px 10px;display:flex;overflow:hidden}.qzk-winstrip-item:hover{border-color:var(--accent);color:var(--text)}.qzk-param-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);font-size:var(--font-size-sm)}.qzk-param-table th{text-align:right;color:var(--text-faint);font-weight:var(--weight-medium);border-bottom:1px solid var(--border-soft);padding:3px 6px}.qzk-param-table th:first-child{text-align:left}.qzk-param-table td{text-align:right;color:var(--text-dim);border-bottom:1px solid var(--border-soft);padding:3px 6px}.qzk-param-table td:first-child{text-align:left;color:var(--text-faint)}.qzk-param-table td .err{color:var(--text-faint)}.qzk-resid{background:var(--axes-bg);border:1px solid var(--border-soft);border-radius:var(--radius-sm);width:100%;height:64px;display:block}.qzk-marker{pointer-events:none;position:absolute}.qzk-marker .v{font-family:var(--font-mono);font-size:var(--type-nano);color:var(--capture);background:var(--glass);border-radius:var(--radius-sm);border:1px solid var(--glass-border);white-space:nowrap;padding:1px 5px}.qzk-wizard-steps{flex-wrap:wrap;gap:4px;display:flex}.qzk-wizard-step{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer;color:var(--text-dim);font-size:var(--type-label);align-items:center;gap:4px;padding:3px 8px;display:inline-flex}.qzk-wizard-step.qzk-active{border-color:var(--accent);color:var(--text)}.qzk-wizard-num{font-family:var(--font-mono);font-size:var(--type-nano);color:var(--text-faint)}.qzk-wizard-step.qzk-active .qzk-wizard-num{color:var(--accent)}.qzk-step-row{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--surface-2);cursor:default;align-items:center;gap:6px;padding:3px 6px;display:flex}.qzk-step-row.qzk-active{border-color:var(--accent)}.qzk-step-kind{border-radius:var(--radius-sm);background:var(--surface-3,var(--surface-1));color:var(--text-faint);font-family:var(--font-mono);font-size:var(--type-nano);flex-shrink:0;padding:0 5px}.qzk-step-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);font-size:var(--font-size-sm);overflow:hidden}.qzk-step-editor{border-left:2px solid var(--border-soft);margin:2px 0 6px 24px;padding:6px 8px}.qzk-step-code{font-family:var(--font-mono);font-size:var(--type-nano);color:var(--text-dim);word-break:break-all}.qzk-stale-dot{color:var(--warning,#d9a53f);cursor:pointer;flex-shrink:0;font-size:9px}.qz-overlay-backdrop{z-index:100;background:#00000059;position:fixed;inset:0}.qz-dialog{gap:var(--pad);width:min(460px,90vw);padding:var(--pad-lg);flex-direction:column;max-height:70vh;display:flex;position:absolute;top:18%;left:50%;overflow-y:auto;transform:translate(-50%)}.qz-dialog h2{margin:0 0 var(--pad);font-size:var(--font-size);font-weight:var(--weight-semibold)}.qz-cmdk{flex-direction:column;width:min(520px,90vw);max-height:60vh;display:flex;position:absolute;top:15%;left:50%;transform:translate(-50%)}.qz-cmdk-input{border:none;border-bottom:1px solid var(--border-soft);color:var(--text);font-family:var(--font-ui);font-size:var(--type-display);background:0 0;outline:none;padding:12px 14px}.qz-cmdk-list{padding:6px;overflow-y:auto}.qz-cmdk-group{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-faint);padding:8px 8px 3px}.qz-cmdk-item{border-radius:var(--radius-sm);cursor:default;justify-content:space-between;align-items:center;gap:16px;padding:6px 9px;display:flex}.qz-cmdk-item.active{background:var(--accent-soft);color:var(--accent-text)}.qz-cmdk-hit{color:var(--accent-text);font-weight:var(--weight-semibold);background:0 0}.qz-cmdk-empty{text-align:center;color:var(--text-faint);padding:16px}.qz-shortcut{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text-faint)}.qzk-shortcuts{width:min(660px,92vw)}.qzk-sc-cols{gap:var(--pad-lg);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.qzk-sc-group{flex-direction:column;gap:3px;display:flex}.qzk-sc-title{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-faint);margin-bottom:4px}.qzk-sc-row{align-items:center;gap:10px;padding:2px 0;display:flex}.qzk-sc-desc{font-size:var(--font-size-sm);color:var(--text-dim)}.qzk-kbd{text-align:center;min-width:90px;font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text);background:var(--surface-2);border:1px solid var(--glass-border);border-radius:var(--radius-sm);white-space:nowrap;flex:none;padding:1px 6px}.qzk-toaster{z-index:250;flex-direction:column;align-items:center;gap:6px;display:flex;position:fixed;bottom:38px;left:50%;transform:translate(-50%)}.qzk-toast{background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-border);border-radius:var(--radius-pill);box-shadow:var(--shadow);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text);cursor:default;padding:6px 14px;animation:.14s qzk-toast-in}.qzk-toast.ok{border-color:color-mix(in srgb, var(--ok) 55%, var(--glass-border));color:var(--ok)}.qzk-toast.danger{border-color:color-mix(in srgb, var(--danger) 55%, var(--glass-border));color:var(--danger)}@keyframes qzk-toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}[data-reduce-motion] .qzk-toast{animation:none}.qz-tip{z-index:2000;background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-border);border-radius:var(--radius-sm);box-shadow:var(--shadow);color:var(--text);font-size:var(--font-size-sm);white-space:nowrap;pointer-events:none;align-items:center;gap:8px;padding:4px 8px;display:inline-flex;position:fixed}.qz-tip-key{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text-faint);border:1px solid var(--border);border-radius:3px;padding:0 4px}.qz-ws-row{font-size:var(--font-size-sm);align-items:center;gap:6px;display:flex}.qz-ws-row .k{color:var(--text-faint);white-space:nowrap;flex:1}.qz-ws-row input,.qz-ws-row select{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-mono);font-size:var(--font-size-sm);padding:2px 5px}.qz-btn-row{gap:var(--pad);padding-top:var(--pad);display:flex}.qz-btn-row .qz-btn{flex:1}html,body,#root{height:100%;margin:0}[data-reduce-motion] *,[data-reduce-motion] :before,[data-reduce-motion] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
|
quantized/web/index.html
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en" data-theme="dark" data-accent="violet" data-density="regular">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<title>Quantized</title>
|
|
7
|
+
<script type="module" crossorigin src="/assets/index-BHmmCL-x.js"></script>
|
|
8
|
+
<link rel="stylesheet" crossorigin href="/assets/index-BiZzN7J6.css">
|
|
9
|
+
</head>
|
|
10
|
+
<body>
|
|
11
|
+
<div id="root"></div>
|
|
12
|
+
</body>
|
|
13
|
+
</html>
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<title>Quantized</title>
|
|
7
|
+
<style>
|
|
8
|
+
/* Static splash shown by the Tauri shell while the local server boots.
|
|
9
|
+
Loaded before the SPA, so it can't read the app's CSS tokens — the
|
|
10
|
+
colours below mirror the dark theme (styles/colors.css). */
|
|
11
|
+
:root { color-scheme: dark; }
|
|
12
|
+
html, body { height: 100%; margin: 0; }
|
|
13
|
+
body {
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
align-items: center;
|
|
17
|
+
justify-content: center;
|
|
18
|
+
gap: 1.25rem;
|
|
19
|
+
background: oklch(0.16 0.008 280);
|
|
20
|
+
color: oklch(0.72 0.008 280);
|
|
21
|
+
font: 14px/1.5 system-ui, -apple-system, "Segoe UI", sans-serif;
|
|
22
|
+
-webkit-user-select: none;
|
|
23
|
+
user-select: none;
|
|
24
|
+
}
|
|
25
|
+
.spinner {
|
|
26
|
+
width: 34px;
|
|
27
|
+
height: 34px;
|
|
28
|
+
border: 3px solid oklch(0.29 0.009 280);
|
|
29
|
+
border-top-color: oklch(0.7 0.17 295);
|
|
30
|
+
border-radius: 50%;
|
|
31
|
+
animation: spin 0.8s linear infinite;
|
|
32
|
+
}
|
|
33
|
+
@keyframes spin { to { transform: rotate(360deg); } }
|
|
34
|
+
.title { font-size: 15px; font-weight: 600; letter-spacing: 0.02em; color: oklch(0.92 0.005 280); }
|
|
35
|
+
.sub { font-size: 12.5px; color: oklch(0.55 0.01 280); }
|
|
36
|
+
#error {
|
|
37
|
+
display: none;
|
|
38
|
+
max-width: 30rem;
|
|
39
|
+
padding: 0.75rem 1rem;
|
|
40
|
+
text-align: center;
|
|
41
|
+
color: oklch(0.78 0.14 12);
|
|
42
|
+
background: oklch(0.2 0.04 12);
|
|
43
|
+
border: 1px solid oklch(0.35 0.07 12);
|
|
44
|
+
border-radius: 8px;
|
|
45
|
+
}
|
|
46
|
+
@media (prefers-reduced-motion: reduce) {
|
|
47
|
+
.spinner { animation: none; }
|
|
48
|
+
}
|
|
49
|
+
</style>
|
|
50
|
+
</head>
|
|
51
|
+
<body>
|
|
52
|
+
<div class="spinner" id="spinner"></div>
|
|
53
|
+
<div class="title">Starting Quantized…</div>
|
|
54
|
+
<div class="sub" id="sub">Warming up the analysis engine</div>
|
|
55
|
+
<div id="error"></div>
|
|
56
|
+
<script>
|
|
57
|
+
// The Tauri shell calls window.__qzError(msg) (via eval) if the server
|
|
58
|
+
// never comes up, turning a blank "can't reach this page" into an
|
|
59
|
+
// actionable message.
|
|
60
|
+
window.__qzError = function (msg) {
|
|
61
|
+
document.getElementById("spinner").style.display = "none";
|
|
62
|
+
document.getElementById("sub").style.display = "none";
|
|
63
|
+
var e = document.getElementById("error");
|
|
64
|
+
e.textContent = msg;
|
|
65
|
+
e.style.display = "block";
|
|
66
|
+
};
|
|
67
|
+
</script>
|
|
68
|
+
</body>
|
|
69
|
+
</html>
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: quantized-lab
|
|
3
|
+
Version: 0.8.0
|
|
4
|
+
Summary: Clean-architecture Python + React port of the quantized_matlab scientific toolbox (magnetometry / XRD / lab data).
|
|
5
|
+
Author: Paige Quarterman
|
|
6
|
+
License-Expression: Apache-2.0
|
|
7
|
+
License-File: LICENSE
|
|
8
|
+
License-File: NOTICE
|
|
9
|
+
Requires-Python: >=3.11
|
|
10
|
+
Requires-Dist: fastapi>=0.139.0
|
|
11
|
+
Requires-Dist: h5py>=3.10
|
|
12
|
+
Requires-Dist: matplotlib>=3.11.0
|
|
13
|
+
Requires-Dist: numpy>=1.26
|
|
14
|
+
Requires-Dist: openpyxl>=3.1
|
|
15
|
+
Requires-Dist: periodictable>=1.7
|
|
16
|
+
Requires-Dist: platformdirs>=4.10.0
|
|
17
|
+
Requires-Dist: pydantic>=2.7
|
|
18
|
+
Requires-Dist: python-multipart>=0.0.32
|
|
19
|
+
Requires-Dist: scipy>=1.11
|
|
20
|
+
Requires-Dist: uvicorn[standard]>=0.51.0
|
|
21
|
+
Provides-Extra: bumps
|
|
22
|
+
Requires-Dist: bumps>=1.0; extra == 'bumps'
|
|
23
|
+
Provides-Extra: desktop
|
|
24
|
+
Requires-Dist: pywebview>=5.1; extra == 'desktop'
|
|
25
|
+
Provides-Extra: office
|
|
26
|
+
Requires-Dist: python-docx>=1.1; extra == 'office'
|
|
27
|
+
Requires-Dist: python-pptx>=1.0; extra == 'office'
|
|
28
|
+
Provides-Extra: origin-com
|
|
29
|
+
Requires-Dist: pywin32; (sys_platform == 'win32') and extra == 'origin-com'
|
|
30
|
+
Provides-Extra: stats
|
|
31
|
+
Requires-Dist: lifelines>=0.27; extra == 'stats'
|
|
32
|
+
Requires-Dist: statsmodels>=0.14; extra == 'stats'
|
|
33
|
+
Description-Content-Type: text/markdown
|
|
34
|
+
|
|
35
|
+
# quantized
|
|
36
|
+
|
|
37
|
+
A clean-architecture Python + React port of the
|
|
38
|
+
[`quantized_matlab`](../quantized_matlab) scientific data toolbox for
|
|
39
|
+
magnetometry, X-ray/neutron diffraction, and generic lab data.
|
|
40
|
+
|
|
41
|
+
- **Backend parity** with the MATLAB toolbox: parsers, corrections,
|
|
42
|
+
plotting, peak & curve fitting, materials calculators (DiraCulator),
|
|
43
|
+
and a spreadsheet workspace (DataWorkspace).
|
|
44
|
+
- **Revamped GUI** built fresh in React, sharing the look-and-feel and
|
|
45
|
+
component conventions of the sibling [`fermiviewer`](../fermiviewer)
|
|
46
|
+
Python app.
|
|
47
|
+
- **Architecture that holds the line:** pure `io/` + `calc/` libraries,
|
|
48
|
+
thin FastAPI `routes/`, a 500-line per-module ceiling, and golden tests
|
|
49
|
+
that freeze MATLAB outputs as the parity oracle — so this port never
|
|
50
|
+
grows the god-scripts the MATLAB original accumulated.
|
|
51
|
+
|
|
52
|
+
> Status: **active development** — backend + GUI are functional; native
|
|
53
|
+
> installers and PyPI packages publish from tagged releases (see
|
|
54
|
+
> [`RELEASE.md`](RELEASE.md)). See [`plans/PORT_PLAN.md`](plans/PORT_PLAN.md)
|
|
55
|
+
> for the detailed workstream plan, and [`CLAUDE.md`](CLAUDE.md) for the
|
|
56
|
+
> architecture hard-rules.
|
|
57
|
+
|
|
58
|
+
## Scope
|
|
59
|
+
|
|
60
|
+
Magnetometry / XRD / lab-data analysis (parity with `quantized_matlab`).
|
|
61
|
+
Electron-microscopy tooling (Fermi viewer, EELS/EDS, imaging) is **out of
|
|
62
|
+
scope** and lives in the separate `fermiviewer` project.
|
|
63
|
+
|
|
64
|
+
## Run it
|
|
65
|
+
|
|
66
|
+
**Install matrix** — pick whichever fits your workflow:
|
|
67
|
+
|
|
68
|
+
| Method | Command | Notes |
|
|
69
|
+
|--------|---------|-------|
|
|
70
|
+
| pipx (recommended) | `pipx install quantized-lab && qz` | isolated env, `qz` on PATH, no dev tools needed |
|
|
71
|
+
| uv tool | `uv tool install quantized-lab && qz` | same idea, via `uv` |
|
|
72
|
+
| pip | `pip install quantized-lab && qz` | into whatever env is active |
|
|
73
|
+
| Native installer | download from [Releases](https://github.com/pquarterman17/quantized/releases) | Windows `.exe` (NSIS, auto-updates), macOS `.dmg`, Linux `.deb` — no Python required, see [`RELEASE.md`](RELEASE.md) |
|
|
74
|
+
| From source | see below | for development |
|
|
75
|
+
|
|
76
|
+
Once installed, `qz` serves the app at `http://127.0.0.1:8000` and opens a
|
|
77
|
+
browser tab. An empty library shows a **"Drop files here, or use ⊞ to import
|
|
78
|
+
/ ✚ for a demo"** hint — click **✚** for an instant synthetic dataset (built
|
|
79
|
+
client-side), or hit `GET /api/samples/demo` for a bundled sample dataset
|
|
80
|
+
parsed server-side through the normal import path — so a fresh install has
|
|
81
|
+
something to plot within seconds, no data file required.
|
|
82
|
+
|
|
83
|
+
**From source — double-click a launcher** (builds the UI + installs deps on
|
|
84
|
+
first run, then opens the app in your browser):
|
|
85
|
+
|
|
86
|
+
- **Windows:** double-click [`run.cmd`](run.cmd)
|
|
87
|
+
- **macOS:** double-click [`run.command`](run.command) (first time:
|
|
88
|
+
right-click → Open)
|
|
89
|
+
|
|
90
|
+
**Or one command** (after `uv` + Node.js are installed):
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
# first time only: build the UI bundle the app serves
|
|
94
|
+
cd frontend && npm install && npm run build && cd ..
|
|
95
|
+
|
|
96
|
+
uv run qz # serve on :8000 and open a browser tab
|
|
97
|
+
uv run qz --port 9000 # different port
|
|
98
|
+
uv run qz --no-browser # headless (don't open a tab; never auto-exits)
|
|
99
|
+
uv run qz --desktop # native window (needs: pip install quantized-lab[desktop])
|
|
100
|
+
uv run qz --dev # contributor mode: Vite HMR + reloading backend
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
The default mode behaves like an app: closing the last browser tab shuts
|
|
104
|
+
the server down (a page refresh doesn't). Set `QZ_AUTO_SHUTDOWN=0` to opt
|
|
105
|
+
out, use `--no-browser` for a persistent/headless server, or stop any mode
|
|
106
|
+
with **Ctrl+C** in its window.
|
|
107
|
+
|
|
108
|
+
Building your own wheel/sdist (e.g. for `pip install .`)? Build the frontend
|
|
109
|
+
**first** — `cd frontend && npm ci && npm run build` — before `uv build` /
|
|
110
|
+
`python -m build`, or the wheel ships without a UI (`qz` still runs; it just
|
|
111
|
+
prints a "UI not built" warning instead of serving one).
|
|
112
|
+
|
|
113
|
+
## Develop
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
uv sync --group dev # backend deps
|
|
117
|
+
uv run pytest # backend tests (+ `-m golden` for MATLAB parity)
|
|
118
|
+
uv run ruff check src tests && uv run mypy src
|
|
119
|
+
cd frontend && npm test && npm run build
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
License: Apache-2.0.
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
quantized/__init__.py,sha256=_1HNdKWWdh_kKGqrQ4NOeE7jwag0STp9qtPPfSzgvgY,320
|
|
2
|
+
quantized/__main__.py,sha256=VScJuxEFIveWucE-yKHb_IqyyqrrE9I3CbLCU2CTgoA,439
|
|
3
|
+
quantized/api.py,sha256=IKZ7DdoLqkMk3r1XdZSBjzY7EsTozc4xfB4Naiis6iE,7019
|
|
4
|
+
quantized/app.py,sha256=3CdIHINjMfUw28aB5vuC-69QrYUAJf3nL_j7SJ3E2EA,7329
|
|
5
|
+
quantized/cli.py,sha256=Rz3wCXATjZyr6e1nbnL2hYZVgC-4ylyKJigfCeiqTVc,8975
|
|
6
|
+
quantized/datastruct.py,sha256=PcqZ3jF9ixNeczmeezWscRYqcxzg5qxiHq9LGkml3P8,5826
|
|
7
|
+
quantized/jobs.py,sha256=p6X4NUbrk-WOCAmw-13MgZCy-8FxWq_7aqVSR6Q25yA,6554
|
|
8
|
+
quantized/server_launch.py,sha256=7GZts6_2Y0cJhbOMx01N0pMbLvZJFwaEkZKBVdBWAPI,9184
|
|
9
|
+
quantized/calc/__init__.py,sha256=y3_WFonTJlQsf5s5teZiKe9v07NrzMGULq5ckBYEfjU,304
|
|
10
|
+
quantized/calc/_clipfit.py,sha256=4HqyhMHcJM3SqjxQ9nAtqVJ2rudsYEcMM3z5cm7voNY,2831
|
|
11
|
+
quantized/calc/_natural_neighbor.py,sha256=xNjlKhjufmA3eDVEz6WBhKbugVAGzr3peofYGGmXaJM,8205
|
|
12
|
+
quantized/calc/aggregate.py,sha256=sz0lLkyN5OVXgFcrSKUjN94P1WFeoA8A7kJs8-8yYF8,5934
|
|
13
|
+
quantized/calc/backgrounds.py,sha256=tODVJxPIZvCkUdsufErHCzobRhE_TncvM0WvbrYXep4,14027
|
|
14
|
+
quantized/calc/baseline.py,sha256=O4z3iwfPgPz5bEXbYDlBRxWNqQuHaHCMvkqZIK6m2DI,13045
|
|
15
|
+
quantized/calc/batch_fit.py,sha256=PUGyobl7VdHPzAfT9yncNDwLmenhVFviAlvNtbZO9SY,5180
|
|
16
|
+
quantized/calc/constants.py,sha256=B5vM_LsJiMdaYUs_wIFxGo5M_gZsT7V3MehCd53dKfA,1112
|
|
17
|
+
quantized/calc/corrections.py,sha256=isECRSRw1sfxZRGAZD4mdowiYt8uASIFNYmNd-OXuH4,7551
|
|
18
|
+
quantized/calc/crystallography.py,sha256=xjFC0H7YyTtL9QczIr4pHhh9CAWRX806QHd11O_4PrI,14964
|
|
19
|
+
quantized/calc/diffusion.py,sha256=woK2rlKh7FeLnss4IZIzYGC2HiO-JQxwqaSbbfC-mBs,3634
|
|
20
|
+
quantized/calc/electrical.py,sha256=564Wyu7rRkU16uWtpqqh5KP1RPoD0bPBDyZkCmfvo2k,8344
|
|
21
|
+
quantized/calc/electrochemistry.py,sha256=xT9ePoLkLLSgXDslr74ZPaTyJ10f8--o3xzCjO780i4,5791
|
|
22
|
+
quantized/calc/element_data.json,sha256=X-PCccH6qocLOFlURtSvzIFICxS2Ps9TbI8xa2AuQpY,45335
|
|
23
|
+
quantized/calc/element_data.py,sha256=XuWkB_gqi-zPg5gJlTOEdbr_lyB6xNCZXBvKDi9pvTU,1850
|
|
24
|
+
quantized/calc/errors.py,sha256=jT9s8l7AuOujdcaiLnplCG6IdL6NhEyRo-U8u_XYkjI,9441
|
|
25
|
+
quantized/calc/figure.py,sha256=J1KWEicR0NwopqAgIiU1FcwUh3ZqSoxPGoxW96Cwn7U,17839
|
|
26
|
+
quantized/calc/figure_break.py,sha256=ZB2uNFS8BJ9Q4JpjZh8085CaXMzJYGic5tCjSEzptPA,6307
|
|
27
|
+
quantized/calc/figure_categorical.py,sha256=qO4IPOdIcbYyFCUhfvqxEr31MbpsEq738GhuoBlC3f0,6069
|
|
28
|
+
quantized/calc/figure_corner.py,sha256=i72T0_D7VwZC86RYtPM2-O92fKrS7mDVfyFs1QUuVBI,9232
|
|
29
|
+
quantized/calc/figure_facets.py,sha256=TH0fRQWnHEfoRw4aK934q1Vw6s5rwHLkH3w6VJpG-xo,4789
|
|
30
|
+
quantized/calc/figure_field.py,sha256=33O0tmPZhdc1QwHYyu4SuMbnFwHy0YVj6-Gvqv08v_Y,5113
|
|
31
|
+
quantized/calc/figure_hitmap.py,sha256=K9mAvSs8bQdtgbbGNEwcT4OFmJ_pTZRS4RhVP4BOB84,4808
|
|
32
|
+
quantized/calc/figure_labels.py,sha256=aAYe015e7J7YRtJkwuVD9mdGjHp4K_sEs89LPm2LTFg,2658
|
|
33
|
+
quantized/calc/figure_map.py,sha256=ITtG-ncHj5JFy2ciAfESv3QHFC4PrQQzNnhu0QPWuWA,12142
|
|
34
|
+
quantized/calc/figure_overrides.py,sha256=8jxLSplg-Hf2imwEHq9NF_XRUzFdwjVVbBUlnaVPhW8,7240
|
|
35
|
+
quantized/calc/figure_page.py,sha256=MMrp_NidJksyfRZR6p6To5LIOmyLw-7HOC1ZoKK0dXk,11483
|
|
36
|
+
quantized/calc/figure_scale.py,sha256=ga5dHDMaZVqTwDhV6thHvOZNnKAqaehcb_YkbpE8Y28,5273
|
|
37
|
+
quantized/calc/figure_statplots.py,sha256=kHHAw4zzr9XW7kvRbFuqMhHS8NW92FK4uY4FAktB7VU,6448
|
|
38
|
+
quantized/calc/figure_styles.py,sha256=3k0YY_KTCd9t_NyWihFRrA1oL5emV8VrDlWiAWzcDhQ,4508
|
|
39
|
+
quantized/calc/figure_ternary.py,sha256=aWEN_tZezRLqDDvVRVinjjZGNGcJH26aJoWFgy0anyk,9665
|
|
40
|
+
quantized/calc/figure_ticks.py,sha256=4f6arhETM4W1qnUSG-Vg-R8lfj7Yg9wd9kpWrX_Tfdc,10043
|
|
41
|
+
quantized/calc/fit_autoguess.py,sha256=uPyoOnuuDjjFYu3zaSTmkr-TwDFzoNGf5adgz2fkFJs,6305
|
|
42
|
+
quantized/calc/fit_bootstrap.py,sha256=v39Zk--OByKSpDUaK4RjS6xrf10Q6sPHumnhNAiprNQ,6339
|
|
43
|
+
quantized/calc/fit_bumps.py,sha256=XInW4YD0Sd1TQYgKhwn1Mbus6C79GLeAj9lWzCjnP1s,10386
|
|
44
|
+
quantized/calc/fit_constraints.py,sha256=6fm7IkYoHKDje_4DR6rkVE7GV5hBKKJ_DVHWToTXXxw,4751
|
|
45
|
+
quantized/calc/fit_equation.py,sha256=qmmMJmGDwapPapKeRvOUgf8KrLdVzIH7ZGk-nwdmUeo,10235
|
|
46
|
+
quantized/calc/fit_findxy.py,sha256=iGdSa_NFqoMJv240orTo6qht7vZ0LKJHQ7NrmgANNN0,3160
|
|
47
|
+
quantized/calc/fit_models.py,sha256=kqoIrqKRdLzeiaTID1CCCjvudnUogKvKKjTkCY6jt_k,9450
|
|
48
|
+
quantized/calc/fit_models_special.py,sha256=MohWzQV-ZB7YNc70jPdOELjpYBlGGpgZ4U78p_OYhBk,8058
|
|
49
|
+
quantized/calc/fit_odr.py,sha256=wbQEVwkOf1Vva6v_n38xbKnnVgCJPqOe_4lkU3KVSr8,3547
|
|
50
|
+
quantized/calc/fit_scan.py,sha256=Xsvmr5R4tEylm34ikBV5tRw3skCbysOXw6z0oiETryc,9987
|
|
51
|
+
quantized/calc/fit_stats.py,sha256=bZg-aZGwD6Vok1BmTJK97SfQJkDI3oXUboNOgnVCXX4,7445
|
|
52
|
+
quantized/calc/fitting.py,sha256=RkYzyUxJ3bNZFhFP73OtnKJr1-WEz9i2m_cTXFJC05E,6953
|
|
53
|
+
quantized/calc/formula.py,sha256=lqlsREaCGNei_gp3gRbMx9T15825lY05We0sAmymyWc,3521
|
|
54
|
+
quantized/calc/global_curve_fit.py,sha256=z9lgdYt7evoycwMg73CaDMvAz_RK2SbJ31b-p2WBzCo,12021
|
|
55
|
+
quantized/calc/global_fit.py,sha256=zi_JKPSDJzI9UxHvh-FvonB7cTMmTpsO2PvLPq9ohdg,6794
|
|
56
|
+
quantized/calc/interp2d.py,sha256=d1MDLk0oaNp0qNumB_sdQU2LOfp2bGBmkNQ9MnIE7uw,9584
|
|
57
|
+
quantized/calc/linecut.py,sha256=vaQ-WnBrPiNaeuV7ZOEqhZyCXIG3Nq2fZhUOkWQ-MxE,10201
|
|
58
|
+
quantized/calc/magnetic.py,sha256=fby95zep62JXGDVB6meV2yruxaFW6PgYh9q1PuhvUwg,15245
|
|
59
|
+
quantized/calc/magnetometry.py,sha256=sxdUoW5FTlcddo6e1KO_Wng9_F-83aDiDKdzSoWcmuA,17418
|
|
60
|
+
quantized/calc/map.py,sha256=6vodPfTStTtKG7CNt4AzwpOrnQiOI1S7qwMYzd-HOJg,8047
|
|
61
|
+
quantized/calc/mcmc.py,sha256=UaXTuJ-sUowyJgRxJNfzhnLN-22bc46jMyTEefFINgY,6376
|
|
62
|
+
quantized/calc/optics.py,sha256=nFkxVZJNi6xqAOeNBZ_pGESTt-Ldp1tGRa0SKiXm3xI,8118
|
|
63
|
+
quantized/calc/pawley.py,sha256=UF2nSGrzW5HbUEssC5JtAbxyx__hQ73hqDDNzOQGCSA,9963
|
|
64
|
+
quantized/calc/peak_batch.py,sha256=wORZwCBDMChT4FYNjxHGrD7cMzbRuj0msMuymD-Wgto,4932
|
|
65
|
+
quantized/calc/peak_fit.py,sha256=Cd3rf_sjifcTQbCXls34xq2eY_xF3XYu6tB7n6kGPHw,10027
|
|
66
|
+
quantized/calc/peak_integrate.py,sha256=wctUo4Y8YO1tQuULBH54LfZlZS35mBmkdMzFTO7ugHQ,3837
|
|
67
|
+
quantized/calc/peak_multifit.py,sha256=SoCxQ_uqUr_x9bQK_a3mHsRLy-DquQh1_2MIEjmHuJo,10338
|
|
68
|
+
quantized/calc/peak_track.py,sha256=4WKyAtGdqOWKyltanKBedpkmZ3eWk9Df6SvDXmhgIWQ,4647
|
|
69
|
+
quantized/calc/peaks.py,sha256=zbw-sn2znZhdWVZ7nTBz91LRhl-ECc3tO-CX5EBoc54,10887
|
|
70
|
+
quantized/calc/peakshapes.py,sha256=tJDGfAySlYXIcFghUOF0WWHswBBr8Y0B6JEP9COC22o,2965
|
|
71
|
+
quantized/calc/plotting.py,sha256=4kc3gYmw4g5FJzQVMWQi14o1k9GJfAc8sviB2yGEf8c,5043
|
|
72
|
+
quantized/calc/processing.py,sha256=8anRYRju7nOUWDQqByk2RQ3myyW1h34nN4gKK5yuKpk,8301
|
|
73
|
+
quantized/calc/qspace.py,sha256=me7qdVPtEP4TcH0zaCDAYPNte8114zjjKwGkIa9jyjo,2018
|
|
74
|
+
quantized/calc/reductions.py,sha256=OzX-S-Vfi9JRLK8Y6wPnlaF-hOwGi1cc9EDngRxXD00,5922
|
|
75
|
+
quantized/calc/reductions_fft.py,sha256=rWooevGF5bvxODgq1jJjNddK7a3XKSp6NvLBf2tK3EA,14529
|
|
76
|
+
quantized/calc/refl_sld_presets.json,sha256=fInbMg9mOczUGJh9SKztUej6kDxfzuMmW_rESwLJHlY,2855
|
|
77
|
+
quantized/calc/reflectivity.py,sha256=OxqD-gXowx3hrtZBD4U5V01ToKp69f9aRqS_JrdSl_A,3080
|
|
78
|
+
quantized/calc/registry.py,sha256=wVBra80qUq55_v3YC2Z-B3w4bd8bectbhdhif6IWogo,9307
|
|
79
|
+
quantized/calc/relaxation.py,sha256=ORjfevoIg7vXzVrw6D5IXdiE3BkFu3QN3tWDTUhXZUY,4086
|
|
80
|
+
quantized/calc/report.py,sha256=wq25s8DaDeUIAtKZ54nETzU166cKXDn6rTLuPCn_JjU,10060
|
|
81
|
+
quantized/calc/report_emit.py,sha256=L6f2d6gZ_PFNiPHvkXTzAXsYZIzGE27eRvxewZd5d6c,8301
|
|
82
|
+
quantized/calc/resample.py,sha256=71fD4VHdS-2nO612eGtDJ1MxAvPHboLO9TCmrs8cgAk,5516
|
|
83
|
+
quantized/calc/rsm.py,sha256=Azg8tsydX3YFjKTQ9PcsMOKtsIrA59Z1Z_CEj0IJQ3E,3472
|
|
84
|
+
quantized/calc/rsm_analyze.py,sha256=2Ibq5q_Ay6Cni7_NazngijQ6Lb0qVOQqNi-cu3fY3GE,9505
|
|
85
|
+
quantized/calc/semiconductor.py,sha256=AABxKBnnYGip8CQy-hrF3yh8Dk8YoYyUtqoTGSZ3pGU,17679
|
|
86
|
+
quantized/calc/sld.py,sha256=VnQRTznJJfKlQ0hiHhatDYwppbcoAppUgSGsweOwdVE,4947
|
|
87
|
+
quantized/calc/sld_formula.py,sha256=mkXUNIZ6Va7tYa9LUpjeFHbeYwRquzJr7b-uxipYBLs,5396
|
|
88
|
+
quantized/calc/spectral.py,sha256=2-OVpKGcW3qywcmEAf15tLd9pTKYAxEOyf5LV7uwocs,11922
|
|
89
|
+
quantized/calc/statplots.py,sha256=wompsg91ueB6XyY7S5gGIfY0e9xiWMUFmMlWV3W-RoQ,8044
|
|
90
|
+
quantized/calc/stats.py,sha256=8Qd8w5BDRopKxbgAMpOWIgQthQepztRyc4NixMGKU9M,13878
|
|
91
|
+
quantized/calc/stats_anova2.py,sha256=xUjVybEwy5UdQvkzeNAL-Sf0exLx_93sKhpinT6Xl-0,8256
|
|
92
|
+
quantized/calc/stats_anova_ext.py,sha256=CTZriRMSdLFEzkzrSshwsYxCb0n3Frd9nqlgdhODF18,14173
|
|
93
|
+
quantized/calc/stats_dist.py,sha256=TDFu97pgTdE3VYIR7juadbVTKlf9WOvZTkd_qCGxSZs,6992
|
|
94
|
+
quantized/calc/stats_glm.py,sha256=2s1vMI3-4QHMUG14cvZNwUTQhJLiXrWzHjJ9CDgZf2U,9343
|
|
95
|
+
quantized/calc/stats_multivar.py,sha256=V7R1DfInX-XPZ-n8JmUuT8N-O_g5n47Cs6H-7LWLy78,11302
|
|
96
|
+
quantized/calc/stats_roc.py,sha256=TKX4M8lGV7uBmbPmb4gdNywavQO9Tc4o8kfwvJLmnSc,4831
|
|
97
|
+
quantized/calc/stats_survival.py,sha256=nVu1BfM6JNVzDLH2rk1GcOJ51PV3GIlCnxc-2EMS8DI,9252
|
|
98
|
+
quantized/calc/stats_tests.py,sha256=AnnLAWX7ASW1yY-FtY3qqaO39IW4kIItDF4ShQ3yPfk,13794
|
|
99
|
+
quantized/calc/substrates.py,sha256=dAgrOrAsIjwR3pr2wymmGrdvnUU3aeGgrjfXxPTTdPI,6461
|
|
100
|
+
quantized/calc/superconductor.py,sha256=iKQyaiiSXxVLBSLHsyas_V7dgPMLMjgwx-wn8eFFwAI,12980
|
|
101
|
+
quantized/calc/surface_fit.py,sha256=OzuYw6fA_ljKUG8WZ1Hprs5T-mzcdWi0DYgDP2bMYXI,10263
|
|
102
|
+
quantized/calc/surface_models.py,sha256=oMexMCeF3HoZQdQpRlic8R5CoLdm0H4KnCBi-xuc89o,4854
|
|
103
|
+
quantized/calc/thermal.py,sha256=Ohnq_o8gjS3qrUfNXriWc_FpfoOjQqrg19m-Ms5sZJI,4094
|
|
104
|
+
quantized/calc/thin_film.py,sha256=ItNhWdv1WrV_py72yvKBKTE1L370UDUiy6-vXzCONYY,14824
|
|
105
|
+
quantized/calc/unit_convert.py,sha256=_rMVr7P7zJyDy7f7vvRCnC3lTBSfsg8nxRZxE72vqfM,10639
|
|
106
|
+
quantized/calc/units.py,sha256=KbEV7a93DtARo11K30Su3Qcj8Q5_dkRM9GxkP9FBFWw,2924
|
|
107
|
+
quantized/calc/vacuum.py,sha256=7IWySqKv_zysGOOMRiBHtsM-4n114Rih9iM_Po3C1y4,9398
|
|
108
|
+
quantized/calc/xray.py,sha256=yQX1dmrLyEYSSdC7CDelzXgGt-Gy9jtszCP_87ziT38,6220
|
|
109
|
+
quantized/io/__init__.py,sha256=bZlixWD0az8yEsaEOYBMTJ7BFBjhFZUdGzBUD-r5XCM,382
|
|
110
|
+
quantized/io/_hdf5_layout.py,sha256=eHK3PA51ern4PPtNzrYFn8smJUnqF1WsQRwJdBUH91o,12126
|
|
111
|
+
quantized/io/_jcamp_asdf.py,sha256=pl_MM_1tc-Brnea_OscPcxvO-ZgdKC_UgpioLxsGtAs,5192
|
|
112
|
+
quantized/io/_xrdml_scan.py,sha256=tY_KOB4Jhi4GX41a-EXwBIKJJ-08YcsN7N3Kus1zZHo,11700
|
|
113
|
+
quantized/io/base.py,sha256=AQ8-91PrybWJ6Lv_tpKQmsvS5EIeh_rQNMqs6VWNHjs,2704
|
|
114
|
+
quantized/io/bruker_brml.py,sha256=ac-1X7KA5D16tWVroi85BzVtd1r7kcDfZzlVc76xfeA,6909
|
|
115
|
+
quantized/io/bruker_raw.py,sha256=aZcqCwdkTFT-dO2FTO8OEzQYU_BhDF8jR3Dwy13RXnw,5952
|
|
116
|
+
quantized/io/cif.py,sha256=hLuWfupmLNBFKvPBwsvqW6phZ5ap9DHzLzCod14zwa0,8562
|
|
117
|
+
quantized/io/consolidated.py,sha256=4tFauxDU9FDXcBhjNYPdxEwsvx8KpqBZN-3A0AZA4ik,4368
|
|
118
|
+
quantized/io/delimited.py,sha256=Pc85t16A8zmMrJV8mk1gc9s6cpNinnYjbc_2gFEvbgM,7408
|
|
119
|
+
quantized/io/excel.py,sha256=_s2q5JvRzHe__7rq4oDz-f38hXGNyH-o-K41mgqCEqA,4761
|
|
120
|
+
quantized/io/hdf5.py,sha256=l33ryZzTfB2xi0MvSKXJUS5qWYpNlHDCJVs67KegGCs,7081
|
|
121
|
+
quantized/io/import_filters.py,sha256=kCxt06eOFyjlLUo6HiZxPTtEsdPb4oaZfRZFkmgSJxM,6124
|
|
122
|
+
quantized/io/import_preview.py,sha256=ua983Gch74OZ9qiHK0ZK5fGwwNXlMopz4N2GZp942_I,9879
|
|
123
|
+
quantized/io/jcamp.py,sha256=RUojWm8jqyWHSTDoMBsjQyKiaN13MaxQnLo6BEas4yU,6583
|
|
124
|
+
quantized/io/lakeshore.py,sha256=jaHxLebXqtBVqFVdjNQd6OmkKbrNg70_um8rFjORwdk,5791
|
|
125
|
+
quantized/io/ncnr.py,sha256=7uYCDrRqdePCpx0uOXW-9IwygkX-0WP791jlLWlIJJQ,10182
|
|
126
|
+
quantized/io/netcdf.py,sha256=jtp24uzXAM0FOlcd_94_sfsRK_dyBB5os9dxnvNUenw,7037
|
|
127
|
+
quantized/io/opus.py,sha256=wU-jYBwqTfqAAb55yq5tThymC_DNgJ95i8St3NygCtY,9543
|
|
128
|
+
quantized/io/origin.py,sha256=NzS-VyICgLcAzpJ99chHK1w4S0VbjRWA0xxUZNxt8rg,14258
|
|
129
|
+
quantized/io/origin_com.py,sha256=rKUYH40W1YqLr0nLFEsGA1P4Y62-M4p-rPvR_zfnH-Q,7916
|
|
130
|
+
quantized/io/qd.py,sha256=Xg8p0jCNTj-BQhriEnpOdp1bKYKjS9NQYUTIF6MVl1Y,13391
|
|
131
|
+
quantized/io/refl1d.py,sha256=rcp_8XIHhQgBiEG5QT2gnHrAMfDAfvbNulI4sWKy2-4,4588
|
|
132
|
+
quantized/io/registry.py,sha256=fSgtDH6Sdej-mVoN3Nxwy3OjT_LbnhRKJ4nXKFmyzrg,9121
|
|
133
|
+
quantized/io/report_export.py,sha256=M2D8H9PLqXkVqoN6Rrnd_k2IziKu3khU20T6Y6zAZ6A,15681
|
|
134
|
+
quantized/io/rigaku.py,sha256=4-8N1Lk-_qpynCt8SoQsYtWZbCDs1eWSerB3Hzpnlls,3442
|
|
135
|
+
quantized/io/sims.py,sha256=MAp8qOrV3d44OCUN15lAtgS3lRK-jjlhUeeliR1aYjQ,13646
|
|
136
|
+
quantized/io/spc.py,sha256=s7eCi8X_XE5uTuV5pz7AC-OfXlVCOk7mywGec_YljWc,13115
|
|
137
|
+
quantized/io/xrd_csv.py,sha256=ytZvAMJiKujLqgHEjTnX9rcbc_Nm4LYOhkLNV9vQC0w,11045
|
|
138
|
+
quantized/io/xrdml.py,sha256=5CZ1dp-UvRdQAngLND-720gdZPC2d94W5fvEXVeKIGQ,15672
|
|
139
|
+
quantized/io/origin_project/__init__.py,sha256=ZfSzAuR3PV0NQkBMHx7aXR9_C54BmX6LxGY1GcFNfqA,10148
|
|
140
|
+
quantized/io/origin_project/annotation_marks.py,sha256=2hFKWkAqnsncU6N-Bau-_vE8eitpYogMwfcn_kS0L94,13182
|
|
141
|
+
quantized/io/origin_project/container.py,sha256=6AmWuJVdRrRGvcR2GlWxm212BhntsLlLmPFuvkfLQRU,11306
|
|
142
|
+
quantized/io/origin_project/curve_style_color.py,sha256=J-LkzVyWDyityJ4c3j8PJ_9w1ef_AGtUv8LEA74t2o8,16343
|
|
143
|
+
quantized/io/origin_project/figure_geometry.py,sha256=16ErWq-b7x0XGsSd-GhjOtKO-y0HzCLg1OFpJ0Q8e6Q,4627
|
|
144
|
+
quantized/io/origin_project/figure_layers.py,sha256=wntP3wnCYj2fU2hh3QCB3wNl1QD-Cw3wNoGJ5tAbY9o,15787
|
|
145
|
+
quantized/io/origin_project/figure_text.py,sha256=i9Pi6L3JdfHkaUHRxNksynxfnzhGub9UPfvssN0D2IU,12826
|
|
146
|
+
quantized/io/origin_project/figures.py,sha256=jPUeBjJPmJXdZznvd_oNhbQaugHSQhQFOB6AY-UEGRo,12631
|
|
147
|
+
quantized/io/origin_project/figures_opju.py,sha256=no6WCvRARpUeSmrDeAgbAHEUOt_srelyHQHQS2orvIs,22945
|
|
148
|
+
quantized/io/origin_project/notes.py,sha256=QI0BwlH-XU19Dd4W16O3gWfVc6RaJG-8W-4LM0SUWLA,13515
|
|
149
|
+
quantized/io/origin_project/opj.py,sha256=j0JPFV5mUJ6ifsJqeXucXc-8smDxXzHFoaDdyPNXnzc,20797
|
|
150
|
+
quantized/io/origin_project/opj_curves.py,sha256=h3ttpUlDvPg6yjEnwnBTAoH0E4HD9YFySwxVh2-zA4E,15076
|
|
151
|
+
quantized/io/origin_project/opj_shapes.py,sha256=lAU-XD3nln4omfJDp04YA96xF99cl76wgecJIjLuET8,6647
|
|
152
|
+
quantized/io/origin_project/opju.py,sha256=FaPRbvy2_iq-AgGMKT8OIZ7BLv07_Glz-p5pnu1trSk,5928
|
|
153
|
+
quantized/io/origin_project/opju_axis_real_form.py,sha256=jOvQXjukh5H4egVYfCPIEouwC5_gYo2dgbO0Ff_Bp2U,19894
|
|
154
|
+
quantized/io/origin_project/opju_axis_specimen_form.py,sha256=qhMQmdVKR_YyHyopJCtqKtMDpd_FDaZfUJCrFlI1zRc,7152
|
|
155
|
+
quantized/io/origin_project/opju_codec.py,sha256=WixvAA_4_vCnG6iqsIdvfeeF1btN-o0H3WEvBStze-k,16479
|
|
156
|
+
quantized/io/origin_project/opju_curves.py,sha256=p2iMZPqtXo15ONYGC79t0A5jYHrS2dt2Hl6SIS4yJa4,28307
|
|
157
|
+
quantized/io/origin_project/opju_curves_allcols.py,sha256=vJygoOLaR45AClBdXWesroNf9FAVG_T4dOWMr_56jfo,13508
|
|
158
|
+
quantized/io/origin_project/opju_figure_curves.py,sha256=pqVjyaJu2YtN_g0xj19afqHgDZjFJmWm8qL-_qQv_6I,14258
|
|
159
|
+
quantized/io/origin_project/opju_figure_text.py,sha256=8aD62YzW8LObHYr7s0drr7gNNI27Ng1EPxETpoH3uAU,10928
|
|
160
|
+
quantized/io/origin_project/opju_reports.py,sha256=fMFqRsdyTKK_UXHJ1xswgwG6XNgt18SrXymQQbN6HcY,5704
|
|
161
|
+
quantized/io/origin_project/origin_richtext.py,sha256=1c8m5za3Ux3RpaW-ZXt-YOXMxTE_Z_BoBf4thqGLXsU,6175
|
|
162
|
+
quantized/io/origin_project/preview.py,sha256=R5wAeCq07E4Hu1EgOXJ1fxQ5Ztc1HFLPlnKC_IrfgDM,5155
|
|
163
|
+
quantized/io/origin_project/templates.py,sha256=scXQSHMIpq62e_IZM5IJoQ5C1QsADZaFfEBJe1apo-M,15872
|
|
164
|
+
quantized/io/origin_project/tree.py,sha256=tFuuz4tC0gt8GUacoKN4J4JNg1R1jdMw5auG9TmNReA,16009
|
|
165
|
+
quantized/io/origin_project/tree_opju.py,sha256=JhNYrBf8qX5Ld6csMjbog-00UN8iQU1r0tI051ZBKaM,10319
|
|
166
|
+
quantized/io/origin_project/windows.py,sha256=OwhK66RAlfmTOOaDV5cmVXS_qhEuCx6Fe1D9imfbg-Q,10303
|
|
167
|
+
quantized/io/origin_project/windows_opju.py,sha256=eJdzMveyPcQPJ6AuF2JHjCYctIfT6qim55RoIqi32wY,18200
|
|
168
|
+
quantized/io/origin_project/writer.py,sha256=RwVmSvFCfFImJytA0pRfa7fRsyIG2RJ7-Ki8xUN4z98,6541
|
|
169
|
+
quantized/io/origin_project/writer_blocks.py,sha256=m4hAXovINE7hzseK7cAk1msF4u8LGPyAQoLxNtB1_3I,12294
|
|
170
|
+
quantized/plugins/__init__.py,sha256=IzHw11i3TcasXuKL0dyBZ39LU7vLmGzptBs5s5XJD8k,1292
|
|
171
|
+
quantized/plugins/contract.py,sha256=O38XS3USg2rLZrNlD5Tw762nDXme7JQ7vuDBO0mFSKE,4140
|
|
172
|
+
quantized/plugins/loader.py,sha256=dsnx5-bc9wWXinA5Izh7tInuQWiQBT4_0-t8zSPL2BY,14581
|
|
173
|
+
quantized/plugins/steps.py,sha256=gwaTuOoaaneHnlmWvIRRnH1o_KrnuGN11htd3Ne4g8k,2736
|
|
174
|
+
quantized/routes/__init__.py,sha256=WdRROYY7pXyZBqMsQ282ze0WDavSn9BmjWwlxA3-Fjw,266
|
|
175
|
+
quantized/routes/_bookcache.py,sha256=WBFnGDz-BEJmyk86b2lmcZB5oMnAg672QqMHS21vbU8,2336
|
|
176
|
+
quantized/routes/_export_common.py,sha256=1nKFj6-s1UBoe6UTBOQDzhEzYgEzDTtrskSB1dfvLe4,817
|
|
177
|
+
quantized/routes/_payload.py,sha256=DVUHfc8rSOVn1DST0qhYJQrLxu9ZEtG57OKfe0fTeww,1961
|
|
178
|
+
quantized/routes/_uploadcache.py,sha256=IbRjDG11xrJ4fbmIy9AfwrCA_Vib0C347knO2NOgkKI,2347
|
|
179
|
+
quantized/routes/aggregate.py,sha256=Jn1mUL7Sh5EOBHzg16x2cgd1iDsgPDU47_KHbX3EupI,1400
|
|
180
|
+
quantized/routes/baseline.py,sha256=5-DA5HOSfOl4sRShmqMOSYcQbJjZotPgL-HZyZHVc_Y,6489
|
|
181
|
+
quantized/routes/books.py,sha256=w7zRl0EYbShaJE6_ibksK3nQ_98Af80q2rCU42IBGCE,4636
|
|
182
|
+
quantized/routes/calc.py,sha256=S6rKslT2xl6zJd8umlZojm_IpfEmroOGaPh9j7V2i7g,2019
|
|
183
|
+
quantized/routes/corrections.py,sha256=8G7T7y1sGHa52zDY9060wBUT08J4OeWzJ3TprRxhkvs,3845
|
|
184
|
+
quantized/routes/crystallography.py,sha256=TMUDrQOylPVq6oqWDRT_ZWh6b8332oj0VWZigOnk66c,2461
|
|
185
|
+
quantized/routes/diffusion.py,sha256=C2fHcd2iGp95AajzKhqKOoxNVOnmiCyG9172TjZ-KDc,1720
|
|
186
|
+
quantized/routes/electrical.py,sha256=-Tk-uA2DD52_2albu-Nqrws2TL4QDQ-0IlTWLJGhsLo,2670
|
|
187
|
+
quantized/routes/electrochemistry.py,sha256=D2r_9P-QXBlsaGjbNMr_eBc-KhDg_7o5ppBN6tBCjIU,2288
|
|
188
|
+
quantized/routes/export.py,sha256=WmS9PZYs1AWVfe2CZrGrNtJOZmuOBmsObfpxPoSk_2Y,10062
|
|
189
|
+
quantized/routes/export_facets.py,sha256=X0AxLCcFKygd6EIhWUKF72oObQjWNnlB7mhPEDGtrZg,2582
|
|
190
|
+
quantized/routes/export_figures.py,sha256=roPOb8GaBZ53eYNhENh5rSaUCgW-UpLbmIy3XVTVDfA,19434
|
|
191
|
+
quantized/routes/export_page.py,sha256=QmlzoWmhQ4dQlqNIzlCgwSVGyq3hENsmuTF17OZ1xiU,4857
|
|
192
|
+
quantized/routes/fitting.py,sha256=8Z8aipAqUPTcKfI1K7S-NWwHAg_JgkzQbA15-573-Qw,13138
|
|
193
|
+
quantized/routes/fitting_bumps.py,sha256=iaKMFYXEkEZkUQG3yT4UCLGkA1O8PmfD50WAQfEmuS4,3550
|
|
194
|
+
quantized/routes/import_template.py,sha256=QrIkmNBad9BvpEh9roXgJW-bKRwpipr2ctW94j5g--o,4010
|
|
195
|
+
quantized/routes/import_wizard.py,sha256=Pp2ngrVLCRoJ65G1cMytMkq_INZLJIf-LeeHhNP2220,5193
|
|
196
|
+
quantized/routes/jobs_api.py,sha256=2TlWThVHe8ULlAxkEi6Ggc6NHiGRow37UHbT44LGHh0,2129
|
|
197
|
+
quantized/routes/magnetic.py,sha256=7QppMGvySSWjqxOEMcrychNJ3x5cgt_OO5p6ZuCfkQk,3799
|
|
198
|
+
quantized/routes/magnetometry.py,sha256=Bpa__3L4jfrGsi7szeM7F1GU8CHuY7Vwec3utSkPAds,4176
|
|
199
|
+
quantized/routes/optics.py,sha256=NeNyB93iqNZ8BwmeIXzHagUjTZY8wdDbd419jKoyT3o,2779
|
|
200
|
+
quantized/routes/parsers.py,sha256=nMg1a-eyhQWsq-9caEICujh5Mlj4bz0aYOlQ8dRiCxs,13029
|
|
201
|
+
quantized/routes/peaks.py,sha256=Um5OBu8H9l8nwQrvpaHBrm4wUf7-uj-uLUlTv68bC8o,6443
|
|
202
|
+
quantized/routes/plot.py,sha256=vTOtWCzLrdwR48Vd720tcXQ2bxKq3nKA2wQu9yg-nGM,3536
|
|
203
|
+
quantized/routes/reductions.py,sha256=Dt1m4wvTMeX3SCFcnpU6NCnGTUdx-eBkAfzoHnZQvLw,3802
|
|
204
|
+
quantized/routes/reference.py,sha256=uOFJJa5W9t07BlaIgR1kIIZUYTO4fxNSY5VOm04WYj8,1950
|
|
205
|
+
quantized/routes/reflectivity.py,sha256=2fbZYTElCCKJ7kcddjpcRfvkEaIU4NOL7HcgftbJdx8,3261
|
|
206
|
+
quantized/routes/report_export.py,sha256=0ovk6MILKLDDHuvegCjyduA1s7G3_n9np0RZ8vphofY,4507
|
|
207
|
+
quantized/routes/rsm.py,sha256=NTaKBU5kbFBP-JjVKQsRUfarmxJT0-ff--vyUQXzZZk,4826
|
|
208
|
+
quantized/routes/samples.py,sha256=TGobqd4Q40F01fA6xirbbVJSxbG_IhmFIzW6KZm9sQU,1264
|
|
209
|
+
quantized/routes/semiconductor.py,sha256=Fsx0opp5Hnw5pjyWnPzRFW2zQZJZoVO9m8NCJAxJMBg,5504
|
|
210
|
+
quantized/routes/sld.py,sha256=9Tr66a_KSVx-7mVq4T4iyjNvVaosRBWIlD2pY_TsqSI,1227
|
|
211
|
+
quantized/routes/spectral.py,sha256=P-hSjDhzBNl3SzFHCZz7wj2XIryeN5OS4qQuEDEVhaI,1928
|
|
212
|
+
quantized/routes/statplots.py,sha256=SKX_UEvF3LL-Vfy7kbS-RlISVPelMmsSOgIkQ963n5Q,2872
|
|
213
|
+
quantized/routes/stats.py,sha256=7RmCIPqJv0NfnisvGzj8Wmzrt1_-UaD5vV_vW8CiABQ,12711
|
|
214
|
+
quantized/routes/stats_design.py,sha256=0N_1ZzDzJqcZXJFMXl0KdMtenFYBe29NXvw2tYyYClU,11220
|
|
215
|
+
quantized/routes/substrates.py,sha256=ULTSMafpLVpkmPkQIbyNrVnWmgsJc8WvF5Z7GKv1khM,1447
|
|
216
|
+
quantized/routes/superconductor.py,sha256=494ljz6s6b6Iwl7lbSxVYAwvaTJjw1uy2_OSwmHyGBc,3678
|
|
217
|
+
quantized/routes/thermal.py,sha256=ij7mKLgdrVVk9rkI90lD7Hwa50O_jBmL3eD483CS-1Y,1711
|
|
218
|
+
quantized/routes/thin_film.py,sha256=nfzwK4fOoKGo1h19USv3soFDbGMz0K4Kf13ADqzJID0,4463
|
|
219
|
+
quantized/routes/vacuum.py,sha256=duuiseKslhHZEFLyZHycMyp4aPqbvgjUJMKfCUsfrR8,2833
|
|
220
|
+
quantized/routes/xray.py,sha256=RaBd2wvxThYeI6B4et04Md1fWvt7Z1rRDvIoKa7zNLk,895
|
|
221
|
+
quantized/samples/demo_vsm.csv,sha256=tUKVqDu706mW8pW7pmmaRvBWecvL2hkhxpzMl5mCChM,633
|
|
222
|
+
quantized/web/index.html,sha256=44MeplAmBoq0xXmVDTZIH3w9gwYphPt4s1S10WzG4ns,456
|
|
223
|
+
quantized/web/loading.html,sha256=5Aj5mPq1Ce5rrYf8EZd6CVwCXZ8D1j2q9aZdaKSdipk,2455
|
|
224
|
+
quantized/web/assets/JetBrainsMono-Bold-CUogYd9I.woff2,sha256=CIY8eWRhIlepC9gh4xJ9xcywtQRviBZzoa3lgJ6yHQ8,94628
|
|
225
|
+
quantized/web/assets/JetBrainsMono-Regular-CA-Os4ii.woff2,sha256=8aegNnLN1JTODVVD-sbkNg_iJAPG3il_3C5VqBX3uv8,92380
|
|
226
|
+
quantized/web/assets/index-BHmmCL-x.js,sha256=3VdX0_HbMLp-EFfVWmCYAx-zq5Yhh9fYia_hpANNY8Y,936814
|
|
227
|
+
quantized/web/assets/index-BiZzN7J6.css,sha256=YTofcKX2ZuME3hjgFQdfRj18VKm0A3qTAW-IoxO17Bo,49981
|
|
228
|
+
quantized_lab-0.8.0.dist-info/METADATA,sha256=zC_VppRRUj6qe9Kk1rTMZr6blXhBx6kBRyh0_UdcN6Q,5232
|
|
229
|
+
quantized_lab-0.8.0.dist-info/WHEEL,sha256=lCkmxWfQsSc9CfIClYeavTdQeEX2toPqufh9gI35EQA,87
|
|
230
|
+
quantized_lab-0.8.0.dist-info/entry_points.txt,sha256=PEaB25wNv4h_OgbZ62h9z21qnM2YkZr0bN0gJqxZPNk,111
|
|
231
|
+
quantized_lab-0.8.0.dist-info/licenses/LICENSE,sha256=xXQeIylAEXAcPaviX9jQVpPqu6vxbCGxBBLGdEDczrg,11346
|
|
232
|
+
quantized_lab-0.8.0.dist-info/licenses/NOTICE,sha256=l4_RbOiCu0jPRkRVV7t5974gt1YzA-Ut1IQfgp7DoVg,364
|
|
233
|
+
quantized_lab-0.8.0.dist-info/RECORD,,
|