diff --git a/.issueflows/01-current-issues/issue187_original.md b/.issueflows/01-current-issues/issue187_original.md new file mode 100644 index 0000000..20cfee8 --- /dev/null +++ b/.issueflows/01-current-issues/issue187_original.md @@ -0,0 +1,8 @@ +# Issue #187 — name of groups + +Source: https://github.com/cellpy/cellpy-simple-gui/issues/187 + +It does not seem to be any options for naming the groups. Have not tested if +cellpy-simple-gui can read the group label from batch journal files. But maybe +it does not. We need option for naming groups (and it should be stored when +saving). diff --git a/.issueflows/01-current-issues/issue187_plan.md b/.issueflows/01-current-issues/issue187_plan.md new file mode 100644 index 0000000..28ac11c --- /dev/null +++ b/.issueflows/01-current-issues/issue187_plan.md @@ -0,0 +1,44 @@ +# Plan — #187 name of groups + +## Findings + +- `collect._batch` already hands cellpy a `group_labels` map, but it is always + the default `"group "`. cellpy (≥2.1.5) uses that label as the legend name + of group-averaged traces and writes it into the `group_label` column of the + collected summary frame. +- Ungrouped summary / `per_cycle` cycles traces carry `legendgroup=""` + (and no `legendgrouptitle`), so a group name can be shown there as a Plotly + legend-group title without touching cellpy. +- cellpy batch journals carry a `group_label` column (`journal_from_frame` → + `write_journal` → `from_journal` round-trips it); the app currently reads + only `group`. +- Project manifests (`project.json`) have no group-level section. + +## Approach + +Group names live on the `Library` (they are group-level, not cell-level): + +1. **Core** — `Library._group_labels: dict[int, str]`, `set_group_label()`, + `group_label()`, `group_labels()` (in-use groups only), `groups()` (id, + custom label, effective name, cell count, colour). `all()` syncs a + `CellRecord.group_label` snapshot so collectors need no extra plumbing; + `CellRecord.group_name()` resolves "custom or `group `". `clear()` + forgets the names. `CellMeta.group_label` exposes the effective name. +2. **Plots** — `_batch` passes the effective names to `from_cells`; new + `collect.group_titles(records)` + `figure_json(group_titles=…)` sets + `legendgrouptitle` on ungrouped traces whose legendgroup is a named group + (summary + cycles pane). +3. **API** — `_state()` gains `groups`; `POST /api/groups/{group}` with + `{"label": …}` (empty clears) returns the state. +4. **Persistence** — `ProjectManifest.groups: [{id, label}]` (optional, so old + manifests still open); saved from `library.group_labels()`, restored on + open. Journals: `cellpy_adapter.load_journal()` returns cells + group labels + read from the `group_label` column (skipping the `group ` defaults); + `load_journal_cells()` stays as a thin wrapper; the journal job applies them. +5. **UI** — a *Groups* strip in the Manage cells modal (swatch, id, name input + with `group ` placeholder, cell count); renaming goes through the + deferred-replot path (#184). Sidebar group inputs show the name as a + tooltip. All state writes go through one `_applyState()` helper. +6. **Tests** — core (batch labels in grouped legend, legend-group titles), + projects (round trip + legacy manifest), journal (`group_label` read), API + (endpoint + state), plus template/component drift tests already in place. diff --git a/.issueflows/01-current-issues/issue187_status.md b/.issueflows/01-current-issues/issue187_status.md new file mode 100644 index 0000000..8e9cab8 --- /dev/null +++ b/.issueflows/01-current-issues/issue187_status.md @@ -0,0 +1,47 @@ +# Status — #187 name of groups + +- [x] Done + +## What was done + +- `Library` keeps custom group names (`set_group_label`, `group_label`, + `group_labels`, `groups`); `all()` stamps `CellRecord.group_label` so the + collectors and `CellMeta.group_label` see the name without extra plumbing. + `clear()` forgets the names. +- `collect._batch` hands cellpy the effective name (`custom` or `group `), + so group-averaged traces are named after it. New `collect.group_titles()` + + `figure_json(group_titles=…)` caption per-cell traces of a named group with + a Plotly `legendgrouptitle` (summary + cycles pane). +- API: `/api/state` carries `groups`; `POST /api/groups/{group}` with + `{"label": …}` names a group (blank → default) and returns the state. +- Persistence: `ProjectManifest.groups` (`[{id, label}]`, optional, so older + manifests still open) is saved from the in-use named groups and restored on + open. `cellpy_adapter.load_journal()` returns `(cells, group_labels)` read + from the journal's `group_label` column (cellpy's `group ` placeholders + dropped); `load_journal_cells()` stays as a wrapper; the journal job applies + the names. +- UI: a *Groups* strip at the top of the Manage cells modal (swatch, number, + editable name with `group ` placeholder, cell count). Renames follow the + deferred-replot rule from #184. Group inputs in the sidebar and table show + the group name as a tooltip. State writes go through `_applyState()`. +- Docs: README feature list / project layout mention group names; + `llms-full.txt` regenerated. + +## Tests + +- `tests/test_core.py`: library group-name semantics; names reach the + grouped legend; legend-group titles on ungrouped summary and cycles plots. +- `tests/test_projects.py`: save → open round trip; manifest without `groups`. +- `tests/test_journal.py`: `group_label` column read (and absent); journal job + applies the names end to end via the API. +- `tests/test_api.py`: `/api/groups/{group}` + state shape. +- `tests/test_gui_playwright.py` (e2e): naming and un-naming a group in the + modal, legend caption after close. + +Full suite: `uv run pytest -q -p no:warnings` green (3 skips, example data). + +## Remaining + +Nothing for this issue. Appending a journal whose group numbers collide with +groups already in the library overwrites those groups' names — the general +replace-vs-append question is #174. diff --git a/.issueflows/04-designs-and-guides/manage-cells-modal.md b/.issueflows/04-designs-and-guides/manage-cells-modal.md index 790f1b8..9133d8d 100644 --- a/.issueflows/04-designs-and-guides/manage-cells-modal.md +++ b/.issueflows/04-designs-and-guides/manage-cells-modal.md @@ -38,6 +38,29 @@ fetches with `AbortController` (the server would keep computing the figure anyway; sequence numbers give the same visible result with less machinery). +## Group names (issue #187) + +- Names are **library-level** (`Library._group_labels`, keyed by group number), + not a per-cell field: cells move between groups, the name stays with the + number. `all()` stamps a `CellRecord.group_label` snapshot so `collect._batch` + and `CellMeta` see it without threading a map through every collector. +- Only names the user (or a journal / manifest) chose are stored; blank or the + default spelling `group ` removes the entry. Names of groups with no cells + are kept in memory (cells may move back) but not reported by `groups()` / + `group_labels()`, so they are not saved. +- Plots: cellpy already names group-averaged traces after `group_labels`; + per-cell traces of a named group get a Plotly `legendgrouptitle` from + `collect.group_titles(records)` (only for named groups — a bare number adds + nothing the swatch does not). +- Persistence: `project.json` → `groups: [{id, label}]` (optional). Journals → + the `group_label` column of `journal.pages` via `cellpy_adapter.load_journal`. +- UI: the *Groups* strip above the table (`.mgr-groups`, one `.mgr-group` chip + per group in use); `renameGroup()` → `POST /api/groups/{id}` → `_applyState` + → `_replotAfterEdit()` (same deferred redraw as other modal edits). +- Alternatives considered: a `group_label` column on each cell row (drifts as + soon as two cells disagree) and a separate "Groups" modal (one more dialog + for a one-field edit). + ## UI location - Markup: `web/templates/index.html` (modal after `.layout`) diff --git a/README.md b/README.md index 58f97e5..25af86b 100644 --- a/README.md +++ b/README.md @@ -117,8 +117,8 @@ - **Cycle summary** — capacity, CE, cumulated CE, end voltages, internal resistance, C-rate, capacity loss. Gravimetric, areal, or absolute. Group mean ± std. Shared or independent y-scales. - **Cell explorer** — voltage–capacity, dQ/dV, dV/dQ. Compare cells, overlaid or side by side. - **Cycles collector** — per cycle, per cell, or film plot. -- **Cell list** — rename, group, select, filter, sort, remove. -- **Projects** — save and reopen the loaded cells, grouping, labels, and selection. Unsaved edits show as `name*`. +- **Cell list** — rename, group, name the groups, select, filter, sort, remove. +- **Projects** — save and reopen the loaded cells, grouping, group names, labels, and selection. Unsaved edits show as `name*`. - **Export** — CSV, Excel, Parquet, JSON; figures as PNG, SVG, PDF. - **Light and dark themes.** - **Background loading** with progress. @@ -267,7 +267,7 @@ A project is a portable folder — move it, zip it, share it: ``` / -├── project.json # manifest: name, timestamps, versions, per-cell grouping/labels/selection +├── project.json # manifest: name, timestamps, versions, per-cell grouping/labels/selection, group names ├── cellpy.toml # optional: cellpy settings pinned to this project └── data/ ├── c1.cellpy # every loaded cell saved as a self-contained cellpy file diff --git a/graphify-out/.graphify_labels.json b/graphify-out/.graphify_labels.json index 42e304a..0702926 100644 --- a/graphify-out/.graphify_labels.json +++ b/graphify-out/.graphify_labels.json @@ -1,129 +1,120 @@ { - "0": "get_library", - "1": "a", + "0": "cells.py", + "1": "CellProcessor 2.0 — design guide (for agents)", "2": "ni", "3": "collect.py", "4": "ss", "5": "i", - "6": "N", + "6": ".get", "7": "test_compare.py", "8": "$", - "9": "SummaryPlotSpec", - "10": "select_ica_direction", + "9": "summary_figure", + "10": "a", "11": "vn", "12": "test_api.py", "13": "wo", - "14": "Uc", + "14": "oa", "15": "e", - "16": "get_settings", + "16": "get_library", "17": "cellpy_adapter.py", - "18": "g", + "18": "constructor", "19": "issue-flow — issue comments triage", - "20": "pi", + "20": "Settings", "21": "na", - "22": ".get", + "22": "ve", "23": "test_projects.py", - "24": "oa", + "24": "instrument_meta_schema", "25": "eu", - "26": ".push", + "26": "E", "27": "issue-flow — issue plan (`/iflow-plan`)", "28": "core/uploads.py", - "29": "xi", + "29": "Plan — Issue #62: Group vs individual Plotly legend muting", "30": "core/export.py", "31": "issue-flow — issue close (`/iflow-close`)", "32": "gh", - "33": ".emplaceBack", + "33": "Ku", "34": ".createVertexBuffer", "35": "cellpy_config.py", "36": "test_paths.py", "37": ".resume", - "38": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "39": "figure_json", + "38": "Plan — Issue #169: Compare selected cells", + "39": "test_journal.py", "40": "Dt", "41": "Plan — Issue #168: Create installer using CI", "42": "Instructions", "43": "issue-flow — history update", "44": "Job", "45": "resize", - "46": "ho", + "46": "o", "47": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", - "48": "mcp/server.py", - "49": "hi", + "48": "config.py", + "49": "ii", "50": "Instructions", "51": ".reset", - "52": "CyclesPlotSpec", + "52": "plots.py", "53": "issue-flow — create a normal issue (`/iflow-issue`)", "54": "issue-flow — version bump", - "55": "ca", - "56": ".evaluate", - "57": "I", - "58": ".renderLayer", + "55": ".cancel", + "56": "kn", + "57": "r", + "58": "vr", "59": "collect", - "60": ".parse", - "61": "conftest.py", - "62": "xr", + "60": ".push", + "61": "Library", + "62": "load_raw", "63": "ti", - "64": ".draw", + "64": "._forEachCell", "65": "core/projects.py", - "66": ".constructor", - "67": "system.py", - "68": "fo", + "66": "Original issue text", + "67": "pick", + "68": ".load", "69": "IcaPlotSpec", "70": "Issue #73: Job progress pane: Cancel/Dismiss overlap long status text", "71": "app_main_module", - "72": "de", + "72": ".registerMessageHandler", "73": "Issue #58 plan: plot side pane + top bar blend", "74": "Issue #5 plan", "75": "test_packaging.py", "76": "ah", - "77": "_default_visible_hints", - "78": "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)", - "79": ".cancel", - "80": "essential", + "77": "da", + "78": "Tn", + "79": "de", + "80": "CyclesPlotSpec", "81": "issue-flow — epic planning (`/iflow-epic`)", "82": "issue-flow — review and label issues (`/iflow-review`)", "83": "expand_paths", "84": "cellpy API surface", - "85": "Issue #48 — create gui tests (plan)", "86": "issue-flow — issue yolo (`/iflow-yolo`)", - "87": ".addBucket", - "88": "Library", + "87": "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)", + "88": "Plan — Issue #3: Manage cells in an expanded editor", "89": ".render", - "90": "Hl", - "91": "Original issue text", + "90": "test_uploads.py", "92": "Issue #60 status", "93": "Be token greedy - as a caveman", - "94": "ii", + "94": "Si", "95": "alpine.min.js", "96": ".status", "97": "An MCP server for cellpy — design, and what a prototype found", "98": "issue-flow — issue build (`/iflow-build`)", "99": "Issue #67: Cell explorer dQ/dV: Charge/Discharge direction has no effect (and joins half-cycles)", - "100": "Do", + "100": "fo", "101": "test_gui_playwright.py", - "102": "_tidy_facet_annotations", + "102": "select_ica_direction", "103": "test_core.py", "104": ".destroy", - "105": "RawPlotSpec", - "106": "rh", + "105": "_clean_axis_range", "107": "CellRecord", - "108": "dh", + "108": "ho", "109": "Issue #36: Chart card stays white under dark figure theme; default figure theme to Match app", - "110": "ri", "111": "Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet", - "112": ".add", + "112": ".remove", "113": "Issue #3: Make the Cells list workable for many cells (modal or expanded editor)", - "114": "test_mcp_prototype.py", - "115": "gen_llms_txt.py", "116": "Issue #4: Replace deprecated pywebview OPEN_DIALOG with FileDialog.OPEN", - "117": "_without_webview", + "117": "The Windows installer", "118": "Original issue text", - "119": "Mn", - "120": "Plan — #184 update plots when the Manage cells modal closes", "121": "Issue #5: Add cellpy logo and app icon", "122": "Issue #73 status", "123": "Essential tests (pytest)", - "124": "Original issue text", "125": "issue-flow — archive solved issues (`/iflow-archive`)", "126": "issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`)", "127": "issue-flow — issue pause (`/iflow-pause`)", @@ -132,7 +123,6 @@ "130": "wn", "131": "Deploying cellpy simple GUI as a server", "132": "Issue #48: create gui tests", - "133": ".populate", "134": "Plan: Issue #13 — add workflows", "135": "Ei", "136": "Issue #55: need to add collector plot for cycles", @@ -147,35 +137,31 @@ "145": "test_loader_availability.py", "146": "Issue #56: add single cell dqdv plot", "147": "issue-flow — graph rebuild (`/iflow-graphify`)", - "148": "bn", + "148": "di", "149": "Issue #63: Iterative fixes: plot bottom clipping", "150": "Issue #27: Iterative fixes: group average checkbox", "151": "Issue #31: Iterative fixes: export download location", "152": "Issue #63 status", - "153": "The prompts", "154": "`00-tools/` — shared helper tools", "155": "playwright-gui-tests.md", "156": "Cycle status", - "157": "_client_config_path", "158": "Issue #15: update readme", "159": "mt", "160": "oi", "161": "Development information", "162": "gen_api_reference.py", "163": "Status — Issue #3: Manage cells expanded editor", - "164": "gh-ci — wait on GitHub CI with `gh`", + "164": "summary_columns_for", "165": "Issue #47 — Status", "166": "entry.py", "167": "Issue #50 — Status", - "168": "Client", - "169": "se", + "168": "Issue #32: Plot appearance options: color scheme and figure theme", "170": "Issue #58 status", "171": "Issue #5 status", "172": "6. Process state and threading", "173": "Plan — Issue #73: Job progress Cancel/Dismiss overlap", "174": "Journal load diagnostics & desktop exit", "175": "Issue #12: add logging", - "176": "te", "177": "Issue #13: add workflows", "178": "Status: Issue #13 — add workflows", "179": "Issue #14: make saving and closing more obvious", @@ -186,12 +172,11 @@ "184": "Issue #18: improve manage cells modal", "185": "Status: Issue #18 — improve manage cells modal", "186": "Issue #19: stale loading of cellpy batch journal", - "187": "pl", + "187": "Ic", "188": "issue-flow — issue cleanup (`/iflow-cleanup`)", "189": "Issue #28: add ability to export cellpy cell", - "190": "test_index_click_and_show_targets_exist", "191": "Status — Issue #36", - "192": "5. Configuration", + "192": "cellpy API surface", "193": "Status — Issue #39", "194": ".outputDefined", "195": "Issue #47: Iterative fixes: share-y-scale", @@ -201,84 +186,78 @@ "199": "ur", "200": "run", "201": "cellpy-simple-gui", - "202": "_load_entry", "203": "m", - "204": "steps", + "204": "test_mcp_prototype.py", "205": "README.md", "206": "Kt", "207": "gr", "208": "Exception", - "209": "Issue #31 status — Iterative fixes: export download location", "210": "ft", "211": "k", "212": "zip_installer.py", - "213": "drive", - "214": "test_smoke_test_skips_only_a_missing_reader", + "214": "Plan — #184 update plots when the Manage cells modal closes", "215": "Instructions", - "216": "Next phase — deployment routes and app-builder documentation", + "216": "starter/app.py", "217": "Continuous Windows installer from `main`", "218": "Issue #168: Create installer using CI", "219": "Pt", "220": "U", "221": "_restyle", - "222": "CellProcessor 2.0 — design guide (for agents)", - "223": ".fire", + "222": "cellpy-simple-gui", "224": "Plan — Issue #177: GUI color scheme and layout", "225": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", - "226": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", - "227": "LaunchedApp", + "226": "apply_physical_meta", "228": "issue-flow — harness init (`/iflow-init`)", "229": "Releasing", "230": "bt", "231": "Guides: what belongs upstream in cellpy", "232": "describe_api", "233": "Ki", - "234": "test_startup_survives_an_unreadable_cellpy_config", "235": "1. Getting cells into memory", "236": "get", - "237": "issue184_original.md", - "240": "Issue #54 status", - "241": "Ic", + "238": "save_cell", + "240": "xr", + "241": ".evaluate", "242": "Issue #55 — Status", "243": "Issue #72 status", "244": "En", "247": "Issue #169: Compare selected cells", + "249": "_load_entry", "250": "Zi", "251": "issue-flow — PR queue sync (`/iflow-pr-sync`)", "252": "4. Exporting data and figures", - "253": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", "254": "Issue #81: Keep CE summary panel order consistent (prefer CE on top)", - "255": "Xe", - "256": "test_a_default_direction_plot_says_it_drew_less", + "256": "Plan: Issue #19 — journal load error surfacing", "257": "_t", - "258": "test_writes_are_sandboxed_too", - "259": "test_unknown_handles_and_kinds_are_told_what_to_do", "260": ".possiblyEvaluate", - "261": "test_describe_api_follows_the_reference_the_docstring_points_at", "263": "issue-flow — ops / no-PR (`/iflow-ops`)", - "264": "th", + "264": ".addBucket", "265": "2. Cells into a Collection", "266": "7. What cellpy will and will not do for you", + "267": "Status — Issue #169: Compare selected cells", "268": "Issue #173 status", - "269": "test_describe_api_renders_a_method_the_way_you_would_call_it", "270": "Issue #173: Create also a zip file with the installer during release.", "271": "Issue #175: missing or bad cycles not reported", - "272": "p", + "272": "N", "273": "Issue #177: gui color scheme and layout", - "274": "test_search_api_points_at_the_module_that_defines_the_call", "275": "test_stderr_usable_rejects_a_broken_handle", + "276": "test_smoke_test_skips_only_a_missing_reader", "277": "test_ingest.py", "278": "qn", "279": "issue186_original.md", + "280": "Any", "282": "Xt", + "283": "test_startup_survives_an_unreadable_cellpy_config", + "284": "issue187_original.md", "285": "Building on cellpy", "286": "Issue #69: edit meta data", "287": "ge", "288": "Issue #86 — Status", - "293": "ht", + "289": "issue184_original.md", + "293": ".fire", "295": "Issue #160: Add option to use OtherPath for loading files from remote directory", "302": "wi", - "304": "test_starter.py", + "304": "mcp/server.py", "306": "jh", "310": "docker-entrypoint.sh", "312": "BaseModel", diff --git a/graphify-out/.graphify_labels.json.sig b/graphify-out/.graphify_labels.json.sig index 7337ad4..617ff05 100644 --- a/graphify-out/.graphify_labels.json.sig +++ b/graphify-out/.graphify_labels.json.sig @@ -1 +1 @@ -{"0": "4f2e8ba2ebb1f938", "1": "610dfa31e559d9d3", "2": "417ea33926ec12b3", "3": "dfc39e27bcab309f", "4": "4f749276d58d2d5f", "5": "9ad20dc673a56231", "6": "26c1fe004678dacc", "7": "9f895049a4285a18", "8": "88d5989a8cb55ded", "9": "be884c00781ae637", "10": "67f95e6eab4e21a3", "11": "cfefde6375826836", "12": "67f80b4d2a5ed843", "13": "0fabd47679f83944", "14": "1f1d08e1167e859a", "15": "12d1cd17e9919ee8", "16": "24f0dc0ba31a3310", "17": "2206c106a59c5148", "18": "cc57375d7792fb00", "19": "158c4df60706f0a3", "20": "2fccc30d62fdd79d", "21": "4fb9d8ea062311a4", "22": "01f804f6214642d2", "23": "fa44a4a9fdf91de7", "24": "6ed92c66fdc74ea2", "25": "e483c9eb963c25ab", "26": "abfa57511641379d", "27": "d212674e72ab851e", "28": "d9456d6621e05b35", "29": "5134163f20b6be1d", "30": "15d78ab9888f9dc2", "31": "f303ed5c91f8bd24", "32": "abe6f25ecb8c16ed", "33": "d3f0cba1a9ec7982", "34": "75ec0fd07f3c5f4d", "35": "bdbeb1a315408c06", "36": "3dcca07ea0eff8c5", "37": "857a580e474accb8", "38": "b1d2342799cdd129", "39": "a2af0eac2dcbd3c6", "40": "601d95efc7fc928c", "41": "4421ad6dcc56e5ef", "42": "aec3d6b27bf89e0f", "43": "3cda3de8471077b5", "44": "4ce5c914c16403ec", "45": "c661c8d850cebc9a", "46": "794c41ae4174a80a", "47": "c289f8f268ea02f2", "48": "abfd79c9592beb2e", "49": "47a164ed5504cfb8", "50": "fe68f39efd28a5c6", "51": "f6ad072d3311b620", "52": "c5c332c20e1ff75b", "53": "583769c5bdc4ae0f", "54": "6243008562b7bc71", "55": "3098c1f2c24b9631", "56": "3f94e330dbef8906", "57": "c1dbe3054a64bcbd", "58": "aa855512c0333bcd", "59": "fe2eae3e37499d19", "60": "80d2e2970fbb02cd", "61": "d96a58c46e98f6c4", "62": "4792ac3096f2ef8b", "63": "47e6375b0d761588", "64": "ee9264ba0a0fd38b", "65": "29e5e63e2a44c0d7", "66": "3f61af543afcaa0e", "67": "99a50b6aff6c2c74", "68": "02a9d50bb1396902", "69": "b94ee1cd10dac5c2", "70": "bc9790f9ca92a432", "71": "75bf25b6e32d56ad", "72": "071b1c366b3b2aa7", "73": "571ee041d7e98afa", "74": "e94edb34de0f024a", "75": "d2c356025de35c19", "76": "9059e6e65865fd8a", "77": "c0bec8089502c134", "78": "4fb6b151e0abc969", "79": "6acc58463f815e70", "80": "9bf31189a1cd990f", "81": "09d402a081e2db6a", "82": "c45df9e525822649", "83": "c92c02280b05a268", "84": "831d48b96adb400f", "85": "b9e9781a09f13937", "86": "72efdffd19385e6e", "87": "e3a893254745914d", "88": "9bd53afe05bf92a5", "89": "69ee6438c1246fca", "90": "19b9512f86cecb98", "91": "54df16cac50d61c6", "92": "50656fe674e15fcf", "93": "99b0e7431acf10fa", "94": "39868ebda0e5bca7", "95": "4535627664476db4", "96": "aa00c97ea1181083", "97": "cf4df7d4fefa5293", "98": "4a2190552a23bedd", "99": "702160bb6802e49d", "100": "ae929da058988b88", "101": "5a3393ef0b2c1c0a", "102": "16ca72c8476f8911", "103": "9709b024e80c9780", "104": "62dea8620e9012e7", "105": "8b864a593f404c47", "106": "514e56fe2bb7d42b", "107": "f599bb86809ed90c", "108": "7b2b72a708bfde15", "109": "2a91da2a6e1a8552", "110": "45202e4f0d27d454", "111": "63d8bf7cfb0bd2e4", "112": "bff0f6fa994c8ebf", "113": "b3dc51045fc0d4ff", "114": "2f0c794aa25ed997", "115": "1bc190875b992dfc", "116": "ce6418b5db79532b", "117": "9db3aa514e28b425", "118": "3fc48cb5345d0eec", "119": "88106e405654f44e", "120": "3765ca45a329967e", "121": "867c0ecec85535fa", "122": "4b02553ccba27e60", "123": "808dc446d1c2b29d", "124": "ef869c58524bef8d", "125": "cf96f46ba29af37c", "126": "c0be6ed9b72d2ea9", "127": "dd5943716f5e15ed", "128": "446e89c092a41e4c", "129": "9d8ba861d7656492", "130": "c84a4fa1a74c8734", "131": "d19072c431906fc1", "132": "dde75c543772740d", "133": "b9083eb2e32ea593", "134": "7368d78819a3edd3", "135": "4dc00c0a41f1ee3d", "136": "fc1f7ae17cd4d9f7", "137": "1485de8954e155de", "138": "6af1fc63f4f2ff31", "139": "049cee3871828f55", "140": "8d56a90a95ba2f98", "141": "081d0024501fa4fe", "142": "65cac471b86765b2", "143": "b5f86162cfea7f24", "144": "d3be5c3500143e07", "145": "8afa504870693836", "146": "571fb06b245de668", "147": "b43b68ec862abc91", "148": "27c8fb02103164db", "149": "a21d4cf4d406a9f3", "150": "67ae9ad0b11991db", "151": "c56e6f30f979eb8a", "152": "1d07794059777614", "153": "122271d8cc5dddc1", "154": "af753d28d6e4a23c", "155": "4e0e9e89a3452fc5", "156": "7ea431a9f154820b", "157": "a22cac41c9260ad4", "158": "8239cebf363d6337", "159": "861a1de81319601d", "160": "1a4fc9db59a1ccf7", "161": "78dc1c2cf48b81ac", "162": "e47cee2d87f52482", "163": "840bd4455463c6d7", "164": "c2181cb32612240e", "165": "ad49cf06e3209e6d", "166": "8c95bb45ea6f9e72", "167": "6178508dd2e45f0b", "168": "40687b7a66c395e3", "169": "e15f8035f744fc67", "170": "f7ab1ab688dcc44d", "171": "a14a2084a5fd6120", "172": "f5630dac3218cc09", "173": "7dbe6ad8d439d93e", "174": "e4d31761083106c5", "175": "512660f5b36ddefc", "176": "9e919fc33079b3bb", "177": "68bd95e4264e2c00", "178": "90616fd4b475dc96", "179": "89df5b3601e315b3", "180": "2b0761f118f29ee1", "181": "eb89499572491842", "182": "323f533e1cecde07", "183": "a8fc5dfb8ad4d5b6", "184": "a9d1997b4bc9e575", "185": "6dc3551a09ac9550", "186": "f051fcfc0f7aff1b", "187": "08bcb48616da4a3f", "188": "0ca0c7084cc1ade2", "189": "6f342fe04661b1c7", "190": "e06fe12c228f08f1", "191": "281c2acd4d0a08fc", "192": "de838e505ce09728", "193": "4460aeb3d5ff3d05", "194": "c6e8c38ac1bcb19f", "195": "86bfb32a608b869d", "196": "e935399bccc3793d", "197": "d91743be0d8050fd", "198": "877dcced4702cbc8", "199": "790e16e102e090ce", "200": "0e90472886e351cf", "201": "55e84b71ea87f06c", "202": "e5ed0227c2e59367", "203": "b657a32d331c84b0", "204": "d9254aae7726467d", "205": "b00c34ce7110eb3e", "206": "d915ac3c6ebe9294", "207": "d5e6c2514a01b6b0", "208": "a41d7ab1fadd1af4", "209": "54429cac14f41448", "210": "2b509092ccad46c3", "211": "c51a3abe71296b98", "212": "1df3a26ab97788a4", "213": "21ee3919d22052af", "214": "878c48725a72c135", "215": "07503b6b91df7051", "216": "3860266423e2972d", "217": "916ec177fe06b1d7", "218": "11043705586a792d", "219": "395ae870300f2664", "220": "0204f6ed102e6af0", "221": "9472df37fc5c4700", "222": "07770ecdfe4ec60b", "223": "e5f187ee22d447fd", "224": "ed329a26cc8abe56", "225": "69b3464d7b93a920", "226": "7bd6ac5fa49fcba5", "227": "af2ddb84d4f1ebec", "228": "bab4052599b49524", "229": "3ab15716a51e5879", "230": "ee21707da64f3db7", "231": "f537d655a2f27cf3", "232": "82e9f44c347b18ce", "233": "8d135449128b2464", "234": "aacd65d9a9928a63", "235": "d81f6c6ae5ab9f3c", "236": "1ee38022df60d22a", "237": "888a3a3c6f77adb8", "240": "b535621e9f489c79", "241": "e3ef658792b7a7d5", "242": "ed6bf3fe0accabd4", "243": "c254cfd8b0080ea9", "244": "1058b035608b8045", "247": "f7a038f370376382", "250": "09da0cf151a43cc7", "251": "98377b67e1213ae6", "252": "5342802bd86c9566", "253": "0b37c0d2fd4556aa", "254": "b454e31d37b358d2", "255": "8bc6ad106683d9e9", "256": "e2723e3e147012a7", "257": "5eebaf23c0fc4e89", "258": "422a8d5315ef2370", "259": "e65d8a09030c93e5", "260": "6baac769b495dcb6", "261": "62ecba6a32a1aea9", "263": "af2aed4360da8e40", "264": "94352d2d5530a40d", "265": "f26e3baa111b0ca8", "266": "50e19ce1fec9e12c", "268": "307052fc84b8d418", "269": "48b3604babe39c84", "270": "818bc0e5407e4335", "271": "d4219551a9c7d651", "272": "67b057401fba124c", "273": "05643efa0f664a89", "274": "0afb01bb9c459e34", "275": "6296e3bc1040b908", "277": "eb109e6cc77fc04d", "278": "33d3774ff7c91871", "279": "81b82d90c212ccf1", "282": "2fb45ccc84e9bb2e", "285": "b8b5203341f915a3", "286": "e9d994263c38d130", "287": "2f3ef4e82fd1a844", "288": "49e2e482d4be4ee8", "293": "3bf1fd794e79850d", "295": "8584084cf3b406bf", "302": "a3595d1dfa54c6be", "304": "0c6e3ab92946eab7", "306": "e02c33e667f78ae6", "310": "cc1a58b543ea33f5", "312": "1119faf417baccce", "313": "d47a28fe7fb871b3", "318": "3f0b0e205ba7c4d9", "330": "58be3d655a49ab6d"} \ No newline at end of file +{"0": "cb867da60ffc93af", "1": "2fec2b412a816f7f", "2": "cdbe6a322ea6793c", "3": "3d03b100be8140d3", "4": "4689696b2ee5c47b", "5": "550e13abe2febc20", "6": "d4f43314539bea7e", "7": "9f895049a4285a18", "8": "6f93eaf3118b5cf6", "9": "25b0521493799934", "10": "9824bee679ff11d5", "11": "cfefde6375826836", "12": "0d030dbc3e217ccd", "13": "3012c9e956ff35b6", "14": "555984ae2b083a26", "15": "6865548bfad7d11a", "16": "5fadf93b99f262bc", "17": "add80f4dbe9e6cbe", "18": "b09efba9cdcd7181", "19": "158c4df60706f0a3", "20": "2dac9bd15d1124c7", "21": "4fb9d8ea062311a4", "22": "5767ad3be888a7b9", "23": "22c44b14e0eaa5db", "24": "b932648ab0f4e6ac", "25": "ddc8b2183ea8f343", "26": "0121708aa2635448", "27": "d212674e72ab851e", "28": "d9456d6621e05b35", "29": "66120b8252e8e281", "30": "0383edde04ed65e8", "31": "f303ed5c91f8bd24", "32": "cc3de03f63da5a8b", "33": "6e2979b9f3c80b3f", "34": "75ec0fd07f3c5f4d", "35": "5704463e53eabbf5", "36": "3dcca07ea0eff8c5", "37": "857a580e474accb8", "38": "59ff842c308f0169", "39": "68afa7f3c4c6fa44", "40": "718f272be339318a", "41": "4421ad6dcc56e5ef", "42": "aec3d6b27bf89e0f", "43": "3cda3de8471077b5", "44": "a704a85f43685264", "45": "c7b5fdea4c5f9f87", "46": "1e5b4c82b43e9bcc", "47": "77fed8f67c33f203", "48": "02a4f08d21194521", "49": "ae1fbebfcfbd152a", "50": "fe68f39efd28a5c6", "51": "e1d0a2c9dded8acb", "52": "8273032d9ae1318b", "53": "583769c5bdc4ae0f", "54": "6243008562b7bc71", "55": "6acc58463f815e70", "56": "f93223c6606e46f6", "57": "db41cdb96a989f6f", "58": "195a9e0172cdb5dc", "59": "ab850a771dc2d98b", "60": "bf3a883c26676f91", "61": "1c26eee63f5c3d18", "62": "bf261c18b73f744c", "63": "25ab937abe1a0555", "64": "74aeb6172982e7e5", "65": "c0f76ac46777bfb3", "66": "ef869c58524bef8d", "67": "fbea8dcb7bc1ec85", "68": "b82bd87f23e0eb90", "69": "3ccf5187e2bfcfed", "70": "bc9790f9ca92a432", "71": "75bf25b6e32d56ad", "72": "d84e1615872a1728", "73": "571ee041d7e98afa", "74": "e94edb34de0f024a", "75": "d2c356025de35c19", "76": "2744292016643aab", "77": "2453094bd6c06f64", "78": "5060e8b23ecc2c64", "79": "622aa2df2139c6c2", "80": "f8199b79ee70154c", "81": "09d402a081e2db6a", "82": "c45df9e525822649", "83": "e6df63663684268d", "84": "58713e5c6bb02eaf", "86": "72efdffd19385e6e", "87": "4026c96742f6e6c6", "88": "405d5d2550e0041c", "89": "64691e7ddcc94c65", "90": "7f1aca611d5efd83", "92": "50656fe674e15fcf", "93": "99b0e7431acf10fa", "94": "b0f46a0081460447", "95": "4535627664476db4", "96": "f2aa16f038be18e6", "97": "5c90138e5a7b5384", "98": "4a2190552a23bedd", "99": "702160bb6802e49d", "100": "1856b7c4ef30ac58", "101": "35bb88ca6e27fb07", "102": "2183108e66bed679", "103": "7273e4aed7c06a4a", "104": "d64bcd2d6591851f", "105": "892a09ebe961874c", "107": "80b79876c92dd9d7", "108": "7e99889dfc1df8b1", "109": "2a91da2a6e1a8552", "111": "63d8bf7cfb0bd2e4", "112": "a14cc6e9d3937faf", "113": "b3dc51045fc0d4ff", "116": "ce6418b5db79532b", "117": "a677fbcc483dd33c", "118": "3fc48cb5345d0eec", "121": "867c0ecec85535fa", "122": "4b02553ccba27e60", "123": "808dc446d1c2b29d", "125": "cf96f46ba29af37c", "126": "c0be6ed9b72d2ea9", "127": "dd5943716f5e15ed", "128": "446e89c092a41e4c", "129": "9d8ba861d7656492", "130": "448f20fedcec0335", "131": "d19072c431906fc1", "132": "dde75c543772740d", "134": "7368d78819a3edd3", "135": "dbc2e8e708bead1e", "136": "fc1f7ae17cd4d9f7", "137": "1485de8954e155de", "138": "6af1fc63f4f2ff31", "139": "049cee3871828f55", "140": "8d56a90a95ba2f98", "141": "081d0024501fa4fe", "142": "65cac471b86765b2", "143": "b5f86162cfea7f24", "144": "d3be5c3500143e07", "145": "8afa504870693836", "146": "571fb06b245de668", "147": "b43b68ec862abc91", "148": "1e3e57bbbf9d3dd1", "149": "a21d4cf4d406a9f3", "150": "67ae9ad0b11991db", "151": "c56e6f30f979eb8a", "152": "1d07794059777614", "154": "af753d28d6e4a23c", "155": "4e0e9e89a3452fc5", "156": "7ea431a9f154820b", "158": "8239cebf363d6337", "159": "f223e242b8a1807c", "160": "a1b3f4f379178248", "161": "78dc1c2cf48b81ac", "162": "e47cee2d87f52482", "163": "840bd4455463c6d7", "164": "7c7473ae23e2fbc3", "165": "ad49cf06e3209e6d", "166": "8c95bb45ea6f9e72", "167": "6178508dd2e45f0b", "168": "a95119159a0088e4", "170": "f7ab1ab688dcc44d", "171": "a14a2084a5fd6120", "172": "956041ffb28d0bab", "173": "7dbe6ad8d439d93e", "174": "e4d31761083106c5", "175": "512660f5b36ddefc", "177": "68bd95e4264e2c00", "178": "90616fd4b475dc96", "179": "89df5b3601e315b3", "180": "2b0761f118f29ee1", "181": "eb89499572491842", "182": "323f533e1cecde07", "183": "a8fc5dfb8ad4d5b6", "184": "a9d1997b4bc9e575", "185": "6dc3551a09ac9550", "186": "f051fcfc0f7aff1b", "187": "6b43aa3289516c37", "188": "0ca0c7084cc1ade2", "189": "6f342fe04661b1c7", "191": "281c2acd4d0a08fc", "192": "c8bda3cdded11b1d", "193": "4460aeb3d5ff3d05", "194": "c6e8c38ac1bcb19f", "195": "86bfb32a608b869d", "196": "e935399bccc3793d", "197": "d91743be0d8050fd", "198": "877dcced4702cbc8", "199": "50dcd869a87f78dd", "200": "0e90472886e351cf", "201": "55e84b71ea87f06c", "203": "6cfbdeec504543fe", "204": "2c51329f0f5e30b0", "205": "e69a8cd1c6249ad2", "206": "d8a384de01623e44", "207": "d5e6c2514a01b6b0", "208": "a41d7ab1fadd1af4", "210": "3adce984ea8ee120", "211": "57aafa3879f35c14", "212": "1df3a26ab97788a4", "214": "3765ca45a329967e", "215": "07503b6b91df7051", "216": "0bccff6eb0e46a90", "217": "916ec177fe06b1d7", "218": "11043705586a792d", "219": "395ae870300f2664", "220": "0204f6ed102e6af0", "221": "55947be402e73442", "222": "fc9c9cd3cb6cea5c", "224": "ed329a26cc8abe56", "225": "6ab28532b1267164", "226": "bde5738a3f70ff75", "228": "bab4052599b49524", "229": "03f8f80a20ed9540", "230": "68d237279fa2db10", "231": "f537d655a2f27cf3", "232": "7353724c5b0bf7de", "233": "6bcb514abf64d347", "235": "d81f6c6ae5ab9f3c", "236": "1ee38022df60d22a", "238": "7f04d49355aad352", "240": "560dc3c7c916fb13", "241": "0215fe335b449ab1", "242": "ed6bf3fe0accabd4", "243": "c254cfd8b0080ea9", "244": "6549aec80bd8f881", "247": "f7a038f370376382", "249": "e5ed0227c2e59367", "250": "c8dd4085ba595ff9", "251": "98377b67e1213ae6", "252": "5342802bd86c9566", "254": "b454e31d37b358d2", "256": "b7ed414733b58340", "257": "5eebaf23c0fc4e89", "260": "54c843cc81f6cdf3", "263": "af2aed4360da8e40", "264": "e3a893254745914d", "265": "c61973f0fab9164c", "266": "50e19ce1fec9e12c", "267": "20c1c04fd3d8069b", "268": "307052fc84b8d418", "270": "818bc0e5407e4335", "271": "d4219551a9c7d651", "272": "401d7f6612cb432a", "273": "05643efa0f664a89", "275": "6296e3bc1040b908", "276": "878c48725a72c135", "277": "74e584189bd9f66b", "278": "33d3774ff7c91871", "279": "81b82d90c212ccf1", "280": "121ee0dc01c76264", "282": "4c8edd7893051f67", "283": "aacd65d9a9928a63", "284": "af2226b7a6be7c28", "285": "b8b5203341f915a3", "286": "e9d994263c38d130", "287": "2f3ef4e82fd1a844", "288": "49e2e482d4be4ee8", "289": "888a3a3c6f77adb8", "293": "2b1f8c648a0ddbfc", "295": "8584084cf3b406bf", "302": "60fa44ba6e893536", "304": "6476798fdb7a6111", "306": "e02c33e667f78ae6", "310": "cc1a58b543ea33f5", "312": "1119faf417baccce", "313": "d47a28fe7fb871b3", "318": "3f0b0e205ba7c4d9", "330": "58be3d655a49ab6d"} \ No newline at end of file diff --git a/graphify-out/2026-10-03/.graphify_labels.json b/graphify-out/2026-10-03/.graphify_labels.json index 0f10e98..e2a5166 100644 --- a/graphify-out/2026-10-03/.graphify_labels.json +++ b/graphify-out/2026-10-03/.graphify_labels.json @@ -5,72 +5,72 @@ "3": "collect.py", "4": "ss", "5": "i", - "6": ".get", + "6": "N", "7": "test_compare.py", "8": "$", "9": "SummaryPlotSpec", - "10": "export_bytes", + "10": "u", "11": "vn", "12": "test_api.py", "13": "wo", "14": "Uc", "15": "e", "16": "test_remote_find.py", - "17": "apply_physical_meta", - "18": "ir", + "17": "cellpy_adapter.py", + "18": "m", "19": "issue-flow — issue comments triage", "20": ".add", "21": "na", "22": "wt", - "23": "get_settings", + "23": "Library", "24": "oa", - "25": "tu", + "25": "eu", "26": ".push", "27": "issue-flow — issue plan (`/iflow-plan`)", - "28": "core/__init__.py", + "28": "library.py", "29": "xi", "30": "routers/export.py", "31": "issue-flow — issue close (`/iflow-close`)", - "32": "Cursor issue workflow (Agent Skills)", - "33": "load_raw", + "32": "gh", + "33": "Plan — Issue #41", "34": ".createVertexBuffer", "35": "cellpy_config.py", "36": "test_paths.py", "37": ".resume", - "38": ".getRenderableIds", + "38": "_add_spread_hover", "39": "_apply_y_ranges", "40": "Dt", "41": "Plan — Issue #168: Create installer using CI", "42": "Instructions", "43": "issue-flow — history update", "44": "Job", - "45": ".placeLayerBucketPart", - "46": "resize", + "45": "resize", + "46": "ca", "47": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", - "48": "pathlib", - "49": ".constructor", + "48": "get_settings", + "49": "hi", "50": "Instructions", "51": ".reset", "52": "plots.py", "53": "issue-flow — create a normal issue (`/iflow-issue`)", "54": "issue-flow — version bump", "55": "fa", - "56": "test_journal.py", + "56": "ea", "57": "I", "58": ".renderLayer", - "59": "The tools", + "59": "collect", "60": ".parse", - "61": "loaded_library", - "62": "Original issue text", + "61": "conftest.py", + "62": "Plan — Issue #62: Group vs individual Plotly legend muting", "63": "ti", - "64": ".max_files", + "64": "test_agent_docs.py", "65": "core/projects.py", - "66": ".evaluate", - "67": "system.py", - "68": "s", + "66": "Ra", + "67": "pick", + "68": "g", "69": "IcaPlotSpec", "70": "Issue #73: Job progress pane: Cancel/Dismiss overlap long status text", - "71": "Packaging", + "71": "app_main_module", "72": "de", "73": "Issue #58 plan: plot side pane + top bar blend", "74": "Issue #5 plan", @@ -78,18 +78,18 @@ "76": "ah", "77": "da", "78": "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)", - "79": "instrument_meta_schema", + "79": ".constructor", "80": "_render", "81": "issue-flow — epic planning (`/iflow-epic`)", - "82": "gh", + "82": "issue-flow — review and label issues (`/iflow-review`)", "83": "expand_paths", "84": "cellpy API surface", "85": "ii", "86": "issue-flow — issue yolo (`/iflow-yolo`)", - "87": "find_remote_files", + "87": "test_llms_full_txt_is_current", "88": "Plan — Issue #3: Manage cells in an expanded editor", - "89": ".render", - "90": "test_uploads.py", + "89": "ju", + "90": "core/export.py", "91": "Original issue text", "92": "Issue #60 status", "93": "Be token greedy - as a caveman", @@ -101,29 +101,29 @@ "99": "Issue #67: Cell explorer dQ/dV: Charge/Discharge direction has no effect (and joins half-cycles)", "100": "fo", "101": "test_gui_playwright.py", - "102": "Plan — Issue #38: cellpy label builders for axis titles", + "102": "_tidy_facet_annotations", "103": "test_core.py", - "104": "cellpy_adapter.py", - "105": "CyclesPlotSpec", + "104": ".destroy", + "105": "RawPlotSpec", "106": "rh", - "107": "CellRecord", + "107": "plotting.py", "108": "ro", "109": "Issue #36: Chart card stays white under dark figure theme; default figure theme to Match app", - "110": "_default_visible_hints", + "110": "ri", "111": "Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet", - "112": "qi", + "112": ".create", "113": "Issue #3: Make the Cells list workable for many cells (modal or expanded editor)", "114": "test_mcp_prototype.py", "115": "gen_llms_txt.py", "116": "Issue #4: Replace deprecated pywebview OPEN_DIALOG with FileDialog.OPEN", "117": "The Windows installer", "118": "Original issue text", - "119": "The cold-context agent test", - "120": "dh", + "119": "Mn", + "120": "mh", "121": "Issue #5: Add cellpy logo and app icon", "122": "Issue #73 status", "123": "Essential tests (pytest)", - "124": "cellpy API surface", + "124": "nl", "125": "issue-flow — archive solved issues (`/iflow-archive`)", "126": "issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`)", "127": "issue-flow — issue pause (`/iflow-pause`)", @@ -132,7 +132,7 @@ "130": "wn", "131": "Deploying cellpy simple GUI as a server", "132": "Issue #48: create gui tests", - "133": ".draw", + "133": "Ic", "134": "Plan: Issue #13 — add workflows", "135": "Ei", "136": "Issue #55: need to add collector plot for cycles", @@ -142,33 +142,33 @@ "140": "Plan: Issue #18 — improve manage cells modal", "141": "Quick start (from a clone)", "142": "Plan — Issue #36", - "143": "cellpy starter app", + "143": "_workflow", "144": "Plan — Issue #39", "145": "test_loader_availability.py", "146": "Issue #56: add single cell dqdv plot", "147": "issue-flow — graph rebuild (`/iflow-graphify`)", - "148": "di", + "148": "bn", "149": "Issue #63: Iterative fixes: plot bottom clipping", "150": "Issue #27: Iterative fixes: group average checkbox", "151": "Issue #31: Iterative fixes: export download location", "152": "Issue #63 status", - "153": "cellpy MCP server (prototype)", + "153": "The prompts", "154": "`00-tools/` — shared helper tools", "155": "playwright-gui-tests.md", "156": "Cycle status", - "157": "mcp/server.py", + "157": "_client_config_path", "158": "Issue #15: update readme", "159": "mt", "160": "oi", "161": "Development information", "162": "gen_api_reference.py", "163": "Status — Issue #3: Manage cells expanded editor", - "164": "describe_api", + "164": "Issue #81 — Plan: consistent CE summary panel order", "165": "Issue #47 — Status", "166": "entry.py", "167": "Issue #50 — Status", - "168": "smoke_test.py", - "169": "eu", + "168": "Client", + "169": ".getSouthEast", "170": "Issue #58 status", "171": "Issue #5 status", "172": "6. Process state and threading", @@ -187,11 +187,11 @@ "185": "Status: Issue #18 — improve manage cells modal", "186": "Issue #19: stale loading of cellpy batch journal", "187": "ho", - "188": "essential", + "188": "issue-flow — issue cleanup (`/iflow-cleanup`)", "189": "Issue #28: add ability to export cellpy cell", - "190": "_without_webview", + "190": "Plan — #184 update plots when the Manage cells modal closes", "191": "Status — Issue #36", - "192": "instruments", + "192": "cellpy API surface", "193": "Status — Issue #39", "194": ".outputDefined", "195": "Issue #47: Iterative fixes: share-y-scale", @@ -201,19 +201,19 @@ "199": "ur", "200": "run", "201": "cellpy-simple-gui", - "202": "m", + "202": "Issue #37: Spread bands too opaque for safe/muted color schemes", "203": "m", - "204": "drive", + "204": "steps", "205": "README.md", "206": "Kt", "207": "gr", "208": "Exception", "209": "getImageData", "210": "ft", - "211": ".load", - "212": "ps", - "213": "Hl", - "214": ".restore_cell", + "211": "k", + "212": "zip_installer.py", + "213": "drive", + "214": "Plan — Issue #37", "215": "Instructions", "216": "starter/app.py", "217": "Continuous Windows installer from `main`", @@ -222,62 +222,63 @@ "220": "U", "221": "_restyle", "222": "cellpy-simple-gui", - "223": ".fire", + "223": "._validate", "224": "Plan — Issue #177: GUI color scheme and layout", - "225": "collect", - "226": "load_journal_cells", - "227": "qa", + "225": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "226": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "227": "LaunchedApp", "228": "issue-flow — harness init (`/iflow-init`)", "229": "Releasing", "230": "bt", "231": "Guides: what belongs upstream in cellpy", - "232": "test_index_click_and_show_targets_exist", + "232": "_index", "233": "Ki", - "234": "pl", + "234": "Compare cells (#169)", "235": "1. Getting cells into memory", - "236": ".cancel", - "237": "test_index_alpine_state_is_defined", + "236": "get", + "237": "ls", "238": "Issue #28 plan — Export cells from Manage cells", "239": "Next phase — deployment routes and app-builder documentation", - "240": "uu", - "241": "Ic", - "242": "Issue #31 status — Iterative fixes: export download location", - "243": ".emplaceBack", + "240": "Issue #54 status", + "241": ".get", + "242": "Issue #55 — Status", + "243": "Issue #72 status", "244": "En", - "245": "test_paths_outside_the_sandbox_are_refused", - "246": "kn", + "245": "once", + "246": "pu", "247": "Issue #169: Compare selected cells", - "248": "skills/README.md", - "249": "._forEachCell", + "248": ".constructor", + "249": "list_instruments", "250": "Zi", "251": "issue-flow — PR queue sync (`/iflow-pr-sync`)", "252": "4. Exporting data and figures", "253": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", "254": "Issue #81: Keep CE summary panel order consistent (prefer CE on top)", "255": "Xe", - "256": "qr", + "256": "test_a_default_direction_plot_says_it_drew_less", "257": "_t", - "258": "gh-ci — wait on GitHub CI with `gh`", - "259": "Original issue text", + "258": "test_writes_are_sandboxed_too", + "259": "test_unknown_handles_and_kinds_are_told_what_to_do", "260": ".possiblyEvaluate", - "261": ".clone", + "261": "test_describe_api_follows_the_reference_the_docstring_points_at", "262": "Gu", "263": "issue-flow — ops / no-PR (`/iflow-ops`)", - "264": "Ku", + "264": "th", "265": "2. Cells into a Collection", "266": "7. What cellpy will and will not do for you", "267": "Status — Issue #169: Compare selected cells", "268": "Issue #173 status", - "269": "P", + "269": "test_describe_api_renders_a_method_the_way_you_would_call_it", "270": "Issue #173: Create also a zip file with the installer during release.", "271": "Issue #175: missing or bad cycles not reported", - "272": "N", + "272": "y", "273": "Issue #177: gui color scheme and layout", - "274": "issue186_original.md", - "275": "se", + "274": "test_search_api_points_at_the_module_that_defines_the_call", + "275": "test_stderr_usable_rejects_a_broken_handle", + "276": "issue184_original.md", "277": "test_ingest.py", "278": "qn", - "280": "Refused", + "279": "issue186_original.md", "282": "Xt", "285": "Building on cellpy", "286": "Issue #69: edit meta data", diff --git a/graphify-out/2026-10-03/GRAPH_REPORT.md b/graphify-out/2026-10-03/GRAPH_REPORT.md index 937a0ee..026eff1 100644 --- a/graphify-out/2026-10-03/GRAPH_REPORT.md +++ b/graphify-out/2026-10-03/GRAPH_REPORT.md @@ -1,17 +1,17 @@ # Graph Report - workspace (2026-10-03) ## Corpus Check -- 287 files · ~390,787 words +- 291 files · ~392,181 words - Verdict: corpus is large enough that graph structure adds value. - Unclassified: 22 file(s) not represented in the graph (top: (none) 13, .mdc 2, .toml 1) ## Summary -- 5913 nodes · 16320 edges · 294 communities (214 shown, 80 thin omitted) -- Extraction: 81% EXTRACTED · 19% INFERRED · 0% AMBIGUOUS · INFERRED: 3168 edges (avg confidence: 0.88) +- 5935 nodes · 16347 edges · 295 communities (210 shown, 85 thin omitted) +- Extraction: 81% EXTRACTED · 19% INFERRED · 0% AMBIGUOUS · INFERRED: 3172 edges (avg confidence: 0.88) - Token cost: 0 input · 0 output ## Graph Freshness -- Built from commit: `83793241` +- Built from commit: `6b32234e` - Run `git rev-parse HEAD` and compare to check if the graph is stale. - Run `graphify update .` after code changes (no API cost). @@ -22,72 +22,72 @@ - collect.py - ss - i -- .get +- N - test_compare.py - $ - SummaryPlotSpec -- export_bytes +- u - vn - test_api.py - wo - Uc - e - test_remote_find.py -- apply_physical_meta -- ir +- cellpy_adapter.py +- m - issue-flow — issue comments triage - .add - na - wt -- get_settings +- Library - oa -- tu +- eu - .push - issue-flow — issue plan (`/iflow-plan`) -- core/__init__.py +- library.py - xi - routers/export.py - issue-flow — issue close (`/iflow-close`) -- Cursor issue workflow (Agent Skills) -- load_raw +- gh +- Plan — Issue #41 - .createVertexBuffer - cellpy_config.py - test_paths.py - .resume -- .getRenderableIds +- _add_spread_hover - _apply_y_ranges - Dt - Plan — Issue #168: Create installer using CI - Instructions - issue-flow — history update - Job -- .placeLayerBucketPart - resize +- ca - cellpy pain-points & wishlist (from building cellpy-simple-gui) -- pathlib -- .constructor +- get_settings +- hi - Instructions - .reset - plots.py - issue-flow — create a normal issue (`/iflow-issue`) - issue-flow — version bump - fa -- test_journal.py +- ea - I - .renderLayer -- The tools +- collect - .parse -- loaded_library -- Original issue text +- conftest.py +- Plan — Issue #62: Group vs individual Plotly legend muting - ti -- .max_files +- test_agent_docs.py - core/projects.py -- .evaluate -- system.py -- s +- Ra +- pick +- g - IcaPlotSpec - Issue #73: Job progress pane: Cancel/Dismiss overlap long status text -- Packaging +- app_main_module - de - Issue #58 plan: plot side pane + top bar blend - Issue #5 plan @@ -95,18 +95,18 @@ - ah - da - Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import) -- instrument_meta_schema +- .constructor - _render - issue-flow — epic planning (`/iflow-epic`) -- gh +- issue-flow — review and label issues (`/iflow-review`) - expand_paths - cellpy API surface - ii - issue-flow — issue yolo (`/iflow-yolo`) -- find_remote_files +- test_llms_full_txt_is_current - Plan — Issue #3: Manage cells in an expanded editor -- .render -- test_uploads.py +- ju +- core/export.py - Original issue text - Issue #60 status - Be token greedy - as a caveman @@ -118,29 +118,29 @@ - Issue #67: Cell explorer dQ/dV: Charge/Discharge direction has no effect (and joins half-cycles) - fo - test_gui_playwright.py -- Plan — Issue #38: cellpy label builders for axis titles +- _tidy_facet_annotations - test_core.py -- cellpy_adapter.py -- CyclesPlotSpec +- .destroy +- RawPlotSpec - rh -- CellRecord +- plotting.py - ro - Issue #36: Chart card stays white under dark figure theme; default figure theme to Match app -- _default_visible_hints +- ri - Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet -- qi +- .create - Issue #3: Make the Cells list workable for many cells (modal or expanded editor) - test_mcp_prototype.py - gen_llms_txt.py - Issue #4: Replace deprecated pywebview OPEN_DIALOG with FileDialog.OPEN - The Windows installer - Original issue text -- The cold-context agent test -- dh +- Mn +- mh - Issue #5: Add cellpy logo and app icon - Issue #73 status - Essential tests (pytest) -- cellpy API surface +- nl - issue-flow — archive solved issues (`/iflow-archive`) - issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`) - issue-flow — issue pause (`/iflow-pause`) @@ -149,7 +149,7 @@ - wn - Deploying cellpy simple GUI as a server - Issue #48: create gui tests -- .draw +- Ic - Plan: Issue #13 — add workflows - Ei - Issue #55: need to add collector plot for cycles @@ -159,33 +159,32 @@ - Plan: Issue #18 — improve manage cells modal - Quick start (from a clone) - Plan — Issue #36 -- cellpy starter app +- _workflow - Plan — Issue #39 - test_loader_availability.py - Issue #56: add single cell dqdv plot - issue-flow — graph rebuild (`/iflow-graphify`) -- di +- bn - Issue #63: Iterative fixes: plot bottom clipping - Issue #27: Iterative fixes: group average checkbox - Issue #31: Iterative fixes: export download location - Issue #63 status -- cellpy MCP server (prototype) +- The prompts - `00-tools/` — shared helper tools - playwright-gui-tests.md - Cycle status -- mcp/server.py +- _client_config_path - Issue #15: update readme - mt - oi - Development information - gen_api_reference.py - Status — Issue #3: Manage cells expanded editor -- describe_api +- Issue #81 — Plan: consistent CE summary panel order - Issue #47 — Status - entry.py - Issue #50 — Status -- smoke_test.py -- eu +- Client - Issue #58 status - Issue #5 status - 6. Process state and threading @@ -204,11 +203,11 @@ - Status: Issue #18 — improve manage cells modal - Issue #19: stale loading of cellpy batch journal - ho -- essential +- issue-flow — issue cleanup (`/iflow-cleanup`) - Issue #28: add ability to export cellpy cell -- _without_webview +- Plan — #184 update plots when the Manage cells modal closes - Status — Issue #36 -- instruments +- cellpy API surface - Status — Issue #39 - Issue #47: Iterative fixes: share-y-scale - Issue #50: Iterative fixes: journal-load-logging @@ -216,17 +215,18 @@ - branding-assets.md - ur - cellpy-simple-gui +- Issue #37: Spread bands too opaque for safe/muted color schemes - m -- m -- drive +- steps - README.md - Kt - gr - getImageData - ft -- ps -- Hl -- .restore_cell +- k +- zip_installer.py +- drive +- Plan — Issue #37 - Instructions - starter/app.py - Continuous Windows installer from `main` @@ -235,59 +235,61 @@ - U - _restyle - cellpy-simple-gui -- .fire - Plan — Issue #177: GUI color scheme and layout -- collect -- load_journal_cells -- qa +- Issue #72: Cycles tab: Mode change does not update x-axis capacity units +- Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute) +- LaunchedApp - issue-flow — harness init (`/iflow-init`) - Releasing - bt - Guides: what belongs upstream in cellpy -- test_index_click_and_show_targets_exist +- _index - Ki -- pl +- Compare cells (#169) - 1. Getting cells into memory -- .cancel -- test_index_alpine_state_is_defined +- get +- ls - Issue #28 plan — Export cells from Manage cells - Next phase — deployment routes and app-builder documentation -- uu -- Ic -- Issue #31 status — Iterative fixes: export download location -- .emplaceBack +- Issue #54 status +- .get +- Issue #55 — Status +- Issue #72 status - En -- test_paths_outside_the_sandbox_are_refused -- kn +- once +- pu - Issue #169: Compare selected cells -- skills/README.md +- .constructor +- list_instruments - Zi - issue-flow — PR queue sync (`/iflow-pr-sync`) - 4. Exporting data and figures - Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5` - Issue #81: Keep CE summary panel order consistent (prefer CE on top) - Xe -- qr +- test_a_default_direction_plot_says_it_drew_less - _t -- gh-ci — wait on GitHub CI with `gh` -- Original issue text +- test_writes_are_sandboxed_too +- test_unknown_handles_and_kinds_are_told_what_to_do +- test_describe_api_follows_the_reference_the_docstring_points_at - Gu - issue-flow — ops / no-PR (`/iflow-ops`) -- Ku +- th - 2. Cells into a Collection - 7. What cellpy will and will not do for you - Status — Issue #169: Compare selected cells - Issue #173 status -- P +- test_describe_api_renders_a_method_the_way_you_would_call_it - Issue #173: Create also a zip file with the installer during release. - Issue #175: missing or bad cycles not reported -- N +- y - Issue #177: gui color scheme and layout -- issue186_original.md -- se +- test_search_api_points_at_the_module_that_defines_the_call +- test_stderr_usable_rejects_a_broken_handle +- issue184_original.md - test_ingest.py - qn -- Refused +- issue186_original.md - Xt - Building on cellpy - Issue #69: edit meta data @@ -314,25 +316,25 @@ 10. `n()` - 130 edges ## Surprising Connections (you probably didn't know these) -- `Resolved in 2.1.2a3` --references--> `instruments()` [INFERRED] - .issueflows/04-designs-and-guides/cellpy-delegation-inventory.md → examples/starter/app.py -- `Configuration and threads` --references--> `instruments()` [INFERRED] - skills/cellpy-app/SKILL.md → examples/starter/app.py -- `Raw data views (developer mode)` --references--> `raw_plot()` [INFERRED] - .issueflows/04-designs-and-guides/cellpy-delegation-inventory.md → src/cellpy_simple_gui/api/routers/plots.py -- `Strong — general cellpy knowledge, no app in it` --references--> `cycle_info_plot()` [INFERRED] - .issueflows/04-designs-and-guides/guides-upstream-candidates.md → src/cellpy_simple_gui/api/routers/plots.py -- `What the current architecture already decides for us` --references--> `Settings` [INFERRED] - .issueflows/05-epics/next-phase-deployment-and-docs.md → src/cellpy_simple_gui/config.py +- `What the prototype does not answer` --references--> `load_cell()` [INFERRED] + .issueflows/04-designs-and-guides/mcp-server-design.md → examples/mcp/server.py +- `What's done` --references--> `collect()` [INFERRED] + .issueflows/03-solved-issues/issue54_status.md → examples/mcp/server.py +- `Spec` --references--> `collect()` [INFERRED] + .issueflows/03-solved-issues/issue72_original.md → examples/mcp/server.py +- `Hard part 2 — file access` --references--> `export_collection()` [INFERRED] + .issueflows/04-designs-and-guides/mcp-server-design.md → examples/mcp/server.py +- `Finding 3 — the documentation is usually there, one hop away` --references--> `describe_api()` [INFERRED] + .issueflows/04-designs-and-guides/mcp-server-design.md → examples/mcp/server.py ## Import Cycles - None detected. -## Communities (294 total, 80 thin omitted) +## Communities (295 total, 85 thin omitted) ### Community 0 - "get_library" -Cohesion: 0.05 -Nodes (38): Decision, guard_path(), Cancelled, get_job_manager(), Progress, clear(), delete_cell(), get_state() (+30 more) +Cohesion: 0.03 +Nodes (56): Approach, Goal, Plan: Issue #19 — journal load error surfacing, Test strategy, Done, Status: Issue #19 — journal load errors, Decision, guard_path() (+48 more) ### Community 1 - "CellProcessor 2.0 — design guide (for agents)" Cohesion: 0.17 @@ -340,111 +342,119 @@ Nodes (12): 10. Risks & open questions, 11. Sibling repos (context only), 1. Goa ### Community 3 - "collect.py" Cohesion: 0.03 -Nodes (51): What to add next, and where to look, Prior art, What exists today, and the gap, Approach, Constraints, Files to touch, Goal, Issue #81 — Plan: consistent CE summary panel order (+43 more) +Nodes (71): What to add next, and where to look, 2. Core — `core/collect.py`, 3. Core — `core/plotting.py`, Prior art, Prior art, Prior art, Issue #2 status, Remaining work (+63 more) ### Community 4 - "ss" -Cohesion: 0.08 -Nodes (26): al(), bs(), cl(), cs(), ds(), el(), Es(), gs() (+18 more) +Cohesion: 0.07 +Nodes (27): As(), bs(), cl(), cs(), ds(), el(), Es(), fs() (+19 more) ### Community 5 - "i" -Cohesion: 0.06 -Nodes (94): Be(), g(), Dc(), o(), s(), ec(), x(), a() (+86 more) +Cohesion: 0.04 +Nodes (121): ar(), e(), c(), Br(), r(), Dc(), Dn(), l() (+113 more) -### Community 6 - ".get" -Cohesion: 0.06 -Nodes (17): ae(), an(), cn(), Dn(), ee(), r(), er(), fn() (+9 more) +### Community 6 - "N" +Cohesion: 0.05 +Nodes (17): an(), Be(), er(), a(), he(), ke(), N(), f() (+9 more) ### Community 7 - "test_compare.py" Cohesion: 0.06 Nodes (36): _ids(), picks(), _spec(), test_api_compare_differentials(), test_api_compare_export(), test_api_compare_missing_cycles_are_reported(), test_api_compare_overlay_and_side_by_side(), test_api_compare_validation_and_404() (+28 more) ### Community 8 - "$" -Cohesion: 0.02 -Nodes (64): $, addLayer(), addSprite(), bh(), Bu(), clearMetrics(), completeTask(), _createDelegatedListener() (+56 more) +Cohesion: 0.03 +Nodes (52): $, addLayer(), addSprite(), bh(), clearMetrics(), _containerDimensions(), _diffStyle(), Dl() (+44 more) ### Community 9 - "SummaryPlotSpec" -Cohesion: 0.04 -Nodes (58): Prior art, Acceptance criteria, Issue #2: Allow independent y-limits on multi-panel summary plots, Original issue text, Out of scope, Problem / context, Spec, Approach (+50 more) +Cohesion: 0.03 +Nodes (52): Issue #27 status — Iterative fixes: group average checkbox, Iterative fixes log, Acceptance criteria, Issue #2: Allow independent y-limits on multi-panel summary plots, Original issue text, Out of scope, Problem / context, Spec (+44 more) -### Community 10 - "export_bytes" -Cohesion: 0.17 -Nodes (13): Prior art, cellpy delegation inventory (issue #52), Cycles pane curve kinds (#95), Incremental analysis (ICA / DVA), Raw data views (developer mode), Release-gating note (resolved for #816/#818/#819), Removed in the 2.1.2a2 cleanup, export_bytes() (+5 more) +### Community 10 - "u" +Cohesion: 0.07 +Nodes (13): at(), kt(), o(), b(), u(), A(), b(), E() (+5 more) ### Community 12 - "test_api.py" -Cohesion: 0.07 -Nodes (15): _dva_spec(), test_dva_endpoints_need_no_dev_mode(), test_dva_missing_cell_is_404_not_403(), test_export_cells_cellpy(), test_files_preview_honours_served_sandbox(), test_files_preview_literal_missing_and_glob(), test_job_cancel_running_load(), test_local_instance_keeps_its_freedom() (+7 more) +Cohesion: 0.03 +Nodes (42): Acceptance criteria, Constraints, 4. UI (`app.js`, `index.html`, `app.css`), Issue #31 status — Iterative fixes: export download location, Iterative fixes log, _add_cells_modal_html(), _component_names(), _default_visible_hints() (+34 more) ### Community 13 - "wo" Cohesion: 0.07 -Nodes (11): Ao(), bo(), Co(), Eo(), ko(), Lo(), Mo(), Po() (+3 more) +Nodes (11): Ao(), bo(), Co(), Eo(), ko(), Lo(), Mo(), So() (+3 more) ### Community 14 - "Uc" -Cohesion: 0.12 -Nodes (3): hc(), Uc(), zu +Cohesion: 0.08 +Nodes (6): hc(), lh(), sh(), Uc(), Yl(), zu ### Community 15 - "e" -Cohesion: 0.03 -Nodes (72): a(), a(), c(), l(), f(), u(), o(), r() (+64 more) +Cohesion: 0.05 +Nodes (52): c(), d(), E(), f(), h(), o(), p(), r() (+44 more) ### Community 16 - "test_remote_find.py" Cohesion: 0.10 Nodes (11): _client(), fake_finder(), local(), served(), test_find_surfaces_search_failures(), test_remote_find_endpoint_enforces_the_max_files_ceiling(), test_remote_find_endpoint_needs_the_token(), test_remote_find_endpoint_rejects_empty_directory() (+3 more) -### Community 17 - "apply_physical_meta" -Cohesion: 0.06 -Nodes (38): 1. 🔴 No public "collection from in-memory cells", 21. 🟠 No selective summary rebuild after meta edits, Constraints, Prior art, Approach, Constraints, Files to touch, Goal (+30 more) +### Community 17 - "cellpy_adapter.py" +Cohesion: 0.03 +Nodes (90): Phase 1 (this PR), Test strategy, Constraints, Files to touch, Prior art, Issue #28 status — Export cells from Manage cells, Remaining work, What's done (+82 more) -### Community 18 - "ir" +### Community 18 - "m" Cohesion: 0.06 -Nodes (17): ar(), Br(), gr(), hr(), ir(), jr(), kr(), mr() (+9 more) +Nodes (33): a(), c(), l(), f(), u(), o(), r(), s() (+25 more) ### Community 19 - "issue-flow — issue comments triage" Cohesion: 0.14 Nodes (12): Constraints, Instructions, issue-flow — issue capture (`/iflow-capture`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), Constraints, Edge cases, Inputs (+4 more) ### Community 20 - ".add" -Cohesion: 0.07 -Nodes (6): constructor(), _createButton(), _createCanvas(), Li(), pi(), h() +Cohesion: 0.06 +Nodes (12): completeTask(), constructor(), _createCanvas(), finish(), isMoving(), Li(), mark(), pi() (+4 more) ### Community 22 - "wt" Cohesion: 0.10 -Nodes (6): isParsed(), removeSource(), setMethods(), stream(), wt(), u() +Nodes (6): au(), isParsed(), setMethods(), stream(), wt(), u() -### Community 23 - "get_settings" +### Community 23 - "Library" Cohesion: 0.03 -Nodes (40): create_app(), require_token(), get_settings(), Settings, Library, client(), served_client(), test_job_timings_reported() (+32 more) +Nodes (31): 1. 🔴 No public "collection from in-memory cells", Settings, file_stat(), Library, _counting_save_cell(), _make_project_dir(), test_api_save_and_open(), test_broken_project_config_does_not_block_open() (+23 more) + +### Community 24 - "oa" +Cohesion: 0.08 +Nodes (3): Bu(), nu(), oa() + +### Community 25 - "eu" +Cohesion: 0.06 +Nodes (10): bl(), cu(), dh(), eu(), Ku(), lu(), ou(), qc() (+2 more) ### Community 26 - ".push" -Cohesion: 0.05 -Nodes (34): at(), K(), E(), Et(), Dt(), gt(), it(), jt() (+26 more) +Cohesion: 0.07 +Nodes (17): a(), b(), getFeatureState(), gt(), e(), r(), e(), T() (+9 more) ### Community 27 - "issue-flow — issue plan (`/iflow-plan`)" Cohesion: 0.15 Nodes (11): Activation, Boundaries, Grill me — relentless planning interview, How to grill, When to use, Constraints, Instructions, issue-flow — issue plan (`/iflow-plan`) (+3 more) -### Community 28 - "core/__init__.py" -Cohesion: 0.09 +### Community 28 - "library.py" +Cohesion: 0.08 Nodes (12): clear_uploads(), list_uploads(), upload(), clear(), max_upload_bytes(), safe_name(), save(), Saved (+4 more) ### Community 30 - "routers/export.py" -Cohesion: 0.18 -Nodes (13): _check_data_fmt(), _check_figure_fmt(), _cycles_records(), export_cells(), export_compare(), export_cycles(), export_dva(), export_ica() (+5 more) +Cohesion: 0.24 +Nodes (12): _check_data_fmt(), _check_figure_fmt(), _cycles_records(), export_cells(), export_compare(), export_cycles(), export_dva(), export_ica() (+4 more) ### Community 31 - "issue-flow — issue close (`/iflow-close`)" Cohesion: 0.15 Nodes (12): Branch switch tokens (command input), Changelog update tokens (command input), Constraints, Draft PR token (command input), Hands-off token (command input), Instructions, issue-flow — issue close (`/iflow-close`), MODEL & EXECUTION DIRECTIVE (+4 more) -### Community 32 - "Cursor issue workflow (Agent Skills)" -Cohesion: 0.08 -Nodes (23): 0. `/iflow` — smart dispatcher (quick start), 0a. `/iflow-pick` — choose the next issue (front door), 10. `/iflow-issue` — create a normal (non-epic) issue, 10a. `/iflow-split` — linked sub-issues for an over-large issue, 11. `/iflow-status` — status overview of all issues (read-only), 12. `/iflow-review` — review open issues and apply labels, 13. `/iflow-epic` — plan a large change as staged issues, 17. `/iflow-archive` — condense the solved-issues archive (destructive, gated) (+15 more) +### Community 32 - "gh" +Cohesion: 0.06 +Nodes (41): Fallback (workflow runs), gh-ci — wait on GitHub CI with `gh`, Primary (PR-attached checks), Semantics, Where this fits, Constraints, Input, Instructions (+33 more) -### Community 33 - "load_raw" -Cohesion: 0.07 -Nodes (25): 14. 🟠 `.h5` auto-picks cellpy format over raw instrument loaders, Files to touch, Phase 1 (this PR), Phase 2 (follow-up issue), Test strategy, Issue #160 — Status, Remaining work, What's done (+17 more) +### Community 33 - "Plan — Issue #41" +Cohesion: 0.40 +Nodes (4): Files to touch, Goal, Plan — Issue #41, Test strategy ### Community 35 - "cellpy_config.py" -Cohesion: 0.10 -Nodes (19): Configuration (`cellpy.config`, new in 2.1.2), Resolved in 2.1.2a3, activate_project_config(), active_project_config(), _config_dump(), _deactivate_locked(), deactivate_project_config(), diagnostics() (+11 more) +Cohesion: 0.12 +Nodes (16): activate_project_config(), active_project_config(), _config_dump(), _deactivate_locked(), deactivate_project_config(), diagnostics(), _discovery(), _entry() (+8 more) ### Community 36 - "test_paths.py" Cohesion: 0.06 @@ -454,13 +464,13 @@ Nodes (7): local(), served(), test_another_volume_is_refused_without_touching_th Cohesion: 0.15 Nodes (10): All yolo issues + merge conflicts, Constraints, Input — queue spec, Instructions, issue-flow — issue cycle (`/iflow-cycle`), MODEL & EXECUTION DIRECTIVE, Parallel dispatch (experimental, opt-in), Resolve project root (multi-root workspaces) (+2 more) -### Community 39 - "_apply_y_ranges" -Cohesion: 0.08 -Nodes (21): Approach, Files to touch, Goal, Plan — #186 y ranges ignored with Group avg + Spread, Root cause (reproduced with two demo cells in one group), Test strategy, Spec, Approach (+13 more) +### Community 38 - "_add_spread_hover" +Cohesion: 0.07 +Nodes (21): 1. Spec — `core/models.py`, 5. UI — `web/templates/index.html`, `web/static/js/app.js`, `app.css`, 6. Docs, Approach, Constraints, Goal, Open questions, Plan — Issue #169: Compare selected cells (+13 more) -### Community 40 - "Dt" -Cohesion: 0.06 -Nodes (3): Dt(), r(), th() +### Community 39 - "_apply_y_ranges" +Cohesion: 0.07 +Nodes (27): Approach, Files to touch, Goal, Plan — #186 y ranges ignored with Group avg + Spread, Root cause (reproduced with two demo cells in one group), Test strategy, Acceptance criteria, Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet (+19 more) ### Community 41 - "Plan — Issue #168: Create installer using CI" Cohesion: 0.14 @@ -475,36 +485,40 @@ Cohesion: 0.18 Nodes (10): A. No version bump — append to `[Unreleased]`, B. Version bump happened — promote `[Unreleased]` to a new release section, Conflict resolution — keep both bullet sets, Constraints, Inputs from `/iflow-close`, issue-flow — history update, MODEL & EXECUTION DIRECTIVE, Operation modes (+2 more) ### Community 44 - "Job" -Cohesion: 0.09 -Nodes (6): Stack / runtime, _DaemonPool, Job, _job_result_errors(), _job_result_summary(), JobManager +Cohesion: 0.11 +Nodes (5): Stack / runtime, Job, _job_result_errors(), _job_result_summary(), JobManager -### Community 46 - "resize" -Cohesion: 0.03 -Nodes (18): aa(), ca(), ea(), Ga(), ia(), ka, la(), ma (+10 more) +### Community 45 - "resize" +Cohesion: 0.12 +Nodes (4): ka, resize(), setPixelRatio(), ya + +### Community 46 - "ca" +Cohesion: 0.06 +Nodes (8): ca(), Ga(), ja, ma, pa(), va, Wa(), Za() ### Community 47 - "cellpy pain-points & wishlist (from building cellpy-simple-gui)" Cohesion: 0.06 -Nodes (31): 10. 🟢 No per-instrument metadata schema, 11. 🟢 Collected figures aren't app-friendly by default, 12. 🟢 Per-panel y-limits on collected summary facets, 12b. 🟠 `spread_plot` ignores `share_y` / `match_axes`, 13. 🟠 No app-friendly static figure export on the collect path, 15. 🟢 Cycles collector facet strips still use raw `cycle_num=` / `cell=`, 17. 🟢 Cycles plotter ignores collect `mode` for `x_unit`, 18. 🟢 Summary default y-labels omit units (CE / C-rate unit hooks) (+23 more) +Nodes (35): 10. 🟢 No per-instrument metadata schema, 11. 🟢 Collected figures aren't app-friendly by default, 12. 🟢 Per-panel y-limits on collected summary facets, 12b. 🟠 `spread_plot` ignores `share_y` / `match_axes`, 13. 🟠 No app-friendly static figure export on the collect path, 14. 🟠 `.h5` auto-picks cellpy format over raw instrument loaders, 15. 🟢 Cycles collector facet strips still use raw `cycle_num=` / `cell=`, 16. 🟢 ICA plotter direction gaps (line plots + `both`) (+27 more) -### Community 48 - "pathlib" -Cohesion: 0.04 -Nodes (38): Approach, Files to touch, Goal, Plan: Issue #12 — add logging, Test strategy, Done, Status: Issue #12 — add logging, Prior art (+30 more) +### Community 48 - "get_settings" +Cohesion: 0.03 +Nodes (55): Approach, Files to touch, Goal, Plan: Issue #12 — add logging, Test strategy, Done, Status: Issue #12 — add logging, Approach (+47 more) -### Community 49 - ".constructor" -Cohesion: 0.14 -Nodes (4): Vi(), getCanvas(), setMaxPitch(), setMinPitch() +### Community 49 - "hi" +Cohesion: 0.11 +Nodes (6): Vi(), hi(), r(), setMaxPitch(), setMinPitch(), c() ### Community 50 - "Instructions" Cohesion: 0.20 Nodes (9): Constraints, Input, Instructions, issue-flow — pick next issue (`/iflow-pick`), MODEL & EXECUTION DIRECTIVE, Phase 1 — choose the issue, Phase 2 — create the branch, Phase 3 — hand off (+1 more) ### Community 51 - ".reset" -Cohesion: 0.05 -Nodes (4): gn(), vi(), xn(), s() +Cohesion: 0.07 +Nodes (3): vi(), xn(), s() ### Community 52 - "plots.py" Cohesion: 0.06 -Nodes (42): 25. 🟠 `dva_plot(direction="both")` drew both half-cycles identically, 26. 🟠 No `collect_dva`, 27. 🟠 `raw_plot` has no way to limit points *(fixed in 2.1.2)*, 28. 🔴 Seven registered families cannot be collected at all *(fixed in 2.1.2)*, 30. 🟠 `spread_plot` traces carry no hover at all *(open)*, Round 4 — DVA and raw data, 3. Plotting a collection, Asked-for columns are not drawn columns (+34 more) +Nodes (42): 25. 🟠 `dva_plot(direction="both")` drew both half-cycles identically, 26. 🟠 No `collect_dva`, 27. 🟠 `raw_plot` has no way to limit points *(fixed in 2.1.2)*, 28. 🔴 Seven registered families cannot be collected at all *(fixed in 2.1.2)*, 29. 🟠 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*, 30. 🟠 `spread_plot` traces carry no hover at all *(open)*, Round 4 — DVA and raw data, 3. Plotting a collection (+34 more) ### Community 53 - "issue-flow — create a normal issue (`/iflow-issue`)" Cohesion: 0.22 @@ -514,73 +528,69 @@ Nodes (8): Constraints, Input, Instructions, issue-flow — create a normal issu Cohesion: 0.12 Nodes (15): Bump levels (both strategies), Choosing the level, Constraints, issue-flow — version bump, MODEL & EXECUTION DIRECTIVE, Resolve the release strategy first, Strategy: git-tag derived, Strategy: static version (uv) (+7 more) -### Community 56 - "test_journal.py" -Cohesion: 0.25 -Nodes (3): _build_journal(), test_load_journal_cells(), test_load_journal_missing_files_returns_empty() +### Community 56 - "ea" +Cohesion: 0.08 +Nodes (14): The Collection, Approach, Constraints, Files to touch, Goal, Issue #55 — Plan: cycles collector (per cell / per cycle), Open questions, Test strategy (+6 more) ### Community 57 - "I" -Cohesion: 0.09 -Nodes (10): E(), a(), l(), I(), r(), s(), u(), kt() (+2 more) +Cohesion: 0.04 +Nodes (21): u(), ct(), E(), a(), i(), I(), a(), r() (+13 more) ### Community 58 - ".renderLayer" -Cohesion: 0.20 -Nodes (3): bn(), _setupPainter(), Tn() +Cohesion: 0.09 +Nodes (5): getPaintProperty(), on(), Tn(), vr(), yr() -### Community 59 - "The tools" -Cohesion: 0.13 -Nodes (11): 3. 🟠 Silent all-or-nothing group-averaging when any group is a singleton, The tools, describe_plot_families(), list_cells(), list_instruments(), list_templates(), load_cell(), preview_collection() (+3 more) +### Community 59 - "collect" +Cohesion: 0.08 +Nodes (27): cellpy MCP server (prototype), Four things it does on purpose, Limits worth knowing before you rely on it, Run it, The tools, _cell(), collect(), _collection() (+19 more) ### Community 60 - ".parse" -Cohesion: 0.12 -Nodes (6): dt(), feature(), r(), ct(), ht(), ut() +Cohesion: 0.16 +Nodes (6): dt(), r(), ct(), ht(), ut(), se() -### Community 61 - "loaded_library" -Cohesion: 0.50 +### Community 61 - "conftest.py" +Cohesion: 0.32 Nodes (4): Test strategy, Test strategy, example_cell(), loaded_library() -### Community 62 - "Original issue text" -Cohesion: 0.29 -Nodes (6): Acceptance criteria, Comments (curated summary), Issue #62: Add checkbox for group vs individual Plotly legend muting on summary plots, Original issue text, Out of scope, Problem / context +### Community 62 - "Plan — Issue #62: Group vs individual Plotly legend muting" +Cohesion: 0.11 +Nodes (13): Approach, Files to touch, Goal, Open questions, Plan — Issue #62: Group vs individual Plotly legend muting, Test strategy, Group average + static figure export, Group average with mixed group sizes (+5 more) ### Community 63 - "ti" -Cohesion: 0.10 -Nodes (6): ri(), a(), ti(), a(), i(), o() +Cohesion: 0.17 +Nodes (5): mr(), ti(), a(), i(), o() -### Community 64 - ".max_files" -Cohesion: 0.09 -Nodes (18): Approach, Constraints, Explicitly deferred (later than phase 2), Goal, Issue #160 — Plan: OtherPath remote loading, Open questions, Ordering, Phase 1 — MVP (this issue after Accept) (+10 more) +### Community 64 - "test_agent_docs.py" +Cohesion: 0.12 +Nodes (6): generator(), test_every_path_the_index_points_at_exists(), test_llms_full_actually_contains_the_documents(), test_the_index_lists_every_guide(), test_the_skill_reference_is_bundled(), test_the_skill_states_the_traps_that_produce_plausible_output() ### Community 65 - "core/projects.py" Cohesion: 0.06 Nodes (38): Acceptance criteria, Issue #75: Refresh project list and open portable projects from the import path, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+30 more) -### Community 66 - ".evaluate" -Cohesion: 0.12 -Nodes (4): Fl(), no(), Ra(), yc() - -### Community 67 - "system.py" -Cohesion: 0.07 -Nodes (23): Approach, Constraints, Files to touch, Goal, Issue #4 plan, Open questions, Prior art, Test strategy (+15 more) +### Community 67 - "pick" +Cohesion: 0.10 +Nodes (15): Approach, Constraints, Files to touch, Goal, Issue #4 plan, Open questions, Prior art, Test strategy (+7 more) -### Community 68 - "s" -Cohesion: 0.05 -Nodes (52): e(), c(), r(), ce(), ct(), e(), s(), fe() (+44 more) +### Community 68 - "g" +Cohesion: 0.08 +Nodes (22): ae(), ce(), fe(), i(), n(), ie(), r(), kr() (+14 more) ### Community 69 - "IcaPlotSpec" -Cohesion: 0.04 -Nodes (45): Approach, Constraints, Files to touch, Goal, Grill decisions (locked), Issue #56 — Plan: single-cell dQ/dV in Cell explorer, Open questions, Prior art (+37 more) +Cohesion: 0.07 +Nodes (32): Approach, Constraints, Files to touch, Goal, Grill decisions (locked), Issue #56 — Plan: single-cell dQ/dV in Cell explorer, Open questions, Prior art (+24 more) ### Community 70 - "Issue #73: Job progress pane: Cancel/Dismiss overlap long status text" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #73: Job progress pane: Cancel/Dismiss overlap long status text, Original issue text, Out of scope, Problem / context, Spec -### Community 71 - "Packaging" -Cohesion: 0.18 -Nodes (11): Not solvable in code, Numbers, Numbers, Numbers, Packaging, Server-side figure export is not in the image, Two silent failures the first build shipped with, What the container established (#121) (+3 more) +### Community 71 - "app_main_module" +Cohesion: 0.19 +Nodes (9): Test strategy, app_main_module(), _clear_overrides(), _fake_cellpy_config(), reload(), test_absolute_cellpy_dirs_are_created_but_not_overridden(), test_relative_cellpy_dirs_are_anchored_at_home_not_cwd(), test_remote_paths_are_never_touched() (+1 more) ### Community 72 - "de" -Cohesion: 0.05 -Nodes (7): de(), getGlyphs(), _getMapId(), getSource(), isSourceLoaded(), loaded(), removeFeatureState() +Cohesion: 0.06 +Nodes (11): addSource(), de(), getLayer(), getLayoutProperty(), getSource(), hasImage(), isSourceLoaded(), loaded() (+3 more) ### Community 73 - "Issue #58 plan: plot side pane + top bar blend" Cohesion: 0.22 @@ -591,64 +601,64 @@ Cohesion: 0.22 Nodes (8): Approach, Constraints, Files to touch, Goal, Issue #5 plan, Open questions, Prior art, Test strategy ### Community 75 - "test_packaging.py" -Cohesion: 0.05 -Nodes (29): Test strategy, app_main_module(), _clear_overrides(), _fake_cellpy_config(), reload(), _load_entry(), _load_zip_installer(), _smoke_test_module() (+21 more) +Cohesion: 0.08 +Nodes (13): _load_entry(), _load_zip_installer(), _smoke_test_module(), test_crash_goes_to_stderr_when_there_is_a_console(), test_crash_report_is_written_and_the_dialog_names_it(), test_crash_reporter_agrees_with_the_app_on_where_logs_go(), test_installer_removes_its_own_directory_but_never_user_data(), test_installer_version_resource_stays_numeric() (+5 more) ### Community 76 - "ah" -Cohesion: 0.16 -Nodes (4): ah, nh, pop(), push() +Cohesion: 0.09 +Nodes (7): aa(), ah, feature(), ih, nh, pop(), push() -### Community 78 - "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)" -Cohesion: 0.12 -Nodes (18): Approach, Goal, Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import), Manual smoke checklist (G3/G4; server mode, `CSG_TOKEN=devtoken`), New tests (summary), Open questions, Scope check, Stage 1 — Sidebar restructure (template + CSS) (+10 more) +### Community 77 - "da" +Cohesion: 0.09 +Nodes (4): da(), ha(), la(), qa -### Community 79 - "instrument_meta_schema" -Cohesion: 0.11 -Nodes (16): Approach, Constraints, Files to touch, Goal, Issue #52 — Plan: bump cellpy post4 + delegate app glue, Open questions, Phase A — bump + smoke, Phase C — implement “delegate now” (+8 more) +### Community 78 - "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)" +Cohesion: 0.20 +Nodes (10): Approach, Goal, Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import), Open questions, Scope check, Stage 1 — Sidebar restructure (template + CSS), Stage 2 — "Add cells" modal with source switcher, Stage 4 — Adaptive source zone (drop / browse / paste) (+2 more) ### Community 80 - "_render" -Cohesion: 0.22 -Nodes (7): finish(), g(), isMoving(), isRotating(), mark(), redraw(), _render() +Cohesion: 0.40 +Nodes (4): g(), isRotating(), redraw(), _render() ### Community 81 - "issue-flow — epic planning (`/iflow-epic`)" Cohesion: 0.25 Nodes (7): Action: publish, Constraints, Input, Instructions, issue-flow — epic planning (`/iflow-epic`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) -### Community 82 - "gh" -Cohesion: 0.09 -Nodes (26): Constraints, Input, Instructions, issue-flow — issue cleanup (`/iflow-cleanup`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), Constraints, Input (+18 more) +### Community 82 - "issue-flow — review and label issues (`/iflow-review`)" +Cohesion: 0.25 +Nodes (7): Constraints, Input, Instructions, issue-flow — review and label issues (`/iflow-review`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), Review kinds (extendable) ### Community 83 - "expand_paths" -Cohesion: 0.07 -Nodes (26): Prior art, Stage 3 — Staged file list + glob preview endpoint, Alternatives considered, Context, Decision, Links, OtherPath remote loading (#160), Local vs served: what the app may touch (+18 more) +Cohesion: 0.03 +Nodes (61): Prior art, Stage 3 — Staged file list + glob preview endpoint, Approach, Constraints, Explicitly deferred (later than phase 2), Files to touch, Goal, Issue #160 — Plan: OtherPath remote loading (+53 more) ### Community 84 - "cellpy API surface" Cohesion: 0.12 Nodes (15): Attributes worth knowing, cellpy API surface, Cells into a Collection, Collect options, Figures to bytes, Loading, One cell, Single-cell plots (+7 more) ### Community 85 - "ii" -Cohesion: 0.06 -Nodes (11): ci(), i(), n(), hi(), r(), ii(), o(), ji() (+3 more) +Cohesion: 0.11 +Nodes (6): Ai(), ci(), i(), n(), ii(), o() ### Community 86 - "issue-flow — issue yolo (`/iflow-yolo`)" Cohesion: 0.25 Nodes (7): Chain, Constraints, issue-flow — issue yolo (`/iflow-yolo`), MODEL & EXECUTION DIRECTIVE, Post-run, Preflight (abort on any failure), Resolve project root (multi-root workspaces) -### Community 87 - "find_remote_files" -Cohesion: 0.12 -Nodes (12): Approach, Files to touch, Goal, Issue #162 — Plan: remote file find via `cellpy.filefinder` (OtherPath phase 2), Open questions, Scope check, explain_load_error(), _find_glob() (+4 more) +### Community 87 - "test_llms_full_txt_is_current" +Cohesion: 0.15 +Nodes (12): Manual smoke checklist (G3/G4; server mode, `CSG_TOKEN=devtoken`), New tests (summary), Test gates — when to run what, Test strategy, Issue #136 — Status, Notes / deviations, Remaining work, What's done (+4 more) ### Community 88 - "Plan — Issue #3: Manage cells in an expanded editor" -Cohesion: 0.18 -Nodes (10): Approach, Backend, Chrome decision: **centered modal** (not drawer / not resizable sidebar), Files to touch, Goal, Niceties in scope, Open questions, Plan — Issue #3: Manage cells in an expanded editor (+2 more) +Cohesion: 0.17 +Nodes (11): Approach, Backend, Chrome decision: **centered modal** (not drawer / not resizable sidebar), Constraints, Files to touch, Goal, Niceties in scope, Open questions (+3 more) -### Community 90 - "test_uploads.py" -Cohesion: 0.12 -Nodes (6): client(), served(), test_capabilities_advertise_the_cap(), test_safe_name_reduces_a_path_to_a_filename(), test_safe_name_refuses_what_is_left_of_nothing(), test_upload_needs_the_token() +### Community 90 - "core/export.py" +Cohesion: 0.06 +Nodes (11): dva_figure_export(), FigureExportError, _safe_stem(), _unique_stems(), DvaPlotSpec, client(), served(), test_capabilities_advertise_the_cap() (+3 more) ### Community 91 - "Original issue text" -Cohesion: 0.13 -Nodes (11): Acceptance criteria, Issue #136: Redesign the loading surface: one "Add cells" flow, staged file list, contextual help, Original issue text, Out of scope, Problem / context, Spec, Issue #136 — Status, Notes / deviations (+3 more) +Cohesion: 0.29 +Nodes (5): Issue #136: Redesign the loading surface: one "Add cells" flow, staged file list, contextual help, Original issue text, Out of scope, Problem / context, Spec ### Community 92 - "Issue #60 status" Cohesion: 0.50 @@ -659,20 +669,20 @@ Cohesion: 0.29 Nodes (6): Auto-Clarity, Be token greedy - as a caveman, Boundaries, Intensity, Persistence, Rules ### Community 94 - "Si" -Cohesion: 0.08 -Nodes (6): Hi(), Ai(), gi(), isZooming(), Si(), yi() +Cohesion: 0.07 +Nodes (6): Hi(), getCanvas(), gi(), isZooming(), Si(), yi() ### Community 95 - "alpine.min.js" Cohesion: 0.07 -Nodes (22): Ae(), bi(), effect(), Gt(), ht(), _i(), Ji(), Jt() (+14 more) +Nodes (21): Ae(), bi(), effect(), Gt(), ht(), _i(), Ji(), Jt() (+13 more) ### Community 96 - ".status" -Cohesion: 0.11 -Nodes (14): Constraints, Input, Instructions, issue-flow — advanced auto (`/iflow-auto`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), 15. `/iflow-auto` — unattended large-change orchestration, Alternatives considered (+6 more) +Cohesion: 0.10 +Nodes (16): Command lifecycle, Constraints, Input, Instructions, issue-flow — advanced auto (`/iflow-auto`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), Constraints (+8 more) ### Community 97 - "An MCP server for cellpy — design, and what a prototype found" -Cohesion: 0.12 -Nodes (16): new_project(), An MCP server for cellpy — design, and what a prototype found, Finding 4 — `cellpy new` cannot currently be automated, Hard part 1 — state, Prompts — the part aimed at people who are not asking for tools, Proposed: `cellpy mcp`, not `cellpy server mcp`, Proposed upstream, Proposed upstream — round two (+8 more) +Cohesion: 0.10 +Nodes (20): An MCP server for cellpy — design, and what a prototype found, And a boundary, Finding 3 — the documentation is usually there, one hop away, Hard part 1 — state, Hard part 2 — file access, Prompts — the part aimed at people who are not asking for tools, Proposed: `cellpy mcp`, not `cellpy server mcp`, Proposed upstream (+12 more) ### Community 98 - "issue-flow — issue build (`/iflow-build`)" Cohesion: 0.29 @@ -683,59 +693,51 @@ Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #67: Cell explorer dQ/dV: Charge/Discharge direction has no effect (and joins half-cycles), Original issue text, Out of scope, Problem / context, Spec ### Community 100 - "fo" -Cohesion: 0.11 -Nodes (5): Do, fo(), Io(), jo(), Oo() +Cohesion: 0.08 +Nodes (6): Do, fo(), Io(), jo(), Oo(), Po() ### Community 101 - "test_gui_playwright.py" -Cohesion: 0.16 -Nodes (9): Files to touch, browser_page(), _bundled_cellpy_file(), _chromium_available(), live_server(), test_add_cells_modal_stages_and_loads(), test_data_panel_collapses_after_load(), test_load_demo_cells_and_summary_plot() (+1 more) +Cohesion: 0.08 +Nodes (18): Remaining work, Status — #184 update plots when the Manage cells modal closes, What's done, Files to touch, app(), loadRecent(), PLOTLY_CONFIG, RECENT_KINDS (+10 more) -### Community 102 - "Plan — Issue #38: cellpy label builders for axis titles" -Cohesion: 0.12 -Nodes (13): Approach, Constraints, Goal, Open questions, Plan — Issue #38: cellpy label builders for axis titles, Prior art, Test strategy, Constraints (+5 more) +### Community 102 - "_tidy_facet_annotations" +Cohesion: 0.08 +Nodes (20): Acceptance criteria, Issue #38: Use cellpy label builders for summary/cycle axis titles, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+12 more) ### Community 103 - "test_core.py" Cohesion: 0.02 -Nodes (90): Issue #27 status — Iterative fixes: group average checkbox, Iterative fixes log, dev_mode(), _hover_variable(), _ica_y_values(), _numeric_y_values(), _rate_library(), _spread_library() (+82 more) - -### Community 104 - "cellpy_adapter.py" -Cohesion: 0.07 -Nodes (19): 5. 🟠 Instrument discovery logs a WARNING per non-loader module, Approach, Files to touch, Issue #28 status — Export cells from Manage cells, Remaining work, What's done, list_instruments(), arbin_res_reader_available() (+11 more) - -### Community 105 - "CyclesPlotSpec" -Cohesion: 0.04 -Nodes (37): 29. 🟠 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*, The Collection, Approach, Constraints, Files to touch, Goal, Issue #55 — Plan: cycles collector (per cell / per cycle), Open questions (+29 more) +Nodes (81): dev_mode(), _hover_variable(), _ica_y_values(), _numeric_y_values(), _rate_library(), _summary_facet_titles_top_to_bottom(), test_build_reports_without_a_frame_never_calls_cycles_unreadable(), test_cells_export_cellpy_and_xlsx() (+73 more) -### Community 107 - "CellRecord" -Cohesion: 0.04 -Nodes (68): 16. 🟢 ICA plotter direction gaps (line plots + `both`), 2. Core — `core/collect.py`, 3. Core — `core/plotting.py`, 4. API — `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`, Files to touch, Test strategy, 2026-10-02 — built, 1. Core — a small, pure cycle report (`core/cycle_report.py`, new) (+60 more) +### Community 105 - "RawPlotSpec" +Cohesion: 0.15 +Nodes (4): _clean_axis_range(), ComparePick, RawPlotSpec, test_raw_figure_is_downsampled_for_transport() -### Community 108 - "ro" -Cohesion: 0.13 -Nodes (3): ba, mu(), ro +### Community 107 - "plotting.py" +Cohesion: 0.06 +Nodes (51): 4. API — `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`, Files to touch, Test strategy, 2026-10-02 — built, 1. Core — a small, pure cycle report (`core/cycle_report.py`, new), 2. `collect.py`, 3. `plotting.py`, 5. Docs (+43 more) ### Community 109 - "Issue #36: Chart card stays white under dark figure theme; default figure theme to Match app" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #36: Chart card stays white under dark figure theme; default figure theme to Match app, Original issue text, Out of scope, Problem / context, Spec -### Community 110 - "_default_visible_hints" -Cohesion: 0.20 -Nodes (6): _add_cells_modal_html(), _default_visible_hints(), __init__(), _template_html(), test_add_cells_modal_has_one_primary_action(), test_default_visible_hint_budget() - ### Community 111 - "Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet, Original issue text, Out of scope, Problem / context, Spec +### Community 112 - ".create" +Cohesion: 0.16 +Nodes (3): _createButton(), qi(), h() + ### Community 113 - "Issue #3: Make the Cells list workable for many cells (modal or expanded editor)" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #3: Make the Cells list workable for many cells (modal or expanded editor), Original issue text, Out of scope, Problem / context, Spec ### Community 114 - "test_mcp_prototype.py" -Cohesion: 0.13 -Nodes (6): prototype(), test_a_default_direction_plot_says_it_drew_less(), steps(), test_the_tool_surface_is_small_and_named_as_documented(), main(), test_the_whole_arc_over_the_protocol() +Cohesion: 0.20 +Nodes (3): prototype(), test_describe_api_will_not_import_outside_cellpy(), steps() ### Community 115 - "gen_llms_txt.py" -Cohesion: 0.31 +Cohesion: 0.36 Nodes (5): describe_guide(), guide_files(), main(), render_full(), render_index() ### Community 116 - "Issue #4: Replace deprecated pywebview OPEN_DIALOG with FileDialog.OPEN" @@ -750,13 +752,13 @@ Nodes (10): Arbin `.res` needs a Microsoft ODBC driver, Building it yourself, Do Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #58: Add a plot side pane and match the top bar to the app background, Original issue text, Out of scope, Problem / context, Spec -### Community 119 - "The cold-context agent test" -Cohesion: 0.29 -Nodes (6): If you run it again, Protocol, Results, The cold-context agent test, What the test found, test_the_upstream_bugs_the_guides_describe_are_still_bugs() +### Community 119 - "Mn" +Cohesion: 0.18 +Nodes (3): An(), Mn(), setMaxBounds() -### Community 120 - "dh" -Cohesion: 0.08 -Nodes (14): ch(), dh(), fh(), hh(), jl(), mh(), ph(), qh() (+6 more) +### Community 120 - "mh" +Cohesion: 0.24 +Nodes (8): fh(), hh(), mh(), ph(), qh(), uh, Vh(), yh() ### Community 121 - "Issue #5: Add cellpy logo and app icon" Cohesion: 0.29 @@ -770,9 +772,9 @@ Nodes (3): Issue #73 status, Remaining work, What's done Cohesion: 0.29 Nodes (5): CI recipe (copy-paste), Contract, Essential tests (pytest), Non-goals (v1), Test registry -### Community 124 - "cellpy API surface" -Cohesion: 0.22 -Nodes (9): Attributes worth knowing, cellpy API surface, Cells into a Collection, Collect options, Figures to bytes, Loading, One cell, Single-cell plots (+1 more) +### Community 124 - "nl" +Cohesion: 0.18 +Nodes (5): al(), il(), jl(), nl(), Ul() ### Community 125 - "issue-flow — archive solved issues (`/iflow-archive`)" Cohesion: 0.33 @@ -787,23 +789,27 @@ Cohesion: 0.33 Nodes (5): Constraints, Instructions, issue-flow — issue pause (`/iflow-pause`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) ### Community 128 - "test_jobs.py" -Cohesion: 0.12 +Cohesion: 0.11 Nodes (6): test_jobs_do_not_depend_on_private_stdlib_internals(), test_manager_reports_a_failing_job_rather_than_hanging(), test_one_failing_job_does_not_kill_the_worker(), boom(), test_pool_workers_are_daemons(), test_shutdown_does_not_wait_on_a_stuck_job() ### Community 129 - "issue-flow — iflow smart dispatcher (`/iflow`)" Cohesion: 0.33 Nodes (5): Constraints, Instructions, issue-flow — iflow smart dispatcher (`/iflow`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) +### Community 130 - "wn" +Cohesion: 0.09 +Nodes (3): kn(), ln(), wn() + ### Community 131 - "Deploying cellpy simple GUI as a server" -Cohesion: 0.12 -Nodes (16): Behind a reverse proxy, Build it yourself, cellpy's own directories are separate from the app's, Container, Deploying cellpy simple GUI as a server, Environment reference, Getting files in, Or with compose (+8 more) +Cohesion: 0.08 +Nodes (21): Behind a reverse proxy, Build it yourself, cellpy's own directories are separate from the app's, Container, Deploying cellpy simple GUI as a server, Environment reference, Getting files in, Or with compose (+13 more) ### Community 134 - "Plan: Issue #13 — add workflows" Cohesion: 0.33 Nodes (5): Approach, Files to touch, Goal, Plan: Issue #13 — add workflows, Test strategy ### Community 135 - "Ei" -Cohesion: 0.07 +Cohesion: 0.08 Nodes (9): calculateCameraOptionsFromTo(), _cancelRenderFrame(), Ei(), i(), project(), _requestRenderFrame(), setMaxZoom(), setMinZoom() (+1 more) ### Community 137 - "Plan: Issue #14 — make saving and closing more obvious" @@ -830,9 +836,9 @@ Nodes (4): Build the Windows installer, Developer mode, Quick start (from a clon Cohesion: 0.33 Nodes (5): Approach, Files to touch, Goal, Plan — Issue #36, Test strategy -### Community 143 - "cellpy starter app" -Cohesion: 0.25 -Nodes (5): Adding a plot, cellpy starter app, Honest limitations, The four calls, What this is +### Community 143 - "_workflow" +Cohesion: 0.22 +Nodes (6): _tag_triggers(), test_continuous_build_proves_itself_on_prs_but_publishes_only_from_main(), test_continuous_tag_can_never_fire_a_release_workflow(), test_release_and_continuous_publish_the_installer_zip(), test_release_and_continuous_share_one_installer_build(), _workflow() ### Community 144 - "Plan — Issue #39" Cohesion: 0.33 @@ -846,6 +852,10 @@ Nodes (5): test_an_unrecognised_error_is_passed_through_unchanged(), test_availa Cohesion: 0.40 Nodes (4): Constraints, Instructions, issue-flow — graph rebuild (`/iflow-graphify`), MODEL & EXECUTION DIRECTIVE +### Community 148 - "bn" +Cohesion: 0.08 +Nodes (4): bn(), di(), qr(), Qu() + ### Community 150 - "Issue #27: Iterative fixes: group average checkbox" Cohesion: 0.40 Nodes (4): First reported bug, Interactive `/iflow-fix` session, Issue #27: Iterative fixes: group average checkbox, Original issue text @@ -854,9 +864,9 @@ Nodes (4): First reported bug, Interactive `/iflow-fix` session, Issue #27: Iter Cohesion: 0.40 Nodes (4): First reported bug, Interactive `/iflow-fix` session, Issue #31: Iterative fixes: export download location, Original issue text -### Community 153 - "cellpy MCP server (prototype)" -Cohesion: 0.20 -Nodes (8): cellpy MCP server (prototype), Four things it does on purpose, Limits worth knowing before you rely on it, Run it, The prompts, analyse_cell(), explain_call(), start_batch_project() +### Community 153 - "The prompts" +Cohesion: 0.32 +Nodes (4): The prompts, analyse_cell(), explain_call(), start_batch_project() ### Community 154 - "`00-tools/` — shared helper tools" Cohesion: 0.50 @@ -866,37 +876,33 @@ Nodes (3): `00-tools/` — shared helper tools, Tool index, When working an issu Cohesion: 0.50 Nodes (3): Cycle status, Queue, Skipped / blocked -### Community 157 - "mcp/server.py" -Cohesion: 0.16 -Nodes (5): _client_config_path(), _index(), _install(), search_api(), _summarise() - ### Community 158 - "Issue #15: update readme" Cohesion: 0.50 Nodes (3): Comments (curated summary), Issue #15: update readme, Original issue text ### Community 159 - "mt" -Cohesion: 0.15 -Nodes (14): cn(), ct(), fr(), get(), has(), ie(), It(), je() (+6 more) +Cohesion: 0.20 +Nodes (9): ct(), kn(), kr(), lt(), mt(), nr(), P(), tr() (+1 more) ### Community 160 - "oi" -Cohesion: 0.09 -Nodes (7): oi(), a(), i(), n(), r(), s(), setTerrain() +Cohesion: 0.07 +Nodes (10): bi(), ch(), oi(), a(), i(), n(), r(), s() (+2 more) ### Community 161 - "Development information" -Cohesion: 0.15 -Nodes (13): Branch hygiene, Chat invocation (no slash), CI via GitHub CLI, Designs and guides, Development information, Folder hygiene for `.issueflows/01-current-issues`, Knowledge graph (optional, via [graphify](https://iflow-graphify.net)), Multi-root workspaces (+5 more) +Cohesion: 0.10 +Nodes (20): Branch hygiene, Chat invocation (no slash), CI via GitHub CLI, Cursor Cloud specific instructions, Designs and guides, Development information, Folder hygiene for `.issueflows/01-current-issues`, If the project uses conda (+12 more) ### Community 162 - "gen_api_reference.py" -Cohesion: 0.23 -Nodes (7): describe(), display_name(), main(), normalise(), render(), resolve(), _version() +Cohesion: 0.13 +Nodes (13): If you run it again, Protocol, Results, The cold-context agent test, What the test found, test_the_upstream_bugs_the_guides_describe_are_still_bugs(), describe(), display_name() (+5 more) ### Community 163 - "Status — Issue #3: Manage cells expanded editor" Cohesion: 0.50 Nodes (3): Remaining work, Status — Issue #3: Manage cells expanded editor, What's done -### Community 164 - "describe_api" -Cohesion: 0.22 -Nodes (7): describe_api(), _follow_reference(), _resolve_dotted(), And a boundary, Finding 3 — the documentation is usually there, one hop away, The API family — and what it measured, Two smaller traps, both fixed and both tested +### Community 164 - "Issue #81 — Plan: consistent CE summary panel order" +Cohesion: 0.25 +Nodes (7): Approach, Files to touch, Goal, Issue #81 — Plan: consistent CE summary panel order, Open questions, Test strategy, test_summary_panels_for_capacity_ce() ### Community 165 - "Issue #47 — Status" Cohesion: 0.50 @@ -910,9 +916,9 @@ Nodes (4): _log_dir(), main(), _report_crash(), _show_dialog() Cohesion: 0.50 Nodes (3): Issue #50 — Status, Iterative fixes log, Remaining work -### Community 168 - "smoke_test.py" -Cohesion: 0.13 -Nodes (5): Client, LaunchedApp, main(), run_checks(), skip() +### Community 168 - "Client" +Cohesion: 0.18 +Nodes (6): Client, main(), run_checks(), skip(), test_the_tool_surface_is_small_and_named_as_documented(), main() ### Community 170 - "Issue #58 status" Cohesion: 0.50 @@ -923,8 +929,8 @@ Cohesion: 0.50 Nodes (3): Issue #5 status, Remaining work, What's done ### Community 172 - "6. Process state and threading" -Cohesion: 0.25 -Nodes (7): 6. Process state and threading, A worker pool that survives its workers, `override` is per thread; `reload` is not, Progress and cancellation, The short answer, Where to go next, Your own singletons are the real constraint +Cohesion: 0.14 +Nodes (8): 6. Process state and threading, A worker pool that survives its workers, `override` is per thread; `reload` is not, Progress and cancellation, The short answer, Where to go next, Your own singletons are the real constraint, _DaemonPool ### Community 173 - "Plan — Issue #73: Job progress Cancel/Dismiss overlap" Cohesion: 0.15 @@ -935,72 +941,76 @@ Cohesion: 0.50 Nodes (3): Desktop exit / terminal prompt, Journal load diagnostics & desktop exit, Journal / project load ### Community 187 - "ho" -Cohesion: 0.18 -Nodes (3): ho(), qo(), zo() +Cohesion: 0.09 +Nodes (6): ho(), mu(), pl, qo(), su(), zo() -### Community 188 - "essential" -Cohesion: 0.20 -Nodes (6): test_cellpy_config_diagnostics_endpoint(), test_examples(), test_healthz(), test_served_instance_refuses_paths_outside_its_data_dir(), test_served_instance_will_not_load_files_from_the_host(), test_token_required() +### Community 188 - "issue-flow — issue cleanup (`/iflow-cleanup`)" +Cohesion: 0.29 +Nodes (6): Constraints, Input, Instructions, issue-flow — issue cleanup (`/iflow-cleanup`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) -### Community 190 - "_without_webview" -Cohesion: 0.25 -Nodes (4): test_api_works_without_pywebview(), test_desktop_import_failure_names_the_extra(), test_native_dialogs_refuse_without_pywebview(), _without_webview() +### Community 190 - "Plan — #184 update plots when the Manage cells modal closes" +Cohesion: 0.29 +Nodes (6): Approach (front-end only, `app.js` + modal markup), Files to touch, Goal, Plan — #184 update plots when the Manage cells modal closes, Test strategy, What happens today -### Community 192 - "instruments" -Cohesion: 0.12 -Nodes (16): Configuration, 5. Configuration, Changing settings, Credentials, Never write the user's config file, The layers, The relative-path trap, Where to go next (+8 more) +### Community 192 - "cellpy API surface" +Cohesion: 0.07 +Nodes (29): Attributes worth knowing, cellpy API surface, Cells into a Collection, Collect options, Configuration, Figures to bytes, Loading, One cell (+21 more) ### Community 199 - "ur" -Cohesion: 0.06 -Nodes (9): cr(), dr(), fr(), ih, Je(), lr(), sr(), ur() (+1 more) +Cohesion: 0.05 +Nodes (11): cr(), dr(), fr(), Je(), lr(), sr(), ur(), o() (+3 more) -### Community 202 - "m" -Cohesion: 0.08 -Nodes (9): m(), c(), g(), l(), u(), w(), r(), i() (+1 more) +### Community 202 - "Issue #37: Spread bands too opaque for safe/muted color schemes" +Cohesion: 0.29 +Nodes (6): Acceptance criteria, Issue #37: Spread bands too opaque for safe/muted color schemes, Original issue text, Out of scope, Problem / context, Spec ### Community 203 - "m" -Cohesion: 0.22 -Nodes (11): A(), d(), E(), he(), m(), no(), Rt(), Sr() (+3 more) +Cohesion: 0.13 +Nodes (19): A(), cn(), d(), E(), has(), he(), ie(), Ir() (+11 more) -### Community 204 - "drive" -Cohesion: 0.11 -Nodes (22): drive(), main(), call(), test_availability_is_answered_rather_than_discovered_by_drawing(), steps(), test_describe_api_follows_the_reference_the_docstring_points_at(), steps(), test_describe_api_renders_a_method_the_way_you_would_call_it() (+14 more) +### Community 204 - "steps" +Cohesion: 0.23 +Nodes (9): main(), call(), test_availability_is_answered_rather_than_discovered_by_drawing(), steps(), test_new_project_refuses_before_it_writes_anything(), steps(), test_paths_outside_the_sandbox_are_refused(), steps() (+1 more) ### Community 205 - "README.md" -Cohesion: 0.18 -Nodes (10): Building your own cellpy app, Development, Features, Future plans, If you are a coding agent, Install, License, Some examples (+2 more) +Cohesion: 0.15 +Nodes (12): Building your own cellpy app, Development, Features, Future plans, If you are a coding agent, Install, License, Some examples (+4 more) ### Community 206 - "Kt" Cohesion: 0.38 -Nodes (7): jn(), Kt(), me(), Ot(), qn(), xe(), ze() +Nodes (7): It(), Kt(), oi(), Ot(), qn(), xe(), ze() ### Community 207 - "gr" Cohesion: 0.22 Nodes (14): br(), dr(), er(), Et(), gr(), mr(), pe(), S() (+6 more) ### Community 209 - "getImageData" -Cohesion: 0.11 -Nodes (15): addControl(), addImage(), _containerDimensions(), draw(), getCanvasContainer(), _getClampedPixelRatio(), getContainer(), getDefaultPosition() (+7 more) +Cohesion: 0.17 +Nodes (9): addControl(), addImage(), draw(), getCanvasContainer(), getContainer(), getDefaultPosition(), getImageCanvasContext(), getImageData() (+1 more) ### Community 210 - "ft" -Cohesion: 0.17 +Cohesion: 0.15 Nodes (4): ft(), off(), onRemove(), removeControl() -### Community 212 - "ps" -Cohesion: 0.18 -Nodes (4): As(), ks(), ps(), xu() +### Community 211 - "k" +Cohesion: 0.03 +Nodes (17): A(), Dt(), getImage(), j(), v(), k(), s(), loadImage() (+9 more) -### Community 213 - "Hl" -Cohesion: 0.25 -Nodes (3): Hl(), ql(), tc() +### Community 213 - "drive" +Cohesion: 0.29 +Nodes (4): drive(), test_no_tool_returns_a_frame(), steps(), test_the_whole_arc_over_the_protocol() + +### Community 214 - "Plan — Issue #37" +Cohesion: 0.33 +Nodes (5): Approach, Files to touch, Goal, Plan — Issue #37, Test strategy ### Community 215 - "Instructions" Cohesion: 0.20 Nodes (9): Constraints, Input, Instructions, issue-flow — split an over-large issue (`/iflow-split`), MODEL & EXECUTION DIRECTIVE, Phase 1 — draft children, Phase 2 — create and link, Phase 3 — optional handoff (+1 more) ### Community 216 - "starter/app.py" -Cohesion: 0.06 -Nodes (25): Cursor Cloud specific instructions, If the project uses conda, If the project uses uv (issue-flow's default), Issue-flow best practices, Issue tracking structure, Other toolchains (plain venv / pip / poetry), Running python, add_cells() (+17 more) +Cohesion: 0.08 +Nodes (17): add_cells(), clear_cells(), collection_for(), export(), export_csv(), figure(), figure_json(), index() (+9 more) ### Community 217 - "Continuous Windows installer from `main`" Cohesion: 0.40 @@ -1011,84 +1021,76 @@ Cohesion: 0.29 Nodes (8): en(), ki(), q(), qr(), tn(), U(), zi(), zr() ### Community 221 - "_restyle" -Cohesion: 0.03 -Nodes (73): Acceptance criteria, Issue #1: Fix Plotly summary legend when cell names are very long, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+65 more) +Cohesion: 0.04 +Nodes (52): Acceptance criteria, Issue #1: Fix Plotly summary legend when cell names are very long, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+44 more) ### Community 222 - "cellpy-simple-gui" Cohesion: 0.13 Nodes (12): Cross-repo guidance, Default for lifecycle commands, Members, Multi-root workspace — cellpyapp, Toolchain disambiguation, cellpy-simple-gui, Conventions, How to run / test (+4 more) -### Community 223 - ".fire" -Cohesion: 0.10 -Nodes (7): addSource(), getLayer(), getLayoutProperty(), getPaintProperty(), hasImage(), setLayoutProperty(), setPaintProperty() - ### Community 224 - "Plan — Issue #177: GUI color scheme and layout" Cohesion: 0.17 Nodes (11): A — Quiet lab (recommended), Approach, B — Plot-first, C — Top strip, Constraints, Files to touch, Goal, Open questions (+3 more) -### Community 225 - "collect" -Cohesion: 0.13 -Nodes (12): collect(), Issue #54 status, Remaining work, What's done, Acceptance criteria, Issue #72: Cycles tab: Mode change does not update x-axis capacity units, Original issue text, Out of scope (+4 more) +### Community 225 - "Issue #72: Cycles tab: Mode change does not update x-axis capacity units" +Cohesion: 0.29 +Nodes (6): Acceptance criteria, Issue #72: Cycles tab: Mode change does not update x-axis capacity units, Original issue text, Out of scope, Problem / context, Spec -### Community 226 - "load_journal_cells" -Cohesion: 0.17 -Nodes (7): Approach, Goal, Plan: Issue #19 — journal load error surfacing, Test strategy, Done, Status: Issue #19 — journal load errors, load_journal_cells() +### Community 226 - "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)" +Cohesion: 0.33 +Nodes (5): Acceptance criteria, Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute), Original issue text, Out of scope, Problem / context ### Community 228 - "issue-flow — harness init (`/iflow-init`)" Cohesion: 0.22 Nodes (8): Constraints, Instructions, issue-flow — harness init (`/iflow-init`), MODEL & EXECUTION DIRECTIVE, Package vs scaffold (read first), Parent-folder recipe, Resolve project root (multi-root workspaces), Start directory (before member resolve) ### Community 229 - "Releasing" -Cohesion: 0.17 -Nodes (9): Cutting a release, One-time: let PyPI trust this repository, One-time: make the container image public, Rehearsal log, Rehearse on TestPyPI, Releasing, The rolling `continuous` release, Things that will bite (+1 more) +Cohesion: 0.09 +Nodes (20): Cutting a release, One-time: let PyPI trust this repository, One-time: make the container image public, Rehearsal log, Rehearse on TestPyPI, Releasing, The rolling `continuous` release, Things that will bite (+12 more) ### Community 231 - "Guides: what belongs upstream in cellpy" Cohesion: 0.22 Nodes (8): Candidates, by strength, Guides: what belongs upstream in cellpy, Medium — general, but shaped by a decision an app has to make, New finding to file separately, Stays here — about building an app, not about cellpy, Strong — general cellpy knowledge, no app in it, Suggested shape of the proposal, Why not upstream first -### Community 232 - "test_index_click_and_show_targets_exist" -Cohesion: 0.33 -Nodes (3): _component_names(), _free_identifiers(), test_index_click_and_show_targets_exist() +### Community 234 - "Compare cells (#169)" +Cohesion: 0.40 +Nodes (4): Alternatives considered, Compare cells (#169), Context, Gotcha recorded ### Community 235 - "1. Getting cells into memory" Cohesion: 0.25 Nodes (8): 1. Getting cells into memory, Asking the user for the right metadata, Discovered is not the same as usable, Looking before you load, Many files at once, Opening a real file, Where to go next, Which instrument? -### Community 236 - ".cancel" -Cohesion: 0.22 -Nodes (8): Command lifecycle, Constraints, Input, Instructions, issue-flow — drive (`/iflow-drive`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), 16. `/iflow-drive` — compose epic → publish → auto-all - -### Community 237 - "test_index_alpine_state_is_defined" -Cohesion: 0.22 -Nodes (7): Constraints, 4. UI (`app.js`, `index.html`, `app.css`), app(), loadRecent(), PLOTLY_CONFIG, RECENT_KINDS, test_index_alpine_state_is_defined() +### Community 236 - "get" +Cohesion: 0.40 +Nodes (5): Bn(), fr(), get(), Gi(), Oe() ### Community 238 - "Issue #28 plan — Export cells from Manage cells" -Cohesion: 0.20 -Nodes (8): Constraints, Goal, Issue #28 plan — Export cells from Manage cells, Open questions, Test strategy, Behaviour, Manage cells modal, UI location +Cohesion: 0.17 +Nodes (10): Approach, Constraints, Files to touch, Goal, Issue #28 plan — Export cells from Manage cells, Open questions, Test strategy, Manage cells modal (+2 more) ### Community 239 - "Next phase — deployment routes and app-builder documentation" Cohesion: 0.20 Nodes (8): Decisions taken up front, Issues, Milestone 1 — Headless-ready, Milestone 3 — Build your own cellpy app, Next phase — deployment routes and app-builder documentation, Risks, Sequencing, What the current architecture already decides for us -### Community 240 - "uu" -Cohesion: 0.20 -Nodes (3): cu(), su(), uu() +### Community 240 - "Issue #54 status" +Cohesion: 0.50 +Nodes (3): Issue #54 status, Remaining work, What's done -### Community 241 - "Ic" -Cohesion: 0.16 -Nodes (3): Go(), Ic(), Ns() +### Community 241 - ".get" +Cohesion: 0.11 +Nodes (8): Fl(), Go(), Ml(), Ns(), Sl(), xu(), yc(), zh() -### Community 242 - "Issue #31 status — Iterative fixes: export download location" +### Community 242 - "Issue #55 — Status" Cohesion: 0.50 -Nodes (3): Issue #31 status — Iterative fixes: export download location, Iterative fixes log, test_system_save_rejected_without_webview() +Nodes (3): Issue #55 — Status, Remaining work, What's done -### Community 243 - ".emplaceBack" -Cohesion: 0.28 -Nodes (3): bl(), lu(), ou() +### Community 243 - "Issue #72 status" +Cohesion: 0.50 +Nodes (3): Issue #72 status, Remaining work, What's done -### Community 244 - "En" -Cohesion: 0.05 -Nodes (4): An(), En(), Mn(), setMaxBounds() +### Community 245 - "once" +Cohesion: 0.50 +Nodes (3): _createDelegatedListener(), once(), queryRenderedFeatures() ### Community 251 - "issue-flow — PR queue sync (`/iflow-pr-sync`)" Cohesion: 0.29 @@ -1107,16 +1109,8 @@ Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #81: Keep CE summary panel order consistent (prefer CE on top), Original issue text, Out of scope, Problem / context, Spec ### Community 257 - "_t" -Cohesion: 0.15 -Nodes (12): Bn(), Gi(), Gn(), Ln(), Oe(), Re(), _t(), te() (+4 more) - -### Community 258 - "gh-ci — wait on GitHub CI with `gh`" -Cohesion: 0.33 -Nodes (5): Fallback (workflow runs), gh-ci — wait on GitHub CI with `gh`, Primary (PR-attached checks), Semantics, Where this fits - -### Community 259 - "Original issue text" -Cohesion: 0.33 -Nodes (5): Acceptance criteria, Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet, Original issue text, Out of scope, Problem / context +Cohesion: 0.20 +Nodes (9): Gn(), Ln(), Re(), _t(), te(), Un(), Wn(), x() (+1 more) ### Community 262 - "Gu" Cohesion: 0.40 @@ -1127,8 +1121,8 @@ Cohesion: 0.33 Nodes (5): Constraints, Instructions, issue-flow — ops / no-PR (`/iflow-ops`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) ### Community 265 - "2. Cells into a Collection" -Cohesion: 0.29 -Nodes (7): 2. Cells into a Collection, Collecting, Grouping and averaging, polars here, pandas there, Two things that go wrong, What a Collection is, Where to go next +Cohesion: 0.18 +Nodes (9): 3. 🟠 Silent all-or-nothing group-averaging when any group is a singleton, 2. Cells into a Collection, Collecting, Grouping and averaging, polars here, pandas there, Two things that go wrong, What a Collection is, Where to go next (+1 more) ### Community 266 - "7. What cellpy will and will not do for you" Cohesion: 0.33 @@ -1142,22 +1136,14 @@ Nodes (3): 2026-10-02 — picked, captured, planned, Remaining, Status — Issue Cohesion: 0.50 Nodes (3): Done, Issue #173 status, Remaining -### Community 269 - "P" -Cohesion: 0.50 -Nodes (4): lt(), P(), tr(), Wt() - -### Community 272 - "N" -Cohesion: 0.04 -Nodes (95): J(), R(), b(), i(), D(), y(), E(), M() (+87 more) +### Community 272 - "y" +Cohesion: 0.06 +Nodes (88): J(), R(), i(), K(), cn(), D(), y(), E() (+80 more) ### Community 277 - "test_ingest.py" -Cohesion: 0.10 +Cohesion: 0.11 Nodes (12): _client(), test_adapter_load_raw_pec(), test_ingest_bad_instrument_400(), test_ingest_example_neware(), test_instruments_endpoint(), test_load_file_passes_remote_uri(), test_load_file_remote_missing_raises(), test_load_raw_passes_instrument() (+4 more) -### Community 280 - "Refused" -Cohesion: 0.20 -Nodes (8): _cell(), _collection(), export_collection(), Refused, render(), _resolve(), Session, Hard part 2 — file access - ### Community 285 - "Building on cellpy" Cohesion: 0.50 Nodes (4): Building on cellpy, Every Python block here runs, If something here is wrong, Two things worth knowing before you start @@ -1167,39 +1153,39 @@ Cohesion: 0.50 Nodes (3): Comments (curated summary), Issue #69: edit meta data, Original issue text ### Community 287 - "ge" -Cohesion: 0.20 -Nodes (11): ci(), ei(), ge(), ii(), Ir(), jr(), lr(), ni() (+3 more) +Cohesion: 0.22 +Nodes (10): ci(), ei(), ge(), ii(), jn(), me(), ni(), Pr() (+2 more) ### Community 288 - "Issue #86 — Status" Cohesion: 0.50 Nodes (3): Issue #86 — Status, Remaining work, What's done ### Community 293 - "ht" -Cohesion: 0.08 -Nodes (4): o(), ht(), resolveURL(), sendAsync() +Cohesion: 0.10 +Nodes (3): ht(), resolveURL(), sendAsync() ### Community 304 - "test_starter.py" -Cohesion: 0.03 -Nodes (26): generator(), test_every_path_the_index_points_at_exists(), test_llms_full_actually_contains_the_documents(), test_the_index_lists_every_guide(), test_the_skill_reference_is_bundled(), test_the_skill_states_the_traps_that_produce_plausible_output(), generated_against(), generator() (+18 more) +Cohesion: 0.04 +Nodes (23): generated_against(), generator(), skip_unless_pinned_cellpy(), test_every_listed_call_actually_exists(), test_it_covers_the_calls_the_guides_lean_on(), test_the_committed_reference_matches_the_installed_cellpy(), test_the_reference_does_not_depend_on_which_python_generated_it(), test_the_sharp_edges_are_stated_where_someone_will_read_them() (+15 more) ### Community 318 - "xt" Cohesion: 0.27 Nodes (10): B(), Ce(), fe(), Fn(), k(), $n(), Ne(), xt() (+2 more) ## Knowledge Gaps -- **701 isolated node(s):** `docker-entrypoint.sh script`, `cellpy-simple-gui`, `PLOTLY_CONFIG`, `RECENT_KINDS`, `Persistence` (+696 more) - These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 2313 node(s) total have ≤1 connection when file, concept and rationale nodes are included.) -- **80 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. +- **710 isolated node(s):** `docker-entrypoint.sh script`, `cellpy-simple-gui`, `PLOTLY_CONFIG`, `RECENT_KINDS`, `Persistence` (+705 more) + These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 2328 node(s) total have ≤1 connection when file, concept and rationale nodes are included.) +- **85 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. ## Suggested Questions _Questions this graph is uniquely positioned to answer:_ -- **Why does `$` connect `$` to `ni`, `ss`, `i`, `.get`, `vn`, `wo`, `Uc`, `e`, `ir`, `.add`, `na`, `wt`, `oa`, `tu`, `.push`, `xi`, `.createVertexBuffer`, `.resume`, `.getRenderableIds`, `Dt`, `.placeLayerBucketPart`, `resize`, `.constructor`, `.reset`, `issue-flow — version bump`, `fa`, `I`, `.renderLayer`, `.parse`, `ti`, `.evaluate`, `s`, `de`, `ah`, `da`, `_render`, `gh`, `ii`, `.render`, `Si`, `alpine.min.js`, `fo`, `CyclesPlotSpec`, `rh`, `ro`, `qi`, `dh`, `wn`, `.draw`, `Ei`, `di`, `oi`, `eu`, `te`, `ho`, `ur`, `m`, `Kt`, `gr`, `getImageData`, `ft`, `.load`, `ps`, `Hl`, `Pt`, `.fire`, `qa`, `bt`, `Ki`, `pl`, `uu`, `Ic`, `.emplaceBack`, `En`, `kn`, `Zi`, `Xe`, `qr`, `_t`, `.clone`, `Gu`, `Ku`, `P`, `N`, `se`, `qn`, `Xt`, `ht`, `wi`, `jh`?** - _High betweenness centrality (0.371) - this node is a cross-community bridge._ -- **Why does `gh()` connect `gh` to `issue-flow — iflow smart dispatcher (`/iflow`)`, `gh-ci — wait on GitHub CI with `gh``, `i`, `issue-flow — ops / no-PR (`/iflow-ops`)`, `$`, `issue-flow — issue comments triage`, `issue-flow — issue plan (`/iflow-plan`)`, `issue-flow — issue close (`/iflow-close`)`, `Cursor issue workflow (Agent Skills)`, `Development information`, `.resume`, `Instructions`, `Job`, `Instructions`, `issue-flow — create a normal issue (`/iflow-issue`)`, `issue-flow — epic planning (`/iflow-epic`)`, `issue-flow — issue yolo (`/iflow-yolo`)`, `Instructions`, `Original issue text`, `cellpy-simple-gui`, `.status`, `issue-flow — issue build (`/iflow-build`)`, `issue-flow — harness init (`/iflow-init`)`, `.cancel`, `dh`, `issue-flow — PR queue sync (`/iflow-pr-sync`)`, `issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`)`, `issue-flow — issue pause (`/iflow-pause`)`?** - _High betweenness centrality (0.270) - this node is a cross-community bridge._ -- **Why does `Stack / runtime` connect `Job` to `gh`, `_restyle`, `cellpy-simple-gui`, `get_settings`?** - _High betweenness centrality (0.172) - this node is a cross-community bridge._ +- **Why does `$` connect `$` to `ni`, `ss`, `i`, `N`, `u`, `vn`, `wo`, `Uc`, `e`, `m`, `.add`, `na`, `wt`, `oa`, `eu`, `.push`, `xi`, `gh`, `.createVertexBuffer`, `.resume`, `Dt`, `resize`, `ca`, `hi`, `.reset`, `issue-flow — version bump`, `fa`, `ea`, `I`, `.renderLayer`, `.parse`, `ti`, `Ra`, `g`, `de`, `ah`, `da`, `.constructor`, `_render`, `ii`, `ju`, `Si`, `alpine.min.js`, `fo`, `.destroy`, `rh`, `ro`, `ri`, `.create`, `Mn`, `mh`, `nl`, `wn`, `Ic`, `Ei`, `bn`, `mt`, `oi`, `te`, `ho`, `ur`, `Kt`, `gr`, `getImageData`, `ft`, `k`, `Pt`, `bt`, `Ki`, `ls`, `.get`, `En`, `once`, `pu`, `.constructor`, `Zi`, `Xe`, `_t`, `Gu`, `th`, `y`, `qn`, `Xt`, `ge`, `ht`, `wi`, `jh`?** + _High betweenness centrality (0.382) - this node is a cross-community bridge._ +- **Why does `gh()` connect `gh` to `issue-flow — iflow smart dispatcher (`/iflow`)`, `i`, `issue-flow — ops / no-PR (`/iflow-ops`)`, `$`, `issue-flow — issue comments triage`, `eu`, `issue-flow — issue plan (`/iflow-plan`)`, `issue-flow — issue close (`/iflow-close`)`, `Development information`, `.resume`, `Instructions`, `Job`, `Instructions`, `issue-flow — create a normal issue (`/iflow-issue`)`, `issue-flow — issue cleanup (`/iflow-cleanup`)`, `issue-flow — epic planning (`/iflow-epic`)`, `issue-flow — review and label issues (`/iflow-review`)`, `issue-flow — issue yolo (`/iflow-yolo`)`, `Instructions`, `Original issue text`, `cellpy-simple-gui`, `.status`, `issue-flow — issue build (`/iflow-build`)`, `issue-flow — harness init (`/iflow-init`)`, `mh`, `issue-flow — PR queue sync (`/iflow-pr-sync`)`, `issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`)`, `issue-flow — issue pause (`/iflow-pause`)`?** + _High betweenness centrality (0.262) - this node is a cross-community bridge._ +- **Why does `Stack / runtime` connect `Job` to `gh`, `_restyle`, `cellpy-simple-gui`, `Library`?** + _High betweenness centrality (0.170) - this node is a cross-community bridge._ - **Are the 45 inferred relationships involving `$` (e.g. with `J()` and `Jt()`) actually correct?** _`$` has 45 INFERRED edges - model-reasoned connections that need verification._ - **Are the 132 inferred relationships involving `e()` (e.g. with `u()` and `r()`) actually correct?** diff --git a/graphify-out/2026-10-03/graph.json b/graphify-out/2026-10-03/graph.json index 86b14eb..416dc26 100644 --- a/graphify-out/2026-10-03/graph.json +++ b/graphify-out/2026-10-03/graph.json @@ -30,199 +30,238 @@ "source_location": "L27" }, { - "id": "src_cellpy_simple_gui_core_models_remotefindrequest", - "label": "RemoteFindRequest", + "id": "src_cellpy_simple_gui_core_models_cellsexportspec", + "label": "CellsExportSpec", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "code", - "norm_label": "remotefindrequest", + "norm_label": "cellsexportspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L349" + "source_location": "L313" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do", - "label": "Do", + "id": "src_cellpy_simple_gui_core_models_cycleinfoplotspec", + "label": "CycleInfoPlotSpec", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 0, + "community_name": "get_library", "file_type": "code", - "norm_label": "do", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cycleinfoplotspec", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L289" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo", - "label": "fo()", + "id": "src_cellpy_simple_gui_core_models_exportspec", + "label": "ExportSpec", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 0, + "community_name": "get_library", "file_type": "code", - "norm_label": "fo()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "exportspec", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L303" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_io", - "label": "Io()", + "id": "src_cellpy_simple_gui_core_models_ingestexamplerequest", + "label": "IngestExampleRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 0, + "community_name": "get_library", "file_type": "code", - "norm_label": "io()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ingestexamplerequest", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L372" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo", - "label": "Oo()", + "id": "src_cellpy_simple_gui_core_models_ingestrequest", + "label": "IngestRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 0, + "community_name": "get_library", "file_type": "code", - "norm_label": "oo()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ingestrequest", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L358" }, { - "id": "src_cellpy_simple_gui_core_models_cellsexportspec", - "label": "CellsExportSpec", + "id": "src_cellpy_simple_gui_core_models_loadexamplerequest", + "label": "LoadExampleRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", + "community": 0, + "community_name": "get_library", "file_type": "code", - "norm_label": "cellsexportspec", + "norm_label": "loadexamplerequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L313" + "source_location": "L333" }, { - "id": "src_cellpy_simple_gui_core_models_comparepick", - "label": "ComparePick", + "id": "src_cellpy_simple_gui_core_models_loadfilesrequest", + "label": "LoadFilesRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", + "community": 0, + "community_name": "get_library", "file_type": "code", - "norm_label": "comparepick", + "norm_label": "loadfilesrequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L168" + "source_location": "L337" }, { - "id": "src_cellpy_simple_gui_core_models_cycleinfoplotspec", - "label": "CycleInfoPlotSpec", + "id": "src_cellpy_simple_gui_core_models_previewrequest", + "label": "PreviewRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", + "community": 0, + "community_name": "get_library", "file_type": "code", - "norm_label": "cycleinfoplotspec", + "norm_label": "previewrequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L289" + "source_location": "L342" }, { - "id": "src_cellpy_simple_gui_core_models_cyclesplotspec", - "label": "CyclesPlotSpec", + "id": "src_cellpy_simple_gui_core_models_remotefindrequest", + "label": "RemoteFindRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", + "community": 0, + "community_name": "get_library", "file_type": "code", - "norm_label": "cyclesplotspec", + "norm_label": "remotefindrequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L124" + "source_location": "L349" }, { - "id": "src_cellpy_simple_gui_core_models_exportspec", - "label": "ExportSpec", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt", + "label": "kt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", + "community": 10, + "community_name": "u", "file_type": "code", - "norm_label": "exportspec", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L303" + "norm_label": "kt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_ingestexamplerequest", - "label": "IngestExampleRequest", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o", + "label": "o()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", + "community": 10, + "community_name": "u", "file_type": "code", - "norm_label": "ingestexamplerequest", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L372" + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_ingestrequest", - "label": "IngestRequest", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u", + "label": "u()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", + "community": 10, + "community_name": "u", "file_type": "code", - "norm_label": "ingestrequest", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L358" + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_loadexamplerequest", - "label": "LoadExampleRequest", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do", + "label": "Do", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "loadexamplerequest", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L333" + "norm_label": "do", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_loadfilesrequest", - "label": "LoadFilesRequest", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo", + "label": "fo()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "loadfilesrequest", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L337" + "norm_label": "fo()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_previewrequest", - "label": "PreviewRequest", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_io", + "label": "Io()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 100, + "community_name": "fo", + "file_type": "code", + "norm_label": "io()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo", + "label": "Oo()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 100, + "community_name": "fo", + "file_type": "code", + "norm_label": "oo()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po", + "label": "Po()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 100, + "community_name": "fo", + "file_type": "code", + "norm_label": "po()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_core_models_comparepick", + "label": "ComparePick", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", - "norm_label": "previewrequest", + "norm_label": "comparepick", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L342" + "source_location": "L168" }, { "id": "src_cellpy_simple_gui_core_models_rawplotspec", @@ -231,7 +270,7 @@ "_callable_class": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "rawplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -257,25 +296,12 @@ "_callable_class": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "cyclereport", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", "source_location": "L39" }, - { - "id": "src_cellpy_simple_gui_core_library_cellrecord", - "label": "CellRecord", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "cellrecord", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L44" - }, { "id": "src_cellpy_simple_gui_core_models_compareplotspec", "label": "ComparePlotSpec", @@ -283,25 +309,12 @@ "_callable_class": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "compareplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L180" }, - { - "id": "src_cellpy_simple_gui_core_models_dvaplotspec", - "label": "DvaPlotSpec", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "dvaplotspec", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L255" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba", "label": "ba", @@ -315,19 +328,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu", - "label": "mu()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 108, - "community_name": "ro", - "file_type": "code", - "norm_label": "mu()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ro", "label": "ro", @@ -367,6 +367,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri", + "label": "ri()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 110, + "community_name": "ri", + "file_type": "code", + "norm_label": "ri()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi", "label": "qi()", @@ -374,22 +387,22 @@ "_callable_class": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", "norm_label": "qi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu", - "label": "Qu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn", + "label": "Mn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 112, - "community_name": "qi", + "community": 119, + "community_name": "Mn", "file_type": "code", - "norm_label": "qu()", + "norm_label": "mn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -400,22 +413,22 @@ "_callable_class": true, "_origin": "ast", "community": 120, - "community_name": "dh", + "community_name": "mh", "file_type": "code", "norm_label": "uh", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc", - "label": "xc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl", + "label": "nl()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": "xc()", + "norm_label": "nl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -485,54 +498,67 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po", - "label": "Po()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_so", + "label": "So()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": "po()", + "norm_label": "so()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_so", - "label": "So()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_to", + "label": "To()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": "so()", + "norm_label": "to()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_to", - "label": "To()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo", + "label": "wo()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": "to()", + "norm_label": "wo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo", - "label": "wo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc", + "label": "xc()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": "wo()", + "norm_label": "xc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn", + "label": "kn()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 130, + "community_name": "wn", + "file_type": "code", + "norm_label": "kn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -563,15 +589,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr", - "label": "vr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic", + "label": "Ic()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": "vr()", + "norm_label": "ic()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -601,6 +627,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl", + "label": "Yl()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": "yl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu", "label": "zu", @@ -621,22 +660,35 @@ "_callable_class": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": "di()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr", + "label": "qr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": "a()", + "norm_label": "qr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu", + "label": "Qu()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 148, + "community_name": "bn", + "file_type": "code", + "norm_label": "qu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -653,6 +705,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee", + "label": "ee()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "ee()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge", "label": "ge()", @@ -667,28 +732,28 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k", - "label": "k()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji", + "label": "ji()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "k()", + "norm_label": "ji()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua", - "label": "ua()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi", + "label": "bi()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 160, + "community_name": "oi", "file_type": "code", - "norm_label": "ua()", + "norm_label": "bi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -712,50 +777,24 @@ "_callable_class": true, "_origin": "ast", "community": 168, - "community_name": "smoke_test.py", + "community_name": "Client", "file_type": "code", "norm_label": "client", "source_file": "packaging/smoke_test.py", "source_location": "L91" }, { - "id": "packaging_smoke_test_launchedapp", - "label": "LaunchedApp", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 168, - "community_name": "smoke_test.py", - "file_type": "code", - "norm_label": "launchedapp", - "source_file": "packaging/smoke_test.py", - "source_location": "L140" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu", - "label": "eu()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 169, - "community_name": "eu", - "file_type": "code", - "norm_label": "eu()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja", - "label": "ja", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_remotefind", + "label": "RemoteFind", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 169, - "community_name": "eu", + "community": 17, + "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "ja", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "remotefind", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L370" }, { "id": "src_cellpy_simple_gui_core_models_cellmeta", @@ -764,7 +803,7 @@ "_callable_class": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "cellmeta", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -777,87 +816,61 @@ "_callable_class": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "journalrowupdate", "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L319" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te", - "label": "te()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 176, - "community_name": "te", - "file_type": "code", - "norm_label": "te()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar", - "label": "ar()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 18, - "community_name": "ir", - "file_type": "code", - "norm_label": "ar()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br", - "label": "Br()", + "id": "src_cellpy_simple_gui_api_jobs_daemonpool", + "label": "_DaemonPool", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "ir", + "community": 172, + "community_name": "6. Process state and threading", "file_type": "code", - "norm_label": "br()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_daemonpool", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L120" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr", - "label": "gr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te", + "label": "te()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "ir", + "community": 176, + "community_name": "te", "file_type": "code", - "norm_label": "gr()", + "norm_label": "te()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr", - "label": "hr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a", + "label": "a()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": "hr()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir", - "label": "ir()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g", + "label": "g()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": "ir()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -868,256 +881,204 @@ "_callable_class": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", "norm_label": "jr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr", - "label": "kr()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 18, - "community_name": "ir", - "file_type": "code", - "norm_label": "kr()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr", - "label": "mr()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 18, - "community_name": "ir", - "file_type": "code", - "norm_label": "mr()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nr", - "label": "nr()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 18, - "community_name": "ir", - "file_type": "code", - "norm_label": "nr()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr", - "label": "Pr()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 18, - "community_name": "ir", - "file_type": "code", - "norm_label": "pr()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr", - "label": "tr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho", + "label": "ho()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "ir", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "tr()", + "norm_label": "ho()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we", - "label": "We()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu", + "label": "mu()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "ir", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "we()", + "norm_label": "mu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr", - "label": "Wr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl", + "label": "pl", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "ir", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "wr()", + "norm_label": "pl", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr", - "label": "xr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su", + "label": "su()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "ir", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "xr()", + "norm_label": "su()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr", - "label": "yr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo", + "label": "zo()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "ir", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "yr()", + "norm_label": "zo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr", - "label": "zr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cr", + "label": "cr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "ir", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": "zr()", + "norm_label": "cr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho", - "label": "ho()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr", + "label": "dr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": "ho()", + "norm_label": "dr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo", - "label": "zo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fr", + "label": "fr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": "zo()", + "norm_label": "fr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cr", - "label": "cr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lr", + "label": "lr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 199, "community_name": "ur", "file_type": "code", - "norm_label": "cr()", + "norm_label": "lr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr", - "label": "dr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr", + "label": "sr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 199, "community_name": "ur", "file_type": "code", - "norm_label": "dr()", + "norm_label": "sr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fr", - "label": "fr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur", + "label": "ur()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 199, "community_name": "ur", "file_type": "code", - "norm_label": "fr()", + "norm_label": "ur()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih", - "label": "ih", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr", + "label": "Wr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 199, "community_name": "ur", "file_type": "code", - "norm_label": "ih", + "norm_label": "wr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lr", - "label": "lr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr", + "label": "xr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 199, "community_name": "ur", "file_type": "code", - "norm_label": "lr()", + "norm_label": "xr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr", - "label": "sr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr", + "label": "zr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 199, "community_name": "ur", "file_type": "code", - "norm_label": "sr()", + "norm_label": "zr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur", - "label": "ur()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn", + "label": "gn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": "ur()", + "norm_label": "gn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1160,19 +1121,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r", - "label": "r()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na", "label": "na()", @@ -1200,28 +1148,54 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps", - "label": "ps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j", + "label": "j()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": "ps()", + "norm_label": "j()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl", - "label": "Hl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k", + "label": "k()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 213, - "community_name": "Hl", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": "hl()", + "norm_label": "k()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt", + "label": "rt()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "rt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt", + "label": "tt()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "tt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1252,30 +1226,17 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha", - "label": "ha()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 227, - "community_name": "qa", - "file_type": "code", - "norm_label": "ha()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa", - "label": "qa", + "id": "packaging_smoke_test_launchedapp", + "label": "LaunchedApp", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 227, - "community_name": "qa", + "community_name": "LaunchedApp", "file_type": "code", - "norm_label": "qa", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "launchedapp", + "source_file": "packaging/smoke_test.py", + "source_location": "L140" }, { "id": "src_cellpy_simple_gui_config_settings", @@ -1284,7 +1245,7 @@ "_callable_class": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "settings", "source_file": "src/cellpy_simple_gui/config.py", @@ -1297,7 +1258,7 @@ "_callable_class": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "library", "source_file": "src/cellpy_simple_gui/core/library.py", @@ -1330,28 +1291,28 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl", - "label": "pl", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls", + "label": "ls()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 237, + "community_name": "ls", "file_type": "code", - "norm_label": "pl", + "norm_label": "ls()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl", - "label": "Yl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu", + "label": "nu()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 24, + "community_name": "oa", "file_type": "code", - "norm_label": "yl()", + "norm_label": "nu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1369,106 +1330,106 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su", - "label": "su()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en", + "label": "En()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 240, - "community_name": "uu", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "su()", + "norm_label": "en()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu", - "label": "uu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu", + "label": "pu()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 240, - "community_name": "uu", + "community": 246, + "community_name": "pu", "file_type": "code", - "norm_label": "uu()", + "norm_label": "pu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic", - "label": "Ic()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa", + "label": "sa()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 248, + "community_name": ".constructor", "file_type": "code", - "norm_label": "ic()", + "norm_label": "sa()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en", - "label": "En()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu", + "label": "eu()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "en()", + "norm_label": "eu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn", - "label": "Mn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku", + "label": "Ku()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "mn()", + "norm_label": "ku()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn", - "label": "kn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qc", + "label": "qc()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 246, - "community_name": "kn", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "kn()", + "norm_label": "qc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qc", - "label": "qc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu", + "label": "tu", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", - "norm_label": "qc()", + "norm_label": "tu", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu", - "label": "tu", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu", + "label": "uu()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", - "norm_label": "tu", + "norm_label": "uu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1499,15 +1460,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr", - "label": "qr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b", + "label": "b()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 256, - "community_name": "qr", + "community": 26, + "community_name": ".push", "file_type": "code", - "norm_label": "qr()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1525,460 +1486,317 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it", - "label": "it()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt", + "label": "yt()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "it()", + "norm_label": "yt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt", - "label": "jt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th", + "label": "th()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": "jt()", + "norm_label": "th()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt", - "label": "nt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn", + "label": "cn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "nt()", + "norm_label": "cn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot", - "label": "ot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d", + "label": "D()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "ot()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt", - "label": "rt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f", + "label": "f()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "rt()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st", - "label": "St()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h", + "label": "h()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "st()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt", - "label": "tt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it", + "label": "it()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "tt()", + "norm_label": "it()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut", - "label": "ut()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt", + "label": "nt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "ut()", + "norm_label": "nt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn", - "label": "yn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot", + "label": "ot()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "yn()", + "norm_label": "ot()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt", - "label": "yt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p", + "label": "p()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "yt()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku", - "label": "Ku()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q", + "label": "q()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 264, - "community_name": "Ku", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "ku()", + "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b", - "label": "b()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t", + "label": "T()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "b()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d", - "label": "D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut", + "label": "ut()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "d()", + "norm_label": "ut()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt", + "label": "vt()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "f()", + "norm_label": "vt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w", + "label": "w()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "g()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x", + "label": "x()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "h()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j", - "label": "j()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn", + "label": "qn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "j()", + "norm_label": "qn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n", - "label": "N()", + "id": "src_cellpy_simple_gui_core_uploads_saved", + "label": "Saved", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": "n()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "saved", + "source_file": "src/cellpy_simple_gui/core/uploads.py", + "source_location": "L42" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o", - "label": "o()", + "id": "src_cellpy_simple_gui_core_uploads_uploadrejected", + "label": "UploadRejected", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "uploadrejected", + "source_file": "src/cellpy_simple_gui/core/uploads.py", + "source_location": "L37" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt", + "label": "Xt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": "p()", + "norm_label": "xt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q", - "label": "q()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi", + "label": "xi()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 29, + "community_name": "xi", "file_type": "code", - "norm_label": "q()", + "norm_label": "xi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t", - "label": "T()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht", + "label": "ht()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "t()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u", - "label": "u()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w", - "label": "w()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "w()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x", - "label": "x()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "x()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se", - "label": "se()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 275, - "community_name": "se", - "file_type": "code", - "norm_label": "se()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn", - "label": "qn()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", + "community": 293, + "community_name": "ht", "file_type": "code", - "norm_label": "qn()", + "norm_label": "ht()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_uploads_saved", - "label": "Saved", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "saved", - "source_file": "src/cellpy_simple_gui/core/uploads.py", - "source_location": "L42" - }, - { - "id": "src_cellpy_simple_gui_core_uploads_uploadrejected", - "label": "UploadRejected", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "uploadrejected", - "source_file": "src/cellpy_simple_gui/core/uploads.py", - "source_location": "L37" - }, - { - "id": "examples_mcp_server_refused", - "label": "Refused", + "id": "src_cellpy_simple_gui_core_library_cellrecord", + "label": "CellRecord", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 280, - "community_name": "Refused", + "community": 3, + "community_name": "collect.py", "file_type": "code", - "norm_label": "refused", - "source_file": "examples/mcp/server.py", - "source_location": "L83" + "norm_label": "cellrecord", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L44" }, { - "id": "examples_mcp_server_session", - "label": "Session", + "id": "src_cellpy_simple_gui_core_models_cyclesplotspec", + "label": "CyclesPlotSpec", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 280, - "community_name": "Refused", + "community": 3, + "community_name": "collect.py", "file_type": "code", - "norm_label": "session", - "source_file": "examples/mcp/server.py", + "norm_label": "cyclesplotspec", + "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L124" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt", - "label": "Xt()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 282, - "community_name": "Xt", - "file_type": "code", - "norm_label": "xt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi", - "label": "xi()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": "xi()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht", - "label": "ht()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": "ht()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_core_export_figureexporterror", - "label": "FigureExportError", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 30, - "community_name": "routers/export.py", - "file_type": "code", - "norm_label": "figureexporterror", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L51" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wi", "label": "wi()", @@ -2045,28 +1863,28 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls", - "label": "ls()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl", + "label": "Hl()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "ls()", + "norm_label": "hl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl", - "label": "nl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps", + "label": "ps()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "nl()", + "norm_label": "ps()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2083,32 +1901,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th", - "label": "th()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": "th()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_api_jobs_daemonpool", - "label": "_DaemonPool", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 44, - "community_name": "Job", - "file_type": "code", - "norm_label": "_daemonpool", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L120" - }, { "id": "src_cellpy_simple_gui_api_jobs_job", "label": "Job", @@ -2136,41 +1928,41 @@ "source_location": "L170" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa", - "label": "aa()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka", + "label": "ka", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": "aa()", + "norm_label": "ka", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca", - "label": "ca()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya", + "label": "ya", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": "ca()", + "norm_label": "ya", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea", - "label": "ea()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca", + "label": "ca()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "ea()", + "norm_label": "ca()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2181,204 +1973,204 @@ "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": "ga()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia", - "label": "ia()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja", + "label": "ja", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "ia()", + "norm_label": "ja", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka", - "label": "ka", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma", + "label": "ma", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "ka", + "norm_label": "ma", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la", - "label": "la()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa", + "label": "pa()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "la()", + "norm_label": "pa()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma", - "label": "ma", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va", + "label": "va", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "ma", + "norm_label": "va", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa", - "label": "pa()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa", + "label": "Wa()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "pa()", + "norm_label": "wa()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa", - "label": "sa()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za", + "label": "Za()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "sa()", + "norm_label": "za()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta", - "label": "ta()", + "id": "src_cellpy_simple_gui_logging_setup_intercepthandler", + "label": "_InterceptHandler", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": "ta()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_intercepthandler", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L103" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va", - "label": "va", + "id": "src_cellpy_simple_gui_server_serverthread", + "label": "ServerThread", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": "va", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "serverthread", + "source_file": "src/cellpy_simple_gui/server.py", + "source_location": "L28" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa", - "label": "Wa()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi", + "label": "hi()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 49, + "community_name": "hi", "file_type": "code", - "norm_label": "wa()", + "norm_label": "hi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya", - "label": "ya", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar", + "label": "ar()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "ya", + "norm_label": "ar()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za", - "label": "Za()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br", + "label": "Br()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "za()", + "norm_label": "br()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_logging_setup_intercepthandler", - "label": "_InterceptHandler", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr", + "label": "gr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 48, - "community_name": "pathlib", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "_intercepthandler", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L103" + "norm_label": "gr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_server_serverthread", - "label": "ServerThread", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn", + "label": "hn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 48, - "community_name": "pathlib", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "serverthread", - "source_file": "src/cellpy_simple_gui/server.py", - "source_location": "L28" + "norm_label": "hn()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be", - "label": "Be()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr", + "label": "hr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "be()", + "norm_label": "hr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he", - "label": "he()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir", + "label": "ir()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "he()", + "norm_label": "ir()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2395,6 +2187,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt", + "label": "lt()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "lt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me", "label": "Me()", @@ -2409,15 +2214,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe", - "label": "qe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nr", + "label": "nr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "qe()", + "norm_label": "nr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or", + "label": "or()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "or()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr", + "label": "Pr()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "pr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2434,6 +2265,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr", + "label": "rr()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "rr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ru", "label": "ru()", @@ -2447,6 +2291,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr", + "label": "tr()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "tr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ts", "label": "ts()", @@ -2461,28 +2318,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze", - "label": "ze()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we", + "label": "We()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "ze()", + "norm_label": "we()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn", - "label": "gn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn", + "label": "yn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "gn()", + "norm_label": "yn()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze", + "label": "ze()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "ze()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2538,6 +2408,45 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea", + "label": "ea()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": "ea()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia", + "label": "ia()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": "ia()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta", + "label": "ta()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": "ta()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e", "label": "E()", @@ -2565,15 +2474,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt", - "label": "kt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt", + "label": "jt()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "kt()", + "norm_label": "jt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r", + "label": "r()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 57, + "community_name": "I", + "file_type": "code", + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st", + "label": "St()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 57, + "community_name": "I", + "file_type": "code", + "norm_label": "st()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2590,6 +2525,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve", + "label": "ve()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 57, + "community_name": "I", + "file_type": "code", + "norm_label": "ve()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn", "label": "Tn()", @@ -2604,18 +2552,57 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae", - "label": "ae()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr", + "label": "vr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": "ae()", + "norm_label": "vr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr", + "label": "yr()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 58, + "community_name": ".renderLayer", + "file_type": "code", + "norm_label": "yr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "examples_mcp_server_refused", + "label": "Refused", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "refused", + "source_file": "examples/mcp/server.py", + "source_location": "L83" + }, + { + "id": "examples_mcp_server_session", + "label": "Session", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "session", + "source_file": "examples/mcp/server.py", + "source_location": "L124" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an", "label": "an()", @@ -2623,61 +2610,61 @@ "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": ".get", + "community_name": "N", "file_type": "code", "norm_label": "an()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn", - "label": "cn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be", + "label": "Be()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": ".get", + "community_name": "N", "file_type": "code", - "norm_label": "cn()", + "norm_label": "be()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee", - "label": "ee()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er", + "label": "er()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": ".get", + "community_name": "N", "file_type": "code", - "norm_label": "ee()", + "norm_label": "er()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er", - "label": "er()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he", + "label": "he()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": ".get", + "community_name": "N", "file_type": "code", - "norm_label": "er()", + "norm_label": "he()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn", - "label": "hn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n", + "label": "N()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": ".get", + "community_name": "N", "file_type": "code", - "norm_label": "hn()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2688,12 +2675,25 @@ "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": ".get", + "community_name": "N", "file_type": "code", "norm_label": "nn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe", + "label": "qe()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "qe()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn", "label": "rn()", @@ -2701,7 +2701,7 @@ "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": ".get", + "community_name": "N", "file_type": "code", "norm_label": "rn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -2714,35 +2714,35 @@ "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": ".get", + "community_name": "N", "file_type": "code", "norm_label": "sn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve", - "label": "ve()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se", + "label": "se()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": "ve()", + "norm_label": "se()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri", - "label": "ri()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr", + "label": "mr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": "ri()", + "norm_label": "mr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2805,7 +2805,7 @@ "_callable_class": true, "_origin": "ast", "community": 66, - "community_name": ".evaluate", + "community_name": "Ra", "file_type": "code", "norm_label": "no()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -2818,87 +2818,87 @@ "_callable_class": true, "_origin": "ast", "community": 66, - "community_name": ".evaluate", + "community_name": "Ra", "file_type": "code", "norm_label": "ra()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce", - "label": "ce()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae", + "label": "ae()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "ce()", + "norm_label": "ae()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe", - "label": "fe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce", + "label": "ce()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "fe()", + "norm_label": "ce()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le", - "label": "Le()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe", + "label": "fe()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "le()", + "norm_label": "fe()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt", - "label": "lt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr", + "label": "kr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "lt()", + "norm_label": "kr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe", - "label": "oe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le", + "label": "Le()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "oe()", + "norm_label": "le()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or", - "label": "or()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe", + "label": "oe()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "or()", + "norm_label": "oe()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2909,22 +2909,22 @@ "_callable_class": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "re()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr", - "label": "rr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua", + "label": "ua()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "rr()", + "norm_label": "ua()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2935,25 +2935,12 @@ "_callable_class": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "ue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt", - "label": "vt()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "vt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye", "label": "ye()", @@ -2961,7 +2948,7 @@ "_callable_class": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "ye()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -2993,6 +2980,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa", + "label": "aa()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": "aa()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah", "label": "ah", @@ -3006,6 +3006,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih", + "label": "ih", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": "ih", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh", "label": "nh", @@ -3033,54 +3046,67 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min", - "label": "$", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha", + "label": "ha()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "$", + "norm_label": "ha()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kh", - "label": "kh", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la", + "label": "la()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "kh", + "norm_label": "la()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu", - "label": "nu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa", + "label": "qa", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": "qa", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min", + "label": "$", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "nu()", + "norm_label": "$", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu", - "label": "pu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kh", + "label": "kh", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "pu()", + "norm_label": "kh", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -3111,28 +3137,28 @@ "source_location": "L39" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci", - "label": "ci()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ai", + "label": "Ai()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 85, "community_name": "ii", "file_type": "code", - "norm_label": "ci()", + "norm_label": "ai()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi", - "label": "hi()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci", + "label": "ci()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 85, "community_name": "ii", "file_type": "code", - "norm_label": "hi()", + "norm_label": "ci()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -3149,45 +3175,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji", - "label": "ji()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": "ji()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_remotefind", - "label": "RemoteFind", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 87, - "community_name": "find_remote_files", - "file_type": "code", - "norm_label": "remotefind", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L370" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi", - "label": "bi()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", - "file_type": "code", - "norm_label": "bi()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju", "label": "ju()", @@ -3195,7 +3182,7 @@ "_callable_class": true, "_origin": "ast", "community": 89, - "community_name": ".render", + "community_name": "ju", "file_type": "code", "norm_label": "ju()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -3215,17 +3202,30 @@ "source_location": "L89" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ai", - "label": "Ai()", + "id": "src_cellpy_simple_gui_core_export_figureexporterror", + "label": "FigureExportError", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 94, - "community_name": "Si", + "community": 90, + "community_name": "core/export.py", "file_type": "code", - "norm_label": "ai()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "figureexporterror", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L51" + }, + { + "id": "src_cellpy_simple_gui_core_models_dvaplotspec", + "label": "DvaPlotSpec", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 90, + "community_name": "core/export.py", + "file_type": "code", + "norm_label": "dvaplotspec", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L255" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi", @@ -3458,6 +3458,18 @@ "source_file": "src/cellpy_simple_gui/api/routers/cells.py", "source_location": "L129" }, + { + "id": "src_cellpy_simple_gui_api_routers_ingest_ingest", + "label": "ingest()", + "_callable": true, + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "ingest()", + "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", + "source_location": "L71" + }, { "id": "src_cellpy_simple_gui_api_routers_ingest_ingest_example", "label": "ingest_example()", @@ -3494,6 +3506,18 @@ "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", "source_location": "L28" }, + { + "id": "src_cellpy_simple_gui_api_routers_ingest_list_instruments", + "label": "list_instruments()", + "_callable": true, + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "list_instruments()", + "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", + "source_location": "L19" + }, { "id": "src_cellpy_simple_gui_api_routers_jobs_job_cancel", "label": "job_cancel()", @@ -3686,6 +3710,42 @@ "source_file": "src/cellpy_simple_gui/api/routers/remote.py", "source_location": "L23" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_explain_load_error", + "label": "explain_load_error()", + "_callable": true, + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "explain_load_error()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L205" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "label": "load_journal_cells()", + "_callable": true, + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "load_journal_cells()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L569" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells_progress", + "label": "_progress()", + "_callable": true, + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "_progress()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L591" + }, { "id": "src_cellpy_simple_gui_core_files_effective_max_files", "label": "effective_max_files()", @@ -3711,91 +3771,391 @@ "source_location": "L299" }, { - "id": "src_cellpy_simple_gui_core_collect_export_bytes", - "label": "export_bytes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at", + "label": "at()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "export_bytes", + "community_name": "u", "file_type": "code", - "norm_label": "export_bytes()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1457" + "norm_label": "at()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_export_frame_bytes", - "label": "export_frame_bytes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "export_bytes", + "community_name": "u", "file_type": "code", - "norm_label": "export_frame_bytes()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1440" + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_inject_app_chrome", - "label": "_inject_app_chrome()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_setvalue", + "label": ".setValue()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "export_bytes", + "community_name": "u", "file_type": "code", - "norm_label": "_inject_app_chrome()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L653" + "norm_label": ".setvalue()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_summary_collection", - "label": "summary_collection()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "export_bytes", + "community_name": "u", "file_type": "code", - "norm_label": "summary_collection()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L463" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_export_cycles_export", - "label": "cycles_export()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "export_bytes", + "community_name": "u", "file_type": "code", - "norm_label": "cycles_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L80" + "norm_label": ".isempty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_export_summary_export", - "label": "summary_export()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "export_bytes", + "community_name": "u", "file_type": "code", - "norm_label": "summary_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L59" + "norm_label": ".tostring()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_addeventlistener", + "label": ".addEventListener()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".addeventlistener()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "u", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_j", + "label": "j()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "j()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_loadtile", + "label": ".loadTile()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".loadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_remove", + "label": ".remove()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".remove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_testprop", + "label": ".testProp()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".testprop()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_b", + "label": "b()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "b()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_substring", + "label": ".substring()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".substring()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_trim", + "label": ".trim()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".trim()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_a", + "label": "A()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_b", + "label": "b()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "b()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_c", + "label": "C()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "c()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_e", + "label": "E()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "e()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_g", + "label": "g()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "g()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_i", + "label": "I()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "i()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_k", + "label": "k()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "k()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_m", + "label": "M()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "m()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_meterinmercatorcoordinateunits", + "label": ".meterInMercatorCoordinateUnits()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".meterinmercatorcoordinateunits()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_o", + "label": "O()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_r", + "label": "r()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_w", + "label": "w()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "w()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_z", + "label": "z()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": "z()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_bind", + "label": ".bind()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".bind()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_issizepoweroftwo", + "label": ".isSizePowerOfTwo()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".issizepoweroftwo()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_update", + "label": ".update()", + "_callable": true, + "_origin": "ast", + "community": 10, + "community_name": "u", + "file_type": "code", + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -3807,26 +4167,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 100, "community_name": "fo", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_getbinding", - "label": ".getBinding()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 100, "community_name": "fo", "file_type": "code", - "norm_label": ".getbinding()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -3890,6 +4250,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_prepare", + "label": ".prepare()", + "_callable": true, + "_origin": "ast", + "community": 100, + "community_name": "fo", + "file_type": "code", + "norm_label": ".prepare()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_uploadpending", + "label": ".uploadPending()", + "_callable": true, + "_origin": "ast", + "community": 100, + "community_name": "fo", + "file_type": "code", + "norm_label": ".uploadpending()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_constructor", "label": ".constructor()", @@ -3938,6 +4322,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getmaxvalue", + "label": ".getMaxValue()", + "_callable": true, + "_origin": "ast", + "community": 100, + "community_name": "fo", + "file_type": "code", + "norm_label": ".getmaxvalue()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getuniforms", "label": ".getUniforms()", @@ -3962,6 +4358,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_upload", + "label": ".upload()", + "_callable": true, + "_origin": "ast", + "community": 100, + "community_name": "fo", + "file_type": "code", + "norm_label": ".upload()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_upload", + "label": ".upload()", + "_callable": true, + "_origin": "ast", + "community": 100, + "community_name": "fo", + "file_type": "code", + "norm_label": ".upload()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jo", "label": "jo()", @@ -4046,6 +4466,66 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 100, + "community_name": "fo", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_setuniform", + "label": ".setUniform()", + "_callable": true, + "_origin": "ast", + "community": 100, + "community_name": "fo", + "file_type": "code", + "norm_label": ".setuniform()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_app_api", + "label": "api()", + "_callable": true, + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "api()", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_app_app", + "label": "app()", + "_callable": true, + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "app()", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L56" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_app_loadrecent", + "label": "loadRecent()", + "_callable": true, + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "loadrecent()", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L46" + }, { "id": "tests_test_gui_playwright_browser_page", "label": "browser_page()", @@ -4094,6 +4574,18 @@ "source_file": "tests/test_gui_playwright.py", "source_location": "L41" }, + { + "id": "tests_test_gui_playwright_load_bundled_cell", + "label": "_load_bundled_cell()", + "_callable": true, + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "_load_bundled_cell()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L214" + }, { "id": "tests_test_gui_playwright_test_add_cells_modal_stages_and_loads", "label": "test_add_cells_modal_stages_and_loads()", @@ -4106,6 +4598,18 @@ "source_file": "tests/test_gui_playwright.py", "source_location": "L159" }, + { + "id": "tests_test_gui_playwright_test_cells_modal_defers_plot_refresh_until_close", + "label": "test_cells_modal_defers_plot_refresh_until_close()", + "_callable": true, + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "test_cells_modal_defers_plot_refresh_until_close()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L230" + }, { "id": "tests_test_gui_playwright_test_data_panel_collapses_after_load", "label": "test_data_panel_collapses_after_load()", @@ -4142,6 +4646,18 @@ "source_file": "tests/test_gui_playwright.py", "source_location": "L84" }, + { + "id": "src_cellpy_simple_gui_core_collect_tidy_facet_annotations", + "label": "_tidy_facet_annotations()", + "_callable": true, + "_origin": "ast", + "community": 102, + "community_name": "_tidy_facet_annotations", + "file_type": "code", + "norm_label": "_tidy_facet_annotations()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1185" + }, { "id": "tests_test_core_dev_mode", "label": "dev_mode()", @@ -4214,18 +4730,6 @@ "source_file": "tests/test_core.py", "source_location": "L1419" }, - { - "id": "tests_test_core_spread_library", - "label": "_spread_library()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "_spread_library()", - "source_file": "tests/test_core.py", - "source_location": "L1151" - }, { "id": "tests_test_core_summary_facet_titles_top_to_bottom", "label": "_summary_facet_titles_top_to_bottom()", @@ -4371,16 +4875,16 @@ "source_location": "L1685" }, { - "id": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", - "label": "test_cv_split_and_fullcell_families_are_plottable()", + "id": "tests_test_core_test_cycle_info_figure", + "label": "test_cycle_info_figure()", "_callable": true, "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "code", - "norm_label": "test_cv_split_and_fullcell_families_are_plottable()", + "norm_label": "test_cycle_info_figure()", "source_file": "tests/test_core.py", - "source_location": "L1648" + "source_location": "L1845" }, { "id": "tests_test_core_test_cycle_info_needs_cycles", @@ -4394,6 +4898,30 @@ "source_file": "tests/test_core.py", "source_location": "L1856" }, + { + "id": "tests_test_core_test_cycles_collector_layouts", + "label": "test_cycles_collector_layouts()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_cycles_collector_layouts()", + "source_file": "tests/test_core.py", + "source_location": "L404" + }, + { + "id": "tests_test_core_test_cycles_collector_xy_ranges_per_cycle", + "label": "test_cycles_collector_xy_ranges_per_cycle()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_cycles_collector_xy_ranges_per_cycle()", + "source_file": "tests/test_core.py", + "source_location": "L282" + }, { "id": "tests_test_core_test_cycles_export_csv", "label": "test_cycles_export_csv()", @@ -4406,6 +4934,18 @@ "source_file": "tests/test_core.py", "source_location": "L1360" }, + { + "id": "tests_test_core_test_cycles_export_follows_curve_kind", + "label": "test_cycles_export_follows_curve_kind()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_cycles_export_follows_curve_kind()", + "source_file": "tests/test_core.py", + "source_location": "L246" + }, { "id": "tests_test_core_test_cycles_figure", "label": "test_cycles_figure()", @@ -4442,6 +4982,30 @@ "source_file": "tests/test_core.py", "source_location": "L388" }, + { + "id": "tests_test_core_test_cycles_figure_xy_ranges", + "label": "test_cycles_figure_xy_ranges()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_cycles_figure_xy_ranges()", + "source_file": "tests/test_core.py", + "source_location": "L259" + }, + { + "id": "tests_test_core_test_cycles_figure_xy_ranges_one_sided", + "label": "test_cycles_figure_xy_ranges_one_sided()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_cycles_figure_xy_ranges_one_sided()", + "source_file": "tests/test_core.py", + "source_location": "L300" + }, { "id": "tests_test_core_test_cycles_film_layout_is_a_density_plot", "label": "test_cycles_film_layout_is_a_density_plot()", @@ -4454,6 +5018,18 @@ "source_file": "tests/test_core.py", "source_location": "L213" }, + { + "id": "tests_test_core_test_cycles_pane_plots_differentials", + "label": "test_cycles_pane_plots_differentials()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_cycles_pane_plots_differentials()", + "source_file": "tests/test_core.py", + "source_location": "L200" + }, { "id": "tests_test_core_test_dev_mode_off_by_default", "label": "test_dev_mode_off_by_default()", @@ -4598,30 +5174,6 @@ "source_file": "tests/test_core.py", "source_location": "L1384" }, - { - "id": "tests_test_core_test_group_average_keeps_singleton_traces", - "label": "test_group_average_keeps_singleton_traces()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_group_average_keeps_singleton_traces()", - "source_file": "tests/test_core.py", - "source_location": "L611" - }, - { - "id": "tests_test_core_test_group_average_singleton_traces_on_correct_facet", - "label": "test_group_average_singleton_traces_on_correct_facet()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_group_average_singleton_traces_on_correct_facet()", - "source_file": "tests/test_core.py", - "source_location": "L648" - }, { "id": "tests_test_core_test_ica_figure_charge_differs_from_discharge", "label": "test_ica_figure_charge_differs_from_discharge()", @@ -4718,18 +5270,6 @@ "source_file": "tests/test_core.py", "source_location": "L1875" }, - { - "id": "tests_test_core_test_non_spread_hover_is_left_to_cellpy", - "label": "test_non_spread_hover_is_left_to_cellpy()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_non_spread_hover_is_left_to_cellpy()", - "source_file": "tests/test_core.py", - "source_location": "L918" - }, { "id": "tests_test_core_test_plot_type_renders_end_voltages", "label": "test_plot_type_renders_end_voltages()", @@ -4863,28 +5403,28 @@ "source_location": "L793" }, { - "id": "tests_test_core_test_spread_fillcolor_has_alpha", - "label": "test_spread_fillcolor_has_alpha()", + "id": "tests_test_core_test_single_cell_cycles_figure_reports_missing", + "label": "test_single_cell_cycles_figure_reports_missing()", "_callable": true, "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "code", - "norm_label": "test_spread_fillcolor_has_alpha()", + "norm_label": "test_single_cell_cycles_figure_reports_missing()", "source_file": "tests/test_core.py", - "source_location": "L839" + "source_location": "L467" }, { - "id": "tests_test_core_test_spread_traces_keep_useful_hover", - "label": "test_spread_traces_keep_useful_hover()", + "id": "tests_test_core_test_spread_fillcolor_has_alpha", + "label": "test_spread_fillcolor_has_alpha()", "_callable": true, "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "code", - "norm_label": "test_spread_traces_keep_useful_hover()", + "norm_label": "test_spread_fillcolor_has_alpha()", "source_file": "tests/test_core.py", - "source_location": "L876" + "source_location": "L839" }, { "id": "tests_test_core_test_summary_capacity_ce_facet_order_stable", @@ -4946,18 +5486,6 @@ "source_file": "tests/test_core.py", "source_location": "L1317" }, - { - "id": "tests_test_core_test_summary_figure_dark_theme", - "label": "test_summary_figure_dark_theme()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_summary_figure_dark_theme()", - "source_file": "tests/test_core.py", - "source_location": "L804" - }, { "id": "tests_test_core_test_summary_figure_empty", "label": "test_summary_figure_empty()", @@ -4970,18 +5498,6 @@ "source_file": "tests/test_core.py", "source_location": "L145" }, - { - "id": "tests_test_core_test_summary_figure_export_svg", - "label": "test_summary_figure_export_svg()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_summary_figure_export_svg()", - "source_file": "tests/test_core.py", - "source_location": "L1376" - }, { "id": "tests_test_core_test_summary_figure_independent_y_by_default", "label": "test_summary_figure_independent_y_by_default()", @@ -4994,18 +5510,6 @@ "source_file": "tests/test_core.py", "source_location": "L972" }, - { - "id": "tests_test_core_test_summary_figure_long_cell_names_shorten_legend", - "label": "test_summary_figure_long_cell_names_shorten_legend()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_summary_figure_long_cell_names_shorten_legend()", - "source_file": "tests/test_core.py", - "source_location": "L734" - }, { "id": "tests_test_core_test_summary_figure_pretty_axis_labels", "label": "test_summary_figure_pretty_axis_labels()", @@ -5018,18 +5522,6 @@ "source_file": "tests/test_core.py", "source_location": "L707" }, - { - "id": "tests_test_core_test_summary_figure_safe_color_scheme", - "label": "test_summary_figure_safe_color_scheme()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_summary_figure_safe_color_scheme()", - "source_file": "tests/test_core.py", - "source_location": "L817" - }, { "id": "tests_test_core_test_summary_figure_share_y_matches_axes", "label": "test_summary_figure_share_y_matches_axes()", @@ -5054,18 +5546,6 @@ "source_file": "tests/test_core.py", "source_location": "L1290" }, - { - "id": "tests_test_core_test_summary_figure_short_names_unchanged", - "label": "test_summary_figure_short_names_unchanged()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_summary_figure_short_names_unchanged()", - "source_file": "tests/test_core.py", - "source_location": "L764" - }, { "id": "tests_test_core_test_summary_figure_via_plotting", "label": "test_summary_figure_via_plotting()", @@ -5078,18 +5558,6 @@ "source_file": "tests/test_core.py", "source_location": "L138" }, - { - "id": "tests_test_core_test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", - "source_file": "tests/test_core.py", - "source_location": "L1180" - }, { "id": "tests_test_core_test_summary_figure_y_ranges_charge_on_multipart_group_avg", "label": "test_summary_figure_y_ranges_charge_on_multipart_group_avg()", @@ -5126,18 +5594,6 @@ "source_file": "tests/test_core.py", "source_location": "L1063" }, - { - "id": "tests_test_core_test_summary_figure_y_ranges_one_sided_with_spread", - "label": "test_summary_figure_y_ranges_one_sided_with_spread()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_summary_figure_y_ranges_one_sided_with_spread()", - "source_file": "tests/test_core.py", - "source_location": "L1217" - }, { "id": "tests_test_core_test_summary_figure_y_ranges_sets_panel_limits", "label": "test_summary_figure_y_ranges_sets_panel_limits()", @@ -5198,18 +5654,6 @@ "source_file": "tests/test_core.py", "source_location": "L1794" }, - { - "id": "tests_test_core_test_unavailable_family_explains_itself", - "label": "test_unavailable_family_explains_itself()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_unavailable_family_explains_itself()", - "source_file": "tests/test_core.py", - "source_location": "L1625" - }, { "id": "tests_test_core_xaxis_title", "label": "_xaxis_title()", @@ -5234,18 +5678,6 @@ "source_file": "tests/test_core.py", "source_location": "L1008" }, - { - "id": "tests_test_core_yaxis_for_title_text", - "label": "_yaxis_for_title_text()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "_yaxis_for_title_text()", - "source_file": "tests/test_core.py", - "source_location": "L1167" - }, { "id": "tests_test_core_yaxis_for_variable", "label": "_yaxis_for_variable()", @@ -5283,160 +5715,172 @@ "source_location": "L694" }, { - "id": "src_cellpy_simple_gui_api_routers_ingest_list_instruments", - "label": "list_instruments()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_enableattributes", + "label": ".enableAttributes()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "list_instruments()", - "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", - "source_location": "L19" + "norm_label": ".enableattributes()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_arbin_res_reader_available", - "label": "arbin_res_reader_available()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_setvertexattribpointers", + "label": ".setVertexAttribPointers()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "arbin_res_reader_available()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L178" + "norm_label": ".setvertexattribpointers()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_capacity_curve", - "label": "capacity_curve()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "capacity_curve()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L551" + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_csv", - "label": "export_cell_csv()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "export_cell_csv()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L731" + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_excel", - "label": "export_cell_excel()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "export_cell_excel()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L724" + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_ids", - "label": "instrument_ids()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_cleartextures", + "label": ".clearTextures()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "instrument_ids()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L132" + "norm_label": ".cleartextures()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_list_instruments", - "label": "list_instruments()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_unloadtile", + "label": ".unloadTile()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "list_instruments()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L84" + "norm_label": ".unloadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_example", - "label": "load_example()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_unloadtile", + "label": ".unloadTile()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "load_example()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L60" + "norm_label": ".unloadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_remake_summary", - "label": "_remake_summary()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_destruct", + "label": ".destruct()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "_remake_summary()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L741" + "norm_label": ".destruct()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_save_cell", - "label": "save_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "save_cell()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L717" + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_nom_cap_specifics", - "label": "set_nom_cap_specifics()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_savetiletexture", + "label": ".saveTileTexture()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "set_nom_cap_specifics()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L812" + "norm_label": ".savetiletexture()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_summary_frame", - "label": "summary_frame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "summary_frame()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L529" + "norm_label": ".bind()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_export_export_one_cell", - "label": "_export_one_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_freshbind", + "label": ".freshBind()", "_callable": true, "_origin": "ast", "community": 104, - "community_name": "cellpy_adapter.py", + "community_name": ".destroy", "file_type": "code", - "norm_label": "_export_one_cell()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L233" + "norm_label": ".freshbind()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createvertexarray", + "label": ".createVertexArray()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".createvertexarray()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_core_models_clean_axis_range", @@ -5444,7 +5888,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "_clean_axis_range()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -5456,7 +5900,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "_one()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -5468,7 +5912,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "._unique_sorted()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -5480,7 +5924,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "._bounded_curves()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -5492,7 +5936,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -5504,7 +5948,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -5516,7 +5960,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -5528,7 +5972,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -5540,132 +5984,24 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "._clean_y_ranges()", "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L113" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_layout", - "label": "layout()", - "_callable": true, - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "layout()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "tests_test_core_test_cycle_info_figure", - "label": "test_cycle_info_figure()", - "_callable": true, - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "test_cycle_info_figure()", - "source_file": "tests/test_core.py", - "source_location": "L1845" - }, - { - "id": "tests_test_core_test_cycles_collector_layouts", - "label": "test_cycles_collector_layouts()", - "_callable": true, - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "test_cycles_collector_layouts()", - "source_file": "tests/test_core.py", - "source_location": "L404" - }, - { - "id": "tests_test_core_test_cycles_collector_xy_ranges_per_cycle", - "label": "test_cycles_collector_xy_ranges_per_cycle()", - "_callable": true, - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "test_cycles_collector_xy_ranges_per_cycle()", - "source_file": "tests/test_core.py", - "source_location": "L282" - }, - { - "id": "tests_test_core_test_cycles_export_follows_curve_kind", - "label": "test_cycles_export_follows_curve_kind()", - "_callable": true, - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "test_cycles_export_follows_curve_kind()", - "source_file": "tests/test_core.py", - "source_location": "L246" - }, - { - "id": "tests_test_core_test_cycles_figure_xy_ranges", - "label": "test_cycles_figure_xy_ranges()", - "_callable": true, - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "test_cycles_figure_xy_ranges()", - "source_file": "tests/test_core.py", - "source_location": "L259" - }, - { - "id": "tests_test_core_test_cycles_figure_xy_ranges_one_sided", - "label": "test_cycles_figure_xy_ranges_one_sided()", - "_callable": true, - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "test_cycles_figure_xy_ranges_one_sided()", - "source_file": "tests/test_core.py", - "source_location": "L300" - }, - { - "id": "tests_test_core_test_cycles_pane_plots_differentials", - "label": "test_cycles_pane_plots_differentials()", - "_callable": true, - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "test_cycles_pane_plots_differentials()", - "source_file": "tests/test_core.py", - "source_location": "L200" - }, { "id": "tests_test_core_test_raw_figure_is_downsampled_for_transport", "label": "test_raw_figure_is_downsampled_for_transport()", "_callable": true, "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "test_raw_figure_is_downsampled_for_transport()", "source_file": "tests/test_core.py", "source_location": "L1811" }, - { - "id": "tests_test_core_test_single_cell_cycles_figure_reports_missing", - "label": "test_single_cell_cycles_figure_reports_missing()", - "_callable": true, - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "test_single_cell_cycles_figure_reports_missing()", - "source_file": "tests/test_core.py", - "source_location": "L467" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_backfillborder", "label": ".backfillBorder()", @@ -5702,6 +6038,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getpixels", + "label": ".getPixels()", + "_callable": true, + "_origin": "ast", + "community": 106, + "community_name": "rh", + "file_type": "code", + "norm_label": ".getpixels()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getunpackvector", + "label": ".getUnpackVector()", + "_callable": true, + "_origin": "ast", + "community": 106, + "community_name": "rh", + "file_type": "code", + "norm_label": ".getunpackvector()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_idx", "label": "._idx()", @@ -5732,59 +6092,47 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "cycle_numbers()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L545" }, { - "id": "src_cellpy_simple_gui_core_collect_batch", - "label": "_batch()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "_batch()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L85" - }, - { - "id": "src_cellpy_simple_gui_core_collect_batch_keys", - "label": "batch_keys()", + "id": "src_cellpy_simple_gui_core_collect_cycle_info_figure_json", + "label": "cycle_info_figure_json()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", - "norm_label": "batch_keys()", + "norm_label": "cycle_info_figure_json()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L65" + "source_location": "L947" }, { - "id": "src_cellpy_simple_gui_core_collect_cycles_collection", - "label": "cycles_collection()", + "id": "src_cellpy_simple_gui_core_collect_empty_figure_json", + "label": "_empty_figure_json()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", - "norm_label": "cycles_collection()", + "norm_label": "_empty_figure_json()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L496" + "source_location": "L1101" }, { - "id": "src_cellpy_simple_gui_core_collect_dva_collection", - "label": "dva_collection()", + "id": "src_cellpy_simple_gui_core_collect_figure_json", + "label": "figure_json()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", - "norm_label": "dva_collection()", + "norm_label": "figure_json()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L530" + "source_location": "L851" }, { "id": "src_cellpy_simple_gui_core_collect_overlay_facets", @@ -5792,7 +6140,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "_overlay_facets()", "source_file": "src/cellpy_simple_gui/core/collect.py", @@ -5804,7 +6152,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "present_cycle_pairs()", "source_file": "src/cellpy_simple_gui/core/collect.py", @@ -5816,23 +6164,35 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "restrict_to_cycle_pairs()", "source_file": "src/cellpy_simple_gui/core/collect.py", "source_location": "L578" }, { - "id": "src_cellpy_simple_gui_core_collect_select_ica_direction", - "label": "select_ica_direction()", + "id": "src_cellpy_simple_gui_core_collect_stamp_warnings", + "label": "_stamp_warnings()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", - "norm_label": "select_ica_direction()", + "norm_label": "_stamp_warnings()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L549" + "source_location": "L901" + }, + { + "id": "src_cellpy_simple_gui_core_collect_trace_cell_label", + "label": "_trace_cell_label()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "plotting.py", + "file_type": "code", + "norm_label": "_trace_cell_label()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1205" }, { "id": "src_cellpy_simple_gui_core_cycle_report_build_reports", @@ -5840,7 +6200,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "build_reports()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -5852,7 +6212,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "compress_ranges()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -5864,7 +6224,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": ".__bool__()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -5876,7 +6236,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": ".dropped()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -5888,7 +6248,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": ".message()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -5900,7 +6260,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "messages()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -5912,31 +6272,19 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "_plural()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", "source_location": "L34" }, - { - "id": "src_cellpy_simple_gui_core_export_cells_export", - "label": "cells_export()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "cells_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L255" - }, { "id": "src_cellpy_simple_gui_core_export_compare_export", "label": "compare_export()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "compare_export()", "source_file": "src/cellpy_simple_gui/core/export.py", @@ -5948,115 +6296,19 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "compare_figure_export()", "source_file": "src/cellpy_simple_gui/core/export.py", "source_location": "L128" }, - { - "id": "src_cellpy_simple_gui_core_export_cycles_figure_export", - "label": "cycles_figure_export()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "cycles_figure_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L105" - }, - { - "id": "src_cellpy_simple_gui_core_export_dva_export", - "label": "dva_export()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "dva_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L151" - }, - { - "id": "src_cellpy_simple_gui_core_export_dva_figure_export", - "label": "dva_figure_export()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "dva_figure_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L162" - }, - { - "id": "src_cellpy_simple_gui_core_export_figure_bytes", - "label": "figure_bytes()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "figure_bytes()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L168" - }, - { - "id": "src_cellpy_simple_gui_core_export_ica_figure_export", - "label": "ica_figure_export()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "ica_figure_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L145" - }, - { - "id": "src_cellpy_simple_gui_core_export_safe_stem", - "label": "_safe_stem()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "_safe_stem()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L207" - }, - { - "id": "src_cellpy_simple_gui_core_export_unique_stems", - "label": "_unique_stems()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "_unique_stems()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L213" - }, - { - "id": "src_cellpy_simple_gui_core_export_zip_members", - "label": "_zip_members()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "_zip_members()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L225" - }, { "id": "src_cellpy_simple_gui_core_models_compareplotspec_pairs", "label": ".pairs()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": ".pairs()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -6068,7 +6320,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "compare_collection()", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -6080,7 +6332,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "compare_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -6092,7 +6344,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "_cycle_availability()", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -6104,19 +6356,31 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "cycle_info_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", "source_location": "L308" }, + { + "id": "src_cellpy_simple_gui_core_plotting_cycles_figure", + "label": "cycles_figure()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "plotting.py", + "file_type": "code", + "norm_label": "cycles_figure()", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L162" + }, { "id": "src_cellpy_simple_gui_core_plotting_dva_figure", "label": "dva_figure()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "dva_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -6128,7 +6392,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "_guard_no_cycles()", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -6140,7 +6404,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "ica_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -6152,31 +6416,19 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "_nothing_to_draw_json()", "source_file": "src/cellpy_simple_gui/core/plotting.py", "source_location": "L109" }, - { - "id": "src_cellpy_simple_gui_core_plotting_raw_figure", - "label": "raw_figure()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "raw_figure()", - "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L295" - }, { "id": "src_cellpy_simple_gui_core_plotting_single_cell_reports", "label": "_single_cell_reports()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "_single_cell_reports()", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -6188,7 +6440,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "test_build_reports_splits_missing_from_unreadable()", "source_file": "tests/test_core.py", @@ -6200,7 +6452,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "data()", "source_file": "tests/test_core.py", @@ -6218,18 +6470,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 108, - "community_name": "ro", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba_get", "label": ".get()", @@ -6266,42 +6506,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 108, - "community_name": "ro", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_destroy", - "label": ".destroy()", - "_callable": true, - "_origin": "ast", - "community": 108, - "community_name": "ro", - "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_isempty", - "label": ".isEmpty()", - "_callable": true, - "_origin": "ast", - "community": 108, - "community_name": "ro", - "file_type": "code", - "norm_label": ".isempty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ro_constructor", "label": ".constructor()", @@ -6603,350 +6807,350 @@ "source_location": "L8" }, { - "id": "tests_test_api_add_cells_modal_html", - "label": "_add_cells_modal_html()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "_default_visible_hints", + "community_name": "ri", "file_type": "code", - "norm_label": "_add_cells_modal_html()", - "source_file": "tests/test_api.py", - "source_location": "L585" + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_default_visible_hints", - "label": "_default_visible_hints()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "_default_visible_hints", + "community_name": "ri", "file_type": "code", - "norm_label": "_default_visible_hints()", - "source_file": "tests/test_api.py", - "source_location": "L604" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_default_visible_hints_handle_endtag", - "label": "handle_endtag()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_createobject", + "label": "._createObject()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "_default_visible_hints", + "community_name": "ri", "file_type": "code", - "norm_label": "handle_endtag()", - "source_file": "tests/test_api.py", - "source_location": "L636" + "norm_label": "._createobject()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_default_visible_hints_handle_starttag", - "label": "handle_starttag()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeallobjects", + "label": ".freeAllObjects()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "_default_visible_hints", + "community_name": "ri", "file_type": "code", - "norm_label": "handle_starttag()", - "source_file": "tests/test_api.py", - "source_location": "L622" + "norm_label": ".freeallobjects()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_default_visible_hints_init", - "label": "__init__()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeobject", + "label": ".freeObject()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "_default_visible_hints", + "community_name": "ri", "file_type": "code", - "norm_label": "__init__()", - "source_file": "tests/test_api.py", - "source_location": "L616" + "norm_label": ".freeobject()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_template_html", - "label": "_template_html()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getobjectforid", + "label": ".getObjectForId()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "_default_visible_hints", + "community_name": "ri", "file_type": "code", - "norm_label": "_template_html()", - "source_file": "tests/test_api.py", - "source_location": "L517" + "norm_label": ".getobjectforid()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_add_cells_modal_has_one_primary_action", - "label": "test_add_cells_modal_has_one_primary_action()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getorcreatefreeobject", + "label": ".getOrCreateFreeObject()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "_default_visible_hints", + "community_name": "ri", "file_type": "code", - "norm_label": "test_add_cells_modal_has_one_primary_action()", - "source_file": "tests/test_api.py", - "source_location": "L592" + "norm_label": ".getorcreatefreeobject()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_default_visible_hint_budget", - "label": "test_default_visible_hint_budget()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_isfull", + "label": ".isFull()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "_default_visible_hints", + "community_name": "ri", "file_type": "code", - "norm_label": "test_default_visible_hint_budget()", - "source_file": "tests/test_api.py", - "source_location": "L646" + "norm_label": ".isfull()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_setmaxbounds", - "label": ".setMaxBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 112, - "community_name": "qi", + "community": 110, + "community_name": "ri", "file_type": "code", - "norm_label": ".setmaxbounds()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_clearwatch", - "label": "._clearWatch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_stampobject", + "label": ".stampObject()", "_callable": true, "_origin": "ast", - "community": 112, - "community_name": "qi", + "community": 110, + "community_name": "ri", "file_type": "code", - "norm_label": "._clearwatch()", + "norm_label": ".stampobject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_useobject", + "label": ".useObject()", "_callable": true, "_origin": "ast", - "community": 112, - "community_name": "qi", + "community": 110, + "community_name": "ri", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".useobject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_interpolate", - "label": ".interpolate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createbutton", + "label": "_createButton()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".interpolate()", + "norm_label": "_createbutton()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_isoutofmapmaxbounds", - "label": "._isOutOfMapMaxBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousemovewindow", + "label": ".mousemoveWindow()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": "._isoutofmapmaxbounds()", + "norm_label": ".mousemovewindow()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_seterrorstate", - "label": "._setErrorState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": "._seterrorstate()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_trigger", - "label": ".trigger()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_setupui", + "label": "._setupUI()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".trigger()", + "norm_label": "._setupui()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_updatecircleradius", - "label": "._updateCircleRadius()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_create", + "label": ".create()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": "._updatecircleradius()", + "norm_label": ".create()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_settransform", + "label": ".setTransform()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".settransform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_convert", - "label": ".convert()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_clearwatch", + "label": "._clearWatch()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".convert()", + "norm_label": "._clearwatch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_distanceto", - "label": ".distanceTo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".distanceto()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_toarray", - "label": ".toArray()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_interpolate", + "label": ".interpolate()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".toarray()", + "norm_label": ".interpolate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_geteast", - "label": ".getEast()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".geteast()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getnorth", - "label": ".getNorth()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_seterrorstate", + "label": "._setErrorState()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".getnorth()", + "norm_label": "._seterrorstate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getnortheast", - "label": ".getNorthEast()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_trigger", + "label": ".trigger()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".getnortheast()", + "norm_label": ".trigger()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getnorthwest", - "label": ".getNorthWest()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_updatecircleradius", + "label": "._updateCircleRadius()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".getnorthwest()", + "norm_label": "._updatecircleradius()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getsouth", - "label": ".getSouth()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_distanceto", + "label": ".distanceTo()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".getsouth()", + "norm_label": ".distanceto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getsoutheast", - "label": ".getSouthEast()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".getsoutheast()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getwest", - "label": ".getWest()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getnortheast", + "label": ".getNorthEast()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": "qi", + "community_name": ".create", "file_type": "code", - "norm_label": ".getwest()", + "norm_label": ".getnortheast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -6963,19 +7167,19 @@ "source_location": "L32" }, { - "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less", - "label": "test_a_default_direction_plot_says_it_drew_less()", + "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy", + "label": "test_describe_api_will_not_import_outside_cellpy()", "_callable": true, "_origin": "ast", "community": 114, "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "test_a_default_direction_plot_says_it_drew_less()", + "norm_label": "test_describe_api_will_not_import_outside_cellpy()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L109" + "source_location": "L275" }, { - "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less_steps", + "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy_steps", "label": "steps()", "_callable": true, "_origin": "ast", @@ -6984,43 +7188,7 @@ "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L112" - }, - { - "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented", - "label": "test_the_tool_surface_is_small_and_named_as_documented()", - "_callable": true, - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "code", - "norm_label": "test_the_tool_surface_is_small_and_named_as_documented()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L209" - }, - { - "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented_main", - "label": "main()", - "_callable": true, - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "code", - "norm_label": "main()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L214" - }, - { - "id": "tests_test_mcp_prototype_test_the_whole_arc_over_the_protocol", - "label": "test_the_whole_arc_over_the_protocol()", - "_callable": true, - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "code", - "norm_label": "test_the_whole_arc_over_the_protocol()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L77" + "source_location": "L283" }, { "id": "tools_gen_llms_txt_describe_guide", @@ -7083,16 +7251,196 @@ "source_location": "L118" }, { - "id": "tests_test_guides_test_the_upstream_bugs_the_guides_describe_are_still_bugs", - "label": "test_the_upstream_bugs_the_guides_describe_are_still_bugs()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_an", + "label": "An()", "_callable": true, "_origin": "ast", "community": 119, - "community_name": "The cold-context agent test", + "community_name": "Mn", "file_type": "code", - "norm_label": "test_the_upstream_bugs_the_guides_describe_are_still_bugs()", - "source_file": "tests/test_guides.py", - "source_location": "L49" + "norm_label": "an()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 119, + "community_name": "Mn", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_clone", + "label": ".clone()", + "_callable": true, + "_origin": "ast", + "community": 119, + "community_name": "Mn", + "file_type": "code", + "norm_label": ".clone()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 119, + "community_name": "Mn", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_evaluate", + "label": ".evaluate()", + "_callable": true, + "_origin": "ast", + "community": 119, + "community_name": "Mn", + "file_type": "code", + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_evaluatewithouterrorhandling", + "label": ".evaluateWithoutErrorHandling()", + "_callable": true, + "_origin": "ast", + "community": 119, + "community_name": "Mn", + "file_type": "code", + "norm_label": ".evaluatewithouterrorhandling()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_getcenter", + "label": ".getCenter()", + "_callable": true, + "_origin": "ast", + "community": 119, + "community_name": "Mn", + "file_type": "code", + "norm_label": ".getcenter()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_interpolate", + "label": ".interpolate()", + "_callable": true, + "_origin": "ast", + "community": 119, + "community_name": "Mn", + "file_type": "code", + "norm_label": ".interpolate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_tojson", + "label": ".toJSON()", + "_callable": true, + "_origin": "ast", + "community": 119, + "community_name": "Mn", + "file_type": "code", + "norm_label": ".tojson()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmaxbounds", + "label": "setMaxBounds()", + "_callable": true, + "_origin": "ast", + "community": 119, + "community_name": "Mn", + "file_type": "code", + "norm_label": "setmaxbounds()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "tests_test_api_add_cells_modal_html", + "label": "_add_cells_modal_html()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "_add_cells_modal_html()", + "source_file": "tests/test_api.py", + "source_location": "L585" + }, + { + "id": "tests_test_api_component_names", + "label": "_component_names()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "_component_names()", + "source_file": "tests/test_api.py", + "source_location": "L523" + }, + { + "id": "tests_test_api_default_visible_hints", + "label": "_default_visible_hints()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "_default_visible_hints()", + "source_file": "tests/test_api.py", + "source_location": "L604" + }, + { + "id": "tests_test_api_default_visible_hints_handle_endtag", + "label": "handle_endtag()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "handle_endtag()", + "source_file": "tests/test_api.py", + "source_location": "L636" + }, + { + "id": "tests_test_api_default_visible_hints_handle_starttag", + "label": "handle_starttag()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "handle_starttag()", + "source_file": "tests/test_api.py", + "source_location": "L622" + }, + { + "id": "tests_test_api_default_visible_hints_init", + "label": "__init__()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "__init__()", + "source_file": "tests/test_api.py", + "source_location": "L616" }, { "id": "tests_test_api_dva_spec", @@ -7106,6 +7454,66 @@ "source_file": "tests/test_api.py", "source_location": "L297" }, + { + "id": "tests_test_api_free_identifiers", + "label": "_free_identifiers()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "_free_identifiers()", + "source_file": "tests/test_api.py", + "source_location": "L539" + }, + { + "id": "tests_test_api_template_html", + "label": "_template_html()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "_template_html()", + "source_file": "tests/test_api.py", + "source_location": "L517" + }, + { + "id": "tests_test_api_test_add_cells_modal_has_one_primary_action", + "label": "test_add_cells_modal_has_one_primary_action()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_add_cells_modal_has_one_primary_action()", + "source_file": "tests/test_api.py", + "source_location": "L592" + }, + { + "id": "tests_test_api_test_api_works_without_pywebview", + "label": "test_api_works_without_pywebview()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_api_works_without_pywebview()", + "source_file": "tests/test_api.py", + "source_location": "L680" + }, + { + "id": "tests_test_api_test_app_js_parses", + "label": "test_app_js_parses()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_app_js_parses()", + "source_file": "tests/test_api.py", + "source_location": "L453" + }, { "id": "tests_test_api_test_branding_static_assets", "label": "test_branding_static_assets()", @@ -7118,6 +7526,42 @@ "source_file": "tests/test_api.py", "source_location": "L40" }, + { + "id": "tests_test_api_test_cellpy_config_diagnostics_endpoint", + "label": "test_cellpy_config_diagnostics_endpoint()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_cellpy_config_diagnostics_endpoint()", + "source_file": "tests/test_api.py", + "source_location": "L73" + }, + { + "id": "tests_test_api_test_default_visible_hint_budget", + "label": "test_default_visible_hint_budget()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_default_visible_hint_budget()", + "source_file": "tests/test_api.py", + "source_location": "L646" + }, + { + "id": "tests_test_api_test_desktop_import_failure_names_the_extra", + "label": "test_desktop_import_failure_names_the_extra()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_desktop_import_failure_names_the_extra()", + "source_file": "tests/test_api.py", + "source_location": "L711" + }, { "id": "tests_test_api_test_diagnostics_are_dev_only", "label": "test_diagnostics_are_dev_only()", @@ -7154,6 +7598,18 @@ "source_file": "tests/test_api.py", "source_location": "L328" }, + { + "id": "tests_test_api_test_examples", + "label": "test_examples()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_examples()", + "source_file": "tests/test_api.py", + "source_location": "L143" + }, { "id": "tests_test_api_test_export_cells_cellpy", "label": "test_export_cells_cellpy()", @@ -7214,6 +7670,42 @@ "source_file": "tests/test_api.py", "source_location": "L821" }, + { + "id": "tests_test_api_test_healthz", + "label": "test_healthz()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_healthz()", + "source_file": "tests/test_api.py", + "source_location": "L36" + }, + { + "id": "tests_test_api_test_index_alpine_state_is_defined", + "label": "test_index_alpine_state_is_defined()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_index_alpine_state_is_defined()", + "source_file": "tests/test_api.py", + "source_location": "L474" + }, + { + "id": "tests_test_api_test_index_click_and_show_targets_exist", + "label": "test_index_click_and_show_targets_exist()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_index_click_and_show_targets_exist()", + "source_file": "tests/test_api.py", + "source_location": "L561" + }, { "id": "tests_test_api_test_index_uses_cellpy_logo", "label": "test_index_uses_cellpy_logo()", @@ -7262,6 +7754,18 @@ "source_file": "tests/test_api.py", "source_location": "L839" }, + { + "id": "tests_test_api_test_native_dialogs_refuse_without_pywebview", + "label": "test_native_dialogs_refuse_without_pywebview()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_native_dialogs_refuse_without_pywebview()", + "source_file": "tests/test_api.py", + "source_location": "L699" + }, { "id": "tests_test_api_test_pin_config_requires_a_project", "label": "test_pin_config_requires_a_project()", @@ -7334,6 +7838,30 @@ "source_file": "tests/test_api.py", "source_location": "L778" }, + { + "id": "tests_test_api_test_served_instance_refuses_paths_outside_its_data_dir", + "label": "test_served_instance_refuses_paths_outside_its_data_dir()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_served_instance_refuses_paths_outside_its_data_dir()", + "source_file": "tests/test_api.py", + "source_location": "L745" + }, + { + "id": "tests_test_api_test_served_instance_will_not_load_files_from_the_host", + "label": "test_served_instance_will_not_load_files_from_the_host()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_served_instance_will_not_load_files_from_the_host()", + "source_file": "tests/test_api.py", + "source_location": "L761" + }, { "id": "tests_test_api_test_system_capabilities_no_file_picker", "label": "test_system_capabilities_no_file_picker()", @@ -7359,76 +7887,64 @@ "source_location": "L66" }, { - "id": "tests_test_api_test_webview_file_type_filters_are_valid", - "label": "test_webview_file_type_filters_are_valid()", + "id": "tests_test_api_test_system_save_rejected_without_webview", + "label": "test_system_save_rejected_without_webview()", "_callable": true, "_origin": "ast", "community": 12, "community_name": "test_api.py", "file_type": "code", - "norm_label": "test_webview_file_type_filters_are_valid()", + "norm_label": "test_system_save_rejected_without_webview()", "source_file": "tests/test_api.py", - "source_location": "L91" + "source_location": "L111" }, { - "id": "tests_test_api_wait_for_job", - "label": "_wait_for_job()", + "id": "tests_test_api_test_token_required", + "label": "test_token_required()", "_callable": true, "_origin": "ast", "community": 12, "community_name": "test_api.py", "file_type": "code", - "norm_label": "_wait_for_job()", + "norm_label": "test_token_required()", "source_file": "tests/test_api.py", - "source_location": "L25" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ch", - "label": "ch()", - "_callable": true, - "_origin": "ast", - "community": 120, - "community_name": "dh", - "file_type": "code", - "norm_label": "ch()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "source_location": "L122" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dh", - "label": "dh()", + "id": "tests_test_api_test_webview_file_type_filters_are_valid", + "label": "test_webview_file_type_filters_are_valid()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": "dh()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_webview_file_type_filters_are_valid()", + "source_file": "tests/test_api.py", + "source_location": "L91" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addtolinevertexarray", - "label": ".addToLineVertexArray()", + "id": "tests_test_api_wait_for_job", + "label": "_wait_for_job()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": ".addtolinevertexarray()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_wait_for_job()", + "source_file": "tests/test_api.py", + "source_location": "L25" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addtosortkeyranges", - "label": ".addToSortKeyRanges()", + "id": "tests_test_api_without_webview", + "label": "_without_webview()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": ".addtosortkeyranges()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_without_webview()", + "source_file": "tests/test_api.py", + "source_location": "L670" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fh", @@ -7436,7 +7952,7 @@ "_callable": true, "_origin": "ast", "community": 120, - "community_name": "dh", + "community_name": "mh", "file_type": "code", "norm_label": "fh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7448,249 +7964,213 @@ "_callable": true, "_origin": "ast", "community": 120, - "community_name": "dh", + "community_name": "mh", "file_type": "code", "norm_label": "hh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_getvalue", - "label": ".getValue()", - "_callable": true, - "_origin": "ast", - "community": 120, - "community_name": "dh", - "file_type": "code", - "norm_label": ".getvalue()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_serialize", - "label": ".serialize()", - "_callable": true, - "_origin": "ast", - "community": 120, - "community_name": "dh", - "file_type": "code", - "norm_label": ".serialize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jl", - "label": "jl()", - "_callable": true, - "_origin": "ast", - "community": 120, - "community_name": "dh", - "file_type": "code", - "norm_label": "jl()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mh", "label": "mh()", "_callable": true, "_origin": "ast", "community": 120, - "community_name": "dh", + "community_name": "mh", "file_type": "code", "norm_label": "mh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_equals", - "label": ".equals()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ph", + "label": "ph()", "_callable": true, "_origin": "ast", "community": 120, - "community_name": "dh", + "community_name": "mh", "file_type": "code", - "norm_label": ".equals()", + "norm_label": "ph()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_addfeature", - "label": ".addFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qh", + "label": "qh()", "_callable": true, "_origin": "ast", "community": 120, - "community_name": "dh", + "community_name": "mh", "file_type": "code", - "norm_label": ".addfeature()", + "norm_label": "qh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ph", - "label": "ph()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uh_clone", + "label": ".clone()", "_callable": true, "_origin": "ast", "community": 120, - "community_name": "dh", + "community_name": "mh", "file_type": "code", - "norm_label": "ph()", + "norm_label": ".clone()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_addfeature", - "label": ".addFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uh_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 120, - "community_name": "dh", + "community_name": "mh", "file_type": "code", - "norm_label": ".addfeature()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qh", - "label": "qh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vh", + "label": "Vh()", "_callable": true, "_origin": "ast", "community": 120, - "community_name": "dh", + "community_name": "mh", "file_type": "code", - "norm_label": "qh()", + "norm_label": "vh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uh_clone", - "label": ".clone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yh", + "label": "yh()", "_callable": true, "_origin": "ast", "community": 120, - "community_name": "dh", + "community_name": "mh", "file_type": "code", - "norm_label": ".clone()", + "norm_label": "yh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uh_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_al", + "label": "al()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "al()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ul", - "label": "Ul()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il", + "label": "il()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": "ul()", + "norm_label": "il()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vh", - "label": "Vh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il_feature", + "label": ".feature()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": "vh()", + "norm_label": ".feature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_br", - "label": ".br()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jl", + "label": "jl()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": ".br()", + "norm_label": "jl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_addfeature", + "label": ".addFeature()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".addfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_displaysize", - "label": ".displaySize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": ".displaysize()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tl", - "label": ".tl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": ".tl()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tlbr", - "label": ".tlbr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": ".tlbr()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yh", - "label": "yh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_uploadpending", + "label": ".uploadPending()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": "yh()", + "norm_label": ".uploadpending()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zh", - "label": "zh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ul", + "label": "Ul()", "_callable": true, "_origin": "ast", - "community": 120, - "community_name": "dh", + "community": 124, + "community_name": "nl", "file_type": "code", - "norm_label": "zh()", + "norm_label": "ul()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -7898,6 +8378,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_getbinding", + "label": ".getBinding()", + "_callable": true, + "_origin": "ast", + "community": 13, + "community_name": "wo", + "file_type": "code", + "norm_label": ".getbinding()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eo_constructor", "label": ".constructor()", @@ -7970,18 +8462,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 13, - "community_name": "wo", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_getbinding", "label": ".getBinding()", @@ -7994,18 +8474,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_setuniform", - "label": ".setUniform()", - "_callable": true, - "_origin": "ast", - "community": 13, - "community_name": "wo", - "file_type": "code", - "norm_label": ".setuniform()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_so_constructor", "label": ".constructor()", @@ -8126,6 +8594,54 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 13, + "community_name": "wo", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_displaysize", + "label": ".displaySize()", + "_callable": true, + "_origin": "ast", + "community": 13, + "community_name": "wo", + "file_type": "code", + "norm_label": ".displaysize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tl", + "label": ".tl()", + "_callable": true, + "_origin": "ast", + "community": 13, + "community_name": "wo", + "file_type": "code", + "norm_label": ".tl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tlbr", + "label": ".tlbr()", + "_callable": true, + "_origin": "ast", + "community": 13, + "community_name": "wo", + "file_type": "code", + "norm_label": ".tlbr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_getbinding", "label": ".getBinding()", @@ -8174,6 +8690,90 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 130, + "community_name": "wn", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_endmove", + "label": ".endMove()", + "_callable": true, + "_origin": "ast", + "community": 130, + "community_name": "wn", + "file_type": "code", + "norm_label": ".endmove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_frominvprojectionmatrix", + "label": ".fromInvProjectionMatrix()", + "_callable": true, + "_origin": "ast", + "community": 130, + "community_name": "wn", + "file_type": "code", + "norm_label": ".frominvprojectionmatrix()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidendevent", + "label": ".isValidEndEvent()", + "_callable": true, + "_origin": "ast", + "community": 130, + "community_name": "wn", + "file_type": "code", + "norm_label": ".isvalidendevent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidmoveevent", + "label": ".isValidMoveEvent()", + "_callable": true, + "_origin": "ast", + "community": 130, + "community_name": "wn", + "file_type": "code", + "norm_label": ".isvalidmoveevent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidstartevent", + "label": ".isValidStartEvent()", + "_callable": true, + "_origin": "ast", + "community": 130, + "community_name": "wn", + "file_type": "code", + "norm_label": ".isvalidstartevent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_startmove", + "label": ".startMove()", + "_callable": true, + "_origin": "ast", + "community": 130, + "community_name": "wn", + "file_type": "code", + "norm_label": ".startmove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_factory", "label": ".factory()", @@ -8234,6 +8834,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_mousebutton", + "label": ".mouseButton()", + "_callable": true, + "_origin": "ast", + "community": 130, + "community_name": "wn", + "file_type": "code", + "norm_label": ".mousebutton()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_parse", "label": ".parse()", @@ -8367,182 +8979,122 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_draw", - "label": ".draw()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addcurrentvertex", + "label": ".addCurrentVertex()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": ".draw()", + "norm_label": ".addcurrentvertex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_draw", - "label": ".draw()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": ".draw", - "file_type": "code", - "norm_label": ".draw()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getpaintvertexbuffers", - "label": ".getPaintVertexBuffers()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": ".draw", - "file_type": "code", - "norm_label": ".getpaintvertexbuffers()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_setuniforms", - "label": ".setUniforms()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": ".draw", - "file_type": "code", - "norm_label": ".setuniforms()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_rendertileclippingmasks", - "label": "._renderTileClippingMasks()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": ".draw", - "file_type": "code", - "norm_label": "._rendertileclippingmasks()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setcustomlayerdefaults", - "label": ".setCustomLayerDefaults()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": ".draw", - "file_type": "code", - "norm_label": ".setcustomlayerdefaults()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_deletevertexarray", - "label": ".deleteVertexArray()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addhalfvertex", + "label": ".addHalfVertex()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": ".deletevertexarray()", + "norm_label": ".addhalfvertex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addline", + "label": ".addLine()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".addline()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setcolormode", - "label": ".setColorMode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": ".setcolormode()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setcullface", - "label": ".setCullFace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_linefeatureclips", + "label": ".lineFeatureClips()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": ".setcullface()", + "norm_label": ".linefeatureclips()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdefault", - "label": ".setDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_update", + "label": ".update()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": ".setdefault()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdepthmode", - "label": ".setDepthMode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatedistance", + "label": ".updateDistance()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": ".setdepthmode()", + "norm_label": ".updatedistance()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setstencilmode", - "label": ".setStencilMode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatescaleddistance", + "label": ".updateScaledDistance()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": ".setstencilmode()", + "norm_label": ".updatescaleddistance()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_unbindvao", - "label": ".unbindVAO()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_uploadpending", + "label": ".uploadPending()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": ".draw", + "community_name": "Ic", "file_type": "code", - "norm_label": ".unbindvao()", + "norm_label": ".uploadpending()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -9038,18 +9590,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coordinatelocation", - "label": ".coordinateLocation()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".coordinatelocation()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getconstrained", "label": ".getConstrained()", @@ -9062,18 +9602,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_interpolatepadding", - "label": ".interpolatePadding()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".interpolatepadding()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_ispaddingequal", "label": ".isPaddingEqual()", @@ -9087,26 +9615,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pointlocation", - "label": ".pointLocation()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".pointlocation()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_setlocationatpoint", - "label": ".setLocationAtPoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_scalezoom", + "label": ".scaleZoom()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": ".setlocationatpoint()", + "norm_label": ".scalezoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -9206,18 +9722,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_updatemaptransform", - "label": "._updateMapTransform()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": "._updatemaptransform()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_unproject", "label": "unproject()", @@ -9314,6 +9818,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_query", + "label": ".query()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": ".query()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_recalculate", "label": ".recalculate()", @@ -9350,6 +9866,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lh", + "label": "lh()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": "lh()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setpaintproperty", "label": ".setPaintProperty()", @@ -9374,6 +9902,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sh", + "label": "sh()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": "sh()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uc_constructor", "label": ".constructor()", @@ -9470,6 +10010,66 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_createbucket", + "label": ".createBucket()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": ".createbucket()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_istileclipped", + "label": ".isTileClipped()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": ".istileclipped()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_queryintersectsfeature", + "label": ".queryIntersectsFeature()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": ".queryintersectsfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_queryradius", + "label": ".queryRadius()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": ".queryradius()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_recalculate", "label": ".recalculate()", @@ -9530,6 +10130,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_haspaintoverride", + "label": ".hasPaintOverride()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": ".haspaintoverride()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_queryintersectsfeature", + "label": ".queryIntersectsFeature()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "Uc", + "file_type": "code", + "norm_label": ".queryintersectsfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_recalculate", "label": ".recalculate()", @@ -9554,6 +10178,78 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "tests_test_packaging_tag_triggers", + "label": "_tag_triggers()", + "_callable": true, + "_origin": "ast", + "community": 143, + "community_name": "_workflow", + "file_type": "code", + "norm_label": "_tag_triggers()", + "source_file": "tests/test_packaging.py", + "source_location": "L314" + }, + { + "id": "tests_test_packaging_test_continuous_build_proves_itself_on_prs_but_publishes_only_from_main", + "label": "test_continuous_build_proves_itself_on_prs_but_publishes_only_from_main()", + "_callable": true, + "_origin": "ast", + "community": 143, + "community_name": "_workflow", + "file_type": "code", + "norm_label": "test_continuous_build_proves_itself_on_prs_but_publishes_only_from_main()", + "source_file": "tests/test_packaging.py", + "source_location": "L335" + }, + { + "id": "tests_test_packaging_test_continuous_tag_can_never_fire_a_release_workflow", + "label": "test_continuous_tag_can_never_fire_a_release_workflow()", + "_callable": true, + "_origin": "ast", + "community": 143, + "community_name": "_workflow", + "file_type": "code", + "norm_label": "test_continuous_tag_can_never_fire_a_release_workflow()", + "source_file": "tests/test_packaging.py", + "source_location": "L319" + }, + { + "id": "tests_test_packaging_test_release_and_continuous_publish_the_installer_zip", + "label": "test_release_and_continuous_publish_the_installer_zip()", + "_callable": true, + "_origin": "ast", + "community": 143, + "community_name": "_workflow", + "file_type": "code", + "norm_label": "test_release_and_continuous_publish_the_installer_zip()", + "source_file": "tests/test_packaging.py", + "source_location": "L395" + }, + { + "id": "tests_test_packaging_test_release_and_continuous_share_one_installer_build", + "label": "test_release_and_continuous_share_one_installer_build()", + "_callable": true, + "_origin": "ast", + "community": 143, + "community_name": "_workflow", + "file_type": "code", + "norm_label": "test_release_and_continuous_share_one_installer_build()", + "source_file": "tests/test_packaging.py", + "source_location": "L349" + }, + { + "id": "tests_test_packaging_workflow", + "label": "_workflow()", + "_callable": true, + "_origin": "ast", + "community": 143, + "community_name": "_workflow", + "file_type": "code", + "norm_label": "_workflow()", + "source_file": "tests/test_packaging.py", + "source_location": "L307" + }, { "id": "tests_test_loader_availability_test_an_unrecognised_error_is_passed_through_unchanged", "label": "test_an_unrecognised_error_is_passed_through_unchanged()", @@ -9650,13 +10346,25 @@ "source_file": "tests/test_loader_availability.py", "source_location": "L121" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bn", + "label": "bn()", + "_callable": true, + "_origin": "ast", + "community": 148, + "community_name": "bn", + "file_type": "code", + "norm_label": "bn()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9668,7 +10376,7 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".depthatpoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9680,7 +10388,7 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".getcoordstexture()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9692,7 +10400,7 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".getdemelevation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9704,7 +10412,7 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".getelevation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9716,7 +10424,7 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".getelevationforlnglatzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9728,7 +10436,7 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".getframebuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9740,7 +10448,7 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".getmeshframedelta()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9752,7 +10460,7 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".getminmaxelevation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9764,7 +10472,7 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".getmintileelevationforlnglatzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9776,7 +10484,7 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": "._getoverscaledtileidfromlnglatzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -9788,285 +10496,249 @@ "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", "norm_label": ".getterraindata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getpixels", - "label": ".getPixels()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatefogmatrix", + "label": ".calculateFogMatrix()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", - "norm_label": ".getpixels()", + "norm_label": ".calculatefogmatrix()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getunpackvector", - "label": ".getUnpackVector()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculateposmatrix", + "label": ".calculatePosMatrix()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", - "norm_label": ".getunpackvector()", + "norm_label": ".calculateposmatrix()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_maybedrawdepthandcoords", - "label": ".maybeDrawDepthAndCoords()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatetilematrix", + "label": ".calculateTileMatrix()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", + "community_name": "bn", "file_type": "code", - "norm_label": ".maybedrawdepthandcoords()", + "norm_label": ".calculatetilematrix()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createrenderbuffer", - "label": ".createRenderbuffer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_transform", + "label": ".transform()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "di", - "file_type": "code", - "norm_label": ".createrenderbuffer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", + "community_name": "bn", "file_type": "code", - "norm_label": "a()", + "norm_label": ".transform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_aborttile", - "label": ".abortTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_tilesaftertime", + "label": ".tilesAfterTime()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": ".aborttile()", + "norm_label": ".tilesaftertime()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": "c()", + "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_emplace", - "label": ".emplace()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_flip", - "label": ".flip()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".flip()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": "l()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": "f()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": "u()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_register", + "label": ".register()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": ".register()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_convert", + "label": ".convert()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": "n()", + "norm_label": ".convert()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_toarray", + "label": ".toArray()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": "o()", + "norm_label": ".toarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": "r()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_removetile", - "label": ".removeTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_tounwrapped", + "label": ".toUnwrapped()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": ".removetile()", + "norm_label": ".tounwrapped()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_maybedrawdepthandcoords", + "label": ".maybeDrawDepthAndCoords()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": "s()", + "norm_label": ".maybedrawdepthandcoords()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createrenderbuffer", + "label": ".createRenderbuffer()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".createrenderbuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loadvectortile", - "label": ".loadVectorTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getterrainelevationfunc", + "label": "._getTerrainElevationFunc()", "_callable": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 148, + "community_name": "bn", "file_type": "code", - "norm_label": ".loadvectortile()", + "norm_label": "._getterrainelevationfunc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10118,6 +10790,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_e", + "label": "E()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "e()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_f", "label": "f()", @@ -10179,31 +10863,31 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_patchupdatedimage", - "label": ".patchUpdatedImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".patchupdatedimage()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_patchupdatedimages", - "label": ".patchUpdatedImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_s", + "label": "S()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".patchupdatedimages()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_r", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_backfilldem_r", "label": "r()", "_callable": true, "_origin": "ast", @@ -10215,62 +10899,62 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_s", - "label": "S()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "s()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "u()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_backfilldem_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "r()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_apply", - "label": ".apply()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_point", + "label": ".point()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".apply()", + "norm_label": ".point()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_point", - "label": ".point()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".point()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10311,38 +10995,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_update", - "label": ".update()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".update()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fs", - "label": "fs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "fs()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_update", + "label": ".update()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "c()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10394,18 +11066,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimage", - "label": "getImage()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "getimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_x", "label": "x()", @@ -10419,67 +11079,31 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setexpirydata", - "label": ".setExpiryData()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".setexpirydata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_from", - "label": ".from()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".from()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_aborttile", - "label": ".abortTile()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".aborttile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_beginframe", - "label": ".beginFrame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".beginframe()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jc", + "label": "jc()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".bind()", + "norm_label": "jc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -10491,206 +11115,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_dispatchrendercallbacks", - "label": ".dispatchRenderCallbacks()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".dispatchrendercallbacks()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimages", - "label": ".getImages()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".getimages()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimagesforids", - "label": "._getImagesForIds()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "._getimagesforids()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpattern", - "label": ".getPattern()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".getpattern()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpixelsize", - "label": ".getPixelSize()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".getpixelsize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastile", - "label": ".hasTile()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".hastile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastransition", - "label": ".hasTransition()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".hastransition()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_isloaded", - "label": ".isLoaded()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".isloaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_listimages", - "label": ".listImages()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".listimages()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loaded", - "label": ".loaded()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".loaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_o", - "label": "o()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onremove", - "label": ".onRemove()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".onremove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_s", - "label": "s()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_serialize", - "label": ".serialize()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".serialize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setloaded", - "label": ".setLoaded()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".setloaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updateimage", - "label": ".updateImage()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".updateimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updatepatternatlas", - "label": "._updatePatternAtlas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "._updatepatternatlas()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10718,18 +11150,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_e", - "label": "e()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_h", "label": "h()", @@ -10802,18 +11222,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_t", - "label": "T()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "t()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_u", "label": "u()", @@ -10863,55 +11271,55 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mi", - "label": "mi()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_v_s", + "label": "S()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "mi()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mi", + "label": "mi()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "f()", + "norm_label": "mi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "p()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_a_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_p", + "label": "p()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "n()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_a", "label": "a()", "_callable": true, "_origin": "ast", @@ -10923,67 +11331,55 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_e", - "label": "e()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_t", - "label": "t()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "t()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_validate", + "label": "._validate()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "i()", + "norm_label": "._validate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_a_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "o()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "e()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o_t", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_t", "label": "t()", "_callable": true, "_origin": "ast", @@ -10995,43 +11391,31 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_e", - "label": "E()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "l()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "r()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_r_t", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o_t", "label": "t()", "_callable": true, "_origin": "ast", @@ -11043,43 +11427,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_p", - "label": "p()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "p()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_s", - "label": "s()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_d", - "label": "d()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "d()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_e", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_e", "label": "E()", "_callable": true, "_origin": "ast", @@ -11091,74 +11439,74 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "g()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "n()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_r_t", + "label": "t()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "r()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_updateimage", - "label": "updateImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "updateimage()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_nt", + "label": "nt()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "h()", + "norm_label": "nt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_nt", - "label": "nt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "nt()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11223,38 +11571,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_o", - "label": "o()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_h", - "label": "h()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "h()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_s", - "label": "S()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "s()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11276,7 +11600,7 @@ "_callable": true, "_origin": "ast", "community": 153, - "community_name": "cellpy MCP server (prototype)", + "community_name": "The prompts", "file_type": "code", "norm_label": "analyse_cell()", "source_file": "examples/mcp/server.py", @@ -11288,7 +11612,7 @@ "_callable": true, "_origin": "ast", "community": 153, - "community_name": "cellpy MCP server (prototype)", + "community_name": "The prompts", "file_type": "code", "norm_label": "explain_call()", "source_file": "examples/mcp/server.py", @@ -11300,7 +11624,7 @@ "_callable": true, "_origin": "ast", "community": 153, - "community_name": "cellpy MCP server (prototype)", + "community_name": "The prompts", "file_type": "code", "norm_label": "start_batch_project()", "source_file": "examples/mcp/server.py", @@ -11312,84 +11636,24 @@ "_callable": true, "_origin": "ast", "community": 157, - "community_name": "mcp/server.py", + "community_name": "_client_config_path", "file_type": "code", "norm_label": "_client_config_path()", "source_file": "examples/mcp/server.py", "source_location": "L1015" }, - { - "id": "examples_mcp_server_index", - "label": "_index()", - "_callable": true, - "_origin": "ast", - "community": 157, - "community_name": "mcp/server.py", - "file_type": "code", - "norm_label": "_index()", - "source_file": "examples/mcp/server.py", - "source_location": "L554" - }, - { - "id": "examples_mcp_server_index_offer", - "label": "offer()", - "_callable": true, - "_origin": "ast", - "community": 157, - "community_name": "mcp/server.py", - "file_type": "code", - "norm_label": "offer()", - "source_file": "examples/mcp/server.py", - "source_location": "L571" - }, { "id": "examples_mcp_server_install", "label": "_install()", "_callable": true, "_origin": "ast", "community": 157, - "community_name": "mcp/server.py", + "community_name": "_client_config_path", "file_type": "code", "norm_label": "_install()", "source_file": "examples/mcp/server.py", "source_location": "L1025" }, - { - "id": "examples_mcp_server_search_api", - "label": "search_api()", - "_callable": true, - "_origin": "ast", - "community": 157, - "community_name": "mcp/server.py", - "file_type": "code", - "norm_label": "search_api()", - "source_file": "examples/mcp/server.py", - "source_location": "L674" - }, - { - "id": "examples_mcp_server_summarise", - "label": "_summarise()", - "_callable": true, - "_origin": "ast", - "community": 157, - "community_name": "mcp/server.py", - "file_type": "code", - "norm_label": "_summarise()", - "source_file": "examples/mcp/server.py", - "source_location": "L657" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_cn", - "label": "cn()", - "_callable": true, - "_origin": "ast", - "community": 159, - "community_name": "mt", - "file_type": "code", - "norm_label": "cn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ct", "label": "ct()", @@ -11403,148 +11667,112 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_fr", - "label": "fr()", - "_callable": true, - "_origin": "ast", - "community": 159, - "community_name": "mt", - "file_type": "code", - "norm_label": "fr()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_get", - "label": "get()", - "_callable": true, - "_origin": "ast", - "community": 159, - "community_name": "mt", - "file_type": "code", - "norm_label": "get()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_has", - "label": "has()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_kn", + "label": "kn()", "_callable": true, "_origin": "ast", "community": 159, "community_name": "mt", "file_type": "code", - "norm_label": "has()", + "norm_label": "kn()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ie", - "label": "ie()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_kr", + "label": "kr()", "_callable": true, "_origin": "ast", "community": 159, "community_name": "mt", "file_type": "code", - "norm_label": "ie()", + "norm_label": "kr()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_it", - "label": "It()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_lt", + "label": "lt()", "_callable": true, "_origin": "ast", "community": 159, "community_name": "mt", "file_type": "code", - "norm_label": "it()", + "norm_label": "lt()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_je", - "label": "je()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_mt", + "label": "mt()", "_callable": true, "_origin": "ast", "community": 159, "community_name": "mt", "file_type": "code", - "norm_label": "je()", + "norm_label": "mt()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_kn", - "label": "kn()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_nr", + "label": "nr()", "_callable": true, "_origin": "ast", "community": 159, "community_name": "mt", "file_type": "code", - "norm_label": "kn()", + "norm_label": "nr()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_kr", - "label": "kr()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_p", + "label": "P()", "_callable": true, "_origin": "ast", "community": 159, "community_name": "mt", "file_type": "code", - "norm_label": "kr()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_mt", - "label": "mt()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_tr", + "label": "tr()", "_callable": true, "_origin": "ast", "community": 159, "community_name": "mt", "file_type": "code", - "norm_label": "mt()", + "norm_label": "tr()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_nr", - "label": "nr()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_wt", + "label": "Wt()", "_callable": true, "_origin": "ast", "community": 159, "community_name": "mt", "file_type": "code", - "norm_label": "nr()", + "norm_label": "wt()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_oi", - "label": "oi()", - "_callable": true, - "_origin": "ast", - "community": 159, - "community_name": "mt", - "file_type": "code", - "norm_label": "oi()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ti", - "label": "ti()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getids", + "label": ".getIds()", "_callable": true, "_origin": "ast", "community": 159, "community_name": "mt", "file_type": "code", - "norm_label": "ti()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".getids()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "tests_test_remote_find_client", @@ -11834,6 +12062,18 @@ "source_file": "tests/test_remote_find.py", "source_location": "L166" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_destruct", "label": ".destruct()", @@ -11847,62 +12087,158 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce_generate", - "label": ".generate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".generate()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_addlayer", - "label": ".addLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".addlayer()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_findmatches", - "label": ".findMatches()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_gettexture", + "label": ".getTexture()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".findmatches()", + "norm_label": ".gettexture()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_getcrosstileidslists", - "label": ".getCrossTileIDsLists()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".getcrosstileidslists()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_getscaledcoordinates", - "label": ".getScaledCoordinates()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".getscaledcoordinates()", + "norm_label": ".isenabled()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_prepareforrender", + "label": ".prepareForRender()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".prepareforrender()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ch", + "label": "ch()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": "ch()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_querysourcefeatures", + "label": ".querySourceFeatures()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".querysourcefeatures()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateplacement", + "label": "._updatePlacement()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": "._updateplacement()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_backfilldem", + "label": "._backfillDEM()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": "._backfilldem()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getrenderableids", + "label": ".getRenderableIds()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".getrenderableids()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getvisiblecoordinates", + "label": ".getVisibleCoordinates()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".getvisiblecoordinates()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_equals", + "label": ".equals()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".equals()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11954,6 +12290,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_getrenderabletiles", + "label": ".getRenderableTiles()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".getrenderabletiles()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_getterraincoords", "label": ".getTerrainCoords()", @@ -11966,6 +12314,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_gettilebyid", + "label": ".getTileByID()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".gettilebyid()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_i", "label": "i()", @@ -12015,14 +12375,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_tilesaftertime", - "label": ".tilesAfterTime()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_querysourcefeatures", + "label": "querySourceFeatures()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".tilesaftertime()", + "norm_label": "querysourcefeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -12063,52 +12423,40 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_addbucket", - "label": ".addBucket()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".addbucket()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_handlewrapjump", - "label": ".handleWrapJump()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_islessthan", + "label": ".isLessThan()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".handlewrapjump()", + "norm_label": ".islessthan()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_removebucketcrosstileids", - "label": ".removeBucketCrossTileIDs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setstale", + "label": ".setStale()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".removebucketcrosstileids()", + "norm_label": ".setstale()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_removestalebuckets", - "label": ".removeStaleBuckets()", + "id": "tests_test_guides_test_the_upstream_bugs_the_guides_describe_are_still_bugs", + "label": "test_the_upstream_bugs_the_guides_describe_are_still_bugs()", "_callable": true, "_origin": "ast", - "community": 160, - "community_name": "oi", + "community": 162, + "community_name": "gen_api_reference.py", "file_type": "code", - "norm_label": ".removestalebuckets()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_the_upstream_bugs_the_guides_describe_are_still_bugs()", + "source_file": "tests/test_guides.py", + "source_location": "L49" }, { "id": "tools_gen_api_reference_describe", @@ -12195,40 +12543,16 @@ "source_location": "L263" }, { - "id": "examples_mcp_server_describe_api", - "label": "describe_api()", - "_callable": true, - "_origin": "ast", - "community": 164, - "community_name": "describe_api", - "file_type": "code", - "norm_label": "describe_api()", - "source_file": "examples/mcp/server.py", - "source_location": "L710" - }, - { - "id": "examples_mcp_server_follow_reference", - "label": "_follow_reference()", - "_callable": true, - "_origin": "ast", - "community": 164, - "community_name": "describe_api", - "file_type": "code", - "norm_label": "_follow_reference()", - "source_file": "examples/mcp/server.py", - "source_location": "L623" - }, - { - "id": "examples_mcp_server_resolve_dotted", - "label": "_resolve_dotted()", + "id": "tests_test_core_test_summary_panels_for_capacity_ce", + "label": "test_summary_panels_for_capacity_ce()", "_callable": true, "_origin": "ast", "community": 164, - "community_name": "describe_api", + "community_name": "Issue #81 \u2014 Plan: consistent CE summary panel order", "file_type": "code", - "norm_label": "_resolve_dotted()", - "source_file": "examples/mcp/server.py", - "source_location": "L531" + "norm_label": "test_summary_panels_for_capacity_ce()", + "source_file": "tests/test_core.py", + "source_location": "L1238" }, { "id": "packaging_entry_log_dir", @@ -12284,7 +12608,7 @@ "_callable": true, "_origin": "ast", "community": 168, - "community_name": "smoke_test.py", + "community_name": "Client", "file_type": "code", "norm_label": ".call()", "source_file": "packaging/smoke_test.py", @@ -12296,7 +12620,7 @@ "_callable": true, "_origin": "ast", "community": 168, - "community_name": "smoke_test.py", + "community_name": "Client", "file_type": "code", "norm_label": ".close()", "source_file": "packaging/smoke_test.py", @@ -12308,7 +12632,7 @@ "_callable": true, "_origin": "ast", "community": 168, - "community_name": "smoke_test.py", + "community_name": "Client", "file_type": "code", "norm_label": ".__init__()", "source_file": "packaging/smoke_test.py", @@ -12320,55 +12644,19 @@ "_callable": true, "_origin": "ast", "community": 168, - "community_name": "smoke_test.py", + "community_name": "Client", "file_type": "code", "norm_label": ".job()", "source_file": "packaging/smoke_test.py", "source_location": "L126" }, - { - "id": "packaging_smoke_test_launchedapp_close", - "label": ".close()", - "_callable": true, - "_origin": "ast", - "community": 168, - "community_name": "smoke_test.py", - "file_type": "code", - "norm_label": ".close()", - "source_file": "packaging/smoke_test.py", - "source_location": "L172" - }, - { - "id": "packaging_smoke_test_launchedapp_init", - "label": ".__init__()", - "_callable": true, - "_origin": "ast", - "community": 168, - "community_name": "smoke_test.py", - "file_type": "code", - "norm_label": ".__init__()", - "source_file": "packaging/smoke_test.py", - "source_location": "L143" - }, - { - "id": "packaging_smoke_test_launchedapp_wait_for_url", - "label": ".wait_for_url()", - "_callable": true, - "_origin": "ast", - "community": 168, - "community_name": "smoke_test.py", - "file_type": "code", - "norm_label": ".wait_for_url()", - "source_file": "packaging/smoke_test.py", - "source_location": "L152" - }, { "id": "packaging_smoke_test_main", "label": "main()", "_callable": true, "_origin": "ast", "community": 168, - "community_name": "smoke_test.py", + "community_name": "Client", "file_type": "code", "norm_label": "main()", "source_file": "packaging/smoke_test.py", @@ -12380,7 +12668,7 @@ "_callable": true, "_origin": "ast", "community": 168, - "community_name": "smoke_test.py", + "community_name": "Client", "file_type": "code", "norm_label": "run_checks()", "source_file": "packaging/smoke_test.py", @@ -12392,191 +12680,359 @@ "_callable": true, "_origin": "ast", "community": 168, - "community_name": "smoke_test.py", + "community_name": "Client", "file_type": "code", "norm_label": "skip()", "source_file": "packaging/smoke_test.py", "source_location": "L54" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_adddebugcollisionboxes", - "label": ".addDebugCollisionBoxes()", + "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented", + "label": "test_the_tool_surface_is_small_and_named_as_documented()", "_callable": true, "_origin": "ast", - "community": 169, - "community_name": "eu", + "community": 168, + "community_name": "Client", "file_type": "code", - "norm_label": ".adddebugcollisionboxes()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_the_tool_surface_is_small_and_named_as_documented()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L209" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addindicesforplacedsymbol", - "label": ".addIndicesForPlacedSymbol()", + "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented_main", + "label": "main()", "_callable": true, "_origin": "ast", - "community": 169, - "community_name": "eu", + "community": 168, + "community_name": "Client", "file_type": "code", - "norm_label": ".addindicesforplacedsymbol()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "main()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L214" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_createarrays", - "label": ".createArrays()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_setmaxbounds", + "label": ".setMaxBounds()", "_callable": true, "_origin": "ast", "community": 169, - "community_name": "eu", + "community_name": ".getSouthEast", "file_type": "code", - "norm_label": ".createarrays()", + "norm_label": ".setmaxbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_isoutofmapmaxbounds", + "label": "._isOutOfMapMaxBounds()", "_callable": true, "_origin": "ast", "community": 169, - "community_name": "eu", + "community_name": ".getSouthEast", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": "._isoutofmapmaxbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_destroydebugdata", - "label": ".destroyDebugData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_geteast", + "label": ".getEast()", "_callable": true, "_origin": "ast", "community": 169, - "community_name": "eu", + "community_name": ".getSouthEast", "file_type": "code", - "norm_label": ".destroydebugdata()", + "norm_label": ".geteast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_generatecollisiondebugbuffers", - "label": ".generateCollisionDebugBuffers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getnorth", + "label": ".getNorth()", "_callable": true, "_origin": "ast", "community": 169, - "community_name": "eu", + "community_name": ".getSouthEast", "file_type": "code", - "norm_label": ".generatecollisiondebugbuffers()", + "norm_label": ".getnorth()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_getsortedsymbolindexes", - "label": ".getSortedSymbolIndexes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getnorthwest", + "label": ".getNorthWest()", "_callable": true, "_origin": "ast", "community": 169, - "community_name": "eu", + "community_name": ".getSouthEast", "file_type": "code", - "norm_label": ".getsortedsymbolindexes()", + "norm_label": ".getnorthwest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasdebugdata", - "label": ".hasDebugData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getsouth", + "label": ".getSouth()", "_callable": true, "_origin": "ast", "community": 169, - "community_name": "eu", + "community_name": ".getSouthEast", "file_type": "code", - "norm_label": ".hasdebugdata()", + "norm_label": ".getsouth()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasiconcollisionboxdata", - "label": ".hasIconCollisionBoxData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getsoutheast", + "label": ".getSouthEast()", "_callable": true, "_origin": "ast", "community": 169, - "community_name": "eu", + "community_name": ".getSouthEast", "file_type": "code", - "norm_label": ".hasiconcollisionboxdata()", + "norm_label": ".getsoutheast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextcollisionboxdata", - "label": ".hasTextCollisionBoxData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getwest", + "label": ".getWest()", "_callable": true, "_origin": "ast", "community": 169, - "community_name": "eu", + "community_name": ".getSouthEast", "file_type": "code", - "norm_label": ".hastextcollisionboxdata()", + "norm_label": ".getwest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_apply_physical_meta", + "label": "apply_physical_meta()", "_callable": true, "_origin": "ast", - "community": 169, - "community_name": "eu", + "community": 17, + "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": ".isempty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "apply_physical_meta()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L760" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_sortfeatures", - "label": ".sortFeatures()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_arbin_res_reader_available", + "label": "arbin_res_reader_available()", "_callable": true, "_origin": "ast", - "community": 169, - "community_name": "eu", + "community": 17, + "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": ".sortfeatures()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "arbin_res_reader_available()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L178" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_upload", - "label": ".upload()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_capacity_curve", + "label": "capacity_curve()", "_callable": true, "_origin": "ast", - "community": 169, - "community_name": "eu", + "community": 17, + "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": ".upload()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "capacity_curve()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L551" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_cellpy_version", + "label": "cellpy_version()", "_callable": true, "_origin": "ast", - "community": 169, - "community_name": "eu", + "community": 17, + "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cellpy_version()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L822" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_apply_physical_meta", - "label": "apply_physical_meta()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_example_raw_path", + "label": "example_raw_path()", "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "apply_physical_meta()", + "norm_label": "example_raw_path()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L760" + "source_location": "L303" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_csv", + "label": "export_cell_csv()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "export_cell_csv()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L731" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_excel", + "label": "export_cell_excel()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "export_cell_excel()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L724" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_filename_for_get", + "label": "_filename_for_get()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "_filename_for_get()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L321" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_find_glob", + "label": "_find_glob()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "_find_glob()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L393" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_find_in_raw_file_directory", + "label": "_find_in_raw_file_directory()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "_find_in_raw_file_directory()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L384" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_find_remote_files", + "label": "find_remote_files()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "find_remote_files()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L407" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_get", + "label": "_get()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "_get()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L349" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_ids", + "label": "instrument_ids()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "instrument_ids()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L132" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_meta_schema", + "label": "instrument_meta_schema()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "instrument_meta_schema()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L220" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_list_instruments", + "label": "list_instruments()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "list_instruments()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L84" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_example", + "label": "load_example()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "load_example()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L60" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_file", + "label": "load_file()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "load_file()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L340" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_raw", + "label": "load_raw()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "load_raw()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L242" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_file_meta", + "label": "read_file_meta()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "read_file_meta()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L227" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta", @@ -12584,7 +13040,7 @@ "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "read_meta()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", @@ -12596,7 +13052,7 @@ "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "_num()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", @@ -12608,19 +13064,55 @@ "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "_safe()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L496" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_remake_summary", + "label": "_remake_summary()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "_remake_summary()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L741" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rewrite_loader_error", + "label": "_rewrite_loader_error()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "_rewrite_loader_error()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L291" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_save_cell", + "label": "save_cell()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "save_cell()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L717" + }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_area", "label": "set_area()", "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "set_area()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", @@ -12632,7 +13124,7 @@ "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "set_cycle_mode()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", @@ -12644,31 +13136,115 @@ "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "set_mass()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L797" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_nom_cap_specifics", + "label": "set_nom_cap_specifics()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "set_nom_cap_specifics()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L812" + }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_nominal_capacity", "label": "set_nominal_capacity()", "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "set_nominal_capacity()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L807" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_summary_frame", + "label": "summary_frame()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "summary_frame()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L529" + }, + { + "id": "src_cellpy_simple_gui_core_collect_inject_app_chrome", + "label": "_inject_app_chrome()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "_inject_app_chrome()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L653" + }, + { + "id": "src_cellpy_simple_gui_core_export_cells_export", + "label": "cells_export()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "cells_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L255" + }, + { + "id": "src_cellpy_simple_gui_core_export_export_one_cell", + "label": "_export_one_cell()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "_export_one_cell()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L233" + }, + { + "id": "src_cellpy_simple_gui_core_export_figure_bytes", + "label": "figure_bytes()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "figure_bytes()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L168" + }, + { + "id": "src_cellpy_simple_gui_core_export_zip_members", + "label": "_zip_members()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "_zip_members()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L225" + }, { "id": "src_cellpy_simple_gui_core_library_cellrecord_apply_physical_meta", "label": "._apply_physical_meta()", "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "._apply_physical_meta()", "source_file": "src/cellpy_simple_gui/core/library.py", @@ -12680,35 +13256,47 @@ "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": ".to_meta()", "source_file": "src/cellpy_simple_gui/core/library.py", "source_location": "L76" }, { - "id": "src_cellpy_simple_gui_core_library_library_selected", - "label": ".selected()", + "id": "src_cellpy_simple_gui_core_library_library_update", + "label": ".update()", "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": ".selected()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L279" + "source_location": "L183" }, { - "id": "src_cellpy_simple_gui_core_library_library_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_core_paths_is_remote_uri", + "label": "is_remote_uri()", "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": ".update()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L183" + "norm_label": "is_remote_uri()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L43" + }, + { + "id": "src_cellpy_simple_gui_core_paths_remote_paths_allowed", + "label": "remote_paths_allowed()", + "_callable": true, + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "remote_paths_allowed()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L49" }, { "id": "tests_test_api_test_edit_cell", @@ -12716,12 +13304,36 @@ "_callable": true, "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "code", "norm_label": "test_edit_cell()", "source_file": "tests/test_api.py", "source_location": "L210" }, + { + "id": "src_cellpy_simple_gui_api_jobs_daemonpool_init", + "label": ".__init__()", + "_callable": true, + "_origin": "ast", + "community": 172, + "community_name": "6. Process state and threading", + "file_type": "code", + "norm_label": ".__init__()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L141" + }, + { + "id": "src_cellpy_simple_gui_api_jobs_daemonpool_shutdown", + "label": ".shutdown()", + "_callable": true, + "_origin": "ast", + "community": 172, + "community_name": "6. Process state and threading", + "file_type": "code", + "norm_label": ".shutdown()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L164" + }, { "id": "src_cellpy_simple_gui_api_jobs_daemonpool_worker", "label": "._worker()", @@ -12734,6 +13346,18 @@ "source_file": "src/cellpy_simple_gui/api/jobs.py", "source_location": "L153" }, + { + "id": "src_cellpy_simple_gui_api_jobs_jobmanager_init", + "label": ".__init__()", + "_callable": true, + "_origin": "ast", + "community": 172, + "community_name": "6. Process state and threading", + "file_type": "code", + "norm_label": ".__init__()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L171" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_a", "label": "a()", @@ -12795,182 +13419,314 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_aborttile", + "label": ".abortTile()", "_callable": true, "_origin": "ast", - "community": 176, - "community_name": "te", + "community": 18, + "community_name": "m", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".aborttile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_pop", - "label": ".pop()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_c", + "label": "c()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".pop()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_flip", + "label": ".flip()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".flip()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_f", + "label": "f()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".set()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_center", - "label": ".center()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".center()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".set()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_removetile", + "label": ".removeTile()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".removetile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_setdefault", - "label": ".setDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".setdefault()", + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loadvectortile", + "label": ".loadVectorTile()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": ".loadvectortile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_g", + "label": "g()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": "g()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_c", + "label": "c()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": "c()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_f", + "label": "f()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": "f()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_feature", + "label": ".feature()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": ".feature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_l", + "label": "l()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": "l()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_off", + "label": ".off()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": ".off()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_on", + "label": ".on()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": ".on()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_s", + "label": "s()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_s_v", + "label": "v()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": "v()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_from", + "label": ".from()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": ".from()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -12980,7 +13736,7 @@ "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -12992,7 +13748,7 @@ "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -13004,7 +13760,7 @@ "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -13016,7 +13772,7 @@ "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -13028,297 +13784,309 @@ "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_p", + "label": "P()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_copy", + "label": ".copy()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".copy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nc", + "label": "nc()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "nc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_m", + "label": "m()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".set()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": "a()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".set()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_d", + "label": "d()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_dispose", + "label": ".dispose()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".dispose()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_f", + "label": "f()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_m", + "label": "m()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".get()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_p", + "label": "p()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".set()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v", + "label": "v()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".set()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_d", + "label": "d()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createframebuffer", + "label": ".createFramebuffer()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".createframebuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_c", + "label": "c()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "ir", + "community_name": "m", "file_type": "code", - "norm_label": ".set()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "m", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_u", + "label": "u()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 187, "community_name": "ho", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -13347,7 +14115,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -13359,19 +14127,31 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_isstatedependent", - "label": ".isStateDependent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 187, "community_name": "ho", "file_type": "code", - "norm_label": ".isstatedependent()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_isempty", + "label": ".isEmpty()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "ho", + "file_type": "code", + "norm_label": ".isempty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -13383,31 +14163,31 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qo", - "label": "qo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_isstatedependent", + "label": ".isStateDependent()", "_callable": true, "_origin": "ast", "community": 187, "community_name": "ho", "file_type": "code", - "norm_label": "qo()", + "norm_label": ".isstatedependent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_addfeatures", + "label": ".addFeatures()", "_callable": true, "_origin": "ast", "community": 187, "community_name": "ho", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".addfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -13419,148 +14199,136 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setconstantpatternpositions", - "label": ".setConstantPatternPositions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 187, "community_name": "ho", "file_type": "code", - "norm_label": ".setconstantpatternpositions()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setuniform", - "label": ".setUniform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", "community": 187, "community_name": "ho", "file_type": "code", - "norm_label": ".setuniform()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_api_test_cellpy_config_diagnostics_endpoint", - "label": "test_cellpy_config_diagnostics_endpoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 188, - "community_name": "essential", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "test_cellpy_config_diagnostics_endpoint()", - "source_file": "tests/test_api.py", - "source_location": "L73" + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_examples", - "label": "test_examples()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_uploadpending", + "label": ".uploadPending()", "_callable": true, "_origin": "ast", - "community": 188, - "community_name": "essential", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "test_examples()", - "source_file": "tests/test_api.py", - "source_location": "L143" + "norm_label": ".uploadpending()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_healthz", - "label": "test_healthz()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qo", + "label": "qo()", "_callable": true, "_origin": "ast", - "community": 188, - "community_name": "essential", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "test_healthz()", - "source_file": "tests/test_api.py", - "source_location": "L36" + "norm_label": "qo()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_served_instance_refuses_paths_outside_its_data_dir", - "label": "test_served_instance_refuses_paths_outside_its_data_dir()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 188, - "community_name": "essential", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "test_served_instance_refuses_paths_outside_its_data_dir()", - "source_file": "tests/test_api.py", - "source_location": "L745" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_served_instance_will_not_load_files_from_the_host", - "label": "test_served_instance_will_not_load_files_from_the_host()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 188, - "community_name": "essential", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "test_served_instance_will_not_load_files_from_the_host()", - "source_file": "tests/test_api.py", - "source_location": "L761" + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_token_required", - "label": "test_token_required()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 188, - "community_name": "essential", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "test_token_required()", - "source_file": "tests/test_api.py", - "source_location": "L122" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_api_works_without_pywebview", - "label": "test_api_works_without_pywebview()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 190, - "community_name": "_without_webview", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "test_api_works_without_pywebview()", - "source_file": "tests/test_api.py", - "source_location": "L680" - }, - { - "id": "tests_test_api_test_desktop_import_failure_names_the_extra", - "label": "test_desktop_import_failure_names_the_extra()", - "_callable": true, - "_origin": "ast", - "community": 190, - "community_name": "_without_webview", - "file_type": "code", - "norm_label": "test_desktop_import_failure_names_the_extra()", - "source_file": "tests/test_api.py", - "source_location": "L711" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_native_dialogs_refuse_without_pywebview", - "label": "test_native_dialogs_refuse_without_pywebview()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setconstantpatternpositions", + "label": ".setConstantPatternPositions()", "_callable": true, "_origin": "ast", - "community": 190, - "community_name": "_without_webview", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "test_native_dialogs_refuse_without_pywebview()", - "source_file": "tests/test_api.py", - "source_location": "L699" + "norm_label": ".setconstantpatternpositions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_without_webview", - "label": "_without_webview()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setuniform", + "label": ".setUniform()", "_callable": true, "_origin": "ast", - "community": 190, - "community_name": "_without_webview", + "community": 187, + "community_name": "ho", "file_type": "code", - "norm_label": "_without_webview()", - "source_file": "tests/test_api.py", - "source_location": "L670" + "norm_label": ".setuniform()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "examples_starter_app_instruments", @@ -13568,12 +14336,24 @@ "_callable": true, "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "code", "norm_label": "instruments()", "source_file": "examples/starter/app.py", "source_location": "L122" }, + { + "id": "tests_test_packaging_fake_cellpy_config_get_config", + "label": "get_config()", + "_callable": true, + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "code", + "norm_label": "get_config()", + "source_file": "tests/test_packaging.py", + "source_location": "L116" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_outputdefined", "label": ".outputDefined()", @@ -13838,18 +14618,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_geometry", "label": ".geometry()", @@ -13862,18 +14630,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_tojson", - "label": ".toJSON()", - "_callable": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": ".tojson()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_je", "label": "Je()", @@ -13934,6 +14690,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_addfeature", + "label": ".addFeature()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".addfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_constructor", "label": ".constructor()", @@ -14006,6 +14774,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_compare", + "label": ".compare()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".compare()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur_constructor", "label": ".constructor()", @@ -14054,6 +14834,114 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_br", + "label": ".br()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".br()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_shouldbeprevented", "label": "._shouldBePrevented()", @@ -14078,6 +14966,114 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_disable", + "label": ".disable()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": ".disable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_enable", + "label": ".enable()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": ".enable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_fireevent", + "label": "._fireEvent()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": "._fireevent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isactive", + "label": ".isActive()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": ".isactive()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isenabled", + "label": ".isEnabled()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": ".isenabled()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_keydown", + "label": ".keydown()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": ".keydown()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousedown", + "label": ".mousedown()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": ".mousedown()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_reset", + "label": ".reset()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": ".reset()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragstart", + "label": ".dragStart()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": ".dragstart()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_calculatetransform", "label": "._calculateTransform()", @@ -14162,6 +15158,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_shouldbeprevented", + "label": "._shouldBePrevented()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": "._shouldbeprevented()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_touchcancel", "label": ".touchcancel()", @@ -14211,38 +15219,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_keydown", - "label": ".keydown()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_enabledrag", + "label": ".enableDrag()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".keydown()", + "norm_label": ".enabledrag()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_contextmenu", - "label": ".contextmenu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isbypassed", + "label": ".isBypassed()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".contextmenu()", + "norm_label": ".isbypassed()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isbypassed", - "label": ".isBypassed()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".isbypassed()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -14259,134 +15267,134 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_preventdefault", - "label": ".preventDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_createtree", + "label": "._createTree()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 20, + "community_name": ".add", "file_type": "code", - "norm_label": ".preventdefault()", + "norm_label": "._createtree()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_dblclick", - "label": ".dblclick()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_completetask", + "label": "completeTask()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 20, + "community_name": ".add", "file_type": "code", - "norm_label": ".dblclick()", + "norm_label": "completetask()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchmove", - "label": ".touchmove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_constructor", + "label": "constructor()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 20, + "community_name": ".add", "file_type": "code", - "norm_label": ".touchmove()", + "norm_label": "constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_constructor", - "label": "constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createcanvas", + "label": "_createCanvas()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": "constructor()", + "norm_label": "_createcanvas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_contains", - "label": ".contains()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_finish", + "label": "finish()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".contains()", + "norm_label": "finish()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createbutton", - "label": "_createButton()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_gesturebeginsvertically", + "label": ".gestureBeginsVertically()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": "_createbutton()", + "norm_label": ".gesturebeginsvertically()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createcanvas", - "label": "_createCanvas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_move", + "label": "._move()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": "_createcanvas()", + "norm_label": "._move()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousemovewindow", - "label": ".mousemoveWindow()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".mousemovewindow()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchmove", + "label": ".touchmove()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".enable()", + "norm_label": ".touchmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ismoving", + "label": "isMoving()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "ismoving()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -14463,50 +15471,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_onadd", - "label": ".onAdd()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": ".add", - "file_type": "code", - "norm_label": ".onadd()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_setupui", - "label": "._setupUI()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": ".add", - "file_type": "code", - "norm_label": "._setupui()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_create", - "label": ".create()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mark", + "label": "mark()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".create()", + "norm_label": "mark()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_settransform", - "label": ".setTransform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragmove", + "label": ".dragMove()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".settransform()", + "norm_label": ".dragmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -14523,14 +15507,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_trackpointer", + "label": ".trackPointer()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".trackpointer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -14630,6 +15614,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_keydown", + "label": ".keydown()", + "_callable": true, + "_origin": "ast", + "community": 20, + "community_name": ".add", + "file_type": "code", + "norm_label": ".keydown()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_remove", "label": ".remove()", @@ -14667,446 +15663,254 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_process", + "label": "process()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": "process()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_processtask", + "label": "processTask()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": "h()", + "norm_label": "processtask()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_validatebounds", - "label": ".validateBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_contextmenu", + "label": ".contextmenu()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".validatebounds()", + "norm_label": ".contextmenu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_addclassname", - "label": ".addClassName()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_receive", + "label": "receive()", "_callable": true, "_origin": "ast", "community": 20, "community_name": ".add", "file_type": "code", - "norm_label": ".addclassname()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_copy", - "label": ".copy()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": ".copy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m", - "label": "m()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "m()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_b", - "label": "b()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "b()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_c", - "label": "c()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "c()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_f", - "label": "f()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "f()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_g", - "label": "g()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "g()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_i", - "label": "i()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "i()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_l", - "label": "l()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_t", - "label": "T()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "t()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_u", - "label": "u()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_w", - "label": "w()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "w()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_x", - "label": "x()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "x()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_z", - "label": "z()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": "z()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_broadcast", - "label": ".broadcast()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": ".broadcast()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_getactor", - "label": ".getActor()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "m", - "file_type": "code", - "norm_label": ".getactor()", + "norm_label": "receive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_adddash", - "label": ".addDash()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setuppainter", + "label": "_setupPainter()", "_callable": true, "_origin": "ast", - "community": 202, - "community_name": "m", + "community": 20, + "community_name": ".add", "file_type": "code", - "norm_label": ".adddash()", + "norm_label": "_setuppainter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_addregulardash", - "label": ".addRegularDash()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_preventdefault", + "label": ".preventDefault()", "_callable": true, "_origin": "ast", - "community": 202, - "community_name": "m", + "community": 20, + "community_name": ".add", "file_type": "code", - "norm_label": ".addregulardash()", + "norm_label": ".preventdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_addrounddash", - "label": ".addRoundDash()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_validatebounds", + "label": ".validateBounds()", "_callable": true, "_origin": "ast", - "community": 202, - "community_name": "m", + "community": 20, + "community_name": ".add", "file_type": "code", - "norm_label": ".addrounddash()", + "norm_label": ".validatebounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_dblclick", + "label": ".dblclick()", "_callable": true, "_origin": "ast", - "community": 202, - "community_name": "m", + "community": 20, + "community_name": ".add", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".dblclick()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdash", - "label": ".getDash()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_addclassname", + "label": ".addClassName()", "_callable": true, "_origin": "ast", - "community": 202, - "community_name": "m", + "community": 20, + "community_name": ".add", "file_type": "code", - "norm_label": ".getdash()", + "norm_label": ".addclassname()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdashranges", - "label": ".getDashRanges()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchmove", + "label": ".touchmove()", "_callable": true, "_origin": "ast", - "community": 202, - "community_name": "m", + "community": 20, + "community_name": ".add", "file_type": "code", - "norm_label": ".getdashranges()", + "norm_label": ".touchmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_a", + "label": "A()", "_callable": true, "_origin": "ast", - "community": 202, + "community": 203, "community_name": "m", "file_type": "code", - "norm_label": ".getdefault()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_cn", + "label": "cn()", "_callable": true, "_origin": "ast", - "community": 202, + "community": 203, "community_name": "m", "file_type": "code", - "norm_label": "i()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 202, + "community": 203, "community_name": "m", "file_type": "code", - "norm_label": "n()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "d()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_e", + "label": "E()", "_callable": true, "_origin": "ast", - "community": 202, + "community": 203, "community_name": "m", "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "e()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_has", + "label": "has()", "_callable": true, "_origin": "ast", - "community": 202, + "community": 203, "community_name": "m", "file_type": "code", - "norm_label": ".set()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "has()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_he", + "label": "he()", "_callable": true, "_origin": "ast", - "community": 202, + "community": 203, "community_name": "m", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "he()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_extend", - "label": ".extend()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ie", + "label": "ie()", "_callable": true, "_origin": "ast", - "community": 202, + "community": 203, "community_name": "m", "file_type": "code", - "norm_label": ".extend()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ie()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_a", - "label": "A()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ir", + "label": "Ir()", "_callable": true, "_origin": "ast", "community": 203, "community_name": "m", "file_type": "code", - "norm_label": "a()", + "norm_label": "ir()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_d", - "label": "d()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_je", + "label": "je()", "_callable": true, "_origin": "ast", "community": 203, "community_name": "m", "file_type": "code", - "norm_label": "d()", + "norm_label": "je()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_e", - "label": "E()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_jr", + "label": "jr()", "_callable": true, "_origin": "ast", "community": 203, "community_name": "m", "file_type": "code", - "norm_label": "e()", + "norm_label": "jr()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_he", - "label": "he()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_lr", + "label": "lr()", "_callable": true, "_origin": "ast", "community": 203, "community_name": "m", "file_type": "code", - "norm_label": "he()", + "norm_label": "lr()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, @@ -15183,28 +15987,28 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_xn", - "label": "Xn()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_vn", + "label": "Vn()", "_callable": true, "_origin": "ast", "community": 203, "community_name": "m", "file_type": "code", - "norm_label": "xn()", + "norm_label": "vn()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, { - "id": "tests_test_mcp_prototype_drive", - "label": "drive()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_xn", + "label": "Xn()", "_callable": true, "_origin": "ast", - "community": 204, - "community_name": "drive", + "community": 203, + "community_name": "m", "file_type": "code", - "norm_label": "drive()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L55" + "norm_label": "xn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { "id": "tests_test_mcp_prototype_drive_main", @@ -15212,7 +16016,7 @@ "_callable": true, "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "code", "norm_label": "main()", "source_file": "tests/test_mcp_prototype.py", @@ -15224,7 +16028,7 @@ "_callable": true, "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "code", "norm_label": "call()", "source_file": "tests/test_mcp_prototype.py", @@ -15236,7 +16040,7 @@ "_callable": true, "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "code", "norm_label": "test_availability_is_answered_rather_than_discovered_by_drawing()", "source_file": "tests/test_mcp_prototype.py", @@ -15248,91 +16052,19 @@ "_callable": true, "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", "source_location": "L141" }, - { - "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at", - "label": "test_describe_api_follows_the_reference_the_docstring_points_at()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "test_describe_api_follows_the_reference_the_docstring_points_at()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L242" - }, - { - "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at_steps", - "label": "steps()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L251" - }, - { - "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it", - "label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L263" - }, - { - "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it_steps", - "label": "steps()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L266" - }, - { - "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy", - "label": "test_describe_api_will_not_import_outside_cellpy()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "test_describe_api_will_not_import_outside_cellpy()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L275" - }, - { - "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy_steps", - "label": "steps()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L283" - }, { "id": "tests_test_mcp_prototype_test_new_project_refuses_before_it_writes_anything", "label": "test_new_project_refuses_before_it_writes_anything()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "code", "norm_label": "test_new_project_refuses_before_it_writes_anything()", "source_file": "tests/test_mcp_prototype.py", @@ -15344,59 +16076,35 @@ "_callable": true, "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", "source_location": "L316" }, { - "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame", - "label": "test_no_tool_returns_a_frame()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "test_no_tool_returns_a_frame()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L121" - }, - { - "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame_steps", - "label": "steps()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L124" - }, - { - "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call", - "label": "test_search_api_points_at_the_module_that_defines_the_call()", + "id": "tests_test_mcp_prototype_test_paths_outside_the_sandbox_are_refused", + "label": "test_paths_outside_the_sandbox_are_refused()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "code", - "norm_label": "test_search_api_points_at_the_module_that_defines_the_call()", + "norm_label": "test_paths_outside_the_sandbox_are_refused()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L296" + "source_location": "L166" }, { - "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call_steps", + "id": "tests_test_mcp_prototype_test_paths_outside_the_sandbox_are_refused_steps", "label": "steps()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L300" + "source_location": "L169" }, { "id": "tests_test_mcp_prototype_test_the_whole_arc_over_the_protocol_steps", @@ -15404,69 +16112,21 @@ "_callable": true, "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", "source_location": "L81" }, { - "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do", - "label": "test_unknown_handles_and_kinds_are_told_what_to_do()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "test_unknown_handles_and_kinds_are_told_what_to_do()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L195" - }, - { - "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do_steps", - "label": "steps()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L198" - }, - { - "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too", - "label": "test_writes_are_sandboxed_too()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "test_writes_are_sandboxed_too()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L177" - }, - { - "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too_steps", - "label": "steps()", - "_callable": true, - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L180" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_jn", - "label": "jn()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_it", + "label": "It()", "_callable": true, "_origin": "ast", "community": 206, "community_name": "Kt", "file_type": "code", - "norm_label": "jn()", + "norm_label": "it()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, @@ -15483,14 +16143,14 @@ "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_me", - "label": "me()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_oi", + "label": "oi()", "_callable": true, "_origin": "ast", "community": 206, "community_name": "Kt", "file_type": "code", - "norm_label": "me()", + "norm_label": "oi()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, @@ -15734,18 +16394,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_containerdimensions", - "label": "_containerDimensions()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "_containerdimensions()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_draw", "label": "draw()", @@ -15770,18 +16418,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getclampedpixelratio", - "label": "_getClampedPixelRatio()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "_getclampedpixelratio()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcontainer", "label": "getContainer()", @@ -15831,31 +16467,19 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpixelratio", - "label": "getPixelRatio()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "getpixelratio()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getuistring", - "label": "_getUIString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 209, "community_name": "getImageData", "file_type": "code", - "norm_label": "_getuistring()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jn_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -15890,54 +16514,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resizecanvas", - "label": "_resizeCanvas()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "_resizecanvas()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setupcontainer", - "label": "_setupContainer()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "_setupcontainer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_addto", - "label": ".addTo()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": ".addto()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setdraggable", - "label": ".setDraggable()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": ".setdraggable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_anchorx", "label": ".anchorX()", @@ -16430,6 +17006,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_parse", + "label": ".parse()", + "_callable": true, + "_origin": "ast", + "community": 210, + "community_name": "ft", + "file_type": "code", + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_add", "label": ".add()", @@ -16442,6 +17030,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 210, + "community_name": "ft", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_get", "label": ".get()", @@ -16623,62 +17223,146 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_prepare", - "label": ".prepare()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_patchupdatedimage", + "label": ".patchUpdatedImage()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", - "norm_label": ".prepare()", + "norm_label": ".patchupdatedimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_patchupdatedimages", + "label": ".patchUpdatedImages()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", - "norm_label": ".uploadpending()", + "norm_label": ".patchupdatedimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_upload", - "label": ".upload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_transformrequest", + "label": ".transformRequest()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", - "norm_label": ".upload()", + "norm_label": ".transformrequest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_upload", - "label": ".upload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_load", + "label": "._load()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", - "norm_label": ".upload()", + "norm_label": "._load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_hasinvaliddimensions", - "label": "._hasInvalidDimensions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadempty", + "label": ".loadEmpty()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", - "norm_label": "._hasinvaliddimensions()", + "norm_label": ".loadempty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadjson", + "label": ".loadJSON()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".loadjson()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadsprite", + "label": "._loadSprite()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "._loadsprite()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadurl", + "label": ".loadURL()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".loadurl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_a", + "label": "A()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_dt", + "label": "Dt()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "dt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimage", + "label": "getImage()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "getimage()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setexpirydata", + "label": ".setExpiryData()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".setexpirydata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -16688,7 +17372,7 @@ "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -16700,31 +17384,151 @@ "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastile", + "label": ".hasTile()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".hastile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastransition", + "label": ".hasTransition()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".hastransition()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_l", + "label": "l()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "l()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_load", + "label": ".load()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".load()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loaded", + "label": ".loaded()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".loaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_o", + "label": "o()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onadd", "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onremove", + "label": ".onRemove()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".onremove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_s", + "label": "s()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_serialize", + "label": ".serialize()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".serialize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_setsourceproperty", "label": ".setSourceProperty()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".setsourceproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -16736,7 +17540,7 @@ "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".settiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -16748,31 +17552,295 @@ "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".seturl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_v", + "label": "v()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "v()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_aborttile", + "label": ".abortTile()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".aborttile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_beginframe", + "label": ".beginFrame()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".beginframe()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_bind", + "label": ".bind()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".bind()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_dispatchrendercallbacks", + "label": ".dispatchRenderCallbacks()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".dispatchrendercallbacks()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimages", + "label": ".getImages()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".getimages()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimagesforids", + "label": "._getImagesForIds()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "._getimagesforids()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpattern", + "label": ".getPattern()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".getpattern()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpixelsize", + "label": ".getPixelSize()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".getpixelsize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastile", + "label": ".hasTile()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".hastile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastransition", + "label": ".hasTransition()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".hastransition()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_isloaded", + "label": ".isLoaded()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".isloaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_listimages", + "label": ".listImages()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".listimages()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_load", + "label": ".load()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".load()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loaded", + "label": ".loaded()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".loaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loadtile", + "label": ".loadTile()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".loadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_o", + "label": "o()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onadd", "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onremove", + "label": ".onRemove()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".onremove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_s", + "label": "s()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_serialize", + "label": ".serialize()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".serialize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setloaded", + "label": ".setLoaded()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".setloaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setsourceproperty", "label": ".setSourceProperty()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".setsourceproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -16784,7 +17852,7 @@ "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".settiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -16796,19 +17864,79 @@ "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".seturl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updateimage", + "label": ".updateImage()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".updateimage()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updatepatternatlas", + "label": "._updatePatternAtlas()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "._updatepatternatlas()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_url", + "label": ".url()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".url()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loadimage", + "label": "loadImage()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "loadimage()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_load", + "label": ".load()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".load()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_onadd", "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -16820,371 +17948,503 @@ "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".play()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_update", + "label": ".update()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_j", + "label": "j()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "j()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k", + "label": "k()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "k()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k_r", + "label": "r()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_loadtile", + "label": ".loadTile()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".loadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_o", + "label": "o()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_finishloading", + "label": "._finishLoading()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": "._finishloading()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_hastransition", + "label": ".hasTransition()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".hastransition()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_load", + "label": ".load()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".load()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loaded", + "label": ".loaded()", + "_callable": true, + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".loaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onadd", "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_setcoordinates", - "label": ".setCoordinates()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", - "norm_label": ".setcoordinates()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_updateimage", - "label": ".updateImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", - "norm_label": ".updateimage()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 211, - "community_name": ".load", + "community_name": "k", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_as", - "label": "As()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_setcoordinates", + "label": ".setCoordinates()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": "as()", + "norm_label": ".setcoordinates()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getmaxvalue", - "label": ".getMaxValue()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_updateimage", + "label": ".updateImage()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".getmaxvalue()", + "norm_label": ".updateimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ks", - "label": "ks()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_gettiletexture", + "label": ".getTileTexture()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": "ks()", + "norm_label": ".gettiletexture()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_aborttile", + "label": ".abortTile()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".aborttile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_createbucket", - "label": ".createBucket()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterchildren", + "label": ".getClusterChildren()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".createbucket()", + "norm_label": ".getclusterchildren()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_handlespecialpaintpropertyupdate", - "label": "._handleSpecialPaintPropertyUpdate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterexpansionzoom", + "label": ".getClusterExpansionZoom()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": "._handlespecialpaintpropertyupdate()", + "norm_label": ".getclusterexpansionzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_hasoffscreenpass", - "label": ".hasOffscreenPass()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterleaves", + "label": ".getClusterLeaves()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".hasoffscreenpass()", + "norm_label": ".getclusterleaves()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_queryintersectsfeature", - "label": ".queryIntersectsFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getdata", + "label": ".getData()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".queryintersectsfeature()", + "norm_label": ".getdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_queryradius", - "label": ".queryRadius()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".queryradius()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_resize", - "label": ".resize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_load", + "label": ".load()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".resize()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_updatecolorramp", - "label": "._updateColorRamp()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loaded", + "label": ".loaded()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": "._updatecolorramp()", + "norm_label": ".loaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xu", - "label": "xu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "ps", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": "xu()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "Hl", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_createbucket", - "label": ".createBucket()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "Hl", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".createbucket()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_is3d", - "label": ".is3D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setclusteroptions", + "label": ".setClusterOptions()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "Hl", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".is3d()", + "norm_label": ".setclusteroptions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryintersectsfeature", - "label": ".queryIntersectsFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setdata", + "label": ".setData()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "Hl", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".queryintersectsfeature()", + "norm_label": ".setdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryradius", - "label": ".queryRadius()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updatedata", + "label": ".updateData()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "Hl", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": ".queryradius()", + "norm_label": ".updatedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ql", - "label": "ql()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updateworkerdata", + "label": "._updateWorkerData()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "Hl", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": "ql()", + "norm_label": "._updateworkerdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tc", - "label": "tc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_updateimage", + "label": "updateImage()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "Hl", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": "tc()", + "norm_label": "updateimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_file_stat", - "label": "file_stat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 214, - "community_name": ".restore_cell", + "community": 211, + "community_name": "k", "file_type": "code", - "norm_label": "file_stat()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L30" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_add_cell", - "label": ".add_cell()", + "id": "packaging_zip_installer_main", + "label": "main()", "_callable": true, "_origin": "ast", - "community": 214, - "community_name": ".restore_cell", + "community": 212, + "community_name": "zip_installer.py", "file_type": "code", - "norm_label": ".add_cell()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L115" + "norm_label": "main()", + "source_file": "packaging/zip_installer.py", + "source_location": "L39" }, { - "id": "src_cellpy_simple_gui_core_library_library_mark_clean", - "label": "._mark_clean()", + "id": "packaging_zip_installer_zip_installers", + "label": "zip_installers()", "_callable": true, "_origin": "ast", - "community": 214, - "community_name": ".restore_cell", + "community": 212, + "community_name": "zip_installer.py", "file_type": "code", - "norm_label": "._mark_clean()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L223" + "norm_label": "zip_installers()", + "source_file": "packaging/zip_installer.py", + "source_location": "L14" }, { - "id": "src_cellpy_simple_gui_core_library_library_mark_saved", - "label": ".mark_saved()", + "id": "tests_test_mcp_prototype_drive", + "label": "drive()", "_callable": true, "_origin": "ast", - "community": 214, - "community_name": ".restore_cell", + "community": 213, + "community_name": "drive", "file_type": "code", - "norm_label": ".mark_saved()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L229" + "norm_label": "drive()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L55" }, { - "id": "src_cellpy_simple_gui_core_library_library_restore_cell", - "label": ".restore_cell()", + "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame", + "label": "test_no_tool_returns_a_frame()", "_callable": true, "_origin": "ast", - "community": 214, - "community_name": ".restore_cell", + "community": 213, + "community_name": "drive", "file_type": "code", - "norm_label": ".restore_cell()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L138" + "norm_label": "test_no_tool_returns_a_frame()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L121" }, { - "id": "src_cellpy_simple_gui_core_library_library_reusable_data_file", - "label": ".reusable_data_file()", + "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 214, - "community_name": ".restore_cell", + "community": 213, + "community_name": "drive", "file_type": "code", - "norm_label": ".reusable_data_file()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L236" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L124" + }, + { + "id": "tests_test_mcp_prototype_test_the_whole_arc_over_the_protocol", + "label": "test_the_whole_arc_over_the_protocol()", + "_callable": true, + "_origin": "ast", + "community": 213, + "community_name": "drive", + "file_type": "code", + "norm_label": "test_the_whole_arc_over_the_protocol()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L77" }, { "id": "examples_starter_app_add_cells", @@ -17342,18 +18602,6 @@ "source_file": "examples/starter/app.py", "source_location": "L221" }, - { - "id": "src_cellpy_simple_gui_api_routers_ingest_ingest", - "label": "ingest()", - "_callable": true, - "_origin": "ast", - "community": 216, - "community_name": "starter/app.py", - "file_type": "code", - "norm_label": "ingest()", - "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", - "source_location": "L71" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfeaturestate", "label": ".setFeatureState()", @@ -17439,170 +18687,182 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_reloadtile", - "label": ".reloadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_continueplacement", + "label": ".continuePlacement()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".reloadtile()", + "norm_label": ".continueplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isparsed", - "label": "isParsed()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_au", + "label": "au()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": "isparsed()", + "norm_label": "au()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_removetile", - "label": ".removeTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_reloadtile", + "label": ".reloadTile()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".removetile()", + "norm_label": ".reloadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_getstate", - "label": ".getState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxes", + "label": ".deserializeCollisionBoxes()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".getstate()", + "norm_label": ".deserializecollisionboxes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesource", - "label": "removeSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxesforsymbol", + "label": "._deserializeCollisionBoxesForSymbol()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": "removesource()", + "norm_label": "._deserializecollisionboxesforsymbol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasicondata", + "label": ".hasIconData()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": ".hasicondata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmethods", - "label": "setMethods()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextdata", + "label": ".hasTextData()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": "setmethods()", + "norm_label": ".hastextdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_stream", - "label": "stream()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isparsed", + "label": "isParsed()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": "stream()", + "norm_label": "isparsed()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_aborttile", - "label": ".abortTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_removetile", + "label": ".removeTile()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".aborttile()", + "norm_label": ".removetile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterchildren", - "label": ".getClusterChildren()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_getstate", + "label": ".getState()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".getclusterchildren()", + "norm_label": ".getstate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterexpansionzoom", - "label": ".getClusterExpansionZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_continueplacement", + "label": ".continuePlacement()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".getclusterexpansionzoom()", + "norm_label": ".continueplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterleaves", - "label": ".getClusterLeaves()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".getclusterleaves()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getdata", - "label": ".getData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmethods", + "label": "setMethods()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".getdata()", + "norm_label": "setmethods()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_commit", - "label": ".commit()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_stream", + "label": "stream()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".commit()", + "norm_label": "stream()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_attemptanchorplacement", + "label": ".attemptAnchorPlacement()", + "_callable": true, + "_origin": "ast", + "community": 22, + "community_name": "wt", + "file_type": "code", + "norm_label": ".attemptanchorplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -17631,9 +18891,21 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getdemworkersource", - "label": "._getDEMWorkerSource()", - "_callable": true, + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getbucketparts", + "label": ".getBucketParts()", + "_callable": true, + "_origin": "ast", + "community": 22, + "community_name": "wt", + "file_type": "code", + "norm_label": ".getbucketparts()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getdemworkersource", + "label": "._getDEMWorkerSource()", + "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", @@ -17690,6 +18962,42 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedjustification", + "label": ".markUsedJustification()", + "_callable": true, + "_origin": "ast", + "community": 22, + "community_name": "wt", + "file_type": "code", + "norm_label": ".markusedjustification()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedorientation", + "label": ".markUsedOrientation()", + "_callable": true, + "_origin": "ast", + "community": 22, + "community_name": "wt", + "file_type": "code", + "norm_label": ".markusedorientation()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_placelayerbucketpart", + "label": ".placeLayerBucketPart()", + "_callable": true, + "_origin": "ast", + "community": 22, + "community_name": "wt", + "file_type": "code", + "norm_label": ".placelayerbucketpart()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setimages", "label": "._setImages()", @@ -17715,14 +19023,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_symbolfadechange", - "label": ".symbolFadeChange()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_storecollisiondata", + "label": ".storeCollisionData()", "_callable": true, "_origin": "ast", "community": 22, "community_name": "wt", "file_type": "code", - "norm_label": ".symbolfadechange()", + "norm_label": ".storecollisiondata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -17750,6 +19058,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatebucketopacities", + "label": ".updateBucketOpacities()", + "_callable": true, + "_origin": "ast", + "community": 22, + "community_name": "wt", + "file_type": "code", + "norm_label": ".updatebucketopacities()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatelayeropacities", + "label": ".updateLayerOpacities()", + "_callable": true, + "_origin": "ast", + "community": 22, + "community_name": "wt", + "file_type": "code", + "norm_label": ".updatelayeropacities()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_zoomadjustment", "label": ".zoomAdjustment()", @@ -17859,28 +19191,16 @@ "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_core_collect_apply_colorway", - "label": "_apply_colorway()", - "_callable": true, - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "code", - "norm_label": "_apply_colorway()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1345" - }, - { - "id": "src_cellpy_simple_gui_core_collect_hex_to_rgba", - "label": "_hex_to_rgba()", + "id": "src_cellpy_simple_gui_core_collect_has_right_facet_strips", + "label": "_has_right_facet_strips()", "_callable": true, "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "code", - "norm_label": "_hex_to_rgba()", + "norm_label": "_has_right_facet_strips()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1332" + "source_location": "L1173" }, { "id": "src_cellpy_simple_gui_core_collect_restyle", @@ -17907,16 +19227,16 @@ "source_location": "L1145" }, { - "id": "src_cellpy_simple_gui_core_collect_tidy_facet_annotations", - "label": "_tidy_facet_annotations()", + "id": "src_cellpy_simple_gui_core_library_cellrecord_color", + "label": ".color()", "_callable": true, "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "code", - "norm_label": "_tidy_facet_annotations()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1185" + "norm_label": ".color()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L73" }, { "id": "tests_test_core_test_grouped_summary_renders", @@ -17942,313 +19262,13 @@ "source_file": "tests/test_core.py", "source_location": "L128" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addsource", - "label": "addSource()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": "addsource()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addimage", - "label": ".addImage()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".addimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addlayer", - "label": ".addLayer()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".addlayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_afterimageupdated", - "label": "._afterImageUpdated()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": "._afterimageupdated()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getfilter", - "label": ".getFilter()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".getfilter()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayoutproperty", - "label": ".getLayoutProperty()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".getlayoutproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getpaintproperty", - "label": ".getPaintProperty()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".getpaintproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_load", - "label": "._load()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": "._load()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadempty", - "label": ".loadEmpty()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".loadempty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadjson", - "label": ".loadJSON()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".loadjson()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removeimage", - "label": ".removeImage()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".removeimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfilter", - "label": ".setFilter()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".setfilter()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayerzoomrange", - "label": ".setLayerZoomRange()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".setlayerzoomrange()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayoutproperty", - "label": ".setLayoutProperty()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".setlayoutproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setpaintproperty", - "label": ".setPaintProperty()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".setpaintproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatelayer", - "label": "._updateLayer()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": "._updatelayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_pause", - "label": ".pause()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".pause()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_fire", - "label": ".fire()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".fire()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_listens", - "label": ".listens()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".listens()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayer", - "label": "getLayer()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": "getlayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayoutproperty", - "label": "getLayoutProperty()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": "getlayoutproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpaintproperty", - "label": "getPaintProperty()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": "getpaintproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hasimage", - "label": "hasImage()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": "hasimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_onremove", - "label": ".onRemove()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".onremove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validate", "label": "._validate()", "_callable": true, "_origin": "ast", "community": 223, - "community_name": ".fire", + "community_name": "._validate", "file_type": "code", "norm_label": "._validate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -18260,7 +19280,7 @@ "_callable": true, "_origin": "ast", "community": 223, - "community_name": ".fire", + "community_name": "._validate", "file_type": "code", "norm_label": "._validatecontent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -18272,215 +19292,83 @@ "_callable": true, "_origin": "ast", "community": 223, - "community_name": ".fire", + "community_name": "._validate", "file_type": "code", "norm_label": "._validatestretch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_seek", - "label": ".seek()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": ".seek()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlayoutproperty", - "label": "setLayoutProperty()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": "setlayoutproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpaintproperty", - "label": "setPaintProperty()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": ".fire", - "file_type": "code", - "norm_label": "setpaintproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "examples_mcp_server_collect", - "label": "collect()", - "_callable": true, - "_origin": "ast", - "community": 225, - "community_name": "collect", - "file_type": "code", - "norm_label": "collect()", - "source_file": "examples/mcp/server.py", - "source_location": "L296" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", - "label": "load_journal_cells()", - "_callable": true, - "_origin": "ast", - "community": 226, - "community_name": "load_journal_cells", - "file_type": "code", - "norm_label": "load_journal_cells()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L569" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells_progress", - "label": "_progress()", - "_callable": true, - "_origin": "ast", - "community": 226, - "community_name": "load_journal_cells", - "file_type": "code", - "norm_label": "_progress()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L591" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha_get", - "label": ".get()", - "_callable": true, - "_origin": "ast", - "community": 227, - "community_name": "qa", - "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textanchor", - "label": ".textAnchor()", + "id": "packaging_smoke_test_launchedapp_close", + "label": ".close()", "_callable": true, "_origin": "ast", "community": 227, - "community_name": "qa", + "community_name": "LaunchedApp", "file_type": "code", - "norm_label": ".textanchor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".close()", + "source_file": "packaging/smoke_test.py", + "source_location": "L172" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset0", - "label": ".textOffset0()", + "id": "packaging_smoke_test_launchedapp_init", + "label": ".__init__()", "_callable": true, "_origin": "ast", "community": 227, - "community_name": "qa", + "community_name": "LaunchedApp", "file_type": "code", - "norm_label": ".textoffset0()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".__init__()", + "source_file": "packaging/smoke_test.py", + "source_location": "L143" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset1", - "label": ".textOffset1()", + "id": "packaging_smoke_test_launchedapp_wait_for_url", + "label": ".wait_for_url()", "_callable": true, "_origin": "ast", "community": 227, - "community_name": "qa", - "file_type": "code", - "norm_label": ".textoffset1()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_api_app_asset_version", - "label": "_asset_version()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "_asset_version()", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L22" - }, - { - "id": "src_cellpy_simple_gui_api_app_create_app", - "label": "create_app()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "get_settings", + "community_name": "LaunchedApp", "file_type": "code", - "norm_label": "create_app()", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L41" - }, - { - "id": "src_cellpy_simple_gui_api_app_create_app_healthz", - "label": "healthz()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "healthz()", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L89" - }, - { - "id": "src_cellpy_simple_gui_api_app_create_app_index", - "label": "index()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "index()", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L64" + "norm_label": ".wait_for_url()", + "source_file": "packaging/smoke_test.py", + "source_location": "L152" }, { - "id": "src_cellpy_simple_gui_api_deps_require_token", - "label": "require_token()", + "id": "src_cellpy_simple_gui_config_settings_absolute_data_dir", + "label": "._absolute_data_dir()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": "require_token()", - "source_file": "src/cellpy_simple_gui/api/deps.py", - "source_location": "L32" + "norm_label": "._absolute_data_dir()", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L60" }, { - "id": "src_cellpy_simple_gui_config_get_settings", - "label": "get_settings()", + "id": "src_cellpy_simple_gui_core_library_file_stat", + "label": "file_stat()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": "get_settings()", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L76" + "norm_label": "file_stat()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L30" }, { - "id": "src_cellpy_simple_gui_config_settings_absolute_data_dir", - "label": "._absolute_data_dir()", + "id": "src_cellpy_simple_gui_core_library_library_add_cell", + "label": ".add_cell()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": "._absolute_data_dir()", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L60" + "norm_label": ".add_cell()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L115" }, { "id": "src_cellpy_simple_gui_core_library_library_all", @@ -18488,7 +19376,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": ".all()", "source_file": "src/cellpy_simple_gui/core/library.py", @@ -18500,7 +19388,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/core/library.py", @@ -18512,7 +19400,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/core/library.py", @@ -18524,7 +19412,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": ".__init__()", "source_file": "src/cellpy_simple_gui/core/library.py", @@ -18536,7 +19424,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": ".is_empty()", "source_file": "src/cellpy_simple_gui/core/library.py", @@ -18548,143 +19436,119 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": ".__len__()", "source_file": "src/cellpy_simple_gui/core/library.py", "source_location": "L283" }, { - "id": "src_cellpy_simple_gui_core_library_library_metas", - "label": ".metas()", + "id": "src_cellpy_simple_gui_core_library_library_mark_clean", + "label": "._mark_clean()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": ".metas()", + "norm_label": "._mark_clean()", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L289" + "source_location": "L223" }, { - "id": "src_cellpy_simple_gui_core_library_library_n_groups", - "label": ".n_groups()", + "id": "src_cellpy_simple_gui_core_library_library_mark_saved", + "label": ".mark_saved()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": ".n_groups()", + "norm_label": ".mark_saved()", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L292" + "source_location": "L229" }, { - "id": "src_cellpy_simple_gui_core_library_library_remove", - "label": ".remove()", + "id": "src_cellpy_simple_gui_core_library_library_metas", + "label": ".metas()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": ".remove()", + "norm_label": ".metas()", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L255" + "source_location": "L289" }, { - "id": "src_cellpy_simple_gui_core_library_library_set_selection", - "label": ".set_selection()", + "id": "src_cellpy_simple_gui_core_library_library_n_groups", + "label": ".n_groups()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": ".set_selection()", + "norm_label": ".n_groups()", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L265" - }, - { - "id": "src_cellpy_simple_gui_server_serverthread_init", - "label": ".__init__()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": ".__init__()", - "source_file": "src/cellpy_simple_gui/server.py", - "source_location": "L31" - }, - { - "id": "tests_test_api_client", - "label": "client()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "client()", - "source_file": "tests/test_api.py", - "source_location": "L17" + "source_location": "L292" }, { - "id": "tests_test_api_served_client", - "label": "served_client()", + "id": "src_cellpy_simple_gui_core_library_library_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": "served_client()", - "source_file": "tests/test_api.py", - "source_location": "L727" + "norm_label": ".remove()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L255" }, { - "id": "tests_test_api_test_job_timings_reported", - "label": "test_job_timings_reported()", + "id": "src_cellpy_simple_gui_core_library_library_restore_cell", + "label": ".restore_cell()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": "test_job_timings_reported()", - "source_file": "tests/test_api.py", - "source_location": "L429" + "norm_label": ".restore_cell()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L138" }, { - "id": "tests_test_api_test_log_viewer_captures_stdlib_records", - "label": "test_log_viewer_captures_stdlib_records()", + "id": "src_cellpy_simple_gui_core_library_library_reusable_data_file", + "label": ".reusable_data_file()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": "test_log_viewer_captures_stdlib_records()", - "source_file": "tests/test_api.py", - "source_location": "L402" + "norm_label": ".reusable_data_file()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L236" }, { - "id": "tests_test_compare_client", - "label": "client()", + "id": "src_cellpy_simple_gui_core_library_library_selected", + "label": ".selected()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": "client()", - "source_file": "tests/test_compare.py", - "source_location": "L285" + "norm_label": ".selected()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L279" }, { - "id": "tests_test_journal_test_api_load_corrupt_journal_reports_error", - "label": "test_api_load_corrupt_journal_reports_error()", + "id": "src_cellpy_simple_gui_core_library_library_set_selection", + "label": ".set_selection()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": "test_api_load_corrupt_journal_reports_error()", - "source_file": "tests/test_journal.py", - "source_location": "L83" + "norm_label": ".set_selection()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L265" }, { "id": "tests_test_projects_counting_save_cell", @@ -18692,7 +19556,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "_counting_save_cell()", "source_file": "tests/test_projects.py", @@ -18704,7 +19568,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "counted()", "source_file": "tests/test_projects.py", @@ -18716,43 +19580,19 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "_make_project_dir()", "source_file": "tests/test_projects.py", "source_location": "L373" }, - { - "id": "tests_test_projects_test_api_classify_import", - "label": "test_api_classify_import()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_api_classify_import()", - "source_file": "tests/test_projects.py", - "source_location": "L346" - }, - { - "id": "tests_test_projects_test_api_open_unknown_404", - "label": "test_api_open_unknown_404()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_api_open_unknown_404()", - "source_file": "tests/test_projects.py", - "source_location": "L340" - }, { "id": "tests_test_projects_test_api_save_and_open", "label": "test_api_save_and_open()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_api_save_and_open()", "source_file": "tests/test_projects.py", @@ -18764,7 +19604,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_broken_project_config_does_not_block_open()", "source_file": "tests/test_projects.py", @@ -18776,7 +19616,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_classify_import_path()", "source_file": "tests/test_projects.py", @@ -18788,7 +19628,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_data_dir_defaults_to_home()", "source_file": "tests/test_projects.py", @@ -18800,7 +19640,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_data_dir_expands_user_and_relative()", "source_file": "tests/test_projects.py", @@ -18812,7 +19652,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_data_dir_follows_the_env()", "source_file": "tests/test_projects.py", @@ -18824,7 +19664,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_diagnostics_reports_project_as_source()", "source_file": "tests/test_projects.py", @@ -18836,7 +19676,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_discovery_reports_shadowed_legacy()", "source_file": "tests/test_projects.py", @@ -18848,7 +19688,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_failed_resave_keeps_previous_project()", "source_file": "tests/test_projects.py", @@ -18860,7 +19700,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "boom()", "source_file": "tests/test_projects.py", @@ -18872,7 +19712,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_open_missing_raises()", "source_file": "tests/test_projects.py", @@ -18884,7 +19724,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_open_via_project_json_file_and_absolute_path()", "source_file": "tests/test_projects.py", @@ -18896,7 +19736,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_opened_cells_start_clean_and_dirty_on_edit()", "source_file": "tests/test_projects.py", @@ -18908,7 +19748,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_pin_project_config_round_trips()", "source_file": "tests/test_projects.py", @@ -18920,7 +19760,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_pin_project_config_writes_safe_sections()", "source_file": "tests/test_projects.py", @@ -18932,7 +19772,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_project_config_activates_and_restores()", "source_file": "tests/test_projects.py", @@ -18944,7 +19784,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_project_without_config_drops_previous()", "source_file": "tests/test_projects.py", @@ -18956,7 +19796,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_projects_land_under_the_configured_data_dir()", "source_file": "tests/test_projects.py", @@ -18968,7 +19808,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_reading_settings_creates_nothing()", "source_file": "tests/test_projects.py", @@ -18980,7 +19820,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_resave_reuses_unchanged_cells()", "source_file": "tests/test_projects.py", @@ -18992,7 +19832,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_resave_rewrites_cells_whose_data_changed()", "source_file": "tests/test_projects.py", @@ -19004,7 +19844,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_reuse_declines_when_file_changed_on_disk()", "source_file": "tests/test_projects.py", @@ -19016,7 +19856,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_reuse_declines_when_file_is_missing()", "source_file": "tests/test_projects.py", @@ -19028,7 +19868,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_reused_project_reopens_intact()", "source_file": "tests/test_projects.py", @@ -19040,7 +19880,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_save_as_new_project_still_copies_every_cell()", "source_file": "tests/test_projects.py", @@ -19052,7 +19892,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_save_open_roundtrip()", "source_file": "tests/test_projects.py", @@ -19064,7 +19904,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "_wait()", "source_file": "tests/test_projects.py", @@ -19166,6 +20006,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisionbox", + "label": ".insertCollisionBox()", + "_callable": true, + "_origin": "ast", + "community": 230, + "community_name": "bt", + "file_type": "code", + "norm_label": ".insertcollisionbox()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisioncircles", + "label": ".insertCollisionCircles()", + "_callable": true, + "_origin": "ast", + "community": 230, + "community_name": "bt", + "file_type": "code", + "norm_label": ".insertcollisioncircles()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_isinsidegrid", "label": ".isInsideGrid()", @@ -19335,40 +20199,40 @@ "source_location": "L8" }, { - "id": "tests_test_api_component_names", - "label": "_component_names()", + "id": "examples_mcp_server_index", + "label": "_index()", "_callable": true, "_origin": "ast", "community": 232, - "community_name": "test_index_click_and_show_targets_exist", + "community_name": "_index", "file_type": "code", - "norm_label": "_component_names()", - "source_file": "tests/test_api.py", - "source_location": "L523" + "norm_label": "_index()", + "source_file": "examples/mcp/server.py", + "source_location": "L554" }, { - "id": "tests_test_api_free_identifiers", - "label": "_free_identifiers()", + "id": "examples_mcp_server_index_offer", + "label": "offer()", "_callable": true, "_origin": "ast", "community": 232, - "community_name": "test_index_click_and_show_targets_exist", + "community_name": "_index", "file_type": "code", - "norm_label": "_free_identifiers()", - "source_file": "tests/test_api.py", - "source_location": "L539" + "norm_label": "offer()", + "source_file": "examples/mcp/server.py", + "source_location": "L571" }, { - "id": "tests_test_api_test_index_click_and_show_targets_exist", - "label": "test_index_click_and_show_targets_exist()", + "id": "examples_mcp_server_summarise", + "label": "_summarise()", "_callable": true, "_origin": "ast", "community": 232, - "community_name": "test_index_click_and_show_targets_exist", + "community_name": "_index", "file_type": "code", - "norm_label": "test_index_click_and_show_targets_exist()", - "source_file": "tests/test_api.py", - "source_location": "L561" + "norm_label": "_summarise()", + "source_file": "examples/mcp/server.py", + "source_location": "L657" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_constructor", @@ -19442,6 +20306,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insert", + "label": ".insert()", + "_callable": true, + "_origin": "ast", + "community": 233, + "community_name": "Ki", + "file_type": "code", + "norm_label": ".insert()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insertcell", "label": "._insertCell()", @@ -19466,6 +20342,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_query", + "label": ".query()", + "_callable": true, + "_origin": "ast", + "community": 233, + "community_name": "Ki", + "file_type": "code", + "norm_label": ".query()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_querycell", "label": "._queryCell()", @@ -19503,194 +20391,146 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_addfeatures", - "label": ".addFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_bn", + "label": "Bn()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 236, + "community_name": "get", "file_type": "code", - "norm_label": ".addfeatures()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "bn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_fr", + "label": "fr()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 236, + "community_name": "get", "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "fr()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_get", + "label": "get()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 236, + "community_name": "get", "file_type": "code", - "norm_label": ".isempty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "get()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_gi", + "label": "Gi()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 236, + "community_name": "get", "file_type": "code", - "norm_label": ".update()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "gi()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_oe", + "label": "Oe()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 236, + "community_name": "get", "file_type": "code", - "norm_label": ".uploadpending()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "oe()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_clone", + "label": ".clone()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 237, + "community_name": "ls", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".clone()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_createbucket", - "label": ".createBucket()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 237, + "community_name": "ls", "file_type": "code", - "norm_label": ".createbucket()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_istileclipped", - "label": ".isTileClipped()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_replace", + "label": ".replace()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 237, + "community_name": "ls", "file_type": "code", - "norm_label": ".istileclipped()", + "norm_label": ".replace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_queryintersectsfeature", - "label": ".queryIntersectsFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_resize", + "label": ".resize()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 237, + "community_name": "ls", "file_type": "code", - "norm_label": ".queryintersectsfeature()", + "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_queryradius", - "label": ".queryRadius()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_run", + "label": ".run()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "pl", + "community": 239, + "community_name": "Next phase \u2014 deployment routes and app-builder documentation", "file_type": "code", - "norm_label": ".queryradius()", + "norm_label": ".run()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_jobs_jobmanager_cancel", - "label": ".cancel()", - "_callable": true, - "_origin": "ast", - "community": 236, - "community_name": ".cancel", - "file_type": "code", - "norm_label": ".cancel()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L250" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app_api", - "label": "api()", - "_callable": true, - "_origin": "ast", - "community": 237, - "community_name": "test_index_alpine_state_is_defined", - "file_type": "code", - "norm_label": "api()", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app_app", - "label": "app()", - "_callable": true, - "_origin": "ast", - "community": 237, - "community_name": "test_index_alpine_state_is_defined", - "file_type": "code", - "norm_label": "app()", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L56" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app_loadrecent", - "label": "loadRecent()", - "_callable": true, - "_origin": "ast", - "community": 237, - "community_name": "test_index_alpine_state_is_defined", - "file_type": "code", - "norm_label": "loadrecent()", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L46" - }, - { - "id": "tests_test_api_test_index_alpine_state_is_defined", - "label": "test_index_alpine_state_is_defined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bu", + "label": "Bu()", "_callable": true, "_origin": "ast", - "community": 237, - "community_name": "test_index_alpine_state_is_defined", + "community": 24, + "community_name": "oa", "file_type": "code", - "norm_label": "test_index_alpine_state_is_defined()", - "source_file": "tests/test_api.py", - "source_location": "L474" + "norm_label": "bu()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_run", - "label": ".run()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community": 24, + "community_name": "oa", "file_type": "code", - "norm_label": ".run()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -20019,218 +20859,170 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cu", - "label": "cu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 240, - "community_name": "uu", + "community": 241, + "community_name": ".get", "file_type": "code", - "norm_label": "cu()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 240, - "community_name": "uu", + "community": 241, + "community_name": ".get", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 240, - "community_name": "uu", + "community": 241, + "community_name": ".get", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getsection", - "label": ".getSection()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 240, - "community_name": "uu", - "file_type": "code", - "norm_label": ".getsection()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_length", - "label": ".length()", - "_callable": true, - "_origin": "ast", - "community": 240, - "community_name": "uu", - "file_type": "code", - "norm_label": ".length()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 240, - "community_name": "uu", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_remove", - "label": ".remove()", - "_callable": true, - "_origin": "ast", - "community": 240, - "community_name": "uu", - "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_trigger", - "label": ".trigger()", - "_callable": true, - "_origin": "ast", - "community": 240, - "community_name": "uu", + "community": 241, + "community_name": ".get", "file_type": "code", - "norm_label": ".trigger()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisionbox", - "label": ".insertCollisionBox()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_calculateglyphdependencies", + "label": ".calculateGlyphDependencies()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".insertcollisionbox()", + "norm_label": ".calculateglyphdependencies()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_go", - "label": "Go()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": "go()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addcurrentvertex", - "label": ".addCurrentVertex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate", + "label": ".populate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".addcurrentvertex()", + "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeature", - "label": ".addFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fl", + "label": "Fl()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".addfeature()", + "norm_label": "fl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addhalfvertex", - "label": ".addHalfVertex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_go", + "label": "Go()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".addhalfvertex()", + "norm_label": "go()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addline", - "label": ".addLine()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_getvalue", + "label": ".getValue()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".addline()", + "norm_label": ".getvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeature", + "label": ".addFeature()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": ".addfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_linefeatureclips", - "label": ".lineFeatureClips()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeatures", + "label": ".addFeatures()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".linefeatureclips()", + "norm_label": ".addfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -20240,69 +21032,69 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatedistance", - "label": ".updateDistance()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_isconstant", + "label": ".isConstant()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".updatedistance()", + "norm_label": ".isconstant()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatescaleddistance", - "label": ".updateScaledDistance()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".updatescaleddistance()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ml", + "label": "Ml()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".uploadpending()", + "norm_label": "ml()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_isconstant", - "label": ".isConstant()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".isconstant()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -20312,7 +21104,7 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", "norm_label": ".addfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -20324,7 +21116,7 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -20336,7 +21128,7 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", "norm_label": "ns()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -20348,167 +21140,131 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".get", "file_type": "code", - "norm_label": ".populate()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insert", - "label": ".insert()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sl", + "label": "Sl()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": "Ic", - "file_type": "code", - "norm_label": ".insert()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "tests_test_api_test_system_save_rejected_without_webview", - "label": "test_system_save_rejected_without_webview()", - "_callable": true, - "_origin": "ast", - "community": 242, - "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", - "file_type": "code", - "norm_label": "test_system_save_rejected_without_webview()", - "source_file": "tests/test_api.py", - "source_location": "L111" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bl", - "label": "bl()", - "_callable": true, - "_origin": "ast", - "community": 243, - "community_name": ".emplaceBack", - "file_type": "code", - "norm_label": "bl()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bo_populatepaintarrays", - "label": ".populatePaintArrays()", - "_callable": true, - "_origin": "ast", - "community": 243, - "community_name": ".emplaceBack", + "community_name": ".get", "file_type": "code", - "norm_label": ".populatepaintarrays()", + "norm_label": "sl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addcollisiondebugvertex", - "label": "._addCollisionDebugVertex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 243, - "community_name": ".emplaceBack", + "community": 241, + "community_name": ".get", "file_type": "code", - "norm_label": "._addcollisiondebugvertex()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addcollisiondebugvertices", - "label": ".addCollisionDebugVertices()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_populate", + "label": ".populate()", "_callable": true, "_origin": "ast", - "community": 243, - "community_name": ".emplaceBack", + "community": 241, + "community_name": ".get", "file_type": "code", - "norm_label": ".addcollisiondebugvertices()", + "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addsymbols", - "label": ".addSymbols()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", - "community": 243, - "community_name": ".emplaceBack", + "community": 241, + "community_name": ".get", "file_type": "code", - "norm_label": ".addsymbols()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_preparesegment", - "label": ".prepareSegment()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insert", + "label": ".insert()", "_callable": true, "_origin": "ast", - "community": 243, - "community_name": ".emplaceBack", + "community": 241, + "community_name": ".get", "file_type": "code", - "norm_label": ".preparesegment()", + "norm_label": ".insert()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lu", - "label": "lu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xu", + "label": "xu()", "_callable": true, "_origin": "ast", - "community": 243, - "community_name": ".emplaceBack", + "community": 241, + "community_name": ".get", "file_type": "code", - "norm_label": "lu()", + "norm_label": "xu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yc", + "label": "yc()", "_callable": true, "_origin": "ast", - "community": 243, - "community_name": ".emplaceBack", + "community": 241, + "community_name": ".get", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": "yc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ou", - "label": "ou()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zh", + "label": "zh()", "_callable": true, "_origin": "ast", - "community": 243, - "community_name": ".emplaceBack", + "community": 241, + "community_name": ".get", "file_type": "code", - "norm_label": "ou()", + "norm_label": "zh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_an", - "label": "An()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_pn", + "label": "Pn()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": "an()", + "norm_label": "pn()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "source_location": "L1" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_distancex", @@ -20571,62 +21327,62 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_calculatecameraoptionsfromto", - "label": ".calculateCameraOptionsFromTo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_tilesin", + "label": ".tilesIn()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".calculatecameraoptionsfromto()", + "norm_label": ".tilesin()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_bearing", - "label": ".bearing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getglyphs", + "label": ".getGlyphs()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".bearing()", + "norm_label": ".getglyphs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calcmatrices", - "label": "._calcMatrices()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_calculatecameraoptionsfromto", + "label": ".calculateCameraOptionsFromTo()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": "._calcmatrices()", + "norm_label": ".calculatecameraoptionsfromto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatefogmatrix", - "label": ".calculateFogMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_bearing", + "label": ".bearing()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".calculatefogmatrix()", + "norm_label": ".bearing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatetilematrix", - "label": ".calculateTileMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calcmatrices", + "label": "._calcMatrices()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".calculatetilematrix()", + "norm_label": "._calcmatrices()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -20666,6 +21422,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_clone", + "label": ".clone()", + "_callable": true, + "_origin": "ast", + "community": 244, + "community_name": "En", + "file_type": "code", + "norm_label": ".clone()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_constrain", "label": "._constrain()", @@ -20679,14 +21447,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coordinatelocation", + "label": ".coordinateLocation()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".coordinatelocation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -20846,6 +21614,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_interpolatepadding", + "label": ".interpolatePadding()", + "_callable": true, + "_origin": "ast", + "community": 244, + "community_name": "En", + "file_type": "code", + "norm_label": ".interpolatepadding()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_lnglattocameradepth", "label": ".lngLatToCameraDepth()", @@ -20966,6 +21746,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pointlocation", + "label": ".pointLocation()", + "_callable": true, + "_origin": "ast", + "community": 244, + "community_name": "En", + "file_type": "code", + "norm_label": ".pointlocation()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_recalculatezoom", "label": ".recalculateZoom()", @@ -21003,14 +21795,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_scalezoom", - "label": ".scaleZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_setlocationatpoint", + "label": ".setLocationAtPoint()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".scalezoom()", + "norm_label": ".setlocationatpoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -21063,338 +21855,542 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_clone", - "label": ".clone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_hasvalue", + "label": ".hasValue()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".clone()", + "norm_label": ".hasvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_gettilepoint", + "label": ".getTilePoint()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".gettilepoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_tolnglat", + "label": ".toLngLat()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".tolnglat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_evaluatewithouterrorhandling", - "label": ".evaluateWithoutErrorHandling()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_fromlnglat", + "label": ".fromLngLat()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".evaluatewithouterrorhandling()", + "norm_label": ".fromlnglat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_getcenter", - "label": ".getCenter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createdelegatedlistener", + "label": "_createDelegatedListener()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 245, + "community_name": "once", "file_type": "code", - "norm_label": ".getcenter()", + "norm_label": "_createdelegatedlistener()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_interpolate", - "label": ".interpolate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_once", + "label": ".once()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 245, + "community_name": "once", "file_type": "code", - "norm_label": ".interpolate()", + "norm_label": ".once()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_tojson", - "label": ".toJSON()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_once", + "label": "once()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 245, + "community_name": "once", "file_type": "code", - "norm_label": ".tojson()", + "norm_label": "once()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmaxbounds", - "label": "setMaxBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_queryrenderedfeatures", + "label": "queryRenderedFeatures()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 245, + "community_name": "once", "file_type": "code", - "norm_label": "setmaxbounds()", + "norm_label": "queryrenderedfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_tolnglat", - "label": ".toLngLat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hu", + "label": "hu()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 246, + "community_name": "pu", "file_type": "code", - "norm_label": ".tolnglat()", + "norm_label": "hu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_fromlnglat", - "label": ".fromLngLat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 246, + "community_name": "pu", "file_type": "code", - "norm_label": ".fromlnglat()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_paths_outside_the_sandbox_are_refused", - "label": "test_paths_outside_the_sandbox_are_refused()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 245, - "community_name": "test_paths_outside_the_sandbox_are_refused", + "community": 246, + "community_name": "pu", "file_type": "code", - "norm_label": "test_paths_outside_the_sandbox_are_refused()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L166" + "norm_label": ".serialize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_paths_outside_the_sandbox_are_refused_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 245, - "community_name": "test_paths_outside_the_sandbox_are_refused", + "community": 248, + "community_name": ".constructor", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L169" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 246, - "community_name": "kn", + "community": 248, + "community_name": ".constructor", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_endmove", - "label": ".endMove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 246, - "community_name": "kn", + "community": 248, + "community_name": ".constructor", "file_type": "code", - "norm_label": ".endmove()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_frominvprojectionmatrix", - "label": ".fromInvProjectionMatrix()", + "id": "examples_mcp_server_list_instruments", + "label": "list_instruments()", "_callable": true, "_origin": "ast", - "community": 246, - "community_name": "kn", + "community": 249, + "community_name": "list_instruments", "file_type": "code", - "norm_label": ".frominvprojectionmatrix()", + "norm_label": "list_instruments()", + "source_file": "examples/mcp/server.py", + "source_location": "L177" + }, + { + "id": "examples_mcp_server_list_instruments_arbin_res_readable", + "label": "arbin_res_readable()", + "_callable": true, + "_origin": "ast", + "community": 249, + "community_name": "list_instruments", + "file_type": "code", + "norm_label": "arbin_res_readable()", + "source_file": "examples/mcp/server.py", + "source_location": "L184" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bl", + "label": "bl()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": "bl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidendevent", - "label": ".isValidEndEvent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bo_populatepaintarrays", + "label": ".populatePaintArrays()", "_callable": true, "_origin": "ast", - "community": 246, - "community_name": "kn", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".isvalidendevent()", + "norm_label": ".populatepaintarrays()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidmoveevent", - "label": ".isValidMoveEvent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cu", + "label": "cu()", "_callable": true, "_origin": "ast", - "community": 246, - "community_name": "kn", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".isvalidmoveevent()", + "norm_label": "cu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidstartevent", - "label": ".isValidStartEvent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dh", + "label": "dh()", "_callable": true, "_origin": "ast", - "community": 246, - "community_name": "kn", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".isvalidstartevent()", + "norm_label": "dh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_startmove", - "label": ".startMove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addcollisiondebugvertex", + "label": "._addCollisionDebugVertex()", "_callable": true, "_origin": "ast", - "community": 246, - "community_name": "kn", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".startmove()", + "norm_label": "._addcollisiondebugvertex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_mousebutton", - "label": ".mouseButton()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addcollisiondebugvertices", + "label": ".addCollisionDebugVertices()", "_callable": true, "_origin": "ast", - "community": 246, - "community_name": "kn", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".mousebutton()", + "norm_label": ".addcollisiondebugvertices()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisioncircles", - "label": ".insertCollisionCircles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_adddebugcollisionboxes", + "label": ".addDebugCollisionBoxes()", "_callable": true, "_origin": "ast", - "community": 249, - "community_name": "._forEachCell", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".insertcollisioncircles()", + "norm_label": ".adddebugcollisionboxes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insert", - "label": ".insert()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addindicesforplacedsymbol", + "label": ".addIndicesForPlacedSymbol()", "_callable": true, "_origin": "ast", - "community": 249, - "community_name": "._forEachCell", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".insert()", + "norm_label": ".addindicesforplacedsymbol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_query", - "label": ".query()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addsymbols", + "label": ".addSymbols()", "_callable": true, "_origin": "ast", - "community": 249, - "community_name": "._forEachCell", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".query()", + "norm_label": ".addsymbols()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoxcellcoord", - "label": "._convertToXCellCoord()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addtolinevertexarray", + "label": ".addToLineVertexArray()", "_callable": true, "_origin": "ast", - "community": 249, - "community_name": "._forEachCell", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "._converttoxcellcoord()", + "norm_label": ".addtolinevertexarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoycellcoord", - "label": "._convertToYCellCoord()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addtosortkeyranges", + "label": ".addToSortKeyRanges()", "_callable": true, "_origin": "ast", - "community": 249, - "community_name": "._forEachCell", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "._converttoycellcoord()", + "norm_label": ".addtosortkeyranges()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_foreachcell", - "label": "._forEachCell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 249, - "community_name": "._forEachCell", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "._foreachcell()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hittestcircle", - "label": ".hitTestCircle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_destroydebugdata", + "label": ".destroyDebugData()", "_callable": true, "_origin": "ast", - "community": 249, - "community_name": "._forEachCell", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".hittestcircle()", + "norm_label": ".destroydebugdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insertcircle", - "label": ".insertCircle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_generatecollisiondebugbuffers", + "label": ".generateCollisionDebugBuffers()", "_callable": true, "_origin": "ast", - "community": 249, - "community_name": "._forEachCell", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".insertcircle()", + "norm_label": ".generatecollisiondebugbuffers()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_getsortedsymbolindexes", + "label": ".getSortedSymbolIndexes()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".getsortedsymbolindexes()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasdebugdata", + "label": ".hasDebugData()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".hasdebugdata()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasiconcollisionboxdata", + "label": ".hasIconCollisionBoxData()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".hasiconcollisionboxdata()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextcollisionboxdata", + "label": ".hasTextCollisionBoxData()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".hastextcollisionboxdata()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_isempty", + "label": ".isEmpty()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".isempty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_sortfeatures", + "label": ".sortFeatures()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".sortfeatures()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_upload", + "label": ".upload()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".upload()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_preparesegment", + "label": ".prepareSegment()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".preparesegment()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_equals", + "label": ".equals()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".equals()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_gettilepoint", + "label": ".getTilePoint()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".gettilepoint()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_ischildof", + "label": ".isChildOf()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".ischildof()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_tostring", + "label": ".toString()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".tostring()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lu", + "label": "lu()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": "lu()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_emplaceback", + "label": ".emplaceBack()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ou", + "label": "ou()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": "ou()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -21404,7 +22400,7 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -21416,7 +22412,7 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".forimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -21428,7 +22424,7 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".fortext()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -21440,7 +22436,7 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".addimagesection()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -21452,7 +22448,7 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".addtextsection()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -21464,7 +22460,7 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -21476,7 +22472,7 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".fromfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -21488,7 +22484,7 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".getcharcode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -21500,7 +22496,7 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".getmaxscale()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -21512,31 +22508,55 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".getnextimagesectioncharcode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getsection", + "label": ".getSection()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".getsection()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getsectionindex", "label": ".getSectionIndex()", "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".getsectionindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_length", + "label": ".length()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".length()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_tostring", "label": ".toString()", "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -21548,12 +22568,48 @@ "_callable": true, "_origin": "ast", "community": 25, - "community_name": "tu", + "community_name": "eu", "file_type": "code", "norm_label": ".verticalizepunctuation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_remove", + "label": ".remove()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".remove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_trigger", + "label": ".trigger()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".trigger()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_constructor", "label": ".constructor()", @@ -21711,100 +22767,28 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_transform", - "label": ".transform()", - "_callable": true, - "_origin": "ast", - "community": 256, - "community_name": "qr", - "file_type": "code", - "norm_label": ".transform()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 256, - "community_name": "qr", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_eachchild", - "label": ".eachChild()", - "_callable": true, - "_origin": "ast", - "community": 256, - "community_name": "qr", - "file_type": "code", - "norm_label": ".eachchild()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_evaluate", - "label": ".evaluate()", - "_callable": true, - "_origin": "ast", - "community": 256, - "community_name": "qr", - "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_outputdefined", - "label": ".outputDefined()", + "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less", + "label": "test_a_default_direction_plot_says_it_drew_less()", "_callable": true, "_origin": "ast", "community": 256, - "community_name": "qr", + "community_name": "test_a_default_direction_plot_says_it_drew_less", "file_type": "code", - "norm_label": ".outputdefined()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_a_default_direction_plot_says_it_drew_less()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L109" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_register", - "label": ".register()", + "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less_steps", + "label": "steps()", "_callable": true, "_origin": "ast", "community": 256, - "community_name": "qr", - "file_type": "code", - "norm_label": ".register()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_bn", - "label": "Bn()", - "_callable": true, - "_origin": "ast", - "community": 257, - "community_name": "_t", - "file_type": "code", - "norm_label": "bn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_gi", - "label": "Gi()", - "_callable": true, - "_origin": "ast", - "community": 257, - "community_name": "_t", + "community_name": "test_a_default_direction_plot_says_it_drew_less", "file_type": "code", - "norm_label": "gi()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L112" }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_gn", @@ -21830,18 +22814,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_oe", - "label": "Oe()", - "_callable": true, - "_origin": "ast", - "community": 257, - "community_name": "_t", - "file_type": "code", - "norm_label": "oe()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_re", "label": "Re()", @@ -21939,343 +22911,367 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_push", - "label": ".push()", + "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too", + "label": "test_writes_are_sandboxed_too()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 258, + "community_name": "test_writes_are_sandboxed_too", "file_type": "code", - "norm_label": ".push()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_writes_are_sandboxed_too()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L177" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at", - "label": "at()", + "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 258, + "community_name": "test_writes_are_sandboxed_too", "file_type": "code", - "norm_label": "at()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L180" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at_destroy", - "label": ".destroy()", + "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do", + "label": "test_unknown_handles_and_kinds_are_told_what_to_do()", + "_callable": true, + "_origin": "ast", + "community": 259, + "community_name": "test_unknown_handles_and_kinds_are_told_what_to_do", + "file_type": "code", + "norm_label": "test_unknown_handles_and_kinds_are_told_what_to_do()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L195" + }, + { + "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 259, + "community_name": "test_unknown_handles_and_kinds_are_told_what_to_do", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L198" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_appendleaves", - "label": "._appendLeaves()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_pop", + "label": ".pop()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "._appendleaves()", + "norm_label": ".pop()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_cluster", - "label": "._cluster()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_push", + "label": ".push()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "._cluster()", + "norm_label": ".push()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getchildren", - "label": ".getChildren()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_acquire", + "label": ".acquire()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".getchildren()", + "norm_label": ".acquire()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getclusterexpansionzoom", - "label": ".getClusterExpansionZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_addtilefeatures", + "label": "._addTileFeatures()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".getclusterexpansionzoom()", + "norm_label": "._addtilefeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getleaves", - "label": ".getLeaves()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_appendleaves", + "label": "._appendLeaves()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".getleaves()", + "norm_label": "._appendleaves()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getoriginid", - "label": "._getOriginId()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_cluster", + "label": "._cluster()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "._getoriginid()", + "norm_label": "._cluster()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getoriginzoom", - "label": "._getOriginZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "._getoriginzoom()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_k", - "label": "K()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getchildren", + "label": ".getChildren()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "k()", + "norm_label": ".getchildren()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_map", - "label": "._map()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getclusterexpansionzoom", + "label": ".getClusterExpansionZoom()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "._map()", + "norm_label": ".getclusterexpansionzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_queryrenderedsymbols", - "label": ".queryRenderedSymbols()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getclusters", + "label": ".getClusters()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".queryrenderedsymbols()", + "norm_label": ".getclusters()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_e", - "label": "E()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getleaves", + "label": ".getLeaves()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "e()", + "norm_label": ".getleaves()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getoriginid", + "label": "._getOriginId()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "._getoriginid()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_flattenandsortrenderedfeatures", - "label": "._flattenAndSortRenderedFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getoriginzoom", + "label": "._getOriginZoom()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "._flattenandsortrenderedfeatures()", + "norm_label": "._getoriginzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_queryrenderedfeatures", - "label": ".queryRenderedFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_gettile", + "label": ".getTile()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".queryrenderedfeatures()", + "norm_label": ".gettile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et", - "label": "Et()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_ispreloaded", + "label": ".isPreloaded()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "et()", + "norm_label": ".ispreloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_dt", - "label": "Dt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_limitzoom", + "label": "._limitZoom()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "dt()", + "norm_label": "._limitzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_load", + "label": ".load()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "a()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_map", + "label": "._map()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "._map()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_numactive", + "label": ".numActive()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".numactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_gettile", - "label": ".getTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_release", + "label": ".release()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".gettile()", + "norm_label": ".release()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_splittile", - "label": ".splitTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_queryrenderedsymbols", + "label": ".queryRenderedSymbols()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".splittile()", + "norm_label": ".queryrenderedsymbols()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_getcanvas", - "label": ".getCanvas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_flattenandsortrenderedfeatures", + "label": "._flattenAndSortRenderedFeatures()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".getcanvas()", + "norm_label": "._flattenandsortrenderedfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_queryrenderedfeatures", + "label": ".queryRenderedFeatures()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".queryrenderedfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_maxpitchscalefactor", + "label": ".maxPitchScaleFactor()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".maxpitchscalefactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_within", - "label": ".within()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfeaturestate", + "label": "getFeatureState()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".within()", + "norm_label": "getfeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_a", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_a", "label": "a()", "_callable": true, "_origin": "ast", @@ -22287,7 +23283,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -22299,3950 +23295,3062 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_ishidden", - "label": ".isHidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".ishidden()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_concat", - "label": ".concat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".concat()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mt", - "label": "Mt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_gettile", + "label": ".getTile()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "mt()", + "norm_label": ".gettile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_splittile", + "label": ".splitTile()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "h()", + "norm_label": ".splittile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_getvideo", - "label": ".getVideo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_within", + "label": ".within()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".getvideo()", + "norm_label": ".within()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_pause", - "label": ".pause()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_t", + "label": "T()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".pause()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_c", + "label": "c()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_p", + "label": "P()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "m()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "s()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_et", - "label": "et()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_querycell", + "label": "._queryCell()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "et()", + "norm_label": "._querycell()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ft", - "label": "ft()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "ft()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_lt", - "label": "lt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "lt()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_nt", - "label": "nt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "nt()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ot", - "label": "ot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "ot()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_st", - "label": "st()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_s", + "label": "S()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "st()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_tt", - "label": "tt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 26, "community_name": ".push", "file_type": "code", - "norm_label": "tt()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".loaded()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": "r()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": "u()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_concat", - "label": ".concat()", + "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at", + "label": "test_describe_api_follows_the_reference_the_docstring_points_at()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 261, + "community_name": "test_describe_api_follows_the_reference_the_docstring_points_at", "file_type": "code", - "norm_label": ".concat()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_describe_api_follows_the_reference_the_docstring_points_at()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L242" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_constructor", - "label": ".constructor()", + "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 261, + "community_name": "test_describe_api_follows_the_reference_the_docstring_points_at", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L251" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gu", + "label": "Gu()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 262, + "community_name": "Gu", "file_type": "code", - "norm_label": ".get()", + "norm_label": "gu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_has", - "label": ".has()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_fromlnglat", + "label": ".fromLngLat()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 262, + "community_name": "Gu", "file_type": "code", - "norm_label": ".has()", + "norm_label": ".fromlnglat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_toaltitude", + "label": ".toAltitude()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 262, + "community_name": "Gu", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".toaltitude()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wu", + "label": "Wu()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 262, + "community_name": "Gu", "file_type": "code", - "norm_label": ".load()", + "norm_label": "wu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yu", + "label": "Yu()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 262, + "community_name": "Gu", "file_type": "code", - "norm_label": ".loaded()", + "norm_label": "yu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce_generate", + "label": ".generate()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".generate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_handlewrapjump", + "label": ".handleWrapJump()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".handlewrapjump()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setclusteroptions", - "label": ".setClusterOptions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eh", + "label": "eh()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".setclusteroptions()", + "norm_label": "eh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updatedata", - "label": ".updateData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_addlayer", + "label": ".addLayer()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".updatedata()", + "norm_label": ".addlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updateworkerdata", - "label": "._updateWorkerData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": "._updateworkerdata()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua_getoffsetx", - "label": ".getoffsetX()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_findmatches", + "label": ".findMatches()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".getoffsetx()", + "norm_label": ".findmatches()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_getcrosstileidslists", + "label": ".getCrossTileIDsLists()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".getcrosstileidslists()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_getscaledcoordinates", + "label": ".getScaledCoordinates()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": "p()", + "norm_label": ".getscaledcoordinates()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_at", - "label": "at()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": "at()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_it", - "label": "it()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_calculatescaledkey", + "label": ".calculateScaledKey()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": "it()", + "norm_label": ".calculatescaledkey()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_ot", - "label": "ot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_clone", + "label": ".clone()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": "ot()", + "norm_label": ".clone()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_st", - "label": "st()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": "st()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_q", - "label": "Q()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_equals", + "label": ".equals()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": "q()", + "norm_label": ".equals()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".reset()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchmove", - "label": ".touchmove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_unwrapto", + "label": ".unwrapTo()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".touchmove()", + "norm_label": ".unwrapto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchstart", - "label": ".touchstart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_addbucket", + "label": ".addBucket()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".touchstart()", + "norm_label": ".addbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_handlewrapjump", + "label": ".handleWrapJump()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".reset()", + "norm_label": ".handlewrapjump()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_removebucketcrosstileids", + "label": ".removeBucketCrossTileIDs()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".removebucketcrosstileids()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_removestalebuckets", + "label": ".removeStaleBuckets()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 264, + "community_name": "th", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".removestalebuckets()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_core_collect_is_grouped", + "label": "is_grouped()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 265, + "community_name": "2. Cells into a Collection", "file_type": "code", - "norm_label": ".possiblyevaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "is_grouped()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L642" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_x2", + "label": ".x2()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 265, + "community_name": "2. Cells into a Collection", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".x2()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it", + "label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 269, + "community_name": "test_describe_api_renders_a_method_the_way_you_would_call_it", "file_type": "code", - "norm_label": ".possiblyevaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L263" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 269, + "community_name": "test_describe_api_renders_a_method_the_way_you_would_call_it", "file_type": "code", - "norm_label": ".possiblyevaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L266" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_doescharsupportlocalglyph", - "label": "._doesCharSupportLocalGlyph()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_j", + "label": "J()", "_callable": true, "_origin": "ast", - "community": 261, - "community_name": ".clone", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "._doescharsupportlocalglyph()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "j()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getandcacheglyphspromise", - "label": "._getAndCacheGlyphsPromise()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_r", + "label": "R()", "_callable": true, "_origin": "ast", - "community": 261, - "community_name": ".clone", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "._getandcacheglyphspromise()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getglyphs", - "label": ".getGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 261, - "community_name": ".clone", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".getglyphs()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_tinysdf", - "label": "._tinySDF()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_k", + "label": "K()", "_callable": true, "_origin": "ast", - "community": 261, - "community_name": ".clone", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "._tinysdf()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_clone", - "label": ".clone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 261, - "community_name": ".clone", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".clone()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gu", - "label": "Gu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_deserialize", + "label": ".deserialize()", "_callable": true, "_origin": "ast", - "community": 262, - "community_name": "Gu", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "gu()", + "norm_label": ".deserialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_fromlnglat", - "label": ".fromLngLat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 262, - "community_name": "Gu", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".fromlnglat()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_toaltitude", - "label": ".toAltitude()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_calculatefogblendopacity", + "label": ".calculateFogBlendOpacity()", "_callable": true, "_origin": "ast", - "community": 262, - "community_name": "Gu", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".toaltitude()", + "norm_label": ".calculatefogblendopacity()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wu", - "label": "Wu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 262, - "community_name": "Gu", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "wu()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yu", - "label": "Yu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 262, - "community_name": "Gu", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "yu()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eh", - "label": "eh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_e", + "label": "e()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "Ku", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": "eh()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_getsky", + "label": ".getSky()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "Ku", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".getsky()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_equals", - "label": ".equals()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "Ku", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".equals()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_gettilepoint", - "label": ".getTilePoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_settransformrequest", + "label": ".setTransformRequest()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "Ku", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".gettilepoint()", + "norm_label": ".settransformrequest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_ischildof", - "label": ".isChildOf()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_validate", + "label": "._validate()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "Ku", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".ischildof()", + "norm_label": "._validate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_y", + "label": "y()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "Ku", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_calculatescaledkey", - "label": ".calculateScaledKey()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_e", + "label": "E()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "Ku", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".calculatescaledkey()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_m", + "label": "M()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "Ku", + "community": 272, + "community_name": "y", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_lt", - "label": "lt()", - "_callable": true, - "_origin": "ast", - "community": 269, - "community_name": "P", - "file_type": "code", - "norm_label": "lt()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_p", - "label": "P()", - "_callable": true, - "_origin": "ast", - "community": 269, - "community_name": "P", - "file_type": "code", - "norm_label": "p()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_tr", - "label": "tr()", - "_callable": true, - "_origin": "ast", - "community": 269, - "community_name": "P", - "file_type": "code", - "norm_label": "tr()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_wt", - "label": "Wt()", - "_callable": true, - "_origin": "ast", - "community": 269, - "community_name": "P", - "file_type": "code", - "norm_label": "wt()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_j", - "label": "J()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_s", + "label": "S()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "j()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_r", - "label": "R()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_project", + "label": ".project()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".project()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_acquire", - "label": ".acquire()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_size", + "label": ".size()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".acquire()", + "norm_label": ".size()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_addtilefeatures", - "label": "._addTileFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et", + "label": "Et()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "._addtilefeatures()", + "norm_label": "et()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getclusters", - "label": ".getClusters()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".getclusters()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_gettile", - "label": ".getTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_p", + "label": "P()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".gettile()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "i()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_ispreloaded", - "label": ".isPreloaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".ispreloaded()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_limitzoom", - "label": "._limitZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_getcanvas", + "label": ".getCanvas()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "._limitzoom()", + "norm_label": ".getcanvas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".load()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_numactive", - "label": ".numActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".numactive()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_release", - "label": ".release()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".release()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_calculatefogblendopacity", - "label": ".calculateFogBlendOpacity()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_b", + "label": "B()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".calculatefogblendopacity()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f", + "label": "F()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_d", - "label": "d()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "d()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_m", + "label": "m()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "e()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_getsky", - "label": ".getSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m", + "label": "m()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".getsky()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_settransformrequest", - "label": ".setTransformRequest()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_b", + "label": "b()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".settransformrequest()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_transformrequest", - "label": ".transformRequest()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_f", + "label": "f()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".transformrequest()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_validate", - "label": "._validate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "._validate()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_y", - "label": "y()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "y()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadurl", - "label": ".loadURL()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".loadurl()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_e", - "label": "E()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "e()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_m", - "label": "M()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "m()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_s", - "label": "S()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_t", + "label": "T()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "s()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_maxpitchscalefactor", - "label": ".maxPitchScaleFactor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".maxpitchscalefactor()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_project", - "label": ".project()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_w", + "label": "w()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".project()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_size", - "label": ".size()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_x", + "label": "x()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".size()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_a", - "label": "A()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "a()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mt", + "label": "Mt()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "mt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "o()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_filter", - "label": ".filter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".filter()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_getvideo", + "label": ".getVideo()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "i()", + "norm_label": ".getvideo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_off", - "label": ".off()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".off()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_on", - "label": ".on()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_pause", + "label": ".pause()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".on()", + "norm_label": ".pause()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "p()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfeaturestate", - "label": "getFeatureState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "getfeaturestate()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_m", + "label": "m()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "s()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".disable()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_b", + "label": "B()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "a()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_c", + "label": "C()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastile", - "label": ".hasTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_d", + "label": "D()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".hastile()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_et", + "label": "et()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": "et()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_f", + "label": "F()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "i()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ft", + "label": "ft()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "l()", + "norm_label": "ft()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_g", + "label": "G()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".load()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_getlight", + "label": ".getLight()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".loaded()", + "norm_label": ".getlight()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_h", + "label": "H()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "o()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_i", + "label": "I()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "s()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_k", + "label": "K()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_v", - "label": "v()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_l", + "label": "L()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "v()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_lt", + "label": "lt()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".load()", + "norm_label": "lt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_b", - "label": "B()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "b()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f", - "label": "F()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_nt", + "label": "nt()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "f()", + "norm_label": "nt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_o", + "label": "O()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "m()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ot", + "label": "ot()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "h()", + "norm_label": "ot()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_q", + "label": "q()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "n()", + "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_recalculate", + "label": ".recalculate()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".enable()", + "norm_label": ".recalculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_rt", + "label": "rt()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "f()", + "norm_label": "rt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_st", + "label": "st()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": "st()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_tt", + "label": "tt()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": "tt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_u", + "label": "U()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "l()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_move", - "label": "._move()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_updatetransitions", + "label": ".updateTransitions()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "._move()", + "norm_label": ".updatetransitions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_v", + "label": "v()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "n()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_w", + "label": "W()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "r()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_x", + "label": "X()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".reset()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".load()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_addeventlistener", - "label": ".addEventListener()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".addeventlistener()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_a", + "label": "A()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_j", - "label": "j()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "j()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d", + "label": "D()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_remove", - "label": ".remove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_getneighboringtiles", + "label": "._getNeighboringTiles()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".remove()", + "norm_label": "._getneighboringtiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_testprop", - "label": ".testProp()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_h", + "label": "H()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".testprop()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_i", + "label": "I()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "a()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_b", - "label": "B()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_l", + "label": "L()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "b()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_c", - "label": "C()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p", + "label": "P()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "c()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_d", - "label": "D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_q", + "label": "q()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "d()", + "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_f", - "label": "F()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "f()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_g", - "label": "G()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_readimagenow", + "label": ".readImageNow()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "g()", + "norm_label": ".readimagenow()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_getlight", - "label": ".getLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_registermessagehandler", + "label": ".registerMessageHandler()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".getlight()", + "norm_label": ".registermessagehandler()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_h", - "label": "H()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t", + "label": "T()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "h()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_i", - "label": "I()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_w", + "label": "w()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "i()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_j", - "label": "j()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_x", + "label": "x()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "j()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_k", - "label": "K()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "k()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_l", - "label": "L()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "l()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "m()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "n()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_o", - "label": "O()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "o()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_k", + "label": "K()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "p()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_q", - "label": "q()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_p", + "label": "p()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "q()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v", + "label": "v()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "r()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_recalculate", - "label": ".recalculate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".recalculate()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_rt", - "label": "rt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "rt()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_m", + "label": "m()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "s()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_u", - "label": "U()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "u()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_updatetransitions", - "label": ".updateTransitions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vn_click", + "label": ".click()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".updatetransitions()", + "norm_label": ".click()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_validate", - "label": "._validate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "._validate()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_w", - "label": "W()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "w()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_x", - "label": "X()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_et", + "label": "et()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "x()", + "norm_label": "et()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_y", - "label": "y()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m", + "label": "M()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "y()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_z", - "label": "z()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_at", + "label": "at()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "z()", + "norm_label": "at()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_a", - "label": "A()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_it", + "label": "it()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "a()", + "norm_label": "it()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_b", - "label": "b()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_ot", + "label": "ot()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "b()", + "norm_label": "ot()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_c", - "label": "C()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_st", + "label": "st()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "c()", + "norm_label": "st()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_q", + "label": "Q()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d", - "label": "D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_rt", + "label": "rt()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "d()", + "norm_label": "rt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_getneighboringtiles", - "label": "._getNeighboringTiles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_tt", + "label": "tt()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "._getneighboringtiles()", + "norm_label": "tt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_h", - "label": "H()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_w", + "label": "w()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "h()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k", - "label": "k()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_e", + "label": "E()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "k()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_f", + "label": "f()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "r()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_l", - "label": "L()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_w", + "label": "W()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "l()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_y", + "label": "Y()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_y_h", + "label": "H()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "o()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_z", + "label": "Z()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "p()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_rgb", + "label": ".rgb()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "a()", + "norm_label": ".rgb()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_q", - "label": "q()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zt", + "label": "zt()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "N", + "community_name": "y", "file_type": "code", - "norm_label": "q()", + "norm_label": "zt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_r", - "label": "r()", + "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call", + "label": "test_search_api_points_at_the_module_that_defines_the_call()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 274, + "community_name": "test_search_api_points_at_the_module_that_defines_the_call", "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_search_api_points_at_the_module_that_defines_the_call()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L296" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_readimagenow", - "label": ".readImageNow()", + "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 274, + "community_name": "test_search_api_points_at_the_module_that_defines_the_call", "file_type": "code", - "norm_label": ".readimagenow()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L300" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_registermessagehandler", - "label": ".registerMessageHandler()", + "id": "tests_test_packaging_test_stderr_usable_rejects_a_broken_handle", + "label": "test_stderr_usable_rejects_a_broken_handle()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 275, + "community_name": "test_stderr_usable_rejects_a_broken_handle", "file_type": "code", - "norm_label": ".registermessagehandler()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_stderr_usable_rejects_a_broken_handle()", + "source_file": "tests/test_packaging.py", + "source_location": "L69" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_remove", - "label": ".remove()", + "id": "tests_test_packaging_test_stderr_usable_rejects_a_broken_handle_write", + "label": "write()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 275, + "community_name": "test_stderr_usable_rejects_a_broken_handle", "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "write()", + "source_file": "tests/test_packaging.py", + "source_location": "L73" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t", - "label": "T()", + "id": "tests_test_ingest_client", + "label": "_client()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "t()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_client()", + "source_file": "tests/test_ingest.py", + "source_location": "L16" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t_i", - "label": "i()", + "id": "tests_test_ingest_test_adapter_load_raw_pec", + "label": "test_adapter_load_raw_pec()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "i()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_adapter_load_raw_pec()", + "source_file": "tests/test_ingest.py", + "source_location": "L164" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_w", - "label": "w()", + "id": "tests_test_ingest_test_ingest_bad_instrument_400", + "label": "test_ingest_bad_instrument_400()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "w()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_ingest_bad_instrument_400()", + "source_file": "tests/test_ingest.py", + "source_location": "L145" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_x", - "label": "x()", + "id": "tests_test_ingest_test_ingest_example_neware", + "label": "test_ingest_example_neware()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "x()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_ingest_example_neware()", + "source_file": "tests/test_ingest.py", + "source_location": "L151" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z", - "label": "z()", + "id": "tests_test_ingest_test_instruments_endpoint", + "label": "test_instruments_endpoint()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "z()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_instruments_endpoint()", + "source_file": "tests/test_ingest.py", + "source_location": "L34" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_i", - "label": "i()", + "id": "tests_test_ingest_test_load_file_passes_remote_uri", + "label": "test_load_file_passes_remote_uri()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "i()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_load_file_passes_remote_uri()", + "source_file": "tests/test_ingest.py", + "source_location": "L69" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_e", - "label": "e()", + "id": "tests_test_ingest_test_load_file_passes_remote_uri_fake_get", + "label": "fake_get()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "fake_get()", + "source_file": "tests/test_ingest.py", + "source_location": "L83" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_finishloading", - "label": "._finishLoading()", + "id": "tests_test_ingest_test_load_file_passes_remote_uri_is_file", + "label": "is_file()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "._finishloading()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "is_file()", + "source_file": "tests/test_ingest.py", + "source_location": "L75" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_load", - "label": ".load()", + "id": "tests_test_ingest_test_load_file_remote_missing_raises", + "label": "test_load_file_remote_missing_raises()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": ".load()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_load_file_remote_missing_raises()", + "source_file": "tests/test_ingest.py", + "source_location": "L117" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s", - "label": "s()", + "id": "tests_test_ingest_test_load_file_remote_missing_raises_is_file", + "label": "is_file()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "is_file()", + "source_file": "tests/test_ingest.py", + "source_location": "L121" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_dispose", - "label": ".dispose()", + "id": "tests_test_ingest_test_load_raw_passes_instrument", + "label": "test_load_raw_passes_instrument()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": ".dispose()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_load_raw_passes_instrument()", + "source_file": "tests/test_ingest.py", + "source_location": "L47" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_f", - "label": "f()", + "id": "tests_test_ingest_test_load_raw_passes_instrument_fake_get", + "label": "fake_get()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "f()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "fake_get()", + "source_file": "tests/test_ingest.py", + "source_location": "L57" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_l", - "label": "l()", + "id": "tests_test_ingest_test_load_raw_passes_remote_uri", + "label": "test_load_raw_passes_remote_uri()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_load_raw_passes_remote_uri()", + "source_file": "tests/test_ingest.py", + "source_location": "L93" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_o", - "label": "o()", + "id": "tests_test_ingest_test_load_raw_passes_remote_uri_fake_get", + "label": "fake_get()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "fake_get()", + "source_file": "tests/test_ingest.py", + "source_location": "L106" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_s", - "label": "s()", + "id": "tests_test_ingest_test_load_raw_passes_remote_uri_is_file", + "label": "is_file()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "is_file()", + "source_file": "tests/test_ingest.py", + "source_location": "L98" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v", - "label": "v()", + "id": "tests_test_ingest_test_load_raw_rewrites_data_df_error", + "label": "test_load_raw_rewrites_data_df_error()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "v()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_load_raw_rewrites_data_df_error()", + "source_file": "tests/test_ingest.py", + "source_location": "L132" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_y", - "label": "y()", + "id": "tests_test_ingest_test_load_raw_rewrites_data_df_error_boom", + "label": "boom()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 277, + "community_name": "test_ingest.py", "file_type": "code", - "norm_label": "y()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "boom()", + "source_file": "tests/test_ingest.py", + "source_location": "L136" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_constructor", + "id": "tests_test_ingest_wait", + "label": "_wait()", + "_callable": true, + "_origin": "ast", + "community": 277, + "community_name": "test_ingest.py", + "file_type": "code", + "norm_label": "_wait()", + "source_file": "tests/test_ingest.py", + "source_location": "L23" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_k", - "label": "K()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "k()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_initdebugoverlaycanvas", - "label": ".initDebugOverlayCanvas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": ".initdebugoverlaycanvas()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_substring", - "label": ".substring()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_endmove", + "label": ".endMove()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": ".substring()", + "norm_label": ".endmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_trim", - "label": ".trim()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": ".trim()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_a", - "label": "A()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "a()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_b", - "label": "b()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isonefingertouch", + "label": "._isOneFingerTouch()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "b()", + "norm_label": "._isonefingertouch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_c", - "label": "C()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_issametouchevent", + "label": "._isSameTouchEvent()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "c()", + "norm_label": "._issametouchevent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isvalidendevent", + "label": ".isValidEndEvent()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".isvalidendevent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_i", - "label": "I()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isvalidmoveevent", + "label": ".isValidMoveEvent()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "i()", + "norm_label": ".isvalidmoveevent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_k", - "label": "k()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isvalidstartevent", + "label": ".isValidStartEvent()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "k()", + "norm_label": ".isvalidstartevent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_m", - "label": "M()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_mousedown", + "label": ".mousedown()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "m()", + "norm_label": ".mousedown()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_meterinmercatorcoordinateunits", - "label": ".meterInMercatorCoordinateUnits()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_mousemove", + "label": ".mousemove()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": ".meterinmercatorcoordinateunits()", + "norm_label": ".mousemove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_o", - "label": "O()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_mouseup", + "label": ".mouseup()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "o()", + "norm_label": ".mouseup()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "p()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_w", - "label": "w()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_startmove", + "label": ".startMove()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 278, + "community_name": "qn", "file_type": "code", - "norm_label": "w()", + "norm_label": ".startmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_z", - "label": "z()", + "id": "src_cellpy_simple_gui_api_routers_uploads_clear_uploads", + "label": "clear_uploads()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": "z()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "clear_uploads()", + "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", + "source_location": "L61" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v", - "label": "v()", + "id": "src_cellpy_simple_gui_api_routers_uploads_list_uploads", + "label": "list_uploads()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": "v()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "list_uploads()", + "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", + "source_location": "L56" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_g", - "label": "g()", + "id": "src_cellpy_simple_gui_api_routers_uploads_upload", + "label": "upload()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": "g()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "upload()", + "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", + "source_location": "L23" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_l", - "label": "l()", + "id": "src_cellpy_simple_gui_core_uploads_clear", + "label": "clear()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "clear()", + "source_file": "src/cellpy_simple_gui/core/uploads.py", + "source_location": "L137" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_m", - "label": "m()", + "id": "src_cellpy_simple_gui_core_uploads_max_upload_bytes", + "label": "max_upload_bytes()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": "m()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "max_upload_bytes()", + "source_file": "src/cellpy_simple_gui/core/uploads.py", + "source_location": "L84" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_y", - "label": "y()", + "id": "src_cellpy_simple_gui_core_uploads_safe_name", + "label": "safe_name()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": "y()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "safe_name()", + "source_file": "src/cellpy_simple_gui/core/uploads.py", + "source_location": "L56" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vn_click", - "label": ".click()", + "id": "src_cellpy_simple_gui_core_uploads_save", + "label": "save()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": ".click()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "save()", + "source_file": "src/cellpy_simple_gui/core/uploads.py", + "source_location": "L88" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_core_uploads_unique", + "label": "_unique()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": ".bind()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_unique()", + "source_file": "src/cellpy_simple_gui/core/uploads.py", + "source_location": "L71" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_core_uploads_uploads_dir", + "label": "uploads_dir()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "uploads_dir()", + "source_file": "src/cellpy_simple_gui/core/uploads.py", + "source_location": "L47" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_et", - "label": "et()", + "id": "src_cellpy_simple_gui_core_uploads_usage", + "label": "usage()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 28, + "community_name": "library.py", "file_type": "code", - "norm_label": "et()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "usage()", + "source_file": "src/cellpy_simple_gui/core/uploads.py", + "source_location": "L128" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_issizepoweroftwo", - "label": ".isSizePowerOfTwo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_ft", + "label": "Ft()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": ".issizepoweroftwo()", + "norm_label": "ft()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m", - "label": "M()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circleandrectcollide", + "label": "._circleAndRectCollide()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": "m()", + "norm_label": "._circleandrectcollide()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_lt", - "label": "lt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circlescollide", + "label": "._circlesCollide()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": "lt()", + "norm_label": "._circlescollide()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_rt", - "label": "rt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": "rt()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_tt", - "label": "tt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoxcellcoord", + "label": "._convertToXCellCoord()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": "tt()", + "norm_label": "._converttoxcellcoord()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoycellcoord", + "label": "._convertToYCellCoord()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": ".update()", + "norm_label": "._converttoycellcoord()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_w", - "label": "w()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_foreachcell", + "label": "._forEachCell()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": "w()", + "norm_label": "._foreachcell()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_e", - "label": "E()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hcl", + "label": ".hcl()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": "e()", + "norm_label": ".hcl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hittest", + "label": ".hitTest()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": "f()", + "norm_label": ".hittest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getcenter", - "label": ".getCenter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hittestcircle", + "label": ".hitTestCircle()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "N", + "community": 282, + "community_name": "Xt", "file_type": "code", - "norm_label": ".getcenter()", + "norm_label": ".hittestcircle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_w", - "label": "W()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "w()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_y", - "label": "Y()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "y()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_y_h", - "label": "H()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "h()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_z", - "label": "Z()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "z()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_remove", - "label": ".remove()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_rgb", - "label": ".rgb()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": ".rgb()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y", - "label": "y()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "y()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z", - "label": "z()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "z()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_g", - "label": "g()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "g()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zt", - "label": "zt()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "N", - "file_type": "code", - "norm_label": "zt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 275, - "community_name": "se", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_eachchild", - "label": ".eachChild()", - "_callable": true, - "_origin": "ast", - "community": 275, - "community_name": "se", - "file_type": "code", - "norm_label": ".eachchild()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_evaluate", - "label": ".evaluate()", - "_callable": true, - "_origin": "ast", - "community": 275, - "community_name": "se", - "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_outputdefined", - "label": ".outputDefined()", - "_callable": true, - "_origin": "ast", - "community": 275, - "community_name": "se", - "file_type": "code", - "norm_label": ".outputdefined()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_parse", - "label": ".parse()", - "_callable": true, - "_origin": "ast", - "community": 275, - "community_name": "se", - "file_type": "code", - "norm_label": ".parse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "tests_test_ingest_client", - "label": "_client()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "_client()", - "source_file": "tests/test_ingest.py", - "source_location": "L16" - }, - { - "id": "tests_test_ingest_test_adapter_load_raw_pec", - "label": "test_adapter_load_raw_pec()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "test_adapter_load_raw_pec()", - "source_file": "tests/test_ingest.py", - "source_location": "L164" - }, - { - "id": "tests_test_ingest_test_ingest_bad_instrument_400", - "label": "test_ingest_bad_instrument_400()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "test_ingest_bad_instrument_400()", - "source_file": "tests/test_ingest.py", - "source_location": "L145" - }, - { - "id": "tests_test_ingest_test_ingest_example_neware", - "label": "test_ingest_example_neware()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "test_ingest_example_neware()", - "source_file": "tests/test_ingest.py", - "source_location": "L151" - }, - { - "id": "tests_test_ingest_test_instruments_endpoint", - "label": "test_instruments_endpoint()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "test_instruments_endpoint()", - "source_file": "tests/test_ingest.py", - "source_location": "L34" - }, - { - "id": "tests_test_ingest_test_load_file_passes_remote_uri", - "label": "test_load_file_passes_remote_uri()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "test_load_file_passes_remote_uri()", - "source_file": "tests/test_ingest.py", - "source_location": "L69" - }, - { - "id": "tests_test_ingest_test_load_file_passes_remote_uri_fake_get", - "label": "fake_get()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "fake_get()", - "source_file": "tests/test_ingest.py", - "source_location": "L83" - }, - { - "id": "tests_test_ingest_test_load_file_passes_remote_uri_is_file", - "label": "is_file()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "is_file()", - "source_file": "tests/test_ingest.py", - "source_location": "L75" - }, - { - "id": "tests_test_ingest_test_load_file_remote_missing_raises", - "label": "test_load_file_remote_missing_raises()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "test_load_file_remote_missing_raises()", - "source_file": "tests/test_ingest.py", - "source_location": "L117" - }, - { - "id": "tests_test_ingest_test_load_file_remote_missing_raises_is_file", - "label": "is_file()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "is_file()", - "source_file": "tests/test_ingest.py", - "source_location": "L121" - }, - { - "id": "tests_test_ingest_test_load_raw_passes_instrument", - "label": "test_load_raw_passes_instrument()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "test_load_raw_passes_instrument()", - "source_file": "tests/test_ingest.py", - "source_location": "L47" - }, - { - "id": "tests_test_ingest_test_load_raw_passes_instrument_fake_get", - "label": "fake_get()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "fake_get()", - "source_file": "tests/test_ingest.py", - "source_location": "L57" - }, - { - "id": "tests_test_ingest_test_load_raw_passes_remote_uri", - "label": "test_load_raw_passes_remote_uri()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "test_load_raw_passes_remote_uri()", - "source_file": "tests/test_ingest.py", - "source_location": "L93" - }, - { - "id": "tests_test_ingest_test_load_raw_passes_remote_uri_fake_get", - "label": "fake_get()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "fake_get()", - "source_file": "tests/test_ingest.py", - "source_location": "L106" - }, - { - "id": "tests_test_ingest_test_load_raw_passes_remote_uri_is_file", - "label": "is_file()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "is_file()", - "source_file": "tests/test_ingest.py", - "source_location": "L98" - }, - { - "id": "tests_test_ingest_test_load_raw_rewrites_data_df_error", - "label": "test_load_raw_rewrites_data_df_error()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "test_load_raw_rewrites_data_df_error()", - "source_file": "tests/test_ingest.py", - "source_location": "L132" - }, - { - "id": "tests_test_ingest_test_load_raw_rewrites_data_df_error_boom", - "label": "boom()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "boom()", - "source_file": "tests/test_ingest.py", - "source_location": "L136" - }, - { - "id": "tests_test_ingest_wait", - "label": "_wait()", - "_callable": true, - "_origin": "ast", - "community": 277, - "community_name": "test_ingest.py", - "file_type": "code", - "norm_label": "_wait()", - "source_file": "tests/test_ingest.py", - "source_location": "L23" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_disable", - "label": ".disable()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".disable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_enable", - "label": ".enable()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".enable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_endmove", - "label": ".endMove()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".endmove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isactive", - "label": ".isActive()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".isactive()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isenabled", - "label": ".isEnabled()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".isenabled()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isonefingertouch", - "label": "._isOneFingerTouch()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": "._isonefingertouch()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_issametouchevent", - "label": "._isSameTouchEvent()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": "._issametouchevent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isvalidendevent", - "label": ".isValidEndEvent()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".isvalidendevent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isvalidmoveevent", - "label": ".isValidMoveEvent()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".isvalidmoveevent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_isvalidstartevent", - "label": ".isValidStartEvent()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".isvalidstartevent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_mousedown", - "label": ".mousedown()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".mousedown()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_mousemove", - "label": ".mousemove()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".mousemove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_mouseup", - "label": ".mouseup()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".mouseup()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_reset", - "label": ".reset()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".reset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_startmove", - "label": ".startMove()", - "_callable": true, - "_origin": "ast", - "community": 278, - "community_name": "qn", - "file_type": "code", - "norm_label": ".startmove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_api_routers_uploads_clear_uploads", - "label": "clear_uploads()", - "_callable": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "clear_uploads()", - "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", - "source_location": "L61" - }, - { - "id": "src_cellpy_simple_gui_api_routers_uploads_list_uploads", - "label": "list_uploads()", - "_callable": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "list_uploads()", - "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", - "source_location": "L56" - }, - { - "id": "src_cellpy_simple_gui_api_routers_uploads_upload", - "label": "upload()", - "_callable": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "upload()", - "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", - "source_location": "L23" - }, - { - "id": "src_cellpy_simple_gui_core_uploads_clear", - "label": "clear()", - "_callable": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "clear()", - "source_file": "src/cellpy_simple_gui/core/uploads.py", - "source_location": "L137" - }, - { - "id": "src_cellpy_simple_gui_core_uploads_max_upload_bytes", - "label": "max_upload_bytes()", - "_callable": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "max_upload_bytes()", - "source_file": "src/cellpy_simple_gui/core/uploads.py", - "source_location": "L84" - }, - { - "id": "src_cellpy_simple_gui_core_uploads_safe_name", - "label": "safe_name()", - "_callable": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "safe_name()", - "source_file": "src/cellpy_simple_gui/core/uploads.py", - "source_location": "L56" - }, - { - "id": "src_cellpy_simple_gui_core_uploads_save", - "label": "save()", - "_callable": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "save()", - "source_file": "src/cellpy_simple_gui/core/uploads.py", - "source_location": "L88" - }, - { - "id": "src_cellpy_simple_gui_core_uploads_unique", - "label": "_unique()", - "_callable": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "_unique()", - "source_file": "src/cellpy_simple_gui/core/uploads.py", - "source_location": "L71" - }, - { - "id": "src_cellpy_simple_gui_core_uploads_uploads_dir", - "label": "uploads_dir()", - "_callable": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "uploads_dir()", - "source_file": "src/cellpy_simple_gui/core/uploads.py", - "source_location": "L47" - }, - { - "id": "src_cellpy_simple_gui_core_uploads_usage", - "label": "usage()", - "_callable": true, - "_origin": "ast", - "community": 28, - "community_name": "core/__init__.py", - "file_type": "code", - "norm_label": "usage()", - "source_file": "src/cellpy_simple_gui/core/uploads.py", - "source_location": "L128" - }, - { - "id": "examples_mcp_server_cell", - "label": "_cell()", - "_callable": true, - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "code", - "norm_label": "_cell()", - "source_file": "examples/mcp/server.py", - "source_location": "L159" - }, - { - "id": "examples_mcp_server_collection", - "label": "_collection()", - "_callable": true, - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "code", - "norm_label": "_collection()", - "source_file": "examples/mcp/server.py", - "source_location": "L165" - }, - { - "id": "examples_mcp_server_export_collection", - "label": "export_collection()", - "_callable": true, - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "code", - "norm_label": "export_collection()", - "source_file": "examples/mcp/server.py", - "source_location": "L450" - }, - { - "id": "examples_mcp_server_render", - "label": "render()", - "_callable": true, - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "code", - "norm_label": "render()", - "source_file": "examples/mcp/server.py", - "source_location": "L401" - }, - { - "id": "examples_mcp_server_resolve", - "label": "_resolve()", - "_callable": true, - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "code", - "norm_label": "_resolve()", - "source_file": "examples/mcp/server.py", - "source_location": "L92" - }, - { - "id": "examples_mcp_server_session_handle", - "label": ".handle()", - "_callable": true, - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "code", - "norm_label": ".handle()", - "source_file": "examples/mcp/server.py", - "source_location": "L132" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_ft", - "label": "Ft()", - "_callable": true, - "_origin": "ast", - "community": 282, - "community_name": "Xt", - "file_type": "code", - "norm_label": "ft()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circleandrectcollide", - "label": "._circleAndRectCollide()", - "_callable": true, - "_origin": "ast", - "community": 282, - "community_name": "Xt", - "file_type": "code", - "norm_label": "._circleandrectcollide()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circlescollide", - "label": "._circlesCollide()", - "_callable": true, - "_origin": "ast", - "community": 282, - "community_name": "Xt", - "file_type": "code", - "norm_label": "._circlescollide()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 282, - "community_name": "Xt", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hcl", - "label": ".hcl()", - "_callable": true, - "_origin": "ast", - "community": 282, - "community_name": "Xt", - "file_type": "code", - "norm_label": ".hcl()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hittest", - "label": ".hitTest()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insertboxcell", + "label": "._insertBoxCell()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": ".hittest()", + "norm_label": "._insertboxcell()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insertboxcell", - "label": "._insertBoxCell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insertcircle", + "label": ".insertCircle()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": "._insertboxcell()", + "norm_label": ".insertcircle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -26379,38 +26487,26 @@ "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ir", - "label": "Ir()", - "_callable": true, - "_origin": "ast", - "community": 287, - "community_name": "ge", - "file_type": "code", - "norm_label": "ir()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_jr", - "label": "jr()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_jn", + "label": "jn()", "_callable": true, "_origin": "ast", "community": 287, "community_name": "ge", "file_type": "code", - "norm_label": "jr()", + "norm_label": "jn()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_lr", - "label": "lr()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_me", + "label": "me()", "_callable": true, "_origin": "ast", "community": 287, "community_name": "ge", "file_type": "code", - "norm_label": "lr()", + "norm_label": "me()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, @@ -26451,26 +26547,38 @@ "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_vn", - "label": "Vn()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ti", + "label": "ti()", "_callable": true, "_origin": "ast", "community": 287, "community_name": "ge", "file_type": "code", - "norm_label": "vn()", + "norm_label": "ti()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_touchstart", - "label": ".touchstart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_contains", + "label": ".contains()", "_callable": true, "_origin": "ast", "community": 29, "community_name": "xi", "file_type": "code", - "norm_label": ".touchstart()", + "norm_label": ".contains()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getuistring", + "label": "_getUIString()", + "_callable": true, + "_origin": "ast", + "community": 29, + "community_name": "xi", + "file_type": "code", + "norm_label": "_getuistring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -26510,6 +26618,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_addto", + "label": ".addTo()", + "_callable": true, + "_origin": "ast", + "community": 29, + "community_name": "xi", + "file_type": "code", + "norm_label": ".addto()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_constructor", "label": ".constructor()", @@ -26690,6 +26810,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setdraggable", + "label": ".setDraggable()", + "_callable": true, + "_origin": "ast", + "community": 29, + "community_name": "xi", + "file_type": "code", + "norm_label": ".setdraggable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setlnglat", "label": ".setLngLat()", @@ -26810,18 +26942,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchstart", - "label": ".touchstart()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".touchstart()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_updateopacity", "label": "._updateOpacity()", @@ -26846,42 +26966,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_destroy", - "label": ".destroy()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_o", - "label": "o()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_cleartextures", - "label": ".clearTextures()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".cleartextures()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_constructor", "label": ".constructor()", @@ -26906,18 +26990,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_patternsloaded", - "label": ".patternsLoaded()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".patternsloaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_prepare", "label": ".prepare()", @@ -26990,6 +27062,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_wasrequested", + "label": ".wasRequested()", + "_callable": true, + "_origin": "ast", + "community": 293, + "community_name": "ht", + "file_type": "code", + "norm_label": ".wasrequested()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aborttile", "label": ".abortTile()", @@ -27003,19 +27087,31 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_unloadtile", - "label": ".unloadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aftertileloadworkerresponse", + "label": "._afterTileLoadWorkerResponse()", "_callable": true, "_origin": "ast", "community": 293, "community_name": "ht", "file_type": "code", - "norm_label": ".unloadtile()", + "norm_label": "._aftertileloadworkerresponse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_unloadtile", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loadtile", + "label": ".loadTile()", + "_callable": true, + "_origin": "ast", + "community": 293, + "community_name": "ht", + "file_type": "code", + "norm_label": ".loadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_unloadtile", "label": ".unloadTile()", "_callable": true, "_origin": "ast", @@ -27075,80 +27171,44 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_unloadtile", - "label": ".unloadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resolveurl", + "label": "resolveURL()", "_callable": true, "_origin": "ast", "community": 293, "community_name": "ht", "file_type": "code", - "norm_label": ".unloadtile()", + "norm_label": "resolveurl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resolveurl", - "label": "resolveURL()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sendasync", + "label": "sendAsync()", "_callable": true, "_origin": "ast", "community": 293, "community_name": "ht", "file_type": "code", - "norm_label": "resolveurl()", + "norm_label": "sendasync()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_destruct", - "label": ".destruct()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_overscalefactor", + "label": ".overscaleFactor()", "_callable": true, "_origin": "ast", "community": 293, "community_name": "ht", "file_type": "code", - "norm_label": ".destruct()", + "norm_label": ".overscalefactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sendasync", - "label": "sendAsync()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": "sendasync()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_destroy", - "label": ".destroy()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_savetiletexture", - "label": ".saveTileTexture()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".savetiletexture()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", "community": 293, @@ -27183,28 +27243,16 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_plot_types", - "label": "plot_types()", - "_callable": true, - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "code", - "norm_label": "plot_types()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L25" - }, - { - "id": "src_cellpy_simple_gui_core_collect_add_spread_hover", - "label": "_add_spread_hover()", + "id": "src_cellpy_simple_gui_core_collect_apply_colorway", + "label": "_apply_colorway()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_add_spread_hover()", + "norm_label": "_apply_colorway()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L773" + "source_location": "L1345" }, { "id": "src_cellpy_simple_gui_core_collect_apply_xy_ranges", @@ -27219,28 +27267,28 @@ "source_location": "L753" }, { - "id": "src_cellpy_simple_gui_core_collect_attach_spread", - "label": "_attach_spread()", + "id": "src_cellpy_simple_gui_core_collect_batch", + "label": "_batch()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_attach_spread()", + "norm_label": "_batch()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L815" + "source_location": "L85" }, { - "id": "src_cellpy_simple_gui_core_collect_axis_title", - "label": "_axis_title()", + "id": "src_cellpy_simple_gui_core_collect_batch_keys", + "label": "batch_keys()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_axis_title()", + "norm_label": "batch_keys()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L842" + "source_location": "L65" }, { "id": "src_cellpy_simple_gui_core_collect_capacity_mode_from_column", @@ -27255,40 +27303,64 @@ "source_location": "L380" }, { - "id": "src_cellpy_simple_gui_core_collect_cycle_info_figure_json", - "label": "cycle_info_figure_json()", + "id": "src_cellpy_simple_gui_core_collect_cycles_collection", + "label": "cycles_collection()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "cycle_info_figure_json()", + "norm_label": "cycles_collection()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L947" + "source_location": "L496" }, { - "id": "src_cellpy_simple_gui_core_collect_facet_labels_by_axes", - "label": "_facet_labels_by_axes()", + "id": "src_cellpy_simple_gui_core_collect_dva_collection", + "label": "dva_collection()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_facet_labels_by_axes()", + "norm_label": "dva_collection()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1221" + "source_location": "L530" }, { - "id": "src_cellpy_simple_gui_core_collect_facet_traces", - "label": "_facet_traces()", + "id": "src_cellpy_simple_gui_core_collect_export_bytes", + "label": "export_bytes()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_facet_traces()", + "norm_label": "export_bytes()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L833" + "source_location": "L1457" + }, + { + "id": "src_cellpy_simple_gui_core_collect_export_frame_bytes", + "label": "export_frame_bytes()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "export_frame_bytes()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1440" + }, + { + "id": "src_cellpy_simple_gui_core_collect_facet_labels_by_axes", + "label": "_facet_labels_by_axes()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "_facet_labels_by_axes()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1221" }, { "id": "src_cellpy_simple_gui_core_collect_family_columns", @@ -27327,16 +27399,16 @@ "source_location": "L218" }, { - "id": "src_cellpy_simple_gui_core_collect_has_right_facet_strips", - "label": "_has_right_facet_strips()", + "id": "src_cellpy_simple_gui_core_collect_hex_to_rgba", + "label": "_hex_to_rgba()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_has_right_facet_strips()", + "norm_label": "_hex_to_rgba()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1173" + "source_location": "L1332" }, { "id": "src_cellpy_simple_gui_core_collect_layout_key_for_x_id", @@ -27363,16 +27435,16 @@ "source_location": "L1033" }, { - "id": "src_cellpy_simple_gui_core_collect_note_downsampling", - "label": "_note_downsampling()", + "id": "src_cellpy_simple_gui_core_collect_missing_summary_columns", + "label": "missing_summary_columns()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_note_downsampling()", + "norm_label": "missing_summary_columns()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L980" + "source_location": "L258" }, { "id": "src_cellpy_simple_gui_core_collect_overlay_label", @@ -27434,18 +27506,6 @@ "source_file": "src/cellpy_simple_gui/core/collect.py", "source_location": "L375" }, - { - "id": "src_cellpy_simple_gui_core_collect_raw_figure_json", - "label": "raw_figure_json()", - "_callable": true, - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "code", - "norm_label": "raw_figure_json()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L915" - }, { "id": "src_cellpy_simple_gui_core_collect_registry_plot_types", "label": "registry_plot_types()", @@ -27471,16 +27531,28 @@ "source_location": "L714" }, { - "id": "src_cellpy_simple_gui_core_collect_spread_hovertemplate", - "label": "_spread_hovertemplate()", + "id": "src_cellpy_simple_gui_core_collect_select_ica_direction", + "label": "select_ica_direction()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_spread_hovertemplate()", + "norm_label": "select_ica_direction()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L807" + "source_location": "L549" + }, + { + "id": "src_cellpy_simple_gui_core_collect_summary_collection", + "label": "summary_collection()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "summary_collection()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L463" }, { "id": "src_cellpy_simple_gui_core_collect_summary_column_axis_label", @@ -27567,28 +27639,28 @@ "source_location": "L236" }, { - "id": "src_cellpy_simple_gui_core_collect_trace_axis_extent", - "label": "_trace_axis_extent()", + "id": "src_cellpy_simple_gui_core_collect_summary_y_label_mapper", + "label": "summary_y_label_mapper()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_trace_axis_extent()", + "norm_label": "summary_y_label_mapper()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L675" + "source_location": "L432" }, { - "id": "src_cellpy_simple_gui_core_collect_trace_cell_label", - "label": "_trace_cell_label()", + "id": "src_cellpy_simple_gui_core_collect_trace_axis_extent", + "label": "_trace_axis_extent()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_trace_cell_label()", + "norm_label": "_trace_axis_extent()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1205" + "source_location": "L675" }, { "id": "src_cellpy_simple_gui_core_collect_truncate_label", @@ -27603,16 +27675,76 @@ "source_location": "L1123" }, { - "id": "tests_test_core_test_summary_panels_for_capacity_ce", - "label": "test_summary_panels_for_capacity_ce()", + "id": "src_cellpy_simple_gui_core_export_cycles_export", + "label": "cycles_export()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "test_summary_panels_for_capacity_ce()", - "source_file": "tests/test_core.py", - "source_location": "L1238" + "norm_label": "cycles_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L80" + }, + { + "id": "src_cellpy_simple_gui_core_export_cycles_figure_export", + "label": "cycles_figure_export()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "cycles_figure_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L105" + }, + { + "id": "src_cellpy_simple_gui_core_export_dva_export", + "label": "dva_export()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "dva_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L151" + }, + { + "id": "src_cellpy_simple_gui_core_export_summary_export", + "label": "summary_export()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "summary_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L59" + }, + { + "id": "src_cellpy_simple_gui_core_export_summary_figure_export", + "label": "summary_figure_export()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "summary_figure_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L99" + }, + { + "id": "src_cellpy_simple_gui_core_plotting_summary_figure", + "label": "summary_figure()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "summary_figure()", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L27" }, { "id": "src_cellpy_simple_gui_api_routers_export_check_data_fmt", @@ -27758,18 +27890,6 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L112" }, - { - "id": "src_cellpy_simple_gui_core_export_figureexporterror_init", - "label": ".__init__()", - "_callable": true, - "_origin": "ast", - "community": 30, - "community_name": "routers/export.py", - "file_type": "code", - "norm_label": ".__init__()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L54" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_gettransition", "label": ".getTransition()", @@ -27914,114 +28034,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "tests_conftest_parse_figure", - "label": "parse_figure()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "parse_figure()", - "source_file": "tests/conftest.py", - "source_location": "L34" - }, - { - "id": "tests_test_agent_docs_generator", - "label": "generator()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "generator()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L28" - }, - { - "id": "tests_test_agent_docs_test_every_path_the_index_points_at_exists", - "label": "test_every_path_the_index_points_at_exists()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_every_path_the_index_points_at_exists()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L54" - }, - { - "id": "tests_test_agent_docs_test_llms_full_actually_contains_the_documents", - "label": "test_llms_full_actually_contains_the_documents()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_llms_full_actually_contains_the_documents()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L71" - }, - { - "id": "tests_test_agent_docs_test_llms_txt_is_current", - "label": "test_llms_txt_is_current()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_llms_txt_is_current()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L40" - }, - { - "id": "tests_test_agent_docs_test_the_index_lists_every_guide", - "label": "test_the_index_lists_every_guide()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_the_index_lists_every_guide()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L64" - }, - { - "id": "tests_test_agent_docs_test_the_skill_has_the_frontmatter_a_skill_needs", - "label": "test_the_skill_has_the_frontmatter_a_skill_needs()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_the_skill_has_the_frontmatter_a_skill_needs()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L84" - }, - { - "id": "tests_test_agent_docs_test_the_skill_reference_is_bundled", - "label": "test_the_skill_reference_is_bundled()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_the_skill_reference_is_bundled()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L115" - }, - { - "id": "tests_test_agent_docs_test_the_skill_states_the_traps_that_produce_plausible_output", - "label": "test_the_skill_states_the_traps_that_produce_plausible_output()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_the_skill_states_the_traps_that_produce_plausible_output()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L99" - }, { "id": "tests_test_api_reference_generated_against", "label": "generated_against()", @@ -28166,6 +28178,54 @@ "source_file": "tests/test_guides.py", "source_location": "L44" }, + { + "id": "tests_test_journal_build_journal", + "label": "_build_journal()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "_build_journal()", + "source_file": "tests/test_journal.py", + "source_location": "L9" + }, + { + "id": "tests_test_journal_test_load_corrupt_journal_raises_clear_error", + "label": "test_load_corrupt_journal_raises_clear_error()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_load_corrupt_journal_raises_clear_error()", + "source_file": "tests/test_journal.py", + "source_location": "L73" + }, + { + "id": "tests_test_journal_test_load_journal_cells", + "label": "test_load_journal_cells()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_load_journal_cells()", + "source_file": "tests/test_journal.py", + "source_location": "L32" + }, + { + "id": "tests_test_journal_test_load_journal_missing_files_returns_empty", + "label": "test_load_journal_missing_files_returns_empty()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_load_journal_missing_files_returns_empty()", + "source_file": "tests/test_journal.py", + "source_location": "L51" + }, { "id": "tests_test_starter_starter", "label": "starter()", @@ -28479,100 +28539,28 @@ "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_example_raw_path", - "label": "example_raw_path()", - "_callable": true, - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "code", - "norm_label": "example_raw_path()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L303" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_filename_for_get", - "label": "_filename_for_get()", - "_callable": true, - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "code", - "norm_label": "_filename_for_get()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L321" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_get", - "label": "_get()", - "_callable": true, - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "code", - "norm_label": "_get()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L349" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_file", - "label": "load_file()", - "_callable": true, - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "code", - "norm_label": "load_file()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L340" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_raw", - "label": "load_raw()", - "_callable": true, - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "code", - "norm_label": "load_raw()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L242" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rewrite_loader_error", - "label": "_rewrite_loader_error()", - "_callable": true, - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "code", - "norm_label": "_rewrite_loader_error()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L291" - }, - { - "id": "src_cellpy_simple_gui_core_paths_is_remote_uri", - "label": "is_remote_uri()", + "id": "packaging_smoke_test_check", + "label": "check()", "_callable": true, "_origin": "ast", - "community": 33, - "community_name": "load_raw", + "community": 32, + "community_name": "gh", "file_type": "code", - "norm_label": "is_remote_uri()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L43" + "norm_label": "check()", + "source_file": "packaging/smoke_test.py", + "source_location": "L48" }, { - "id": "src_cellpy_simple_gui_core_paths_remote_paths_allowed", - "label": "remote_paths_allowed()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gh", + "label": "gh()", "_callable": true, "_origin": "ast", - "community": 33, - "community_name": "load_raw", + "community": 32, + "community_name": "gh", "file_type": "code", - "norm_label": "remote_paths_allowed()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L49" + "norm_label": "gh()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bc", @@ -28622,6 +28610,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_hasinvaliddimensions", + "label": "._hasInvalidDimensions()", + "_callable": true, + "_origin": "ast", + "community": 34, + "community_name": ".createVertexBuffer", + "file_type": "code", + "norm_label": "._hasinvaliddimensions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_prepare", "label": ".prepare()", @@ -28946,18 +28946,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_config.py", "source_location": "L283" }, - { - "id": "tests_test_packaging_fake_cellpy_config_get_config", - "label": "get_config()", - "_callable": true, - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "code", - "norm_label": "get_config()", - "source_file": "tests/test_packaging.py", - "source_location": "L116" - }, { "id": "tests_test_paths_local", "label": "local()", @@ -29271,112 +29259,124 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_reload", - "label": ".reload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_resume", + "label": ".resume()", "_callable": true, "_origin": "ast", "community": 37, "community_name": ".resume", "file_type": "code", - "norm_label": ".reload()", + "norm_label": ".resume()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_resume", - "label": ".resume()", + "id": "src_cellpy_simple_gui_core_collect_add_spread_hover", + "label": "_add_spread_hover()", "_callable": true, "_origin": "ast", - "community": 37, - "community_name": ".resume", + "community": 38, + "community_name": "_add_spread_hover", "file_type": "code", - "norm_label": ".resume()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_add_spread_hover()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L773" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_querysourcefeatures", - "label": ".querySourceFeatures()", + "id": "src_cellpy_simple_gui_core_collect_attach_spread", + "label": "_attach_spread()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": ".getRenderableIds", + "community_name": "_add_spread_hover", "file_type": "code", - "norm_label": ".querysourcefeatures()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_attach_spread()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L815" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateplacement", - "label": "._updatePlacement()", + "id": "src_cellpy_simple_gui_core_collect_axis_title", + "label": "_axis_title()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": ".getRenderableIds", + "community_name": "_add_spread_hover", "file_type": "code", - "norm_label": "._updateplacement()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_axis_title()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L842" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getrenderableids", - "label": ".getRenderableIds()", + "id": "src_cellpy_simple_gui_core_collect_facet_traces", + "label": "_facet_traces()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": ".getRenderableIds", + "community_name": "_add_spread_hover", "file_type": "code", - "norm_label": ".getrenderableids()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_facet_traces()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L833" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_gettilebyid", - "label": ".getTileByID()", + "id": "src_cellpy_simple_gui_core_collect_spread_hovertemplate", + "label": "_spread_hovertemplate()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": ".getRenderableIds", + "community_name": "_add_spread_hover", "file_type": "code", - "norm_label": ".gettilebyid()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_spread_hovertemplate()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L807" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_querysourcefeatures", - "label": "querySourceFeatures()", + "id": "tests_test_core_spread_library", + "label": "_spread_library()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": ".getRenderableIds", + "community_name": "_add_spread_hover", "file_type": "code", - "norm_label": "querysourcefeatures()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_spread_library()", + "source_file": "tests/test_core.py", + "source_location": "L1151" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_islessthan", - "label": ".isLessThan()", + "id": "tests_test_core_test_summary_figure_y_ranges_apply_with_group_avg_and_spread", + "label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": ".getRenderableIds", + "community_name": "_add_spread_hover", "file_type": "code", - "norm_label": ".islessthan()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", + "source_file": "tests/test_core.py", + "source_location": "L1180" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setstale", - "label": ".setStale()", + "id": "tests_test_core_test_summary_figure_y_ranges_one_sided_with_spread", + "label": "test_summary_figure_y_ranges_one_sided_with_spread()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": ".getRenderableIds", + "community_name": "_add_spread_hover", "file_type": "code", - "norm_label": ".setstale()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_summary_figure_y_ranges_one_sided_with_spread()", + "source_file": "tests/test_core.py", + "source_location": "L1217" + }, + { + "id": "tests_test_core_yaxis_for_title_text", + "label": "_yaxis_for_title_text()", + "_callable": true, + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "code", + "norm_label": "_yaxis_for_title_text()", + "source_file": "tests/test_core.py", + "source_location": "L1167" }, { "id": "src_cellpy_simple_gui_core_collect_apply_y_ranges", @@ -29427,14 +29427,14 @@ "source_location": "L744" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_al", - "label": "al()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_as", + "label": "As()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "al()", + "norm_label": "as()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -29594,6 +29594,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fs", + "label": "fs()", + "_callable": true, + "_origin": "ast", + "community": 4, + "community_name": "ss", + "file_type": "code", + "norm_label": "fs()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gs", "label": "gs()", @@ -29607,38 +29619,62 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hs", - "label": "hs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_createbucket", + "label": ".createBucket()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "hs()", + "norm_label": ".createbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il", - "label": "il()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_is3d", + "label": ".is3D()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "il()", + "norm_label": ".is3d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il_feature", - "label": ".feature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryintersectsfeature", + "label": ".queryIntersectsFeature()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".feature()", + "norm_label": ".queryintersectsfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryradius", + "label": ".queryRadius()", + "_callable": true, + "_origin": "ast", + "community": 4, + "community_name": "ss", + "file_type": "code", + "norm_label": ".queryradius()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hs", + "label": "hs()", + "_callable": true, + "_origin": "ast", + "community": 4, + "community_name": "ss", + "file_type": "code", + "norm_label": "hs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -29654,6 +29690,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ks", + "label": "ks()", + "_callable": true, + "_origin": "ast", + "community": 4, + "community_name": "ss", + "file_type": "code", + "norm_label": "ks()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ll", "label": "ll()", @@ -29667,122 +29715,122 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_clone", - "label": ".clone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ms", + "label": "ms()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".clone()", + "norm_label": "ms()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ol", + "label": "ol()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "ol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_replace", - "label": ".replace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".replace()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_resize", - "label": ".resize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_createbucket", + "label": ".createBucket()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".resize()", + "norm_label": ".createbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ms", - "label": "ms()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_handlespecialpaintpropertyupdate", + "label": "._handleSpecialPaintPropertyUpdate()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "ms()", + "norm_label": "._handlespecialpaintpropertyupdate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_hasoffscreenpass", + "label": ".hasOffscreenPass()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".hasoffscreenpass()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_queryintersectsfeature", + "label": ".queryIntersectsFeature()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": ".queryintersectsfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_queryradius", + "label": ".queryRadius()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".queryradius()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_resize", + "label": ".resize()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".uploadpending()", + "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ol", - "label": "ol()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_updatecolorramp", + "label": "._updateColorRamp()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "ol()", + "norm_label": "._updatecolorramp()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -29919,50 +29967,50 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_releasesymbolfadetiles", - "label": "._releaseSymbolFadeTiles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_hastransitions", + "label": ".hasTransitions()", "_callable": true, "_origin": "ast", "community": 40, "community_name": "Dt", "file_type": "code", - "norm_label": "._releasesymbolfadetiles()", + "norm_label": ".hastransitions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_aborttile", - "label": "._abortTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_releasesymbolfadetiles", + "label": "._releaseSymbolFadeTiles()", "_callable": true, "_origin": "ast", "community": 40, "community_name": "Dt", "file_type": "code", - "norm_label": "._aborttile()", + "norm_label": "._releasesymbolfadetiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_addtile", - "label": "._addTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_aborttile", + "label": "._abortTile()", "_callable": true, "_origin": "ast", "community": 40, "community_name": "Dt", "file_type": "code", - "norm_label": "._addtile()", + "norm_label": "._aborttile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_backfilldem", - "label": "._backfillDEM()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_addtile", + "label": "._addTile()", "_callable": true, "_origin": "ast", "community": 40, "community_name": "Dt", "file_type": "code", - "norm_label": "._backfilldem()", + "norm_label": "._addtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -30038,18 +30086,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getids", - "label": ".getIds()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".getids()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getloadedtile", "label": "._getLoadedTile()", @@ -30087,26 +30123,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_handlewrapjump", - "label": ".handleWrapJump()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_hasrenderableparent", + "label": ".hasRenderableParent()", "_callable": true, "_origin": "ast", "community": 40, "community_name": "Dt", "file_type": "code", - "norm_label": ".handlewrapjump()", + "norm_label": ".hasrenderableparent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_hasrenderableparent", - "label": ".hasRenderableParent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 40, "community_name": "Dt", "file_type": "code", - "norm_label": ".hasrenderableparent()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -30194,6 +30230,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_reload", + "label": ".reload()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".reload()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_reloadtile", "label": "._reloadTile()", @@ -30290,18 +30338,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_tilesin", - "label": ".tilesIn()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".tilesin()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_unloadtile", "label": "._unloadTile()", @@ -30458,42 +30494,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_wasrequested", - "label": ".wasRequested()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".wasrequested()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aftertileloadworkerresponse", - "label": "._afterTileLoadWorkerResponse()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": "._aftertileloadworkerresponse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loadtile", - "label": ".loadTile()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".loadtile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_getsourcetile", "label": ".getSourceTile()", @@ -30518,54 +30518,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_clone", - "label": ".clone()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".clone()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_equals", - "label": ".equals()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".equals()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_gettilepoint", - "label": ".getTilePoint()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".gettilepoint()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_overscalefactor", - "label": ".overscaleFactor()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".overscalefactor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_scaledto", "label": ".scaledTo()", @@ -30578,54 +30530,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_tostring", - "label": ".toString()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".tostring()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_unwrapto", - "label": ".unwrapTo()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".unwrapto()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_api_jobs_daemonpool_init", - "label": ".__init__()", - "_callable": true, - "_origin": "ast", - "community": 44, - "community_name": "Job", - "file_type": "code", - "norm_label": ".__init__()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L141" - }, - { - "id": "src_cellpy_simple_gui_api_jobs_daemonpool_shutdown", - "label": ".shutdown()", - "_callable": true, - "_origin": "ast", - "community": 44, - "community_name": "Job", - "file_type": "code", - "norm_label": ".shutdown()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L164" - }, { "id": "src_cellpy_simple_gui_api_jobs_daemonpool_submit", "label": ".submit()", @@ -30770,18 +30674,6 @@ "source_file": "src/cellpy_simple_gui/api/jobs.py", "source_location": "L243" }, - { - "id": "src_cellpy_simple_gui_api_jobs_jobmanager_init", - "label": ".__init__()", - "_callable": true, - "_origin": "ast", - "community": 44, - "community_name": "Job", - "file_type": "code", - "norm_label": ".__init__()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L171" - }, { "id": "src_cellpy_simple_gui_api_jobs_jobmanager_run", "label": "._run()", @@ -30819,215 +30711,215 @@ "source_location": "L177" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_continueplacement", - "label": ".continuePlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".continueplacement()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_au", - "label": "au()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": "au()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxes", - "label": ".deserializeCollisionBoxes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".deserializecollisionboxes()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxesforsymbol", - "label": "._deserializeCollisionBoxesForSymbol()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": "._deserializecollisionboxesforsymbol()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasicondata", - "label": ".hasIconData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".hasicondata()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextdata", - "label": ".hasTextData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".hastextdata()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_hasvalue", - "label": ".hasValue()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".hasvalue()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_continueplacement", - "label": ".continuePlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".continueplacement()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_attemptanchorplacement", - "label": ".attemptAnchorPlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".attemptanchorplacement()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getbucketparts", - "label": ".getBucketParts()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".getbucketparts()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getterrainelevationfunc", - "label": "._getTerrainElevationFunc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": "._getterrainelevationfunc()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedjustification", - "label": ".markUsedJustification()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".markusedjustification()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedorientation", - "label": ".markUsedOrientation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".markusedorientation()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_placelayerbucketpart", - "label": ".placeLayerBucketPart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".placelayerbucketpart()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_storecollisiondata", - "label": ".storeCollisionData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".storecollisiondata()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatebucketopacities", - "label": ".updateBucketOpacities()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".updatebucketopacities()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatelayeropacities", - "label": ".updateLayerOpacities()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resize", + "label": "resize()", "_callable": true, "_origin": "ast", "community": 45, - "community_name": ".placeLayerBucketPart", + "community_name": "resize", "file_type": "code", - "norm_label": ".updatelayeropacities()", + "norm_label": "resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", "norm_label": ".emplaceback()", @@ -31035,23 +30927,23 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpixelratio", + "label": "setPixelRatio()", "_callable": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "setpixelratio()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", "norm_label": ".emplaceback()", @@ -31059,59 +30951,47 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_refreshviews", - "label": "._refreshViews()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_clear", - "label": ".clear()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".clear()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_deserialize", - "label": ".deserialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".deserialize()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplace", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplace", "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", "norm_label": ".emplace()", @@ -31119,11 +30999,11 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", "norm_label": ".emplaceback()", @@ -31131,11 +31011,11 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_refreshviews", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", "norm_label": "._refreshviews()", @@ -31143,158 +31023,158 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_reserve", - "label": ".reserve()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 46, + "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".reserve()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_resize", - "label": ".resize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".resize()", + "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_trim", - "label": "._trim()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_deserialize", + "label": ".deserialize()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "._trim()", + "norm_label": ".deserialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_calculate", - "label": "._calculate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "._calculate()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_reserve", + "label": ".reserve()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".reserve()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_interpolate", - "label": ".interpolate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_resize", + "label": ".resize()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".interpolate()", + "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_trim", + "label": "._trim()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": "._trim()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_bucketindex", - "label": ".bucketIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_createarrays", + "label": ".createArrays()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".bucketindex()", + "norm_label": ".createarrays()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_bucketindex", + "label": ".bucketIndex()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".bucketindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -31304,7 +31184,7 @@ "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": ".featureindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -31316,7 +31196,7 @@ "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -31328,129 +31208,21 @@ "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": ".sourcelayerindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_emplace", - "label": ".emplace()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_refreshviews", - "label": "._refreshViews()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplace", - "label": ".emplace()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_refreshviews", - "label": "._refreshViews()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplace", - "label": ".emplace()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -31460,55 +31232,31 @@ "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_emplace", - "label": ".emplace()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -31520,395 +31268,275 @@ "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_paint", - "label": "paint()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": "paint()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resize", - "label": "resize()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": "resize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplace", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplace", "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_gettileunitdistancefromanchor", + "label": ".gettileUnitDistanceFromAnchor()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".gettileunitdistancefromanchor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_refreshviews", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpixelratio", - "label": "setPixelRatio()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": "setpixelratio()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_emplace", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplace", "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_evaluate", - "label": ".evaluate()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_interpolate", - "label": ".interpolate()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".interpolate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_possiblyevaluate", - "label": ".possiblyEvaluate()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".possiblyevaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_refreshviews", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_resize", - "label": ".resize()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "resize", - "file_type": "code", - "norm_label": ".resize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplace", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplace", "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_gettileunitdistancefromanchor", - "label": ".gettileUnitDistanceFromAnchor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "resize", + "community_name": "ca", "file_type": "code", - "norm_label": ".gettileunitdistancefromanchor()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_api_app_asset_version", + "label": "_asset_version()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_asset_version()", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L22" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_api_app_create_app", + "label": "create_app()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "create_app()", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L41" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_api_app_create_app_healthz", + "label": "healthz()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "healthz()", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L89" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_api_app_create_app_index", + "label": "index()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "index()", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L64" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_api_deps_require_token", + "label": "require_token()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "require_token()", + "source_file": "src/cellpy_simple_gui/api/deps.py", + "source_location": "L32" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_api_routers_plots_plot_types", + "label": "plot_types()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "plot_types()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L25" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_api_routers_plots_require_dev_mode", + "label": "require_dev_mode()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "require_dev_mode()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L141" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_api_routers_system_capabilities", + "label": "capabilities()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "capabilities()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L66" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_api_routers_system_cellpy_config_diagnostics", + "label": "cellpy_config_diagnostics()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cellpy_config_diagnostics()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L108" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_api_routers_system_job_timings", + "label": "job_timings()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "job_timings()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L98" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_api_routers_system_logs", + "label": "logs()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "resize", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "logs()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L84" }, { - "id": "packaging_zip_installer_main", - "label": "main()", + "id": "src_cellpy_simple_gui_api_routers_system_webview_window", + "label": "_webview_window()", "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", - "norm_label": "main()", - "source_file": "packaging/zip_installer.py", + "norm_label": "_webview_window()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", "source_location": "L39" }, { - "id": "packaging_zip_installer_zip_installers", - "label": "zip_installers()", + "id": "src_cellpy_simple_gui_config_get_settings", + "label": "get_settings()", "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", - "norm_label": "zip_installers()", - "source_file": "packaging/zip_installer.py", - "source_location": "L14" + "norm_label": "get_settings()", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L76" }, { "id": "src_cellpy_simple_gui_desktop_close_webview_windows", @@ -31916,7 +31544,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "_close_webview_windows()", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -31928,7 +31556,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "_install_ctrl_c_close()", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -31940,7 +31568,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "win32_handler()", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -31952,7 +31580,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "run_desktop()", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -31964,7 +31592,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "_shutdown_background()", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -31976,7 +31604,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "enable_ring_buffer()", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -31988,7 +31616,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": ".emit()", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -32000,19 +31628,43 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "log_dir()", "source_file": "src/cellpy_simple_gui/logging_setup.py", "source_location": "L15" }, + { + "id": "src_cellpy_simple_gui_logging_setup_recent_logs", + "label": "recent_logs()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "recent_logs()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L83" + }, + { + "id": "src_cellpy_simple_gui_logging_setup_ring_enabled", + "label": "ring_enabled()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "ring_enabled()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L99" + }, { "id": "src_cellpy_simple_gui_logging_setup_ring_sink", "label": "_ring_sink()", "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "_ring_sink()", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -32024,7 +31676,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "setup_logging()", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -32036,7 +31688,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "_stderr_usable()", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -32048,7 +31700,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "_anchor_cellpy_paths()", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -32060,7 +31712,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "main()", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -32072,7 +31724,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "pick_port()", "source_file": "src/cellpy_simple_gui/server.py", @@ -32084,19 +31736,31 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "_port_is_free()", "source_file": "src/cellpy_simple_gui/server.py", "source_location": "L15" }, + { + "id": "src_cellpy_simple_gui_server_serverthread_init", + "label": ".__init__()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": ".__init__()", + "source_file": "src/cellpy_simple_gui/server.py", + "source_location": "L31" + }, { "id": "src_cellpy_simple_gui_server_serverthread_start", "label": ".start()", "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": ".start()", "source_file": "src/cellpy_simple_gui/server.py", @@ -32108,7 +31772,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": ".stop()", "source_file": "src/cellpy_simple_gui/server.py", @@ -32120,43 +31784,139 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": ".url()", "source_file": "src/cellpy_simple_gui/server.py", "source_location": "L48" }, { - "id": "tests_test_api_test_load_and_plot_flow", - "label": "test_load_and_plot_flow()", + "id": "tests_test_api_client", + "label": "client()", "_callable": true, "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", - "norm_label": "test_load_and_plot_flow()", + "norm_label": "client()", "source_file": "tests/test_api.py", - "source_location": "L150" + "source_location": "L17" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_vi", - "label": "Vi()", + "id": "tests_test_api_served_client", + "label": "served_client()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": ".constructor", + "community": 48, + "community_name": "get_settings", "file_type": "code", - "norm_label": "vi()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "served_client()", + "source_file": "tests/test_api.py", + "source_location": "L727" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_getbearing", - "label": ".getBearing()", - "_callable": true, + "id": "tests_test_api_test_job_timings_reported", + "label": "test_job_timings_reported()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_job_timings_reported()", + "source_file": "tests/test_api.py", + "source_location": "L429" + }, + { + "id": "tests_test_api_test_load_and_plot_flow", + "label": "test_load_and_plot_flow()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_load_and_plot_flow()", + "source_file": "tests/test_api.py", + "source_location": "L150" + }, + { + "id": "tests_test_api_test_log_viewer_captures_stdlib_records", + "label": "test_log_viewer_captures_stdlib_records()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_log_viewer_captures_stdlib_records()", + "source_file": "tests/test_api.py", + "source_location": "L402" + }, + { + "id": "tests_test_compare_client", + "label": "client()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "client()", + "source_file": "tests/test_compare.py", + "source_location": "L285" + }, + { + "id": "tests_test_journal_test_api_load_corrupt_journal_reports_error", + "label": "test_api_load_corrupt_journal_reports_error()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_api_load_corrupt_journal_reports_error()", + "source_file": "tests/test_journal.py", + "source_location": "L83" + }, + { + "id": "tests_test_projects_test_api_classify_import", + "label": "test_api_classify_import()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_api_classify_import()", + "source_file": "tests/test_projects.py", + "source_location": "L346" + }, + { + "id": "tests_test_projects_test_api_open_unknown_404", + "label": "test_api_open_unknown_404()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_api_open_unknown_404()", + "source_file": "tests/test_projects.py", + "source_location": "L340" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_vi", + "label": "Vi()", + "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", + "file_type": "code", + "norm_label": "vi()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_getbearing", + "label": ".getBearing()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", "file_type": "code", "norm_label": ".getbearing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -32168,7 +31928,7 @@ "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", "norm_label": ".getpitch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -32180,7 +31940,7 @@ "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", "norm_label": ".setbearing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -32192,33 +31952,57 @@ "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", "norm_label": ".setpitch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcanvas", - "label": "getCanvas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", - "norm_label": "getcanvas()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_crossfadingfactor", + "label": ".crossFadingFactor()", "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".crossfadingfactor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_getcrossfadeparameters", + "label": ".getCrossfadeParameters()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".getcrossfadeparameters()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_issupportedscript", + "label": ".isSupportedScript()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".issupportedscript()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32228,7 +32012,7 @@ "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", "norm_label": ".movemouse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -32240,19 +32024,79 @@ "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", "norm_label": ".movetouch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_off", + "label": ".off()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".off()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_offtemp", + "label": ".offTemp()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".offtemp()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_r", + "label": "r()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_reset", + "label": ".reset()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".reset()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_start", + "label": "._start()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": "._start()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_startmouse", "label": ".startMouse()", "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", "norm_label": ".startmouse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -32264,21 +32108,33 @@ "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", "norm_label": ".starttouch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".remove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_getrtltextpluginstatus", + "label": ".getRTLTextPluginStatus()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".getrtltextpluginstatus()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32288,21 +32144,21 @@ "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", "norm_label": ".getclicktolerance()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32312,93 +32168,141 @@ "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", "norm_label": ".disabledrag()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_getpoint", - "label": ".getPoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_removeeventlistener", + "label": ".removeEventListener()", "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", - "norm_label": ".getpoint()", + "norm_label": ".removeeventlistener()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_getscale", - "label": ".getScale()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_suppressclickinternal", + "label": ".suppressClickInternal()", "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", - "norm_label": ".getscale()", + "norm_label": ".suppressclickinternal()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_mousepos", - "label": ".mousePos()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmaxpitch", + "label": "setMaxPitch()", "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", - "norm_label": ".mousepos()", + "norm_label": "setmaxpitch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_touchpos", - "label": ".touchPos()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setminpitch", + "label": "setMinPitch()", "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", - "norm_label": ".touchpos()", + "norm_label": "setminpitch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmaxpitch", - "label": "setMaxPitch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt_c", + "label": "c()", "_callable": true, "_origin": "ast", "community": 49, - "community_name": ".constructor", + "community_name": "hi", "file_type": "code", - "norm_label": "setmaxpitch()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setminpitch", - "label": "setMinPitch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_e", + "label": "e()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": ".constructor", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "setminpitch()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "g()", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_c", + "label": "c()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "c()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_r", + "label": "r()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32414,6 +32318,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dn", + "label": "Dn()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "dn()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_l", + "label": "l()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "l()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_o", "label": "o()", @@ -32498,6 +32426,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_s", + "label": "s()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_g", "label": "g()", @@ -32535,62 +32475,62 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frameasync", - "label": "frameAsync()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fn", + "label": "fn()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "frameasync()", + "norm_label": "fn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frameasync", + "label": "frameAsync()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "f()", + "norm_label": "frameasync()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_feature", - "label": ".feature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".feature()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_s_v", - "label": "v()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "v()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32607,26 +32547,74 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_bearing", + "label": ".bearing()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "r()", + "norm_label": ".bearing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_pruneunusedlayers", - "label": ".pruneUnusedLayers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".pruneunusedlayers()", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_pitch", + "label": ".pitch()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".pitch()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_zoom", + "label": ".zoom()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".zoom()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32642,6 +32630,78 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_setdefault", + "label": ".setDefault()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".setdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_c", + "label": "c()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "c()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_i", + "label": "i()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "i()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_x", "label": "x()", @@ -32690,6 +32750,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_clearrtltextplugin", + "label": ".clearRTLTextPlugin()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".clearrtltextplugin()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_d", "label": "d()", @@ -32787,38 +32871,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_v_s", - "label": "S()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mc", + "label": "mc()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": "mc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mc", - "label": "mc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_b", + "label": "b()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "mc()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_b", - "label": "b()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_concat", + "label": ".concat()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "b()", + "norm_label": ".concat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32835,26 +32919,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "u()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nc", - "label": "nc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "nc()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32883,14 +32967,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "r()", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_n", + "label": "n()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32942,6 +33038,78 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_a", + "label": "a()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_h", + "label": "h()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "h()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_i", + "label": "i()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "i()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_n", + "label": "n()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "n()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_os", "label": "Os()", @@ -32966,6 +33134,42 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pc", + "label": "Pc()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "pc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe", + "label": "pe()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "pe()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe_a", + "label": "a()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn", "label": "pn()", @@ -32990,6 +33194,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m", "label": "M()", @@ -33098,6 +33314,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y_a", + "label": "a()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y_i", "label": "i()", @@ -33147,19 +33375,19 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_p", + "label": "p()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".bind()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -33171,122 +33399,134 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "p()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rc", + "label": "Rc()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "i()", + "norm_label": "rc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "o()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_c", + "label": "c()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "r()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "u()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rc", - "label": "Rc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "rc()", + "norm_label": "l()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_u", + "label": "u()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -33363,31 +33603,31 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "m()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "u()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v_r", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_r", "label": "r()", "_callable": true, "_origin": "ast", @@ -33410,6 +33650,42 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_p", + "label": "p()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "p()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_s", "label": "S()", @@ -33422,6 +33698,42 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui", + "label": "ui()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "ui()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_a", + "label": "a()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_o", + "label": "o()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_f", "label": "f()", @@ -33494,6 +33806,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_get", + "label": ".get()", + "_callable": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": ".get()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_f", "label": "f()", @@ -33531,206 +33867,170 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yo", - "label": "yo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "yo()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "i()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "u()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_interpolationfactor", - "label": ".interpolationFactor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchmove", + "label": ".touchmove()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".interpolationfactor()", + "norm_label": ".touchmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zn", - "label": "zn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchstart", + "label": ".touchstart()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "zn()", + "norm_label": ".touchstart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yo", + "label": "yo()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "yo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".disable()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zc", + "label": "zc()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".enable()", + "norm_label": "zc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".disable()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_interpolationfactor", + "label": ".interpolationFactor()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".enable()", + "norm_label": ".interpolationfactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_fireevent", - "label": "._fireEvent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zn", + "label": "zn()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._fireevent()", + "norm_label": "zn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mouseupwindow", + "label": ".mouseupWindow()", "_callable": true, "_origin": "ast", "community": 51, "community_name": ".reset", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": ".mouseupwindow()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_touchstart", + "label": ".touchstart()", "_callable": true, "_origin": "ast", "community": 51, "community_name": ".reset", "file_type": "code", - "norm_label": ".isenabled()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_keydown", - "label": ".keydown()", - "_callable": true, - "_origin": "ast", - "community": 51, - "community_name": ".reset", - "file_type": "code", - "norm_label": ".keydown()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousedown", - "label": ".mousedown()", - "_callable": true, - "_origin": "ast", - "community": 51, - "community_name": ".reset", - "file_type": "code", - "norm_label": ".mousedown()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mouseupwindow", - "label": ".mouseupWindow()", - "_callable": true, - "_origin": "ast", - "community": 51, - "community_name": ".reset", - "file_type": "code", - "norm_label": ".mouseupwindow()", + "norm_label": ".touchstart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -33782,30 +34082,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragstart", - "label": ".dragStart()", - "_callable": true, - "_origin": "ast", - "community": 51, - "community_name": ".reset", - "file_type": "code", - "norm_label": ".dragstart()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_shouldbeprevented", - "label": "._shouldBePrevented()", - "_callable": true, - "_origin": "ast", - "community": 51, - "community_name": ".reset", - "file_type": "code", - "norm_label": "._shouldbeprevented()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_suppressclick", "label": ".suppressClick()", @@ -33819,26 +34095,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_fireevent", - "label": "._fireEvent()", - "_callable": true, - "_origin": "ast", - "community": 51, - "community_name": ".reset", - "file_type": "code", - "norm_label": "._fireevent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", "community": 51, "community_name": ".reset", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -33974,6 +34238,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchstart", + "label": ".touchstart()", + "_callable": true, + "_origin": "ast", + "community": 51, + "community_name": ".reset", + "file_type": "code", + "norm_label": ".touchstart()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_constructor", "label": ".constructor()", @@ -34286,6 +34562,42 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L57" }, + { + "id": "src_cellpy_simple_gui_core_collect_note_downsampling", + "label": "_note_downsampling()", + "_callable": true, + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "code", + "norm_label": "_note_downsampling()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L980" + }, + { + "id": "src_cellpy_simple_gui_core_collect_raw_figure_json", + "label": "raw_figure_json()", + "_callable": true, + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "code", + "norm_label": "raw_figure_json()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L915" + }, + { + "id": "src_cellpy_simple_gui_core_plotting_raw_figure", + "label": "raw_figure()", + "_callable": true, + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "code", + "norm_label": "raw_figure()", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L295" + }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_raw", "label": "raw()", @@ -34551,76 +34863,208 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 55, "community_name": "fa", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_refreshviews", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_calculate", + "label": "._calculate()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": "._calculate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplace", + "label": ".emplace()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_interpolate", + "label": ".interpolate()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": ".interpolate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "fa", + "community": 56, + "community_name": "ea", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_journal_build_journal", - "label": "_build_journal()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 56, - "community_name": "test_journal.py", + "community_name": "ea", "file_type": "code", - "norm_label": "_build_journal()", - "source_file": "tests/test_journal.py", - "source_location": "L9" + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_journal_test_load_corrupt_journal_raises_clear_error", - "label": "test_load_corrupt_journal_raises_clear_error()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 56, - "community_name": "test_journal.py", + "community_name": "ea", "file_type": "code", - "norm_label": "test_load_corrupt_journal_raises_clear_error()", - "source_file": "tests/test_journal.py", - "source_location": "L73" + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_journal_test_load_journal_cells", - "label": "test_load_journal_cells()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_layout", + "label": "layout()", "_callable": true, "_origin": "ast", "community": 56, - "community_name": "test_journal.py", + "community_name": "ea", "file_type": "code", - "norm_label": "test_load_journal_cells()", - "source_file": "tests/test_journal.py", - "source_location": "L32" + "norm_label": "layout()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_journal_test_load_journal_missing_files_returns_empty", - "label": "test_load_journal_missing_files_returns_empty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_paint", + "label": "paint()", "_callable": true, "_origin": "ast", "community": 56, - "community_name": "test_journal.py", + "community_name": "ea", "file_type": "code", - "norm_label": "test_load_journal_missing_files_returns_empty()", - "source_file": "tests/test_journal.py", - "source_location": "L51" + "norm_label": "paint()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_emplace", + "label": ".emplace()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_evaluate", + "label": ".evaluate()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_interpolate", + "label": ".interpolate()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": ".interpolate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_possiblyevaluate", + "label": ".possiblyEvaluate()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": ".possiblyevaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_refreshviews", + "label": "._refreshViews()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_u", + "label": "u()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "I", + "file_type": "code", + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ct", + "label": "ct()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "I", + "file_type": "code", + "norm_label": "ct()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_a", @@ -34658,18 +35102,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_l", - "label": "l()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_outputdefined", "label": ".outputDefined()", @@ -34719,722 +35151,650 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_apply", + "label": ".apply()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".apply()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_filter", + "label": ".filter()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": ".filter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "p()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "r()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "s()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_setvalue", - "label": ".setValue()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".setvalue()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "u()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_z", - "label": "z()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_p", + "label": "P()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "z()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loadgeometry", - "label": "loadGeometry()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "loadgeometry()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_defaultprevented", - "label": ".defaultPrevented()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".defaultprevented()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bn", - "label": "bn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_ishidden", + "label": ".isHidden()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": "bn()", + "norm_label": ".ishidden()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculateposmatrix", - "label": ".calculatePosMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loadgeometry", + "label": "loadGeometry()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".calculateposmatrix()", + "norm_label": "loadgeometry()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setuppainter", - "label": "_setupPainter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_broadcast", + "label": ".broadcast()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": "_setuppainter()", + "norm_label": ".broadcast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_clearstencil", - "label": ".clearStencil()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_getactor", + "label": ".getActor()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".clearstencil()", + "norm_label": ".getactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_colormodeforrenderpass", - "label": ".colorModeForRenderPass()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".colormodeforrenderpass()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_depthmodeforsublayer", - "label": ".depthModeForSublayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_adddash", + "label": ".addDash()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".depthmodeforsublayer()", + "norm_label": ".adddash()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_addregulardash", + "label": ".addRegularDash()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".addregulardash()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_addrounddash", + "label": ".addRoundDash()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".addrounddash()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluatewithouterrorhandling", - "label": ".evaluateWithoutErrorHandling()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdash", + "label": ".getDash()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".evaluatewithouterrorhandling()", + "norm_label": ".getdash()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_ispatternmissing", - "label": ".isPatternMissing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdashranges", + "label": ".getDashRanges()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".ispatternmissing()", + "norm_label": ".getdashranges()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_opaquepassenabledforlayer", - "label": ".opaquePassEnabledForLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".opaquepassenabledforlayer()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_overlimit", - "label": ".overLimit()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".overlimit()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_renderlayer", - "label": ".renderLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".renderlayer()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setbasestate", - "label": ".setBaseState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".setbasestate()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilconfigforoverlap", - "label": ".stencilConfigForOverlap()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".stencilconfigforoverlap()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodefor3d", - "label": ".stencilModeFor3D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_concat", + "label": ".concat()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".stencilmodefor3d()", + "norm_label": ".concat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodeforclipping", - "label": ".stencilModeForClipping()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".stencilmodeforclipping()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_useprogram", - "label": ".useProgram()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".useprogram()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "examples_mcp_server_describe_plot_families", - "label": "describe_plot_families()", - "_callable": true, - "_origin": "ast", - "community": 59, - "community_name": "The tools", - "file_type": "code", - "norm_label": "describe_plot_families()", - "source_file": "examples/mcp/server.py", - "source_location": "L260" - }, - { - "id": "examples_mcp_server_list_cells", - "label": "list_cells()", - "_callable": true, - "_origin": "ast", - "community": 59, - "community_name": "The tools", - "file_type": "code", - "norm_label": "list_cells()", - "source_file": "examples/mcp/server.py", - "source_location": "L248" - }, - { - "id": "examples_mcp_server_list_instruments", - "label": "list_instruments()", - "_callable": true, - "_origin": "ast", - "community": 59, - "community_name": "The tools", - "file_type": "code", - "norm_label": "list_instruments()", - "source_file": "examples/mcp/server.py", - "source_location": "L177" - }, - { - "id": "examples_mcp_server_list_instruments_arbin_res_readable", - "label": "arbin_res_readable()", - "_callable": true, - "_origin": "ast", - "community": 59, - "community_name": "The tools", - "file_type": "code", - "norm_label": "arbin_res_readable()", - "source_file": "examples/mcp/server.py", - "source_location": "L184" - }, - { - "id": "examples_mcp_server_list_templates", - "label": "list_templates()", - "_callable": true, - "_origin": "ast", - "community": 59, - "community_name": "The tools", - "file_type": "code", - "norm_label": "list_templates()", - "source_file": "examples/mcp/server.py", - "source_location": "L849" - }, - { - "id": "examples_mcp_server_load_cell", - "label": "load_cell()", - "_callable": true, - "_origin": "ast", - "community": 59, - "community_name": "The tools", - "file_type": "code", - "norm_label": "load_cell()", - "source_file": "examples/mcp/server.py", - "source_location": "L206" - }, - { - "id": "examples_mcp_server_preview_collection", - "label": "preview_collection()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_has", + "label": ".has()", "_callable": true, "_origin": "ast", - "community": 59, - "community_name": "The tools", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": "preview_collection()", - "source_file": "examples/mcp/server.py", - "source_location": "L389" + "norm_label": ".has()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_is_grouped", - "label": "is_grouped()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 59, - "community_name": "The tools", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": "is_grouped()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L642" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_x2", - "label": ".x2()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 59, - "community_name": "The tools", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".x2()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_deserialize", - "label": ".deserialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_defaultprevented", + "label": ".defaultPrevented()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".deserialize()", + "norm_label": ".defaultprevented()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dn", - "label": "Dn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": "dn()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_gettile", - "label": ".getTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".gettile()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_ishidden", + "label": ".isHidden()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": "r()", + "norm_label": ".ishidden()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_lt", + "label": "lt()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".bind()", + "norm_label": "lt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_extend", + "label": ".extend()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".extend()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 57, + "community_name": "I", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_enableattributes", - "label": ".enableAttributes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_draw", + "label": ".draw()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".enableattributes()", + "norm_label": ".draw()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_draw", + "label": ".draw()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".draw()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_renderlayer", + "label": ".renderLayer()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".renderlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_setvertexattribpointers", - "label": ".setVertexAttribPointers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_gettile", + "label": ".getTile()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".setvertexattribpointers()", + "norm_label": ".gettile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_updatedata", - "label": ".updateData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getpaintvertexbuffers", + "label": ".getPaintVertexBuffers()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".updatedata()", + "norm_label": ".getpaintvertexbuffers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fn", - "label": "fn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_setuniforms", + "label": ".setUniforms()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": "fn()", + "norm_label": ".setuniforms()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -35443,747 +35803,1215 @@ "label": ".updatePaintBuffers()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", "norm_label": ".updatepaintbuffers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpaintproperty", + "label": "getPaintProperty()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": "a()", + "norm_label": "getpaintproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_bearing", - "label": ".bearing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_getbucket", + "label": ".getBucket()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".bearing()", + "norm_label": ".getbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_patternsloaded", + "label": ".patternsLoaded()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".patternsloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_pitch", - "label": ".pitch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constantor", + "label": ".constantOr()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".pitch()", + "norm_label": ".constantor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_zoom", - "label": ".zoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_on", + "label": "on()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".zoom()", + "norm_label": "on()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_getbucket", - "label": ".getBucket()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_clearstencil", + "label": ".clearStencil()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".getbucket()", + "norm_label": ".clearstencil()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_colormodeforrenderpass", + "label": ".colorModeForRenderPass()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".colormodeforrenderpass()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constantor", - "label": ".constantOr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_depthmodeforsublayer", + "label": ".depthModeForSublayer()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".constantor()", + "norm_label": ".depthmodeforsublayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ke", - "label": "ke()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": "ke()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_url", - "label": ".url()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluatewithouterrorhandling", + "label": ".evaluateWithoutErrorHandling()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".url()", + "norm_label": ".evaluatewithouterrorhandling()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ne", - "label": "ne()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_ispatternmissing", + "label": ".isPatternMissing()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": "ne()", + "norm_label": ".ispatternmissing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_defaultprevented", - "label": ".defaultPrevented()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_opaquepassenabledforlayer", + "label": ".opaquePassEnabledForLayer()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".defaultprevented()", + "norm_label": ".opaquepassenabledforlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_preventdefault", - "label": ".preventDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_overlimit", + "label": ".overLimit()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".preventdefault()", + "norm_label": ".overlimit()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_render", + "label": ".render()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".render()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_on", - "label": "on()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_renderlayer", + "label": ".renderLayer()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": "on()", + "norm_label": ".renderlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_rendertileclippingmasks", + "label": "._renderTileClippingMasks()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "._rendertileclippingmasks()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_updatedata", - "label": ".updateData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_resize", + "label": ".resize()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".updatedata()", + "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_clear", - "label": ".clear()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setbasestate", + "label": ".setBaseState()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".clear()", + "norm_label": ".setbasestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_draininertiabuffer", - "label": "._drainInertiaBuffer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setcustomlayerdefaults", + "label": ".setCustomLayerDefaults()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": "._draininertiabuffer()", + "norm_label": ".setcustomlayerdefaults()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_onmoveend", - "label": "._onMoveEnd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilconfigforoverlap", + "label": ".stencilConfigForOverlap()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": "._onmoveend()", + "norm_label": ".stencilconfigforoverlap()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_record", - "label": ".record()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodefor3d", + "label": ".stencilModeFor3D()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".record()", + "norm_label": ".stencilmodefor3d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodeforclipping", + "label": ".stencilModeForClipping()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".stencilmodeforclipping()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_useprogram", + "label": ".useProgram()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".useprogram()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_evaluatewithouterrorhandling", - "label": ".evaluateWithoutErrorHandling()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_ishidden", + "label": ".isHidden()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".evaluatewithouterrorhandling()", + "norm_label": ".ishidden()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_gettiletexture", - "label": ".getTileTexture()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_deletevertexarray", + "label": ".deleteVertexArray()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".gettiletexture()", + "norm_label": ".deletevertexarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_translateposmatrix", - "label": ".translatePosMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".translateposmatrix()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".bind()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setcolormode", + "label": ".setColorMode()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".setcolormode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setcullface", + "label": ".setCullFace()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".setcullface()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdefault", + "label": ".setDefault()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".setdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdepthmode", + "label": ".setDepthMode()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".setdepthmode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_freshbind", - "label": ".freshBind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setstencilmode", + "label": ".setStencilMode()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".freshbind()", + "norm_label": ".setstencilmode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_ishidden", - "label": ".isHidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_unbindvao", + "label": ".unbindVAO()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".ishidden()", + "norm_label": ".unbindvao()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_commit", + "label": ".commit()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": ".commit()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createframebuffer", - "label": ".createFramebuffer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_symbolfadechange", + "label": ".symbolFadeChange()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".createframebuffer()", + "norm_label": ".symbolfadechange()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createvertexarray", - "label": ".createVertexArray()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 58, + "community_name": ".renderLayer", "file_type": "code", - "norm_label": ".createvertexarray()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_constructor", - "label": ".constructor()", + "id": "examples_mcp_server_cell", + "label": "_cell()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 59, + "community_name": "collect", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_cell()", + "source_file": "examples/mcp/server.py", + "source_location": "L159" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_tostring", - "label": ".toString()", + "id": "examples_mcp_server_collect", + "label": "collect()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 59, + "community_name": "collect", "file_type": "code", - "norm_label": ".tostring()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "collect()", + "source_file": "examples/mcp/server.py", + "source_location": "L296" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_haspaintoverride", - "label": ".hasPaintOverride()", + "id": "examples_mcp_server_collection", + "label": "_collection()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": ".get", + "community": 59, + "community_name": "collect", "file_type": "code", - "norm_label": ".haspaintoverride()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_collection()", + "source_file": "examples/mcp/server.py", + "source_location": "L165" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_dt", - "label": "dt()", + "id": "examples_mcp_server_describe_api", + "label": "describe_api()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 59, + "community_name": "collect", "file_type": "code", - "norm_label": "dt()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": "describe_api()", + "source_file": "examples/mcp/server.py", + "source_location": "L710" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_parse", - "label": ".parse()", + "id": "examples_mcp_server_describe_plot_families", + "label": "describe_plot_families()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 59, + "community_name": "collect", "file_type": "code", - "norm_label": ".parse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "describe_plot_families()", + "source_file": "examples/mcp/server.py", + "source_location": "L260" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_reloadtile", - "label": ".reloadTile()", + "id": "examples_mcp_server_export_collection", + "label": "export_collection()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 59, + "community_name": "collect", "file_type": "code", - "norm_label": ".reloadtile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "export_collection()", + "source_file": "examples/mcp/server.py", + "source_location": "L450" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_parse", - "label": ".parse()", + "id": "examples_mcp_server_follow_reference", + "label": "_follow_reference()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", - "file_type": "code", - "norm_label": ".parse()", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "_follow_reference()", + "source_file": "examples/mcp/server.py", + "source_location": "L623" + }, + { + "id": "examples_mcp_server_list_cells", + "label": "list_cells()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "list_cells()", + "source_file": "examples/mcp/server.py", + "source_location": "L248" + }, + { + "id": "examples_mcp_server_list_templates", + "label": "list_templates()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "list_templates()", + "source_file": "examples/mcp/server.py", + "source_location": "L849" + }, + { + "id": "examples_mcp_server_load_cell", + "label": "load_cell()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "load_cell()", + "source_file": "examples/mcp/server.py", + "source_location": "L206" + }, + { + "id": "examples_mcp_server_new_project", + "label": "new_project()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "new_project()", + "source_file": "examples/mcp/server.py", + "source_location": "L876" + }, + { + "id": "examples_mcp_server_preview_collection", + "label": "preview_collection()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "preview_collection()", + "source_file": "examples/mcp/server.py", + "source_location": "L389" + }, + { + "id": "examples_mcp_server_render", + "label": "render()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "render()", + "source_file": "examples/mcp/server.py", + "source_location": "L401" + }, + { + "id": "examples_mcp_server_resolve", + "label": "_resolve()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "_resolve()", + "source_file": "examples/mcp/server.py", + "source_location": "L92" + }, + { + "id": "examples_mcp_server_resolve_dotted", + "label": "_resolve_dotted()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "_resolve_dotted()", + "source_file": "examples/mcp/server.py", + "source_location": "L531" + }, + { + "id": "examples_mcp_server_search_api", + "label": "search_api()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "search_api()", + "source_file": "examples/mcp/server.py", + "source_location": "L674" + }, + { + "id": "examples_mcp_server_session_handle", + "label": ".handle()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": ".handle()", + "source_file": "examples/mcp/server.py", + "source_location": "L132" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_getid", - "label": ".getId()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".getid()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadmatchingfeature", - "label": ".loadMatchingFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".loadmatchingfeature()", + "norm_label": ".bind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_calculateglyphdependencies", - "label": ".calculateGlyphDependencies()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".calculateglyphdependencies()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_updatedata", + "label": ".updateData()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".populate()", + "norm_label": ".updatedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_feature", - "label": "feature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": "feature()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_updatepaintarrays", - "label": ".updatePaintArrays()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_pruneunusedlayers", + "label": ".pruneUnusedLayers()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".updatepaintarrays()", + "norm_label": ".pruneunusedlayers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_center", + "label": ".center()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".center()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_issupportedscript", - "label": ".isSupportedScript()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ke", + "label": "ke()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".issupportedscript()", + "norm_label": "ke()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_querysourcefeatures", - "label": ".querySourceFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".querysourcefeatures()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeatures", - "label": ".addFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_f", + "label": "f()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".addfeatures()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_getrtltextpluginstatus", - "label": ".getRTLTextPluginStatus()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".getrtltextpluginstatus()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_checksubtype", - "label": ".checkSubtype()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": "N", "file_type": "code", - "norm_label": ".checksubtype()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_error", - "label": ".error()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_l", + "label": "l()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "l()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_move", + "label": "._move()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "._move()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_n", + "label": "n()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "n()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_r", + "label": "r()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_reset", + "label": ".reset()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".reset()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ne", + "label": "ne()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "ne()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_defaultprevented", + "label": ".defaultPrevented()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".defaultprevented()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_preventdefault", + "label": ".preventDefault()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".preventdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_f", + "label": "f()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "f()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_eachchild", + "label": ".eachChild()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".eachchild()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_bind", + "label": ".bind()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".bind()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_destroy", + "label": ".destroy()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_updatedata", + "label": ".updateData()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".updatedata()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_clear", + "label": ".clear()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".clear()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_draininertiabuffer", + "label": "._drainInertiaBuffer()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "._draininertiabuffer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_onmoveend", + "label": "._onMoveEnd()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "._onmoveend()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_record", + "label": ".record()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".record()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sc", + "label": "Sc()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "sc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_evaluate", + "label": ".evaluate()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_evaluatewithouterrorhandling", + "label": ".evaluateWithoutErrorHandling()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".evaluatewithouterrorhandling()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_interpolationfactor", + "label": ".interpolationFactor()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".interpolationfactor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_initdebugoverlaycanvas", + "label": ".initDebugOverlayCanvas()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".initdebugoverlaycanvas()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_translateposmatrix", + "label": ".translatePosMatrix()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".translateposmatrix()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getcenter", + "label": ".getCenter()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".getcenter()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_evaluate", + "label": ".evaluate()", + "_callable": true, + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_dt", + "label": "dt()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".error()", + "norm_label": "dt()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_reloadtile", + "label": ".reloadTile()", + "_callable": true, + "_origin": "ast", + "community": 60, + "community_name": ".parse", + "file_type": "code", + "norm_label": ".reloadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_parse", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_parse", "label": ".parse()", "_callable": true, "_origin": "ast", @@ -36195,19 +37023,19 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_parse_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": "r()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_parse", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_parse", "label": ".parse()", "_callable": true, "_origin": "ast", @@ -36219,67 +37047,67 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_encode", - "label": ".encode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".encode()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ct", - "label": "ct()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": "ct()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ht", - "label": "ht()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": "ht()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ut", - "label": "ut()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_checksubtype", + "label": ".checkSubtype()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": "ut()", + "norm_label": ".checksubtype()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_error", + "label": ".error()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".error()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_parse", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_parse", "label": ".parse()", "_callable": true, "_origin": "ast", @@ -36291,19 +37119,19 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_parse_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_parse", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_parse", "label": ".parse()", "_callable": true, "_origin": "ast", @@ -36315,43 +37143,43 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_getpositions", - "label": ".getPositions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ct", + "label": "ct()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".getpositions()", + "norm_label": "ct()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ht", + "label": "ht()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": "ht()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ut", + "label": "ut()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "ut()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_parse", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_parse", "label": ".parse()", "_callable": true, "_origin": "ast", @@ -36363,206 +37191,230 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_conftest_example_cell", - "label": "example_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 61, - "community_name": "loaded_library", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": "example_cell()", - "source_file": "tests/conftest.py", - "source_location": "L16" + "norm_label": ".eachchild()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_conftest_loaded_library", - "label": "loaded_library()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 61, - "community_name": "loaded_library", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": "loaded_library()", - "source_file": "tests/conftest.py", - "source_location": "L26" + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": "a()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_createobject", - "label": "._createObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": "._createobject()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeallobjects", - "label": ".freeAllObjects()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": ".freeallobjects()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeobject", - "label": ".freeObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": ".freeobject()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getobjectforid", - "label": ".getObjectForId()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 60, + "community_name": ".parse", "file_type": "code", - "norm_label": ".getobjectforid()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getorcreatefreeobject", - "label": ".getOrCreateFreeObject()", + "id": "tests_conftest_example_cell", + "label": "example_cell()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 61, + "community_name": "conftest.py", "file_type": "code", - "norm_label": ".getorcreatefreeobject()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "example_cell()", + "source_file": "tests/conftest.py", + "source_location": "L16" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_isfull", - "label": ".isFull()", + "id": "tests_conftest_loaded_library", + "label": "loaded_library()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "conftest.py", + "file_type": "code", + "norm_label": "loaded_library()", + "source_file": "tests/conftest.py", + "source_location": "L26" + }, + { + "id": "tests_conftest_parse_figure", + "label": "parse_figure()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "conftest.py", + "file_type": "code", + "norm_label": "parse_figure()", + "source_file": "tests/conftest.py", + "source_location": "L34" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": ".isfull()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": "r()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_stampobject", - "label": ".stampObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": ".stampobject()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_useobject", - "label": ".useObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": ".useobject()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -36687,16 +37539,100 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_config_settings_max_files", - "label": ".max_files()", + "id": "tests_test_agent_docs_generator", + "label": "generator()", "_callable": true, "_origin": "ast", "community": 64, - "community_name": ".max_files", + "community_name": "test_agent_docs.py", "file_type": "code", - "norm_label": ".max_files()", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L70" + "norm_label": "generator()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L28" + }, + { + "id": "tests_test_agent_docs_test_every_path_the_index_points_at_exists", + "label": "test_every_path_the_index_points_at_exists()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": "test_agent_docs.py", + "file_type": "code", + "norm_label": "test_every_path_the_index_points_at_exists()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L54" + }, + { + "id": "tests_test_agent_docs_test_llms_full_actually_contains_the_documents", + "label": "test_llms_full_actually_contains_the_documents()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": "test_agent_docs.py", + "file_type": "code", + "norm_label": "test_llms_full_actually_contains_the_documents()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L71" + }, + { + "id": "tests_test_agent_docs_test_llms_txt_is_current", + "label": "test_llms_txt_is_current()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": "test_agent_docs.py", + "file_type": "code", + "norm_label": "test_llms_txt_is_current()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L40" + }, + { + "id": "tests_test_agent_docs_test_the_index_lists_every_guide", + "label": "test_the_index_lists_every_guide()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": "test_agent_docs.py", + "file_type": "code", + "norm_label": "test_the_index_lists_every_guide()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L64" + }, + { + "id": "tests_test_agent_docs_test_the_skill_has_the_frontmatter_a_skill_needs", + "label": "test_the_skill_has_the_frontmatter_a_skill_needs()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": "test_agent_docs.py", + "file_type": "code", + "norm_label": "test_the_skill_has_the_frontmatter_a_skill_needs()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L84" + }, + { + "id": "tests_test_agent_docs_test_the_skill_reference_is_bundled", + "label": "test_the_skill_reference_is_bundled()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": "test_agent_docs.py", + "file_type": "code", + "norm_label": "test_the_skill_reference_is_bundled()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L115" + }, + { + "id": "tests_test_agent_docs_test_the_skill_states_the_traps_that_produce_plausible_output", + "label": "test_the_skill_states_the_traps_that_produce_plausible_output()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": "test_agent_docs.py", + "file_type": "code", + "norm_label": "test_the_skill_states_the_traps_that_produce_plausible_output()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L99" }, { "id": "src_cellpy_simple_gui_api_routers_projects_delete_project", @@ -36855,288 +37791,96 @@ "source_location": "L18" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_evaluate", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_evaluate", "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": ".evaluate", + "community_name": "Ra", "file_type": "code", "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": ".evaluate", + "community_name": "Ra", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_calculate", + "label": "._calculate()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": ".evaluate", + "community_name": "Ra", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "._calculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": ".evaluate", + "community_name": "Ra", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": ".evaluate", + "community_name": "Ra", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fl", - "label": "Fl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_interpolate", + "label": ".interpolate()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": ".evaluate", + "community_name": "Ra", "file_type": "code", - "norm_label": "fl()", + "norm_label": ".interpolate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": ".evaluate", + "community_name": "Ra", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_api_routers_system_normalize_dialog_path", + "label": "_normalize_dialog_path()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": ".possiblyevaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_evaluate", - "label": ".evaluate()", - "_callable": true, - "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_calculate", - "label": "._calculate()", - "_callable": true, - "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": "._calculate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_get", - "label": ".get()", - "_callable": true, - "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_interpolate", - "label": ".interpolate()", - "_callable": true, - "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": ".interpolate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_possiblyevaluate", - "label": ".possiblyEvaluate()", - "_callable": true, - "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": ".possiblyevaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_interpolationfactor", - "label": ".interpolationFactor()", - "_callable": true, - "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": ".interpolationfactor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_evaluate", - "label": ".evaluate()", - "_callable": true, - "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yc", - "label": "yc()", - "_callable": true, - "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": "yc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_evaluate", - "label": ".evaluate()", - "_callable": true, - "_origin": "ast", - "community": 66, - "community_name": ".evaluate", - "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_api_routers_plots_require_dev_mode", - "label": "require_dev_mode()", - "_callable": true, - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "require_dev_mode()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L141" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_capabilities", - "label": "capabilities()", - "_callable": true, - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "capabilities()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L66" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_cellpy_config_diagnostics", - "label": "cellpy_config_diagnostics()", - "_callable": true, - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "cellpy_config_diagnostics()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L108" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_job_timings", - "label": "job_timings()", - "_callable": true, - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "job_timings()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L98" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_logs", - "label": "logs()", - "_callable": true, - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "logs()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L84" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_normalize_dialog_path", - "label": "_normalize_dialog_path()", - "_callable": true, - "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 67, + "community_name": "pick", "file_type": "code", "norm_label": "_normalize_dialog_path()", "source_file": "src/cellpy_simple_gui/api/routers/system.py", @@ -37148,7 +37892,7 @@ "_callable": true, "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "code", "norm_label": "pick()", "source_file": "src/cellpy_simple_gui/api/routers/system.py", @@ -37160,7 +37904,7 @@ "_callable": true, "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "code", "norm_label": "save()", "source_file": "src/cellpy_simple_gui/api/routers/system.py", @@ -37172,81 +37916,21 @@ "_callable": true, "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "code", "norm_label": "_save_file_types()", "source_file": "src/cellpy_simple_gui/api/routers/system.py", "source_location": "L49" }, { - "id": "src_cellpy_simple_gui_api_routers_system_webview_window", - "label": "_webview_window()", - "_callable": true, - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "_webview_window()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L39" - }, - { - "id": "src_cellpy_simple_gui_logging_setup_recent_logs", - "label": "recent_logs()", - "_callable": true, - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "recent_logs()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L83" - }, - { - "id": "src_cellpy_simple_gui_logging_setup_ring_enabled", - "label": "ring_enabled()", - "_callable": true, - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "ring_enabled()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L99" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_e", - "label": "e()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_c", - "label": "c()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "c()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "r()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -37256,55 +37940,19 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ct", - "label": "ct()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "ct()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et_e", - "label": "e()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_s", - "label": "s()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37316,7 +37964,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37328,7 +37976,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37340,91 +37988,19 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_e", - "label": "e()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_l", - "label": "l()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_e", - "label": "e()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ie", "label": "ie()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "ie()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37436,69 +38012,45 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_n", - "label": "n()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "n()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_r", "label": "r()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_g", - "label": "g()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "g()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "p()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -37508,67 +38060,19 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".tojson()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_clearrtltextplugin", - "label": ".clearRTLTextPlugin()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": ".clearrtltextplugin()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_l", - "label": "l()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_n", - "label": "n()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "n()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_a", "label": "a()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37580,7 +38084,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".commit()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37592,7 +38096,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37604,7 +38108,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".continueplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37616,7 +38120,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37628,7 +38132,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".isdone()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37640,153 +38144,21 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_getdefault", - "label": ".getDefault()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": ".getdefault()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_h", - "label": "h()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "h()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_i", - "label": "i()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "i()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_n", - "label": "n()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "n()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_set", - "label": ".set()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": ".set()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_v", - "label": "v()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "v()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe", - "label": "pe()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "pe()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_i", - "label": "I()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "i()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y", - "label": "y()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "y()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_c", + "label": "C()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "a()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -37796,7 +38168,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37808,105 +38180,33 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_c", - "label": "c()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "c()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_l", - "label": "l()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_u", - "label": "u()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_d", - "label": "d()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "d()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_g", "label": "g()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_r", - "label": "r()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_compare", - "label": ".compare()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua_getoffsetx", + "label": ".getoffsetX()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": ".compare()", + "norm_label": ".getoffsetx()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -37916,7 +38216,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37928,7 +38228,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37940,7 +38240,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".getx()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -37952,93 +38252,57 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".gety()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_c", - "label": "c()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "c()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_u", - "label": "u()", - "_callable": true, - "_origin": "ast", - "community": 68, - "community_name": "s", - "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_r", "label": "r()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_querycell", - "label": "._queryCell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": "._querycell()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -38048,7 +38312,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -38060,7 +38324,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".ishidden()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -38072,7 +38336,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -38084,7 +38348,7 @@ "_callable": true, "_origin": "ast", "community": 68, - "community_name": "s", + "community_name": "g", "file_type": "code", "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -38114,6 +38378,18 @@ "source_file": "src/cellpy_simple_gui/core/export.py", "source_location": "L134" }, + { + "id": "src_cellpy_simple_gui_core_export_ica_figure_export", + "label": "ica_figure_export()", + "_callable": true, + "_origin": "ast", + "community": 69, + "community_name": "IcaPlotSpec", + "file_type": "code", + "norm_label": "ica_figure_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L145" + }, { "id": "tests_test_core_test_ica_figure", "label": "test_ica_figure()", @@ -38654,6 +38930,126 @@ "source_file": "tests/test_compare.py", "source_location": "L396" }, + { + "id": "tests_test_packaging_app_main_module", + "label": "app_main_module()", + "_callable": true, + "_origin": "ast", + "community": 71, + "community_name": "app_main_module", + "file_type": "code", + "norm_label": "app_main_module()", + "source_file": "tests/test_packaging.py", + "source_location": "L135" + }, + { + "id": "tests_test_packaging_clear_overrides", + "label": "_clear_overrides()", + "_callable": true, + "_origin": "ast", + "community": 71, + "community_name": "app_main_module", + "file_type": "code", + "norm_label": "_clear_overrides()", + "source_file": "tests/test_packaging.py", + "source_location": "L141" + }, + { + "id": "tests_test_packaging_fake_cellpy_config", + "label": "_fake_cellpy_config()", + "_callable": true, + "_origin": "ast", + "community": 71, + "community_name": "app_main_module", + "file_type": "code", + "norm_label": "_fake_cellpy_config()", + "source_file": "tests/test_packaging.py", + "source_location": "L112" + }, + { + "id": "tests_test_packaging_fake_cellpy_config_reload", + "label": "reload()", + "_callable": true, + "_origin": "ast", + "community": 71, + "community_name": "app_main_module", + "file_type": "code", + "norm_label": "reload()", + "source_file": "tests/test_packaging.py", + "source_location": "L119" + }, + { + "id": "tests_test_packaging_test_absolute_cellpy_dirs_are_created_but_not_overridden", + "label": "test_absolute_cellpy_dirs_are_created_but_not_overridden()", + "_callable": true, + "_origin": "ast", + "community": 71, + "community_name": "app_main_module", + "file_type": "code", + "norm_label": "test_absolute_cellpy_dirs_are_created_but_not_overridden()", + "source_file": "tests/test_packaging.py", + "source_location": "L146" + }, + { + "id": "tests_test_packaging_test_relative_cellpy_dirs_are_anchored_at_home_not_cwd", + "label": "test_relative_cellpy_dirs_are_anchored_at_home_not_cwd()", + "_callable": true, + "_origin": "ast", + "community": 71, + "community_name": "app_main_module", + "file_type": "code", + "norm_label": "test_relative_cellpy_dirs_are_anchored_at_home_not_cwd()", + "source_file": "tests/test_packaging.py", + "source_location": "L161" + }, + { + "id": "tests_test_packaging_test_remote_paths_are_never_touched", + "label": "test_remote_paths_are_never_touched()", + "_callable": true, + "_origin": "ast", + "community": 71, + "community_name": "app_main_module", + "file_type": "code", + "norm_label": "test_remote_paths_are_never_touched()", + "source_file": "tests/test_packaging.py", + "source_location": "L194" + }, + { + "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config", + "label": "test_startup_survives_an_unreadable_cellpy_config()", + "_callable": true, + "_origin": "ast", + "community": 71, + "community_name": "app_main_module", + "file_type": "code", + "norm_label": "test_startup_survives_an_unreadable_cellpy_config()", + "source_file": "tests/test_packaging.py", + "source_location": "L210" + }, + { + "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config_boom", + "label": "boom()", + "_callable": true, + "_origin": "ast", + "community": 71, + "community_name": "app_main_module", + "file_type": "code", + "norm_label": "boom()", + "source_file": "tests/test_packaging.py", + "source_location": "L213" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addsource", + "label": "addSource()", + "_callable": true, + "_origin": "ast", + "community": 72, + "community_name": "de", + "file_type": "code", + "norm_label": "addsource()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_setsky", "label": ".setSky()", @@ -38667,14 +39063,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_updatetransitions", - "label": ".updateTransitions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addimage", + "label": ".addImage()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".updatetransitions()", + "norm_label": ".addimage()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addlayer", + "label": ".addLayer()", + "_callable": true, + "_origin": "ast", + "community": 72, + "community_name": "de", + "file_type": "code", + "norm_label": ".addlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -38703,26 +39111,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_checkloaded", - "label": "._checkLoaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_afterimageupdated", + "label": "._afterImageUpdated()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "._checkloaded()", + "norm_label": "._afterimageupdated()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_checkloaded", + "label": "._checkLoaded()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "._checkloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -38763,14 +39171,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getglyphs", - "label": ".getGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getfilter", + "label": ".getFilter()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".getglyphs()", + "norm_label": ".getfilter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -38799,38 +39207,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getimages", - "label": ".getImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayer", + "label": ".getLayer()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".getimages()", + "norm_label": ".getlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayer", - "label": ".getLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayersorder", + "label": ".getLayersOrder()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".getlayer()", + "norm_label": ".getlayersorder()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayersorder", - "label": ".getLayersOrder()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayoutproperty", + "label": ".getLayoutProperty()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".getlayersorder()", + "norm_label": ".getlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -38859,50 +39267,50 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsky", - "label": ".getSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getpaintproperty", + "label": ".getPaintProperty()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".getsky()", + "norm_label": ".getpaintproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsource", - "label": ".getSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsky", + "label": ".getSky()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".getsource()", + "norm_label": ".getsky()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsprite", - "label": ".getSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsource", + "label": ".getSource()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".getsprite()", + "norm_label": ".getsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_hastransitions", - "label": ".hasTransitions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsprite", + "label": ".getSprite()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".hastransitions()", + "norm_label": ".getsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -38942,18 +39350,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadsprite", - "label": "._loadSprite()", - "_callable": true, - "_origin": "ast", - "community": 72, - "community_name": "de", - "file_type": "code", - "norm_label": "._loadsprite()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_movelayer", "label": ".moveLayer()", @@ -38991,26 +39387,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removesprite", - "label": ".removeSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removeimage", + "label": ".removeImage()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".removesprite()", + "norm_label": ".removeimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_resetupdates", - "label": "._resetUpdates()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removesprite", + "label": ".removeSprite()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "._resetupdates()", + "norm_label": ".removesprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -39051,242 +39447,242 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setgeojsonsourcedata", - "label": ".setGeoJSONSourceData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfilter", + "label": ".setFilter()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".setgeojsonsourcedata()", + "norm_label": ".setfilter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setglyphs", - "label": ".setGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setgeojsonsourcedata", + "label": ".setGeoJSONSourceData()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".setglyphs()", + "norm_label": ".setgeojsonsourcedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlight", - "label": ".setLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setglyphs", + "label": ".setGlyphs()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".setlight()", + "norm_label": ".setglyphs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsky", - "label": ".setSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayerzoomrange", + "label": ".setLayerZoomRange()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".setsky()", + "norm_label": ".setlayerzoomrange()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsprite", - "label": ".setSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayoutproperty", + "label": ".setLayoutProperty()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".setsprite()", + "norm_label": ".setlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setstate", - "label": ".setState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlight", + "label": ".setLight()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".setstate()", + "norm_label": ".setlight()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_unloadsprite", - "label": "._unloadSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setpaintproperty", + "label": ".setPaintProperty()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "._unloadsprite()", + "norm_label": ".setpaintproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsky", + "label": ".setSky()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".setsky()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateimage", - "label": ".updateImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsprite", + "label": ".setSprite()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".updateimage()", + "norm_label": ".setsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatesources", - "label": "._updateSources()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setstate", + "label": ".setState()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "._updatesources()", + "norm_label": ".setstate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatetilesforchangedglyphs", - "label": "._updateTilesForChangedGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_unloadsprite", + "label": "._unloadSprite()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "._updatetilesforchangedglyphs()", + "norm_label": "._unloadsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatetilesforchangedimages", - "label": "._updateTilesForChangedImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateimage", + "label": ".updateImage()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "._updatetilesforchangedimages()", + "norm_label": ".updateimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateworkerlayers", - "label": "._updateWorkerLayers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatelayer", + "label": "._updateLayer()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "._updateworkerlayers()", + "norm_label": "._updatelayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validate", - "label": "._validate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatesources", + "label": "._updateSources()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "._validate()", + "norm_label": "._updatesources()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validatelayer", - "label": "._validateLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validate", + "label": "._validate()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "._validatelayer()", + "norm_label": "._validate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_pause", + "label": ".pause()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".pause()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_reloadtilesfordependencies", - "label": ".reloadTilesForDependencies()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_fire", + "label": ".fire()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".reloadtilesfordependencies()", + "norm_label": ".fire()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_setdependencies", - "label": ".setDependencies()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_listens", + "label": ".listens()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".setdependencies()", + "norm_label": ".listens()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getglyphs", - "label": "getGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayer", + "label": "getLayer()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "getglyphs()", + "norm_label": "getlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmapid", - "label": "_getMapId()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayoutproperty", + "label": "getLayoutProperty()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "_getmapid()", + "norm_label": "getlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -39303,14 +39699,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_hasdependency", - "label": ".hasDependency()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hasimage", + "label": "hasImage()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".hasdependency()", + "norm_label": "hasimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -39327,124 +39723,124 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_addimage", - "label": ".addImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".addimage()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loaded", - "label": "loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "loaded()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setlayoutproperty", - "label": ".setLayoutProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_addimage", + "label": ".addImage()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".setlayoutproperty()", + "norm_label": ".addimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_setlight", - "label": ".setLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loaded", + "label": "loaded()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".setlight()", + "norm_label": "loaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removefeaturestate", - "label": "removeFeatureState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_seek", + "label": ".seek()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": "removefeaturestate()", + "norm_label": ".seek()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setdata", - "label": ".setData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setlayoutproperty", + "label": ".setLayoutProperty()", "_callable": true, "_origin": "ast", "community": 72, "community_name": "de", "file_type": "code", - "norm_label": ".setdata()", + "norm_label": ".setlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_packaging_app_main_module", - "label": "app_main_module()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_setlight", + "label": ".setLight()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 72, + "community_name": "de", "file_type": "code", - "norm_label": "app_main_module()", - "source_file": "tests/test_packaging.py", - "source_location": "L135" + "norm_label": ".setlight()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_clear_overrides", - "label": "_clear_overrides()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removefeaturestate", + "label": "removeFeatureState()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 72, + "community_name": "de", "file_type": "code", - "norm_label": "_clear_overrides()", - "source_file": "tests/test_packaging.py", - "source_location": "L141" + "norm_label": "removefeaturestate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_fake_cellpy_config", - "label": "_fake_cellpy_config()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlayoutproperty", + "label": "setLayoutProperty()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 72, + "community_name": "de", "file_type": "code", - "norm_label": "_fake_cellpy_config()", - "source_file": "tests/test_packaging.py", - "source_location": "L112" + "norm_label": "setlayoutproperty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_fake_cellpy_config_reload", - "label": "reload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpaintproperty", + "label": "setPaintProperty()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 72, + "community_name": "de", "file_type": "code", - "norm_label": "reload()", - "source_file": "tests/test_packaging.py", - "source_location": "L119" + "norm_label": "setpaintproperty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "tests_test_packaging_load_entry", @@ -39482,54 +39878,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L241" }, - { - "id": "tests_test_packaging_tag_triggers", - "label": "_tag_triggers()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "_tag_triggers()", - "source_file": "tests/test_packaging.py", - "source_location": "L314" - }, - { - "id": "tests_test_packaging_test_absolute_cellpy_dirs_are_created_but_not_overridden", - "label": "test_absolute_cellpy_dirs_are_created_but_not_overridden()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "test_absolute_cellpy_dirs_are_created_but_not_overridden()", - "source_file": "tests/test_packaging.py", - "source_location": "L146" - }, - { - "id": "tests_test_packaging_test_continuous_build_proves_itself_on_prs_but_publishes_only_from_main", - "label": "test_continuous_build_proves_itself_on_prs_but_publishes_only_from_main()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "test_continuous_build_proves_itself_on_prs_but_publishes_only_from_main()", - "source_file": "tests/test_packaging.py", - "source_location": "L335" - }, - { - "id": "tests_test_packaging_test_continuous_tag_can_never_fire_a_release_workflow", - "label": "test_continuous_tag_can_never_fire_a_release_workflow()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "test_continuous_tag_can_never_fire_a_release_workflow()", - "source_file": "tests/test_packaging.py", - "source_location": "L319" - }, { "id": "tests_test_packaging_test_crash_goes_to_stderr_when_there_is_a_console", "label": "test_crash_goes_to_stderr_when_there_is_a_console()", @@ -39602,54 +39950,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L290" }, - { - "id": "tests_test_packaging_test_relative_cellpy_dirs_are_anchored_at_home_not_cwd", - "label": "test_relative_cellpy_dirs_are_anchored_at_home_not_cwd()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "test_relative_cellpy_dirs_are_anchored_at_home_not_cwd()", - "source_file": "tests/test_packaging.py", - "source_location": "L161" - }, - { - "id": "tests_test_packaging_test_release_and_continuous_publish_the_installer_zip", - "label": "test_release_and_continuous_publish_the_installer_zip()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "test_release_and_continuous_publish_the_installer_zip()", - "source_file": "tests/test_packaging.py", - "source_location": "L395" - }, - { - "id": "tests_test_packaging_test_release_and_continuous_share_one_installer_build", - "label": "test_release_and_continuous_share_one_installer_build()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "test_release_and_continuous_share_one_installer_build()", - "source_file": "tests/test_packaging.py", - "source_location": "L349" - }, - { - "id": "tests_test_packaging_test_remote_paths_are_never_touched", - "label": "test_remote_paths_are_never_touched()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "test_remote_paths_are_never_touched()", - "source_file": "tests/test_packaging.py", - "source_location": "L194" - }, { "id": "tests_test_packaging_test_setup_logging_survives_a_windowed_build", "label": "test_setup_logging_survives_a_windowed_build()", @@ -39686,54 +39986,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L278" }, - { - "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config", - "label": "test_startup_survives_an_unreadable_cellpy_config()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "test_startup_survives_an_unreadable_cellpy_config()", - "source_file": "tests/test_packaging.py", - "source_location": "L210" - }, - { - "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config_boom", - "label": "boom()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "boom()", - "source_file": "tests/test_packaging.py", - "source_location": "L213" - }, - { - "id": "tests_test_packaging_test_stderr_usable_rejects_a_broken_handle", - "label": "test_stderr_usable_rejects_a_broken_handle()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "test_stderr_usable_rejects_a_broken_handle()", - "source_file": "tests/test_packaging.py", - "source_location": "L69" - }, - { - "id": "tests_test_packaging_test_stderr_usable_rejects_a_broken_handle_write", - "label": "write()", - "_callable": true, - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "write()", - "source_file": "tests/test_packaging.py", - "source_location": "L73" - }, { "id": "tests_test_packaging_test_zip_installer_refuses_a_directory_with_no_exe", "label": "test_zip_installer_refuses_a_directory_with_no_exe()", @@ -39759,16 +40011,28 @@ "source_location": "L375" }, { - "id": "tests_test_packaging_workflow", - "label": "_workflow()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "_workflow()", - "source_file": "tests/test_packaging.py", - "source_location": "L307" + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_refreshviews", + "label": "._refreshViews()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_constructor", @@ -39794,6 +40058,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_getid", + "label": ".getId()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": ".getid()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_haslayer", "label": ".hasLayer()", @@ -39818,6 +40094,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadmatchingfeature", + "label": ".loadMatchingFeature()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": ".loadmatchingfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadvtlayers", "label": ".loadVTLayers()", @@ -39866,6 +40154,66 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_feature", + "label": "feature()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": "feature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_updatepaintarrays", + "label": ".updatePaintArrays()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": ".updatepaintarrays()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_querysourcefeatures", + "label": ".querySourceFeatures()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": ".querysourcefeatures()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_tojson", + "label": ".toJSON()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": ".tojson()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_constructor", "label": ".constructor()", @@ -39890,6 +40238,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_encode", + "label": ".encode()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": ".encode()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pop", "label": "pop()", @@ -39914,6 +40274,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_getpositions", + "label": ".getPositions()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": ".getpositions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpoint", "label": ".anchorPoint()", @@ -39974,18 +40346,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 77, - "community_name": "da", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_featureindex", "label": ".featureIndex()", @@ -40059,52 +40419,268 @@ "source_location": "L8" }, { - "id": "tests_test_agent_docs_test_llms_full_txt_is_current", - "label": "test_llms_full_txt_is_current()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "test_llms_full_txt_is_current()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L47" + "norm_label": ".get()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_cellpy_version", - "label": "cellpy_version()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplace", + "label": ".emplace()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_refreshviews", + "label": "._refreshViews()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textanchor", + "label": ".textAnchor()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".textanchor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset0", + "label": ".textOffset0()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".textoffset0()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset1", + "label": ".textOffset1()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".textoffset1()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_updatetransitions", + "label": ".updateTransitions()", "_callable": true, "_origin": "ast", "community": 79, - "community_name": "instrument_meta_schema", + "community_name": ".constructor", "file_type": "code", - "norm_label": "cellpy_version()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L822" + "norm_label": ".updatetransitions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_meta_schema", - "label": "instrument_meta_schema()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 79, - "community_name": "instrument_meta_schema", + "community_name": ".constructor", "file_type": "code", - "norm_label": "instrument_meta_schema()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L220" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_file_meta", - "label": "read_file_meta()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getglyphs", + "label": ".getGlyphs()", "_callable": true, "_origin": "ast", "community": 79, - "community_name": "instrument_meta_schema", + "community_name": ".constructor", "file_type": "code", - "norm_label": "read_file_meta()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L227" + "norm_label": ".getglyphs()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getimages", + "label": ".getImages()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": ".getimages()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_resetupdates", + "label": "._resetUpdates()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "._resetupdates()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_update", + "label": ".update()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatetilesforchangedglyphs", + "label": "._updateTilesForChangedGlyphs()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "._updatetilesforchangedglyphs()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatetilesforchangedimages", + "label": "._updateTilesForChangedImages()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "._updatetilesforchangedimages()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateworkerlayers", + "label": "._updateWorkerLayers()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "._updateworkerlayers()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validatelayer", + "label": "._validateLayer()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "._validatelayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_reloadtilesfordependencies", + "label": ".reloadTilesForDependencies()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": ".reloadtilesfordependencies()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_setdependencies", + "label": ".setDependencies()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": ".setdependencies()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getglyphs", + "label": "getGlyphs()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "getglyphs()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmapid", + "label": "_getMapId()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "_getmapid()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_hasdependency", + "label": ".hasDependency()", + "_callable": true, + "_origin": "ast", + "community": 79, + "community_name": ".constructor", + "file_type": "code", + "norm_label": ".hasdependency()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_accesstoken", @@ -40142,18 +40718,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_query", - "label": ".query()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": ".query()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aretilesloaded", "label": "areTilesLoaded()", @@ -40190,18 +40754,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bu", - "label": "Bu()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "bu()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cc", "label": "Cc()", @@ -40227,26 +40779,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_completetask", - "label": "completeTask()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "completetask()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createdelegatedlistener", - "label": "_createDelegatedListener()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_containerdimensions", + "label": "_containerDimensions()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "_createdelegatedlistener()", + "norm_label": "_containerdimensions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -40311,50 +40851,74 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_events_url", - "label": "EVENTS_URL()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_doescharsupportlocalglyph", + "label": "._doesCharSupportLocalGlyph()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "events_url()", + "norm_label": "._doescharsupportlocalglyph()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frame", - "label": "frame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getandcacheglyphspromise", + "label": "._getAndCacheGlyphsPromise()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "frame()", + "norm_label": "._getandcacheglyphspromise()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fu", - "label": "Fu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_tinysdf", + "label": "._tinySDF()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "fu()", + "norm_label": "._tinysdf()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_once", - "label": ".once()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_events_url", + "label": "EVENTS_URL()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": ".once()", + "norm_label": "events_url()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frame", + "label": "frame()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "frame()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fu", + "label": "Fu()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "fu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -40394,6 +40958,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getclampedpixelratio", + "label": "_getClampedPixelRatio()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "_getclampedpixelratio()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfilter", "label": "getFilter()", @@ -40502,6 +41078,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpixelratio", + "label": "getPixelRatio()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "getpixelratio()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpluginurl", "label": "getPluginURL()", @@ -40623,14 +41211,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hu", - "label": "hu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "hu()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -40658,18 +41246,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jc", - "label": "jc()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "jc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_feature", "label": ".feature()", @@ -40718,18 +41294,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lh", - "label": "lh()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "lh()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_listimages", "label": "listImages()", @@ -40742,18 +41306,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loadimage", - "label": "loadImage()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "loadimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_maxparallelimagerequests", "label": "maxParallelImageRequests()", @@ -40766,18 +41318,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ml", - "label": "Ml()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "ml()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_movelayer", "label": "moveLayer()", @@ -40790,18 +41330,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setmaxwidth", "label": ".setMaxWidth()", @@ -40826,42 +41354,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_trackpointer", - "label": ".trackPointer()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": ".trackpointer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_once", - "label": "once()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "once()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pc", - "label": "Pc()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "pc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_peek", "label": "peek()", @@ -40887,74 +41379,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_process", - "label": "process()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "process()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_processtask", - "label": "processTask()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "processtask()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_serialize", - "label": ".serialize()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": ".serialize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_queryrenderedfeatures", - "label": "queryRenderedFeatures()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "queryrenderedfeatures()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_receive", - "label": "receive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ql", + "label": "ql()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "receive()", + "norm_label": "ql()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -41006,6 +41438,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesource", + "label": "removeSource()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "removesource()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesprite", "label": "removeSprite()", @@ -41031,26 +41475,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rs", - "label": "Rs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resizecanvas", + "label": "_resizeCanvas()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "rs()", + "norm_label": "_resizecanvas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sc", - "label": "Sc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rs", + "label": "Rs()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "sc()", + "norm_label": "rs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -41187,14 +41631,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sh", - "label": "sh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setupcontainer", + "label": "_setupContainer()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "sh()", + "norm_label": "_setupcontainer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -41247,26 +41691,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sl", - "label": "Sl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_resolvedlocale", + "label": ".resolvedLocale()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "sl()", + "norm_label": ".resolvedlocale()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_resolvedlocale", - "label": ".resolvedLocale()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tc", + "label": "tc()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": ".resolvedlocale()", + "norm_label": "tc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -41450,18 +41894,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zc", - "label": "zc()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "zc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zl", "label": "zl()", @@ -41474,42 +41906,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_queryintersectsfeature", - "label": ".queryIntersectsFeature()", - "_callable": true, - "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": ".queryintersectsfeature()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_createtree", - "label": "._createTree()", - "_callable": true, - "_origin": "ast", - "community": 80, - "community_name": "_render", - "file_type": "code", - "norm_label": "._createtree()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_finish", - "label": "finish()", - "_callable": true, - "_origin": "ast", - "community": 80, - "community_name": "_render", - "file_type": "code", - "norm_label": "finish()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_g", "label": "g()", @@ -41522,18 +41918,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ismoving", - "label": "isMoving()", - "_callable": true, - "_origin": "ast", - "community": 80, - "community_name": "_render", - "file_type": "code", - "norm_label": "ismoving()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isrotating", "label": "isRotating()", @@ -41546,18 +41930,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mark", - "label": "mark()", - "_callable": true, - "_origin": "ast", - "community": 80, - "community_name": "_render", - "file_type": "code", - "norm_label": "mark()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_redraw", "label": "redraw()", @@ -41595,28 +41967,16 @@ "source_location": "L8" }, { - "id": "packaging_smoke_test_check", - "label": "check()", - "_callable": true, - "_origin": "ast", - "community": 82, - "community_name": "gh", - "file_type": "code", - "norm_label": "check()", - "source_file": "packaging/smoke_test.py", - "source_location": "L48" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gh", - "label": "gh()", + "id": "src_cellpy_simple_gui_config_settings_max_files", + "label": ".max_files()", "_callable": true, "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "code", - "norm_label": "gh()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".max_files()", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L70" }, { "id": "src_cellpy_simple_gui_core_files_expand_paths", @@ -41738,6 +42098,18 @@ "source_file": "src/cellpy_simple_gui/core/paths.py", "source_location": "L67" }, + { + "id": "tests_test_api_reference_test_the_reference_and_the_skill_copy_are_byte_identical", + "label": "test_the_reference_and_the_skill_copy_are_byte_identical()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "test_the_reference_and_the_skill_copy_are_byte_identical()", + "source_file": "tests/test_api_reference.py", + "source_location": "L97" + }, { "id": "tests_test_files_test_dedup", "label": "test_dedup()", @@ -41883,122 +42255,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_reset", - "label": ".reset()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".reset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_crossfadingfactor", - "label": ".crossFadingFactor()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".crossfadingfactor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_gesturebeginsvertically", - "label": ".gestureBeginsVertically()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".gesturebeginsvertically()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_getcrossfadeparameters", - "label": ".getCrossfadeParameters()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".getcrossfadeparameters()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_move", - "label": "._move()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": "._move()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_off", - "label": ".off()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".off()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_offtemp", - "label": ".offTemp()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".offtemp()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_r", - "label": "r()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_reset", - "label": ".reset()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".reset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_start", - "label": "._start()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 85, "community_name": "ii", "file_type": "code", - "norm_label": "._start()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -42123,328 +42387,16 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchmove", - "label": ".touchmove()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".touchmove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_evaluate", - "label": ".evaluate()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_remove", - "label": ".remove()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragmove", - "label": ".dragMove()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".dragmove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_onremove", - "label": ".onRemove()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".onremove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_enabledrag", - "label": ".enableDrag()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".enabledrag()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_removeeventlistener", - "label": ".removeEventListener()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".removeeventlistener()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_suppressclickinternal", - "label": ".suppressClickInternal()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".suppressclickinternal()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui", - "label": "ui()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": "ui()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_o", - "label": "o()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt_c", - "label": "c()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": "c()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_explain_load_error", - "label": "explain_load_error()", - "_callable": true, - "_origin": "ast", - "community": 87, - "community_name": "find_remote_files", - "file_type": "code", - "norm_label": "explain_load_error()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L205" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_find_glob", - "label": "_find_glob()", - "_callable": true, - "_origin": "ast", - "community": 87, - "community_name": "find_remote_files", - "file_type": "code", - "norm_label": "_find_glob()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L393" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_find_in_raw_file_directory", - "label": "_find_in_raw_file_directory()", - "_callable": true, - "_origin": "ast", - "community": 87, - "community_name": "find_remote_files", - "file_type": "code", - "norm_label": "_find_in_raw_file_directory()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L384" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_find_remote_files", - "label": "find_remote_files()", - "_callable": true, - "_origin": "ast", - "community": 87, - "community_name": "find_remote_files", - "file_type": "code", - "norm_label": "find_remote_files()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L407" - }, - { - "id": "tests_test_api_reference_test_the_reference_and_the_skill_copy_are_byte_identical", - "label": "test_the_reference_and_the_skill_copy_are_byte_identical()", + "id": "tests_test_agent_docs_test_llms_full_txt_is_current", + "label": "test_llms_full_txt_is_current()", "_callable": true, "_origin": "ast", "community": 87, - "community_name": "find_remote_files", - "file_type": "code", - "norm_label": "test_the_reference_and_the_skill_copy_are_byte_identical()", - "source_file": "tests/test_api_reference.py", - "source_location": "L97" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_disable", - "label": ".disable()", - "_callable": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", - "file_type": "code", - "norm_label": ".disable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_enable", - "label": ".enable()", - "_callable": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", - "file_type": "code", - "norm_label": ".enable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_gettexture", - "label": ".getTexture()", - "_callable": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", - "file_type": "code", - "norm_label": ".gettexture()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_isactive", - "label": ".isActive()", - "_callable": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", + "community_name": "test_llms_full_txt_is_current", "file_type": "code", - "norm_label": ".isactive()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_isenabled", - "label": ".isEnabled()", - "_callable": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", - "file_type": "code", - "norm_label": ".isenabled()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_prepareforrender", - "label": ".prepareForRender()", - "_callable": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", - "file_type": "code", - "norm_label": ".prepareforrender()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_renderlayer", - "label": ".renderLayer()", - "_callable": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", - "file_type": "code", - "norm_label": ".renderlayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getvisiblecoordinates", - "label": ".getVisibleCoordinates()", - "_callable": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", - "file_type": "code", - "norm_label": ".getvisiblecoordinates()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_llms_full_txt_is_current()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L47" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_constructor", @@ -42452,7 +42404,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": ".render", + "community_name": "ju", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42464,7 +42416,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": ".render", + "community_name": "ju", "file_type": "code", "norm_label": ".hasoffscreenpass()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42476,7 +42428,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": ".render", + "community_name": "ju", "file_type": "code", "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42488,7 +42440,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": ".render", + "community_name": "ju", "file_type": "code", "norm_label": ".is3d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42500,7 +42452,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": ".render", + "community_name": "ju", "file_type": "code", "norm_label": ".recalculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42512,7 +42464,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": ".render", + "community_name": "ju", "file_type": "code", "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42524,251 +42476,239 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": ".render", + "community_name": "ju", "file_type": "code", "norm_label": ".updatetransitions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_getrenderabletiles", - "label": ".getRenderableTiles()", - "_callable": true, - "_origin": "ast", - "community": 89, - "community_name": ".render", - "file_type": "code", - "norm_label": ".getrenderabletiles()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_clear", - "label": ".clear()", + "id": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", + "label": "test_cv_split_and_fullcell_families_are_plottable()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 9, + "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": ".clear()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_cv_split_and_fullcell_families_are_plottable()", + "source_file": "tests/test_core.py", + "source_location": "L1648" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_constructor", - "label": ".constructor()", + "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", + "label": "test_cycles_figure_forwards_group_legend_muting()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 9, + "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_cycles_figure_forwards_group_legend_muting()", + "source_file": "tests/test_core.py", + "source_location": "L171" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_tounwrapped", - "label": ".toUnwrapped()", + "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting_spy", + "label": "spy()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 9, + "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": ".tounwrapped()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "spy()", + "source_file": "tests/test_core.py", + "source_location": "L176" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_render", - "label": ".render()", + "id": "tests_test_core_test_group_average_keeps_singleton_traces", + "label": "test_group_average_keeps_singleton_traces()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 9, + "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": ".render()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_group_average_keeps_singleton_traces()", + "source_file": "tests/test_core.py", + "source_location": "L611" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_ishidden", - "label": ".isHidden()", + "id": "tests_test_core_test_group_average_singleton_traces_on_correct_facet", + "label": "test_group_average_singleton_traces_on_correct_facet()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 9, + "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": ".ishidden()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_group_average_singleton_traces_on_correct_facet()", + "source_file": "tests/test_core.py", + "source_location": "L648" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_clear", - "label": ".clear()", + "id": "tests_test_core_test_non_spread_hover_is_left_to_cellpy", + "label": "test_non_spread_hover_is_left_to_cellpy()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 9, + "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": ".clear()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_non_spread_hover_is_left_to_cellpy()", + "source_file": "tests/test_core.py", + "source_location": "L918" }, { - "id": "src_cellpy_simple_gui_core_collect_empty_figure_json", - "label": "_empty_figure_json()", + "id": "tests_test_core_test_spread_traces_keep_useful_hover", + "label": "test_spread_traces_keep_useful_hover()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "_empty_figure_json()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1101" + "norm_label": "test_spread_traces_keep_useful_hover()", + "source_file": "tests/test_core.py", + "source_location": "L876" }, { - "id": "src_cellpy_simple_gui_core_collect_figure_json", - "label": "figure_json()", + "id": "tests_test_core_test_summary_figure_dark_theme", + "label": "test_summary_figure_dark_theme()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "figure_json()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L851" + "norm_label": "test_summary_figure_dark_theme()", + "source_file": "tests/test_core.py", + "source_location": "L804" }, { - "id": "src_cellpy_simple_gui_core_collect_missing_summary_columns", - "label": "missing_summary_columns()", + "id": "tests_test_core_test_summary_figure_export_svg", + "label": "test_summary_figure_export_svg()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "missing_summary_columns()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L258" + "norm_label": "test_summary_figure_export_svg()", + "source_file": "tests/test_core.py", + "source_location": "L1376" }, { - "id": "src_cellpy_simple_gui_core_collect_stamp_warnings", - "label": "_stamp_warnings()", + "id": "tests_test_core_test_summary_figure_forwards_group_legend_muting", + "label": "test_summary_figure_forwards_group_legend_muting()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "_stamp_warnings()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L901" + "norm_label": "test_summary_figure_forwards_group_legend_muting()", + "source_file": "tests/test_core.py", + "source_location": "L150" }, { - "id": "src_cellpy_simple_gui_core_collect_summary_y_label_mapper", - "label": "summary_y_label_mapper()", + "id": "tests_test_core_test_summary_figure_forwards_group_legend_muting_spy", + "label": "spy()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "summary_y_label_mapper()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L432" + "norm_label": "spy()", + "source_file": "tests/test_core.py", + "source_location": "L155" }, { - "id": "src_cellpy_simple_gui_core_export_summary_figure_export", - "label": "summary_figure_export()", + "id": "tests_test_core_test_summary_figure_long_cell_names_shorten_legend", + "label": "test_summary_figure_long_cell_names_shorten_legend()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "summary_figure_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L99" + "norm_label": "test_summary_figure_long_cell_names_shorten_legend()", + "source_file": "tests/test_core.py", + "source_location": "L734" }, { - "id": "src_cellpy_simple_gui_core_library_cellrecord_color", - "label": ".color()", + "id": "tests_test_core_test_summary_figure_safe_color_scheme", + "label": "test_summary_figure_safe_color_scheme()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": ".color()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L73" + "norm_label": "test_summary_figure_safe_color_scheme()", + "source_file": "tests/test_core.py", + "source_location": "L817" }, { - "id": "src_cellpy_simple_gui_core_plotting_cycles_figure", - "label": "cycles_figure()", + "id": "tests_test_core_test_summary_figure_short_names_unchanged", + "label": "test_summary_figure_short_names_unchanged()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "cycles_figure()", - "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L162" + "norm_label": "test_summary_figure_short_names_unchanged()", + "source_file": "tests/test_core.py", + "source_location": "L764" }, { - "id": "src_cellpy_simple_gui_core_plotting_summary_figure", - "label": "summary_figure()", + "id": "tests_test_core_test_unavailable_family_explains_itself", + "label": "test_unavailable_family_explains_itself()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "summary_figure()", - "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L27" + "norm_label": "test_unavailable_family_explains_itself()", + "source_file": "tests/test_core.py", + "source_location": "L1625" }, { - "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", - "label": "test_cycles_figure_forwards_group_legend_muting()", + "id": "src_cellpy_simple_gui_core_export_dva_figure_export", + "label": "dva_figure_export()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 90, + "community_name": "core/export.py", "file_type": "code", - "norm_label": "test_cycles_figure_forwards_group_legend_muting()", - "source_file": "tests/test_core.py", - "source_location": "L171" + "norm_label": "dva_figure_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L162" }, { - "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting_spy", - "label": "spy()", + "id": "src_cellpy_simple_gui_core_export_figureexporterror_init", + "label": ".__init__()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 90, + "community_name": "core/export.py", "file_type": "code", - "norm_label": "spy()", - "source_file": "tests/test_core.py", - "source_location": "L176" + "norm_label": ".__init__()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L54" }, { - "id": "tests_test_core_test_summary_figure_forwards_group_legend_muting", - "label": "test_summary_figure_forwards_group_legend_muting()", + "id": "src_cellpy_simple_gui_core_export_safe_stem", + "label": "_safe_stem()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 90, + "community_name": "core/export.py", "file_type": "code", - "norm_label": "test_summary_figure_forwards_group_legend_muting()", - "source_file": "tests/test_core.py", - "source_location": "L150" + "norm_label": "_safe_stem()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L207" }, { - "id": "tests_test_core_test_summary_figure_forwards_group_legend_muting_spy", - "label": "spy()", + "id": "src_cellpy_simple_gui_core_export_unique_stems", + "label": "_unique_stems()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 90, + "community_name": "core/export.py", "file_type": "code", - "norm_label": "spy()", - "source_file": "tests/test_core.py", - "source_location": "L155" + "norm_label": "_unique_stems()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L213" }, { "id": "tests_test_uploads_client", @@ -42776,7 +42716,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "client()", "source_file": "tests/test_uploads.py", @@ -42788,7 +42728,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "served()", "source_file": "tests/test_uploads.py", @@ -42800,7 +42740,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_a_file_over_the_cap_is_refused_and_leaves_nothing_behind()", "source_file": "tests/test_uploads.py", @@ -42812,7 +42752,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_a_traversing_filename_still_lands_inside()", "source_file": "tests/test_uploads.py", @@ -42824,7 +42764,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_all_rejected_is_an_error_not_a_silent_nothing()", "source_file": "tests/test_uploads.py", @@ -42836,7 +42776,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_an_empty_file_is_refused()", "source_file": "tests/test_uploads.py", @@ -42848,7 +42788,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_capabilities_advertise_the_cap()", "source_file": "tests/test_uploads.py", @@ -42860,7 +42800,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_one_rejected_file_does_not_lose_the_others()", "source_file": "tests/test_uploads.py", @@ -42872,7 +42812,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_safe_name_reduces_a_path_to_a_filename()", "source_file": "tests/test_uploads.py", @@ -42884,7 +42824,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_safe_name_refuses_what_is_left_of_nothing()", "source_file": "tests/test_uploads.py", @@ -42896,7 +42836,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_two_uploads_of_one_name_are_two_files()", "source_file": "tests/test_uploads.py", @@ -42908,7 +42848,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_upload_lands_inside_the_data_directory()", "source_file": "tests/test_uploads.py", @@ -42920,7 +42860,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_upload_needs_the_token()", "source_file": "tests/test_uploads.py", @@ -42932,24 +42872,12 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_usage_and_clear()", "source_file": "tests/test_uploads.py", "source_location": "L155" }, - { - "id": "tests_test_api_test_app_js_parses", - "label": "test_app_js_parses()", - "_callable": true, - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "code", - "norm_label": "test_app_js_parses()", - "source_file": "tests/test_api.py", - "source_location": "L453" - }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_hi", "label": "Hi()", @@ -42962,6 +42890,42 @@ "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcanvas", + "label": "getCanvas()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "getcanvas()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_disable", + "label": ".disable()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".disable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_enable", + "label": ".enable()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".enable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_isactive", "label": ".isActive()", @@ -43106,6 +43070,66 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_getpoint", + "label": ".getPoint()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".getpoint()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_getscale", + "label": ".getScale()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".getscale()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_mousepos", + "label": ".mousePos()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".mousepos()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_touchpos", + "label": ".touchPos()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".touchpos()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_add", "label": "._add()", @@ -43166,6 +43190,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_fireevent", + "label": "._fireEvent()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._fireevent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_fireevents", "label": "._fireEvents()", @@ -43262,18 +43298,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_reset", - "label": ".reset()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".reset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_start", "label": "._start()", @@ -43310,6 +43334,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_updatemaptransform", + "label": "._updateMapTransform()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._updatemaptransform()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_constructor", "label": ".constructor()", @@ -43646,18 +43682,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_pn", - "label": "Pn()", - "_callable": true, - "_origin": "ast", - "community": 95, - "community_name": "alpine.min.js", - "file_type": "code", - "norm_label": "pn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_qi", "label": "Qi()", @@ -43863,16 +43887,16 @@ "source_location": "L115" }, { - "id": "examples_mcp_server_new_project", - "label": "new_project()", + "id": "src_cellpy_simple_gui_api_jobs_jobmanager_cancel", + "label": ".cancel()", "_callable": true, "_origin": "ast", - "community": 97, - "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", + "community": 96, + "community_name": ".status", "file_type": "code", - "norm_label": "new_project()", - "source_file": "examples/mcp/server.py", - "source_location": "L876" + "norm_label": ".cancel()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L250" }, { "id": "src_cellpy_simple_gui_api_deps_py_path", @@ -43962,6 +43986,28 @@ "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_api_routers_ingest_py_get", + "label": "get", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "get", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_api_routers_ingest_py_post", + "label": "post", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "post", + "source_file": "", + "source_location": "" + }, { "id": "src_cellpy_simple_gui_api_routers_jobs", "label": "routers/jobs.py", @@ -44051,16 +44097,49 @@ "source_location": "" }, { - "id": "src_cellpy_simple_gui_core_library", - "label": "library.py", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_baseexception", + "label": "BaseException", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "code", - "norm_label": "library.py", - "source_file": "src/cellpy_simple_gui/core/library.py", + "norm_label": "baseexception", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_progressfn", + "label": "ProgressFn", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "progressfn", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_core_models", + "label": "models.py", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "models.py", + "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_core_models_py_basemodel", + "label": "BaseModel", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "basemodel", + "source_file": "", + "source_location": "" + }, { "id": "streamingresponse", "label": "StreamingResponse", @@ -44072,6 +44151,102 @@ "source_file": "", "source_location": "" }, + { + "id": "issueflows_03_solved_issues_issue19_plan", + "label": "issue19_plan.md", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue19_plan.md", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue19_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue19_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue19_plan_plan_issue_19_journal_load_error_surfacing", + "label": "Plan: Issue #19 \u2014 journal load error surfacing", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan: issue #19 \u2014 journal load error surfacing", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue19_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue19_status", + "label": "issue19_status.md", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue19_status.md", + "source_file": ".issueflows/03-solved-issues/issue19_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue19_status_done", + "label": "Done", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "document", + "node_kind": "heading", + "norm_label": "done", + "source_file": ".issueflows/03-solved-issues/issue19_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue19_status_status_issue_19_journal_load_errors", + "label": "Status: Issue #19 \u2014 journal load errors", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status: issue #19 \u2014 journal load errors", + "source_file": ".issueflows/03-solved-issues/issue19_status.md", + "source_location": "L1" + }, { "id": "issueflows_04_designs_and_guides_job_cancel_dismiss_decision", "label": "Decision", @@ -44238,6 +44413,28 @@ "source_file": "src/cellpy_simple_gui/api/routers/remote.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_206", + "label": "Turn a loader failure into something a user can act on (#143). A raw\u2026", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "turn a loader failure into something a user can act on (#143). a raw...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L206" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_573", + "label": "Load a cellpy batch journal (.json) and return ``(label, cell, group)``. Uses\u2026", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "load a cellpy batch journal (.json) and return ``(label, cell, group)``. uses...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L573" + }, { "id": "src_cellpy_simple_gui_core_files_rationale_21", "label": "Clamp a client-supplied cap to the policy for this session (#97). The UI reads\u2026", @@ -44250,26 +44447,70 @@ "source_location": "L21" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_1", - "label": "In-memory library of loaded cells \u2014 the backend's source of truth. For a\u2026", + "id": "src_cellpy_simple_gui_core_library_rationale_300", + "label": "Return the process-wide library singleton.", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "rationale", - "norm_label": "in-memory library of loaded cells \u2014 the backend's source of truth. for a...", + "norm_label": "return the process-wide library singleton.", "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L300" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_1", + "label": "Pydantic domain models shared by the core, the API and (as JSON) the UI.", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "pydantic domain models shared by the core, the api and (as json) the ui.", + "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_300", - "label": "Return the process-wide library singleton.", + "id": "src_cellpy_simple_gui_core_models_rationale_290", + "label": "Raw traces annotated with step/cycle information \u2014 developer mode. Cycle-\u2026", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "rationale", - "norm_label": "return the process-wide library singleton.", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L300" + "norm_label": "raw traces annotated with step/cycle information \u2014 developer mode. cycle-...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L290" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_304", + "label": "A plot spec plus the desired file format.", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "a plot spec plus the desired file format.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L304" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_314", + "label": "Optional explicit cell ids for library-cell export (default = selected).", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "optional explicit cell ids for library-cell export (default = selected).", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L314" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_343", + "label": "Expand typed paths / globs without loading anything (#136 staged list).", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "expand typed paths / globs without loading anything (#136 staged list).", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L343" }, { "id": "src_cellpy_simple_gui_core_models_rationale_350", @@ -44282,6 +44523,17 @@ "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L350" }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_359", + "label": "Import one or more raw instrument files with shared metadata.", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "import one or more raw instrument files with shared metadata.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L359" + }, { "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_10_risks_open_questions", "label": "10. Risks & open questions", @@ -44427,165 +44679,118 @@ "source_location": "L127" }, { - "id": "issueflows_03_solved_issues_issue28_plan_prior_art", - "label": "Prior art", + "id": "e2e", + "label": "e2e", "_origin": "ast", - "community": 10, - "community_name": "export_bytes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L15" + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "e2e", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cellpy_delegation_inventory_issue_52", - "label": "cellpy delegation inventory (issue #52)", + "id": "src_cellpy_simple_gui_web_static_js_app", + "label": "app.js", "_origin": "ast", - "community": 10, - "community_name": "export_bytes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cellpy delegation inventory (issue #52)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "app.js", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cycles_pane_curve_kinds_95", - "label": "Cycles pane curve kinds (#95)", + "id": "src_cellpy_simple_gui_web_static_js_app_plotly_config", + "label": "PLOTLY_CONFIG", "_origin": "ast", - "community": 10, - "community_name": "export_bytes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cycles pane curve kinds (#95)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L140" + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "plotly_config", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L29" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_incremental_analysis_ica_dva", - "label": "Incremental analysis (ICA / DVA)", + "id": "src_cellpy_simple_gui_web_static_js_app_recent_kinds", + "label": "RECENT_KINDS", "_origin": "ast", - "community": 10, - "community_name": "export_bytes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "incremental analysis (ica / dva)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L102" + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "recent_kinds", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L44" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_raw_data_views_developer_mode", - "label": "Raw data views (developer mode)", + "id": "tests_test_gui_playwright", + "label": "test_gui_playwright.py", "_origin": "ast", - "community": 10, - "community_name": "export_bytes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "raw data views (developer mode)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L123" + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "test_gui_playwright.py", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_release_gating_note_resolved_for_816_818_819", - "label": "Release-gating note (resolved for #816/#818/#819)", + "id": "tests_test_gui_playwright_py_fixture", + "label": "fixture", "_origin": "ast", - "community": 10, - "community_name": "export_bytes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "release-gating note (resolved for #816/#818/#819)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L11" + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "fixture", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_removed_in_the_2_1_2a2_cleanup", - "label": "Removed in the 2.1.2a2 cleanup", + "id": "issueflows_01_current_issues_issue184_status", + "label": "issue184_status.md", "_origin": "ast", - "community": 10, - "community_name": "export_bytes", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "document", - "node_kind": "heading", - "norm_label": "removed in the 2.1.2a2 cleanup", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L53" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_1441", - "label": "Serialise a tidy polars frame in-memory. Returns (bytes, media_type).", - "_origin": "ast", - "community": 10, - "community_name": "export_bytes", - "file_type": "rationale", - "norm_label": "serialise a tidy polars frame in-memory. returns (bytes, media_type).", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1441" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_1458", - "label": "Serialise a collection's tidy frame in-memory. Returns (bytes, media_type).", - "_origin": "ast", - "community": 10, - "community_name": "export_bytes", - "file_type": "rationale", - "norm_label": "serialise a collection's tidy frame in-memory. returns (bytes, media_type).", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1458" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_471", - "label": "Collect summaries, optionally under a family's own :class:`SummaryOptions`.\u2026", - "_origin": "ast", - "community": 10, - "community_name": "export_bytes", - "file_type": "rationale", - "norm_label": "collect summaries, optionally under a family's own :class:`summaryoptions`....", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L471" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_654", - "label": "Fold theme tokens into cellpy #801 knobs before ``collection.plot``.", - "_origin": "ast", - "community": 10, - "community_name": "export_bytes", - "file_type": "rationale", - "norm_label": "fold theme tokens into cellpy #801 knobs before ``collection.plot``.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L654" + "node_kind": "page", + "norm_label": "issue184_status.md", + "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_location": "L1" }, { - "id": "e2e", - "label": "e2e", + "id": "issueflows_01_current_issues_issue184_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 101, "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "e2e", - "source_file": "", - "source_location": "" + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_location": "L30" }, { - "id": "tests_test_gui_playwright", - "label": "test_gui_playwright.py", + "id": "issueflows_01_current_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", + "label": "Status \u2014 #184 update plots when the Manage cells modal closes", "_origin": "ast", "community": 101, "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "test_gui_playwright.py", - "source_file": "tests/test_gui_playwright.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 #184 update plots when the manage cells modal closes", + "source_file": ".issueflows/01-current-issues/issue184_status.md", "source_location": "L1" }, { - "id": "tests_test_gui_playwright_py_fixture", - "label": "fixture", + "id": "issueflows_01_current_issues_issue184_status_what_s_done", + "label": "What's done", "_origin": "ast", "community": 101, "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "fixture", - "source_file": "", - "source_location": "" + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_location": "L9" }, { "id": "issueflows_03_solved_issues_issue136_plan_files_to_touch", @@ -44643,6 +44848,28 @@ "source_file": "tests/test_gui_playwright.py", "source_location": "L160" }, + { + "id": "tests_test_gui_playwright_rationale_215", + "label": "Stage + load the bundled rate file through the Add cells modal (no network).", + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "rationale", + "norm_label": "stage + load the bundled rate file through the add cells modal (no network).", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L215" + }, + { + "id": "tests_test_gui_playwright_rationale_231", + "label": "Edits inside Manage cells issue no plot request; Close issues exactly one.", + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "rationale", + "norm_label": "edits inside manage cells issue no plot request; close issues exactly one.", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L231" + }, { "id": "tests_test_gui_playwright_rationale_42", "label": "In-process uvicorn with a fixed CSG_TOKEN (same surface as --server).", @@ -44654,12 +44881,96 @@ "source_file": "tests/test_gui_playwright.py", "source_location": "L42" }, + { + "id": "issueflows_03_solved_issues_issue38_original", + "label": "issue38_original.md", + "_origin": "ast", + "community": 102, + "community_name": "_tidy_facet_annotations", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue38_original.md", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 102, + "community_name": "_tidy_facet_annotations", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L19" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_issue_38_use_cellpy_label_builders_for_summary_cycle_axis_titles", + "label": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "_origin": "ast", + "community": 102, + "community_name": "_tidy_facet_annotations", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #38: use cellpy label builders for summary/cycle axis titles", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 102, + "community_name": "_tidy_facet_annotations", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_out_of_scope", + "label": "Out of scope", + "_origin": "ast", + "community": 102, + "community_name": "_tidy_facet_annotations", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L26" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_problem_context", + "label": "Problem / context", + "_origin": "ast", + "community": 102, + "community_name": "_tidy_facet_annotations", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 102, + "community_name": "_tidy_facet_annotations", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L11" + }, { "id": "issueflows_03_solved_issues_issue38_plan", "label": "issue38_plan.md", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "page", "norm_label": "issue38_plan.md", @@ -44671,7 +44982,7 @@ "label": "Approach", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -44683,7 +44994,7 @@ "label": "Constraints", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -44695,7 +45006,7 @@ "label": "Goal", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -44707,7 +45018,7 @@ "label": "Open questions", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -44719,7 +45030,7 @@ "label": "Plan \u2014 Issue #38: cellpy label builders for axis titles", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "plan \u2014 issue #38: cellpy label builders for axis titles", @@ -44731,7 +45042,7 @@ "label": "Prior art", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", @@ -44743,7 +45054,7 @@ "label": "Test strategy", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -44755,7 +45066,7 @@ "label": "issue72_plan.md", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "page", "norm_label": "issue72_plan.md", @@ -44767,7 +45078,7 @@ "label": "Constraints", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -44779,7 +45090,7 @@ "label": "Files to touch", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -44791,7 +45102,7 @@ "label": "Goal", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -44803,7 +45114,7 @@ "label": "Open questions", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -44815,7 +45126,7 @@ "label": "Plan \u2014 Issue #72: Cycles Mode \u2194 x-axis capacity units", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "plan \u2014 issue #72: cycles mode \u2194 x-axis capacity units", @@ -44827,7 +45138,7 @@ "label": "Test strategy", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -44839,7 +45150,7 @@ "label": "cellpy-delegation-inventory.md", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "page", "norm_label": "cellpy-delegation-inventory.md", @@ -44851,13 +45162,24 @@ "label": "plot-appearance.md", "_origin": "ast", "community": 102, - "community_name": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "community_name": "_tidy_facet_annotations", "file_type": "document", "node_kind": "page", "norm_label": "plot-appearance.md", "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_1186", + "label": "Best-effort cleanup if a ``variable=\u2026`` strip slipped past cellpy. cellpy\u2026", + "_origin": "ast", + "community": 102, + "community_name": "_tidy_facet_annotations", + "file_type": "rationale", + "norm_label": "best-effort cleanup if a ``variable=...`` strip slipped past cellpy. cellpy...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1186" + }, { "id": "tests_test_core", "label": "test_core.py", @@ -44902,53 +45224,6 @@ "source_file": "", "source_location": "" }, - { - "id": "tests_test_core_py_skipif", - "label": "skipif", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "skipif", - "source_file": "", - "source_location": "" - }, - { - "id": "issueflows_03_solved_issues_issue27_status", - "label": "issue27_status.md", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue27_status.md", - "source_file": ".issueflows/03-solved-issues/issue27_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue27_status_issue_27_status_iterative_fixes_group_average_checkbox", - "label": "Issue #27 status \u2014 Iterative fixes: group average checkbox", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #27 status \u2014 iterative fixes: group average checkbox", - "source_file": ".issueflows/03-solved-issues/issue27_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue27_status_iterative_fixes_log", - "label": "Iterative fixes log", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "iterative fixes log", - "source_file": ".issueflows/03-solved-issues/issue27_status.md", - "source_location": "L7" - }, { "id": "tests_test_core_rationale_1", "label": "Unit tests for the core layer (no web server involved).", @@ -45026,50 +45301,6 @@ "source_file": "tests/test_core.py", "source_location": "L1100" }, - { - "id": "tests_test_core_rationale_1152", - "label": "Two demo cells in one group (so Group avg averages) plus a singleton.", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "two demo cells in one group (so group avg averages) plus a singleton.", - "source_file": "tests/test_core.py", - "source_location": "L1152" - }, - { - "id": "tests_test_core_rationale_1168", - "label": "Layout y-axis whose title contains ``needle`` (case-insensitive).", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "layout y-axis whose title contains ``needle`` (case-insensitive).", - "source_file": "tests/test_core.py", - "source_location": "L1168" - }, - { - "id": "tests_test_core_rationale_1181", - "label": "Group avg + Spread must honour per-panel y_ranges (#186). The spread hover\u2026", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "group avg + spread must honour per-panel y_ranges (#186). the spread hover...", - "source_file": "tests/test_core.py", - "source_location": "L1181" - }, - { - "id": "tests_test_core_rationale_1218", - "label": "A blank end is filled from the spread panel's own extent (#186).", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "a blank end is filled from the spread panel's own extent (#186).", - "source_file": "tests/test_core.py", - "source_location": "L1218" - }, { "id": "tests_test_core_rationale_1250", "label": "Y-axis title texts ordered by Plotly domain (top facet first).", @@ -45191,17 +45422,6 @@ "source_file": "tests/test_core.py", "source_location": "L1598" }, - { - "id": "tests_test_core_rationale_1626", - "label": "A family the data cannot support must say so, not render blank (#97).", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "a family the data cannot support must say so, not render blank (#97).", - "source_file": "tests/test_core.py", - "source_location": "L1626" - }, { "id": "tests_test_core_rationale_1642", "label": "cellpy 2.1.2 tags families by entry point \u2014 raw/ica/dva have own tabs.", @@ -45213,17 +45433,6 @@ "source_file": "tests/test_core.py", "source_location": "L1642" }, - { - "id": "tests_test_core_rationale_1649", - "label": "#106 / cellpy #868: collect-time columns must not read as missing data.\u2026", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "#106 / cellpy #868: collect-time columns must not read as missing data....", - "source_file": "tests/test_core.py", - "source_location": "L1649" - }, { "id": "tests_test_core_rationale_1676", "label": "The options handed to collect come from the family itself (cellpy #868).", @@ -45312,6 +45521,17 @@ "source_file": "tests/test_core.py", "source_location": "L1787" }, + { + "id": "tests_test_core_rationale_1846", + "label": "cycle_info_plot returns None for plotly unless get_axes=True.", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "cycle_info_plot returns none for plotly unless get_axes=true.", + "source_file": "tests/test_core.py", + "source_location": "L1846" + }, { "id": "tests_test_core_rationale_1876", "label": "cellpy #846: prefer refresh_after over a full make_summary rebuild.", @@ -45334,6 +45554,17 @@ "source_file": "tests/test_core.py", "source_location": "L1901" }, + { + "id": "tests_test_core_rationale_201", + "label": "#95: the Cycles pane draws dQ/dV and dV/dQ across the same selection.", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "#95: the cycles pane draws dq/dv and dv/dq across the same selection.", + "source_file": "tests/test_core.py", + "source_location": "L201" + }, { "id": "tests_test_core_rationale_214", "label": "``layout=\"film\"`` must draw a density plot, whoever is responsible. This used\u2026", @@ -45346,147 +45577,147 @@ "source_location": "L214" }, { - "id": "tests_test_core_rationale_391", - "label": "Cycles Mode must drive x-axis capacity units (#72).", + "id": "tests_test_core_rationale_247", + "label": "Exported data must be what the chart shows, not always the curves (#95).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "cycles mode must drive x-axis capacity units (#72).", + "norm_label": "exported data must be what the chart shows, not always the curves (#95).", "source_file": "tests/test_core.py", - "source_location": "L391" + "source_location": "L247" }, { - "id": "tests_test_core_rationale_488", - "label": "Flatten Plotly trace y values (list or binary ``{dtype,bdata}``).", + "id": "tests_test_core_rationale_260", + "label": "Cell-explorer / Cycles-collector x/y range widgets pin Plotly axes.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "flatten plotly trace y values (list or binary ``{dtype,bdata}``).", + "norm_label": "cell-explorer / cycles-collector x/y range widgets pin plotly axes.", "source_file": "tests/test_core.py", - "source_location": "L488" + "source_location": "L260" }, { - "id": "tests_test_core_rationale_533", - "label": "Direction selects the half-cycle (#67/#821); cellpy's ica_plotter owns it.", + "id": "tests_test_core_rationale_283", + "label": "Collector layout also honours axis ranges for export parity.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "direction selects the half-cycle (#67/#821); cellpy's ica_plotter owns it.", + "norm_label": "collector layout also honours axis ranges for export parity.", "source_file": "tests/test_core.py", - "source_location": "L533" + "source_location": "L283" }, { - "id": "tests_test_core_rationale_567", - "label": "Export filter mirrors the chart: charge/discharge slice, \"both\" keeps all.", + "id": "tests_test_core_rationale_301", + "label": "Cycles x/y accept a single end; the other is filled from data.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "export filter mirrors the chart: charge/discharge slice, \"both\" keeps all.", + "norm_label": "cycles x/y accept a single end; the other is filled from data.", "source_file": "tests/test_core.py", - "source_location": "L567" + "source_location": "L301" }, { - "id": "tests_test_core_rationale_612", - "label": "Group avg averages multi-member groups even when a singleton exists. cellpy\u2026", + "id": "tests_test_core_rationale_391", + "label": "Cycles Mode must drive x-axis capacity units (#72).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "group avg averages multi-member groups even when a singleton exists. cellpy...", + "norm_label": "cycles mode must drive x-axis capacity units (#72).", "source_file": "tests/test_core.py", - "source_location": "L612" + "source_location": "L391" }, { - "id": "tests_test_core_rationale_649", - "label": "Avg group + singleton both render on every variable facet (#39/#816). cellpy\u2026", + "id": "tests_test_core_rationale_405", + "label": "Multi-cell collector supports per_cell and per_cycle layouts (#55).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "avg group + singleton both render on every variable facet (#39/#816). cellpy...", + "norm_label": "multi-cell collector supports per_cell and per_cycle layouts (#55).", "source_file": "tests/test_core.py", - "source_location": "L649" + "source_location": "L405" }, { - "id": "tests_test_core_rationale_708", - "label": "Summary y-titles use cellpy label builders with units (#38).", + "id": "tests_test_core_rationale_468", + "label": "Single-cell explorer: a gap is a note, all-missing is an explanation.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "summary y-titles use cellpy label builders with units (#38).", + "norm_label": "single-cell explorer: a gap is a note, all-missing is an explanation.", "source_file": "tests/test_core.py", - "source_location": "L708" + "source_location": "L468" }, { - "id": "tests_test_core_rationale_735", - "label": "Long journal-style labels must not blow up the summary legend (#1).", + "id": "tests_test_core_rationale_488", + "label": "Flatten Plotly trace y values (list or binary ``{dtype,bdata}``).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "long journal-style labels must not blow up the summary legend (#1).", + "norm_label": "flatten plotly trace y values (list or binary ``{dtype,bdata}``).", "source_file": "tests/test_core.py", - "source_location": "L735" + "source_location": "L488" }, { - "id": "tests_test_core_rationale_74", - "label": "Adapter exposes cellpy #800 schema for ingest-form follow-ups (#52).", + "id": "tests_test_core_rationale_533", + "label": "Direction selects the half-cycle (#67/#821); cellpy's ica_plotter owns it.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "adapter exposes cellpy #800 schema for ingest-form follow-ups (#52).", + "norm_label": "direction selects the half-cycle (#67/#821); cellpy's ica_plotter owns it.", "source_file": "tests/test_core.py", - "source_location": "L74" + "source_location": "L533" }, { - "id": "tests_test_core_rationale_765", - "label": "Short labels stay intact; right margin stays modest (#1).", + "id": "tests_test_core_rationale_567", + "label": "Export filter mirrors the chart: charge/discharge slice, \"both\" keeps all.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "short labels stay intact; right margin stays modest (#1).", + "norm_label": "export filter mirrors the chart: charge/discharge slice, \"both\" keeps all.", "source_file": "tests/test_core.py", - "source_location": "L765" + "source_location": "L567" }, { - "id": "tests_test_core_rationale_785", - "label": "Legend shortening must not be skipped if update_layout raises (#1).", + "id": "tests_test_core_rationale_708", + "label": "Summary y-titles use cellpy label builders with units (#38).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "legend shortening must not be skipped if update_layout raises (#1).", + "norm_label": "summary y-titles use cellpy label builders with units (#38).", "source_file": "tests/test_core.py", - "source_location": "L785" + "source_location": "L708" }, { - "id": "tests_test_core_rationale_805", - "label": "Dark theme tokens land on layout (#32).", + "id": "tests_test_core_rationale_74", + "label": "Adapter exposes cellpy #800 schema for ingest-form follow-ups (#52).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "dark theme tokens land on layout (#32).", + "norm_label": "adapter exposes cellpy #800 schema for ingest-form follow-ups (#52).", "source_file": "tests/test_core.py", - "source_location": "L805" + "source_location": "L74" }, { - "id": "tests_test_core_rationale_818", - "label": "safe colorway paints at least one trace from library.PALETTE (#32).", + "id": "tests_test_core_rationale_785", + "label": "Legend shortening must not be skipped if update_layout raises (#1).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "safe colorway paints at least one trace from library.palette (#32).", + "norm_label": "legend shortening must not be skipped if update_layout raises (#1).", "source_file": "tests/test_core.py", - "source_location": "L818" + "source_location": "L785" }, { "id": "tests_test_core_rationale_840", @@ -45499,28 +45730,6 @@ "source_file": "tests/test_core.py", "source_location": "L840" }, - { - "id": "tests_test_core_rationale_877", - "label": "#40: cellpy's spread_plot sets no hovertemplate at all \u2014 restore it. Turning\u2026", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "#40: cellpy's spread_plot sets no hovertemplate at all \u2014 restore it. turning...", - "source_file": "tests/test_core.py", - "source_location": "L877" - }, - { - "id": "tests_test_core_rationale_919", - "label": "No regression: cellpy already gives these paths good hover (#40).", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "no regression: cellpy already gives these paths good hover (#40).", - "source_file": "tests/test_core.py", - "source_location": "L919" - }, { "id": "tests_test_core_rationale_940", "label": "Unpack Plotly figure-json ``y`` (plain list or binary ``bdata`` dict).", @@ -45576,542 +45785,23 @@ "source_file": "tests/test_core.py", "source_location": "L999" }, - { - "id": "dataframe", - "label": "DataFrame", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "dataframe", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_api_routers_ingest_py_get", - "label": "get", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "get", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter", - "label": "cellpy_adapter.py", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "cellpy_adapter.py", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_any", - "label": "Any", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "any", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_core_export_py_path", - "label": "Path", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" - }, - { - "id": "cellpy_painpoints_5_instrument_discovery_logs_a_warning_per_non_loader_module", - "label": "5. \ud83d\udfe0 Instrument discovery logs a WARNING per non-loader module", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "5. \ud83d\udfe0 instrument discovery logs a warning per non-loader module", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L219" - }, - { - "id": "issueflows_03_solved_issues_issue28_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L28" - }, - { - "id": "issueflows_03_solved_issues_issue28_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L50" - }, - { - "id": "issueflows_03_solved_issues_issue28_status", - "label": "issue28_status.md", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue28_status.md", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue28_status_issue_28_status_export_cells_from_manage_cells", - "label": "Issue #28 status \u2014 Export cells from Manage cells", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #28 status \u2014 export cells from manage cells", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue28_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue28_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_1", - "label": "The one and only bridge to cellpy (>= 2.1). Every cellpy import and every\u2026", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "the one and only bridge to cellpy (>= 2.1). every cellpy import and every...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_179", - "label": "Can this machine actually read an Arbin ``.res``? Cheap enough to call on every\u2026", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "can this machine actually read an arbin ``.res``? cheap enough to call on every...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L179" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_530", - "label": "Return the per-cycle summary DataFrame for a cell. Uses the modern\u2026", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "return the per-cycle summary dataframe for a cell. uses the modern...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L530" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_557", - "label": "Return a voltage-capacity curve for one cycle. Columns: ``capacity``,\u2026", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "return a voltage-capacity curve for one cycle. columns: ``capacity``,...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L557" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_61", - "label": "Load one bundled example cell. Returns a ``CellpyCell``. ``kind`` is one of\u2026", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "load one bundled example cell. returns a ``cellpycell``. ``kind`` is one of...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L61" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_718", - "label": "Write a cell to a self-contained ``.cellpy`` file (overwriting).", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "write a cell to a self-contained ``.cellpy`` file (overwriting).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L718" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_725", - "label": "Write a cell via cellpy ``to_excel`` (default sheets / options).", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "write a cell via cellpy ``to_excel`` (default sheets / options).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L725" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_732", - "label": "Write cellpy ``to_csv`` outputs into ``datadir``; return created files.", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "write cellpy ``to_csv`` outputs into ``datadir``; return created files.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L732" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_742", - "label": "Refresh the summary after a physical meta change. cellpy \u22652.1.2a4 exposes\u2026", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "refresh the summary after a physical meta change. cellpy \u22652.1.2a4 exposes...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L742" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_813", - "label": "Update nominal-capacity basis and refresh the summary.", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "update nominal-capacity basis and refresh the summary.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L813" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_85", - "label": "The available instrument loaders (id / label / models / suffixes). Uses\u2026", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "the available instrument loaders (id / label / models / suffixes). uses...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L85" - }, - { - "id": "src_cellpy_simple_gui_core_export_rationale_236", - "label": "Write one cell into ``work``; return (archive_name, path) pairs.", - "_origin": "ast", - "community": 104, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "write one cell into ``work``; return (archive_name, path) pairs.", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L236" - }, - { - "id": "src_cellpy_simple_gui_core_models", - "label": "models.py", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "models.py", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_core_models_py_basemodel", - "label": "BaseModel", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "basemodel", - "source_file": "", - "source_location": "" - }, { "id": "src_cellpy_simple_gui_core_models_py_field_validator", "label": "field_validator", "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "code", "norm_label": "field_validator", "source_file": "", "source_location": "" }, - { - "id": "cellpy_painpoints_29_an_unknown_layout_is_accepted_silently_fixed_in_2_1_3", - "label": "29. \ud83d\udfe0 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "29. \ud83d\udfe0 an unknown `layout=` is accepted silently *(fixed in 2.1.3)*", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L717" - }, - { - "id": "docs_api_reference_the_collection", - "label": "The Collection", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "the collection", - "source_file": "docs/api-reference.md", - "source_location": "L157" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan", - "label": "issue55_plan.md", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue55_plan.md", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L44" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L9" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L74" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_issue_55_plan_cycles_collector_per_cell_per_cycle", - "label": "Issue #55 \u2014 Plan: cycles collector (per cell / per cycle)", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #55 \u2014 plan: cycles collector (per cell / per cycle)", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L98" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L26" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L89" - }, - { - "id": "issueflows_04_designs_and_guides_group_legend_muting", - "label": "group-legend-muting.md", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "group-legend-muting.md", - "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_group_legend_muting_alternatives_considered", - "label": "Alternatives considered", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", - "source_location": "L20" - }, - { - "id": "issueflows_04_designs_and_guides_group_legend_muting_context", - "label": "Context", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", - "source_location": "L3" - }, - { - "id": "issueflows_04_designs_and_guides_group_legend_muting_decision", - "label": "Decision", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", - "source_location": "L9" - }, - { - "id": "issueflows_04_designs_and_guides_group_legend_muting_group_vs_individual_legend_muting_62", - "label": "Group vs individual legend muting (#62)", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "group vs individual legend muting (#62)", - "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", - "source_location": "L1" - }, - { - "id": "skills_cellpy_app_reference_api_reference_the_collection", - "label": "The Collection", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "the collection", - "source_file": "skills/cellpy-app/reference/api-reference.md", - "source_location": "L157" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_1", - "label": "Pydantic domain models shared by the core, the API and (as JSON) the UI.", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "pydantic domain models shared by the core, the api and (as json) the ui.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_125", - "label": "Drives a cellpy ``collect_cycles`` collection. With ``cell_id`` set: one\u2026", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "drives a cellpy ``collect_cycles`` collection. with ``cell_id`` set: one...", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L125" - }, { "id": "src_cellpy_simple_gui_core_models_rationale_169", "label": "One cell and the cycles to draw from it.", "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "rationale", "norm_label": "one cell and the cycles to draw from it.", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -46122,73 +45812,18 @@ "label": "Raw time-series traces for one cell \u2014 developer mode.", "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "rationale", "norm_label": "raw time-series traces for one cell \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L272" }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_290", - "label": "Raw traces annotated with step/cycle information \u2014 developer mode. Cycle-\u2026", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "raw traces annotated with step/cycle information \u2014 developer mode. cycle-...", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L290" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_304", - "label": "A plot spec plus the desired file format.", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "a plot spec plus the desired file format.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L304" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_314", - "label": "Optional explicit cell ids for library-cell export (default = selected).", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "optional explicit cell ids for library-cell export (default = selected).", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L314" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_343", - "label": "Expand typed paths / globs without loading anything (#136 staged list).", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "expand typed paths / globs without loading anything (#136 staged list).", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L343" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_359", - "label": "Import one or more raw instrument files with shared metadata.", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "import one or more raw instrument files with shared metadata.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L359" - }, { "id": "src_cellpy_simple_gui_core_models_rationale_42", "label": "Accept ``[lo, hi]`` with either end optional (blank \u2192 data extent). Both ends\u2026", "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "rationale", "norm_label": "accept ``[lo, hi]`` with either end optional (blank \u2192 data extent). both ends...", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -46199,128 +45834,29 @@ "label": "cellpy #867 landed in 2.1.2: raw_plot bounds the payload via max_points.", "_origin": "ast", "community": 105, - "community_name": "CyclesPlotSpec", + "community_name": "RawPlotSpec", "file_type": "rationale", "norm_label": "cellpy #867 landed in 2.1.2: raw_plot bounds the payload via max_points.", "source_file": "tests/test_core.py", "source_location": "L1812" }, - { - "id": "tests_test_core_rationale_1846", - "label": "cycle_info_plot returns None for plotly unless get_axes=True.", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "cycle_info_plot returns none for plotly unless get_axes=true.", - "source_file": "tests/test_core.py", - "source_location": "L1846" - }, - { - "id": "tests_test_core_rationale_201", - "label": "#95: the Cycles pane draws dQ/dV and dV/dQ across the same selection.", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "#95: the cycles pane draws dq/dv and dv/dq across the same selection.", - "source_file": "tests/test_core.py", - "source_location": "L201" - }, - { - "id": "tests_test_core_rationale_247", - "label": "Exported data must be what the chart shows, not always the curves (#95).", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "exported data must be what the chart shows, not always the curves (#95).", - "source_file": "tests/test_core.py", - "source_location": "L247" - }, - { - "id": "tests_test_core_rationale_260", - "label": "Cell-explorer / Cycles-collector x/y range widgets pin Plotly axes.", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "cell-explorer / cycles-collector x/y range widgets pin plotly axes.", - "source_file": "tests/test_core.py", - "source_location": "L260" - }, - { - "id": "tests_test_core_rationale_283", - "label": "Collector layout also honours axis ranges for export parity.", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "collector layout also honours axis ranges for export parity.", - "source_file": "tests/test_core.py", - "source_location": "L283" - }, - { - "id": "tests_test_core_rationale_301", - "label": "Cycles x/y accept a single end; the other is filled from data.", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "cycles x/y accept a single end; the other is filled from data.", - "source_file": "tests/test_core.py", - "source_location": "L301" - }, - { - "id": "tests_test_core_rationale_405", - "label": "Multi-cell collector supports per_cell and per_cycle layouts (#55).", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "multi-cell collector supports per_cell and per_cycle layouts (#55).", - "source_file": "tests/test_core.py", - "source_location": "L405" - }, - { - "id": "tests_test_core_rationale_468", - "label": "Single-cell explorer: a gap is a note, all-missing is an explanation.", - "_origin": "ast", - "community": 105, - "community_name": "CyclesPlotSpec", - "file_type": "rationale", - "norm_label": "single-cell explorer: a gap is a note, all-missing is an explanation.", - "source_file": "tests/test_core.py", - "source_location": "L468" - }, { "id": "src_cellpy_simple_gui_core_cycle_report", "label": "cycle_report.py", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "cycle_report.py", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_core_export", - "label": "core/export.py", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "core/export.py", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_core_export_py_comparepicks", "label": "ComparePicks", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "comparepicks", "source_file": "", @@ -46331,7 +45867,7 @@ "label": "plotting.py", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "plotting.py", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -46342,54 +45878,18 @@ "label": "ComparePicks", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "code", "norm_label": "comparepicks", "source_file": "", "source_location": "" }, - { - "id": "cellpy_painpoints_16_ica_plotter_direction_gaps_line_plots_both", - "label": "16. \ud83d\udfe2 ICA plotter direction gaps (line plots + `both`)", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "document", - "node_kind": "heading", - "norm_label": "16. \ud83d\udfe2 ica plotter direction gaps (line plots + `both`)", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L400" - }, - { - "id": "issueflows_03_solved_issues_issue169_plan_2_core_core_collect_py", - "label": "2. Core \u2014 `core/collect.py`", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "document", - "node_kind": "heading", - "norm_label": "2. core \u2014 `core/collect.py`", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L113" - }, - { - "id": "issueflows_03_solved_issues_issue169_plan_3_core_core_plotting_py", - "label": "3. Core \u2014 `core/plotting.py`", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "document", - "node_kind": "heading", - "norm_label": "3. core \u2014 `core/plotting.py`", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L136" - }, { "id": "issueflows_03_solved_issues_issue169_plan_4_api_api_routers_plots_py_api_routers_export_py_core_export_py", "label": "4. API \u2014 `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "4. api \u2014 `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`", @@ -46401,7 +45901,7 @@ "label": "Files to touch", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -46413,7 +45913,7 @@ "label": "Test strategy", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -46425,7 +45925,7 @@ "label": "2026-10-02 \u2014 built", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "2026-10-02 \u2014 built", @@ -46437,7 +45937,7 @@ "label": "issue175_plan.md", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "page", "norm_label": "issue175_plan.md", @@ -46449,7 +45949,7 @@ "label": "1. Core \u2014 a small, pure cycle report (`core/cycle_report.py`, new)", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "1. core \u2014 a small, pure cycle report (`core/cycle_report.py`, new)", @@ -46461,7 +45961,7 @@ "label": "2. `collect.py`", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "2. `collect.py`", @@ -46473,7 +45973,7 @@ "label": "3. `plotting.py`", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "3. `plotting.py`", @@ -46485,7 +45985,7 @@ "label": "5. Docs", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "5. docs", @@ -46497,7 +45997,7 @@ "label": "Approach", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -46509,7 +46009,7 @@ "label": "Constraints", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -46521,7 +46021,7 @@ "label": "Files to touch", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -46533,7 +46033,7 @@ "label": "Goal", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -46545,7 +46045,7 @@ "label": "Open questions", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -46557,7 +46057,7 @@ "label": "Plan \u2014 #175 missing or bad cycles not reported", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "plan \u2014 #175 missing or bad cycles not reported", @@ -46569,7 +46069,7 @@ "label": "Test strategy", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -46581,7 +46081,7 @@ "label": "What happens today (reproduced against the running server)", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "what happens today (reproduced against the running server)", @@ -46593,7 +46093,7 @@ "label": "issue175_status.md", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "page", "norm_label": "issue175_status.md", @@ -46605,7 +46105,7 @@ "label": "Remaining work", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -46617,7 +46117,7 @@ "label": "Status \u2014 #175 missing or bad cycles not reported", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "status \u2014 #175 missing or bad cycles not reported", @@ -46629,7 +46129,7 @@ "label": "What's done", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", @@ -46637,128 +46137,69 @@ "source_location": "L10" }, { - "id": "issueflows_04_designs_and_guides_compare_cells", - "label": "compare-cells.md", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "document", - "node_kind": "page", - "norm_label": "compare-cells.md", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_compare_cells_addendum_missing_unreadable_cycles_are_reported_175", - "label": "Addendum \u2014 missing / unreadable cycles are reported (#175)", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "document", - "node_kind": "heading", - "norm_label": "addendum \u2014 missing / unreadable cycles are reported (#175)", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L62" - }, - { - "id": "issueflows_04_designs_and_guides_compare_cells_alternatives_considered", - "label": "Alternatives considered", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "document", - "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L42" - }, - { - "id": "issueflows_04_designs_and_guides_compare_cells_compare_cells_169", - "label": "Compare cells (#169)", + "id": "issueflows_03_solved_issues_issue72_plan_approach", + "label": "Approach", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", - "norm_label": "compare cells (#169)", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L1" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "source_location": "L32" }, { - "id": "issueflows_04_designs_and_guides_compare_cells_context", - "label": "Context", + "id": "issueflows_03_solved_issues_issue72_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L3" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "source_location": "L16" }, { - "id": "issueflows_04_designs_and_guides_compare_cells_decision", - "label": "Decision", + "id": "issueflows_04_designs_and_guides_compare_cells_addendum_missing_unreadable_cycles_are_reported_175", + "label": "Addendum \u2014 missing / unreadable cycles are reported (#175)", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "document", "node_kind": "heading", - "norm_label": "decision", + "norm_label": "addendum \u2014 missing / unreadable cycles are reported (#175)", "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L12" + "source_location": "L62" }, { - "id": "issueflows_04_designs_and_guides_compare_cells_gotcha_recorded", - "label": "Gotcha recorded", + "id": "src_cellpy_simple_gui_core_collect_rationale_1206", + "label": "Which cell a per-cell facet trace belongs to. Plotly Express writes\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", - "file_type": "document", - "node_kind": "heading", - "norm_label": "gotcha recorded", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L53" + "community_name": "plotting.py", + "file_type": "rationale", + "norm_label": "which cell a per-cell facet trace belongs to. plotly express writes...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1206" }, { "id": "src_cellpy_simple_gui_core_collect_rationale_1265", "label": "Fold a cellpy ``per_cell`` facet figure onto one axis pair (#169). cellpy's\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "fold a cellpy ``per_cell`` facet figure onto one axis pair (#169). cellpy's...", "source_file": "src/cellpy_simple_gui/core/collect.py", "source_location": "L1265" }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_536", - "label": "Collect DVA (dV/dQ) curves \u2014 the sibling of :func:`ica_collection`. cellpy\u2026", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "collect dva (dv/dq) curves \u2014 the sibling of :func:`ica_collection`. cellpy...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L536" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_550", - "label": "Filter a collected ICA frame to one half-cycle for **export**. Mirrors what\u2026", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "filter a collected ica frame to one half-cycle for **export**. mirrors what...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L550" - }, { "id": "src_cellpy_simple_gui_core_collect_rationale_579", "label": "Keep only the ``(cell label, cycle)`` rows in ``pairs`` (#169). cellpy collects\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "keep only the ``(cell label, cycle)`` rows in ``pairs`` (#169). cellpy collects...", "source_file": "src/cellpy_simple_gui/core/collect.py", @@ -46769,40 +46210,40 @@ "label": "The ``(cell label, cycle)`` pairs that actually have rows (#175). The mirror of\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "the ``(cell label, cycle)`` pairs that actually have rows (#175). the mirror of...", "source_file": "src/cellpy_simple_gui/core/collect.py", "source_location": "L614" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_66", - "label": "The ``cell`` label each record gets in a collected frame, in order. This is the\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_902", + "label": "Carry user-facing notes in ``layout.meta.warnings`` (#175). Plotly's ``meta``\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", - "norm_label": "the ``cell`` label each record gets in a collected frame, in order. this is the...", + "norm_label": "carry user-facing notes in ``layout.meta.warnings`` (#175). plotly's ``meta``...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L66" + "source_location": "L902" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_86", - "label": "Build a cellpy ``Batch`` from library records (labels/groups/selection).", + "id": "src_cellpy_simple_gui_core_collect_rationale_954", + "label": "Raw traces annotated with step/cycle info, via cellpy's ``cycle_info_plot``.\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", - "norm_label": "build a cellpy ``batch`` from library records (labels/groups/selection).", + "norm_label": "raw traces annotated with step/cycle info, via cellpy's ``cycle_info_plot``....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L86" + "source_location": "L954" }, { "id": "src_cellpy_simple_gui_core_cycle_report_rationale_1", "label": "Say which requested cycles a cell could not deliver (#175). A cell explorer\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "say which requested cycles a cell could not deliver (#175). a cell explorer...", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -46813,7 +46254,7 @@ "label": "``[22, 23, 24, 30]`` \u2192 ``\"22\u201324, 30\"`` (sorted, de-duplicated).", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "``[22, 23, 24, 30]`` \u2192 ``\"22\u201324, 30\"`` (sorted, de-duplicated).", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -46824,7 +46265,7 @@ "label": "What one cell could not deliver for a request.", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "what one cell could not deliver for a request.", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -46835,84 +46276,29 @@ "label": "One report per cell that lost at least one requested cycle. ``requested`` maps\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "one report per cell that lost at least one requested cycle. ``requested`` maps...", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", "source_location": "L78" }, - { - "id": "src_cellpy_simple_gui_core_export_rationale_1", - "label": "Data + static-figure export. Data path: cellpy collections \u2192 csv / xlsx /\u2026", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "data + static-figure export. data path: cellpy collections \u2192 csv / xlsx /...", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_core_export_rationale_114", "label": "Rows for exactly the picked ``(cell, cycle)`` pairs the chart shows (#169).", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "rows for exactly the picked ``(cell, cycle)`` pairs the chart shows (#169).", "source_file": "src/cellpy_simple_gui/core/export.py", "source_location": "L114" }, - { - "id": "src_cellpy_simple_gui_core_export_rationale_169", - "label": "Render Plotly figure JSON to static image bytes (requires kaleido). Delegates\u2026", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "render plotly figure json to static image bytes (requires kaleido). delegates...", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L169" - }, - { - "id": "src_cellpy_simple_gui_core_export_rationale_214", - "label": "Stable, filesystem-safe stems; disambiguate duplicates with ``_2``, \u2026", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "stable, filesystem-safe stems; disambiguate duplicates with ``_2``, ...", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L214" - }, - { - "id": "src_cellpy_simple_gui_core_export_rationale_256", - "label": "Export library cells via cellpy save/to_csv/to_excel. Returns ``(bytes,\u2026", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "export library cells via cellpy save/to_csv/to_excel. returns ``(bytes,...", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L256" - }, - { - "id": "src_cellpy_simple_gui_core_library_rationale_45", - "label": "A loaded cell plus its mutable, user-editable metadata.", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "a loaded cell plus its mutable, user-editable metadata.", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L45" - }, { "id": "src_cellpy_simple_gui_core_models_rationale_181", "label": "Several cells, each with its own cycles, in one figure (#169). cellpy collects\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "several cells, each with its own cycles, in one figure (#169). cellpy collects...", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -46923,29 +46309,18 @@ "label": "Every ``(cell_id, cycle)`` the spec asks for.", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "every ``(cell_id, cycle)`` the spec asks for.", "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L231" }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_256", - "label": "Differential voltage (dV/dQ vs capacity) for one cell \u2014 developer mode. Same\u2026", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "differential voltage (dv/dq vs capacity) for one cell \u2014 developer mode. same...", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L256" - }, { "id": "src_cellpy_simple_gui_core_plotting_rationale_1", "label": "Figure generation \u2014 thin delegation to cellpy's own collect + plotting. We no\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "figure generation \u2014 thin delegation to cellpy's own collect + plotting. we no...", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -46956,7 +46331,7 @@ "label": "Batch label and cycle numbers per record, in record order (#175).", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "batch label and cycle numbers per record, in record order (#175).", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -46967,7 +46342,7 @@ "label": "Empty figure that says *why* nothing was drawn (#175).", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "empty figure that says *why* nothing was drawn (#175).", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -46978,7 +46353,7 @@ "label": "Missing + unreadable cycles for the one-cell explorer views. Only judged for a\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "missing + unreadable cycles for the one-cell explorer views. only judged for a...", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -46989,7 +46364,7 @@ "label": "Empty-figure JSON when *no* record has *any* requested cycle, else None. cellpy\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "empty-figure json when *no* record has *any* requested cycle, else none. cellpy...", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -47000,7 +46375,7 @@ "label": "Collect the picked cells over the *union* of their cycles, then narrow. Shared\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "collect the picked cells over the *union* of their cycles, then narrow. shared...", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -47011,29 +46386,18 @@ "label": "Curves from several cells, each with its own cycles, in one figure (#169).\u2026", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "curves from several cells, each with its own cycles, in one figure (#169)....", "source_file": "src/cellpy_simple_gui/core/plotting.py", "source_location": "L265" }, - { - "id": "src_cellpy_simple_gui_core_plotting_rationale_296", - "label": "Raw time-series traces for one cell \u2014 developer mode.", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "raw time-series traces for one cell \u2014 developer mode.", - "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L296" - }, { "id": "src_cellpy_simple_gui_core_plotting_rationale_309", "label": "Raw traces with step/cycle annotations \u2014 developer mode.", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "raw traces with step/cycle annotations \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -47044,7 +46408,7 @@ "label": "Differential voltage (dV/dQ vs capacity) for one cell \u2014 developer mode.", "_origin": "ast", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "file_type": "rationale", "norm_label": "differential voltage (dv/dq vs capacity) for one cell \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -47135,53 +46499,20 @@ "source_location": "L13" }, { - "id": "tests_test_api_rationale_593", - "label": "One primary button per modal, whatever tab is showing (#136).", + "id": "issueflows_03_solved_issues_issue39_original", + "label": "issue39_original.md", "_origin": "ast", - "community": 110, - "community_name": "_default_visible_hints", - "file_type": "rationale", - "norm_label": "one primary button per modal, whatever tab is showing (#136).", - "source_file": "tests/test_api.py", - "source_location": "L593" + "community": 111, + "community_name": "Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue39_original.md", + "source_file": ".issueflows/03-solved-issues/issue39_original.md", + "source_location": "L1" }, { - "id": "tests_test_api_rationale_605", - "label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor.\u2026", - "_origin": "ast", - "community": 110, - "community_name": "_default_visible_hints", - "file_type": "rationale", - "norm_label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor....", - "source_file": "tests/test_api.py", - "source_location": "L605" - }, - { - "id": "tests_test_api_rationale_647", - "label": "At most four help lines are visible before the user touches anything (#136).\u2026", - "_origin": "ast", - "community": 110, - "community_name": "_default_visible_hints", - "file_type": "rationale", - "norm_label": "at most four help lines are visible before the user touches anything (#136)....", - "source_file": "tests/test_api.py", - "source_location": "L647" - }, - { - "id": "issueflows_03_solved_issues_issue39_original", - "label": "issue39_original.md", - "_origin": "ast", - "community": 111, - "community_name": "Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue39_original.md", - "source_file": ".issueflows/03-solved-issues/issue39_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue39_original_acceptance_criteria", - "label": "Acceptance criteria", + "id": "issueflows_03_solved_issues_issue39_original_acceptance_criteria", + "label": "Acceptance criteria", "_origin": "ast", "community": 111, "community_name": "Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet", @@ -47369,26 +46700,15 @@ "source_location": "L1" }, { - "id": "tests_test_mcp_prototype_rationale_110", - "label": "The trap made visible: fewer points than rows, reported rather than hidden.", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "rationale", - "norm_label": "the trap made visible: fewer points than rows, reported rather than hidden.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L110" - }, - { - "id": "tests_test_mcp_prototype_rationale_210", - "label": "The design doc lists these; drift makes the doc wrong, not the code.", + "id": "tests_test_mcp_prototype_rationale_276", + "label": "Resolving a dotted path is importing it, and the caller is a model. The refusal\u2026", "_origin": "ast", "community": 114, "community_name": "test_mcp_prototype.py", "file_type": "rationale", - "norm_label": "the design doc lists these; drift makes the doc wrong, not the code.", + "norm_label": "resolving a dotted path is importing it, and the caller is a model. the refusal...", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L210" + "source_location": "L276" }, { "id": "tests_test_mcp_prototype_rationale_33", @@ -47401,17 +46721,6 @@ "source_file": "tests/test_mcp_prototype.py", "source_location": "L33" }, - { - "id": "tests_test_mcp_prototype_rationale_78", - "label": "Load -> collect -> render -> export, as a client actually does it.", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "rationale", - "norm_label": "load -> collect -> render -> export, as a client actually does it.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L78" - }, { "id": "tools_gen_llms_txt", "label": "gen_llms_txt.py", @@ -47745,87 +47054,99 @@ "source_location": "L10" }, { - "id": "issueflows_04_designs_and_guides_agent_docs_test_if_you_run_it_again", - "label": "If you run it again", + "id": "tests_test_api", + "label": "test_api.py", "_origin": "ast", - "community": 119, - "community_name": "The cold-context agent test", - "file_type": "document", - "node_kind": "heading", - "norm_label": "if you run it again", - "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", - "source_location": "L102" + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_api.py", + "source_file": "tests/test_api.py", + "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_agent_docs_test_protocol", - "label": "Protocol", + "id": "tests_test_api_py_essential", + "label": "essential", "_origin": "ast", - "community": 119, - "community_name": "The cold-context agent test", - "file_type": "document", - "node_kind": "heading", - "norm_label": "protocol", - "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", - "source_location": "L10" + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "essential", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_04_designs_and_guides_agent_docs_test_results", - "label": "Results", + "id": "issueflows_03_solved_issues_issue136_original_acceptance_criteria", + "label": "Acceptance criteria", "_origin": "ast", - "community": 119, - "community_name": "The cold-context agent test", + "community": 12, + "community_name": "test_api.py", "file_type": "document", "node_kind": "heading", - "norm_label": "results", - "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", - "source_location": "L33" + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue136_original.md", + "source_location": "L87" }, { - "id": "issueflows_04_designs_and_guides_agent_docs_test_the_cold_context_agent_test", - "label": "The cold-context agent test", + "id": "issueflows_03_solved_issues_issue136_plan_constraints", + "label": "Constraints", "_origin": "ast", - "community": 119, - "community_name": "The cold-context agent test", + "community": 12, + "community_name": "test_api.py", "file_type": "document", "node_kind": "heading", - "norm_label": "the cold-context agent test", - "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", - "source_location": "L1" + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L15" }, { - "id": "issueflows_04_designs_and_guides_agent_docs_test_what_the_test_found", - "label": "What the test found", + "id": "issueflows_03_solved_issues_issue175_plan_4_ui_app_js_index_html_app_css", + "label": "4. UI (`app.js`, `index.html`, `app.css`)", "_origin": "ast", - "community": 119, - "community_name": "The cold-context agent test", + "community": 12, + "community_name": "test_api.py", "file_type": "document", "node_kind": "heading", - "norm_label": "what the test found", - "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", - "source_location": "L52" + "norm_label": "4. ui (`app.js`, `index.html`, `app.css`)", + "source_file": ".issueflows/03-solved-issues/issue175_plan.md", + "source_location": "L110" }, { - "id": "tests_test_guides_rationale_50", - "label": "Claims about broken upstream behaviour need checking too. This was found the\u2026", + "id": "issueflows_03_solved_issues_issue31_status", + "label": "issue31_status.md", "_origin": "ast", - "community": 119, - "community_name": "The cold-context agent test", - "file_type": "rationale", - "norm_label": "claims about broken upstream behaviour need checking too. this was found the...", - "source_file": "tests/test_guides.py", - "source_location": "L50" + "community": 12, + "community_name": "test_api.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue31_status.md", + "source_file": ".issueflows/03-solved-issues/issue31_status.md", + "source_location": "L1" }, { - "id": "tests_test_api", - "label": "test_api.py", + "id": "issueflows_03_solved_issues_issue31_status_issue_31_status_iterative_fixes_export_download_location", + "label": "Issue #31 status \u2014 Iterative fixes: export download location", "_origin": "ast", "community": 12, "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_api.py", - "source_file": "tests/test_api.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #31 status \u2014 iterative fixes: export download location", + "source_file": ".issueflows/03-solved-issues/issue31_status.md", "source_location": "L1" }, + { + "id": "issueflows_03_solved_issues_issue31_status_iterative_fixes_log", + "label": "Iterative fixes log", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "iterative fixes log", + "source_file": ".issueflows/03-solved-issues/issue31_status.md", + "source_location": "L7" + }, { "id": "tests_test_api_rationale_1", "label": "Integration tests for the FastAPI layer using TestClient.", @@ -47892,6 +47213,72 @@ "source_file": "tests/test_api.py", "source_location": "L329" }, + { + "id": "tests_test_api_rationale_454", + "label": "A syntax error in app.js breaks the whole UI while Python tests stay green.\u2026", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "a syntax error in app.js breaks the whole ui while python tests stay green....", + "source_file": "tests/test_api.py", + "source_location": "L454" + }, + { + "id": "tests_test_api_rationale_475", + "label": "Every x-model in the template must exist in the component, or Alpine throws.\u2026", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "every x-model in the template must exist in the component, or alpine throws....", + "source_file": "tests/test_api.py", + "source_location": "L475" + }, + { + "id": "tests_test_api_rationale_524", + "label": "Every state key, getter and method declared at the top level of app().", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "every state key, getter and method declared at the top level of app().", + "source_file": "tests/test_api.py", + "source_location": "L524" + }, + { + "id": "tests_test_api_rationale_540", + "label": "Identifiers an Alpine expression reads from the component scope. Property\u2026", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "identifiers an alpine expression reads from the component scope. property...", + "source_file": "tests/test_api.py", + "source_location": "L540" + }, + { + "id": "tests_test_api_rationale_562", + "label": "Every ``@click`` / ``x-show`` in the template resolves in the component. The\u2026", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "every ``@click`` / ``x-show`` in the template resolves in the component. the...", + "source_file": "tests/test_api.py", + "source_location": "L562" + }, + { + "id": "tests_test_api_rationale_593", + "label": "One primary button per modal, whatever tab is showing (#136).", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "one primary button per modal, whatever tab is showing (#136).", + "source_file": "tests/test_api.py", + "source_location": "L593" + }, { "id": "tests_test_api_rationale_60", "label": "TestClient has no pywebview window \u2014 same as --server mode.", @@ -47903,6 +47290,105 @@ "source_file": "tests/test_api.py", "source_location": "L60" }, + { + "id": "tests_test_api_rationale_605", + "label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor.\u2026", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor....", + "source_file": "tests/test_api.py", + "source_location": "L605" + }, + { + "id": "tests_test_api_rationale_647", + "label": "At most four help lines are visible before the user touches anything (#136).\u2026", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "at most four help lines are visible before the user touches anything (#136)....", + "source_file": "tests/test_api.py", + "source_location": "L647" + }, + { + "id": "tests_test_api_rationale_671", + "label": "Make ``import webview`` fail, as it would on a server-only install.", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "make ``import webview`` fail, as it would on a server-only install.", + "source_file": "tests/test_api.py", + "source_location": "L671" + }, + { + "id": "tests_test_api_rationale_681", + "label": "A server-only install must serve the whole app (#118). pywebview moved to the\u2026", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "a server-only install must serve the whole app (#118). pywebview moved to the...", + "source_file": "tests/test_api.py", + "source_location": "L681" + }, + { + "id": "tests_test_api_rationale_700", + "label": "The two endpoints that genuinely need a window fail clearly, not with a 500.", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "the two endpoints that genuinely need a window fail clearly, not with a 500.", + "source_file": "tests/test_api.py", + "source_location": "L700" + }, + { + "id": "tests_test_api_rationale_712", + "label": "Falling back to the browser should say what to install, not raise ImportError.", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "falling back to the browser should say what to install, not raise importerror.", + "source_file": "tests/test_api.py", + "source_location": "L712" + }, + { + "id": "tests_test_api_rationale_74", + "label": "The config panel gets sections + provenance, and never a secrets section.", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "the config panel gets sections + provenance, and never a secrets section.", + "source_file": "tests/test_api.py", + "source_location": "L74" + }, + { + "id": "tests_test_api_rationale_746", + "label": "The blast radius of the old behaviour was the host, not the app (#120).", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "the blast radius of the old behaviour was the host, not the app (#120).", + "source_file": "tests/test_api.py", + "source_location": "L746" + }, + { + "id": "tests_test_api_rationale_762", + "label": "Loading is a job, so the refusal comes back as an error, not a status.", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "loading is a job, so the refusal comes back as an error, not a status.", + "source_file": "tests/test_api.py", + "source_location": "L762" + }, { "id": "tests_test_api_rationale_797", "label": "What the staged list shows is exactly what Load would take.", @@ -48163,114 +47649,6 @@ "source_file": ".issueflows/04-designs-and-guides/test-registry.md", "source_location": "L1" }, - { - "id": "docs_api_reference_attributes_worth_knowing", - "label": "Attributes worth knowing", - "_origin": "ast", - "community": 124, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "attributes worth knowing", - "source_file": "docs/api-reference.md", - "source_location": "L277" - }, - { - "id": "docs_api_reference_cellpy_api_surface", - "label": "cellpy API surface", - "_origin": "ast", - "community": 124, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cellpy api surface", - "source_file": "docs/api-reference.md", - "source_location": "L1" - }, - { - "id": "docs_api_reference_cells_into_a_collection", - "label": "Cells into a Collection", - "_origin": "ast", - "community": 124, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cells into a collection", - "source_file": "docs/api-reference.md", - "source_location": "L104" - }, - { - "id": "docs_api_reference_collect_options", - "label": "Collect options", - "_origin": "ast", - "community": 124, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "collect options", - "source_file": "docs/api-reference.md", - "source_location": "L138" - }, - { - "id": "docs_api_reference_figures_to_bytes", - "label": "Figures to bytes", - "_origin": "ast", - "community": 124, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "figures to bytes", - "source_file": "docs/api-reference.md", - "source_location": "L229" - }, - { - "id": "docs_api_reference_loading", - "label": "Loading", - "_origin": "ast", - "community": 124, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "loading", - "source_file": "docs/api-reference.md", - "source_location": "L16" - }, - { - "id": "docs_api_reference_one_cell", - "label": "One cell", - "_origin": "ast", - "community": 124, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "one cell", - "source_file": "docs/api-reference.md", - "source_location": "L70" - }, - { - "id": "docs_api_reference_single_cell_plots", - "label": "Single-cell plots", - "_origin": "ast", - "community": 124, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "single-cell plots", - "source_file": "docs/api-reference.md", - "source_location": "L210" - }, - { - "id": "docs_api_reference_the_plot_registry", - "label": "The plot registry", - "_origin": "ast", - "community": 124, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "the plot registry", - "source_file": "docs/api-reference.md", - "source_location": "L186" - }, { "id": "cursor_skills_iflow_archive_skill", "label": "iflow-archive/SKILL.md", @@ -48671,6 +48049,18 @@ "source_file": ".cursor/skills/iflow/SKILL.md", "source_location": "L36" }, + { + "id": "docs_deployment", + "label": "deployment.md", + "_origin": "ast", + "community": 131, + "community_name": "Deploying cellpy simple GUI as a server", + "file_type": "document", + "node_kind": "page", + "norm_label": "deployment.md", + "source_file": "docs/deployment.md", + "source_location": "L1" + }, { "id": "docs_deployment_behind_a_reverse_proxy", "label": "Behind a reverse proxy", @@ -48863,6 +48253,90 @@ "source_file": "docs/deployment.md", "source_location": "L9" }, + { + "id": "examples_starter_readme", + "label": "starter/README.md", + "_origin": "ast", + "community": 131, + "community_name": "Deploying cellpy simple GUI as a server", + "file_type": "document", + "node_kind": "page", + "norm_label": "starter/readme.md", + "source_file": "examples/starter/README.md", + "source_location": "L1" + }, + { + "id": "examples_starter_readme_adding_a_plot", + "label": "Adding a plot", + "_origin": "ast", + "community": 131, + "community_name": "Deploying cellpy simple GUI as a server", + "file_type": "document", + "node_kind": "heading", + "norm_label": "adding a plot", + "source_file": "examples/starter/README.md", + "source_location": "L56" + }, + { + "id": "examples_starter_readme_cellpy_starter_app", + "label": "cellpy starter app", + "_origin": "ast", + "community": 131, + "community_name": "Deploying cellpy simple GUI as a server", + "file_type": "document", + "node_kind": "heading", + "norm_label": "cellpy starter app", + "source_file": "examples/starter/README.md", + "source_location": "L1" + }, + { + "id": "examples_starter_readme_honest_limitations", + "label": "Honest limitations", + "_origin": "ast", + "community": 131, + "community_name": "Deploying cellpy simple GUI as a server", + "file_type": "document", + "node_kind": "heading", + "norm_label": "honest limitations", + "source_file": "examples/starter/README.md", + "source_location": "L108" + }, + { + "id": "examples_starter_readme_the_four_calls", + "label": "The four calls", + "_origin": "ast", + "community": 131, + "community_name": "Deploying cellpy simple GUI as a server", + "file_type": "document", + "node_kind": "heading", + "norm_label": "the four calls", + "source_file": "examples/starter/README.md", + "source_location": "L35" + }, + { + "id": "examples_starter_readme_what_this_is", + "label": "What this is", + "_origin": "ast", + "community": 131, + "community_name": "Deploying cellpy simple GUI as a server", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what this is", + "source_file": "examples/starter/README.md", + "source_location": "L21" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan", + "label": "issue160_plan.md", + "_origin": "ast", + "community": 131, + "community_name": "Deploying cellpy simple GUI as a server", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue160_plan.md", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L1" + }, { "id": "issueflows_03_solved_issues_issue48_original", "label": "issue48_original.md", @@ -49416,100 +48890,37 @@ "source_location": "L20" }, { - "id": "docs_deployment", - "label": "deployment.md", - "_origin": "ast", - "community": 143, - "community_name": "cellpy starter app", - "file_type": "document", - "node_kind": "page", - "norm_label": "deployment.md", - "source_file": "docs/deployment.md", - "source_location": "L1" - }, - { - "id": "examples_starter_readme", - "label": "starter/README.md", - "_origin": "ast", - "community": 143, - "community_name": "cellpy starter app", - "file_type": "document", - "node_kind": "page", - "norm_label": "starter/readme.md", - "source_file": "examples/starter/README.md", - "source_location": "L1" - }, - { - "id": "examples_starter_readme_adding_a_plot", - "label": "Adding a plot", - "_origin": "ast", - "community": 143, - "community_name": "cellpy starter app", - "file_type": "document", - "node_kind": "heading", - "norm_label": "adding a plot", - "source_file": "examples/starter/README.md", - "source_location": "L56" - }, - { - "id": "examples_starter_readme_cellpy_starter_app", - "label": "cellpy starter app", - "_origin": "ast", - "community": 143, - "community_name": "cellpy starter app", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cellpy starter app", - "source_file": "examples/starter/README.md", - "source_location": "L1" - }, - { - "id": "examples_starter_readme_honest_limitations", - "label": "Honest limitations", - "_origin": "ast", - "community": 143, - "community_name": "cellpy starter app", - "file_type": "document", - "node_kind": "heading", - "norm_label": "honest limitations", - "source_file": "examples/starter/README.md", - "source_location": "L108" - }, - { - "id": "examples_starter_readme_the_four_calls", - "label": "The four calls", + "id": "tests_test_packaging_rationale_320", + "label": "`continuous` is force-moved on every merge to main. If it ever matched the\u2026", "_origin": "ast", "community": 143, - "community_name": "cellpy starter app", - "file_type": "document", - "node_kind": "heading", - "norm_label": "the four calls", - "source_file": "examples/starter/README.md", - "source_location": "L35" + "community_name": "_workflow", + "file_type": "rationale", + "norm_label": "`continuous` is force-moved on every merge to main. if it ever matched the...", + "source_file": "tests/test_packaging.py", + "source_location": "L320" }, { - "id": "examples_starter_readme_what_this_is", - "label": "What this is", + "id": "tests_test_packaging_rationale_350", + "label": "Two callers, one recipe. A second copy of the PyInstaller + smoke-test + ISCC\u2026", "_origin": "ast", "community": 143, - "community_name": "cellpy starter app", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what this is", - "source_file": "examples/starter/README.md", - "source_location": "L21" + "community_name": "_workflow", + "file_type": "rationale", + "norm_label": "two callers, one recipe. a second copy of the pyinstaller + smoke-test + iscc...", + "source_file": "tests/test_packaging.py", + "source_location": "L350" }, { - "id": "issueflows_03_solved_issues_issue160_plan", - "label": "issue160_plan.md", + "id": "tests_test_packaging_rationale_396", + "label": "Both downloadable installers offer a .zip of the same .exe (#173).", "_origin": "ast", "community": 143, - "community_name": "cellpy starter app", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue160_plan.md", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L1" + "community_name": "_workflow", + "file_type": "rationale", + "norm_label": "both downloadable installers offer a .zip of the same .exe (#173).", + "source_file": "tests/test_packaging.py", + "source_location": "L396" }, { "id": "issueflows_03_solved_issues_issue39_plan", @@ -49798,28 +49209,6 @@ "source_file": ".issueflows/03-solved-issues/issue63_original.md", "source_location": "L5" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a_mouse", - "label": ".mouse()", - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".mouse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_readcallback", - "label": "._readCallback()", - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "._readcallback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "issueflows_03_solved_issues_issue27_original", "label": "issue27_original.md", @@ -49981,66 +49370,18 @@ "label": "prompt", "_origin": "ast", "community": 153, - "community_name": "cellpy MCP server (prototype)", + "community_name": "The prompts", "file_type": "code", "norm_label": "prompt", "source_file": "", "source_location": "" }, - { - "id": "examples_mcp_readme_cellpy_mcp_server_prototype", - "label": "cellpy MCP server (prototype)", - "_origin": "ast", - "community": 153, - "community_name": "cellpy MCP server (prototype)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cellpy mcp server (prototype)", - "source_file": "examples/mcp/README.md", - "source_location": "L1" - }, - { - "id": "examples_mcp_readme_four_things_it_does_on_purpose", - "label": "Four things it does on purpose", - "_origin": "ast", - "community": 153, - "community_name": "cellpy MCP server (prototype)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "four things it does on purpose", - "source_file": "examples/mcp/README.md", - "source_location": "L80" - }, - { - "id": "examples_mcp_readme_limits_worth_knowing_before_you_rely_on_it", - "label": "Limits worth knowing before you rely on it", - "_origin": "ast", - "community": 153, - "community_name": "cellpy MCP server (prototype)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "limits worth knowing before you rely on it", - "source_file": "examples/mcp/README.md", - "source_location": "L103" - }, - { - "id": "examples_mcp_readme_run_it", - "label": "Run it", - "_origin": "ast", - "community": 153, - "community_name": "cellpy MCP server (prototype)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "run it", - "source_file": "examples/mcp/README.md", - "source_location": "L14" - }, { "id": "examples_mcp_readme_the_prompts", "label": "The prompts", "_origin": "ast", "community": 153, - "community_name": "cellpy MCP server (prototype)", + "community_name": "The prompts", "file_type": "document", "node_kind": "heading", "norm_label": "the prompts", @@ -50052,7 +49393,7 @@ "label": "Load one cell and produce the standard set of plots.", "_origin": "ast", "community": 153, - "community_name": "cellpy MCP server (prototype)", + "community_name": "The prompts", "file_type": "rationale", "norm_label": "load one cell and produce the standard set of plots.", "source_file": "examples/mcp/server.py", @@ -50063,7 +49404,7 @@ "label": "Set up the notebook template for a new set of experiments.", "_origin": "ast", "community": 153, - "community_name": "cellpy MCP server (prototype)", + "community_name": "The prompts", "file_type": "rationale", "norm_label": "set up the notebook template for a new set of experiments.", "source_file": "examples/mcp/server.py", @@ -50074,7 +49415,7 @@ "label": "Explain a cellpy function: arguments, defaults, and the traps.", "_origin": "ast", "community": 153, - "community_name": "cellpy MCP server (prototype)", + "community_name": "The prompts", "file_type": "rationale", "norm_label": "explain a cellpy function: arguments, defaults, and the traps.", "source_file": "examples/mcp/server.py", @@ -50200,23 +49541,12 @@ "source_file": ".issueflows/03-solved-issues/cycle_status_2026-07-30.md", "source_location": "L17" }, - { - "id": "examples_mcp_server", - "label": "mcp/server.py", - "_origin": "ast", - "community": 157, - "community_name": "mcp/server.py", - "file_type": "code", - "norm_label": "mcp/server.py", - "source_file": "examples/mcp/server.py", - "source_location": "L1" - }, { "id": "examples_mcp_server_py_path", "label": "Path", "_origin": "ast", "community": 157, - "community_name": "mcp/server.py", + "community_name": "_client_config_path", "file_type": "code", "norm_label": "path", "source_file": "", @@ -50227,7 +49557,7 @@ "label": "Where Claude Desktop keeps its MCP server list, per platform.", "_origin": "ast", "community": 157, - "community_name": "mcp/server.py", + "community_name": "_client_config_path", "file_type": "rationale", "norm_label": "where claude desktop keeps its mcp server list, per platform.", "source_file": "examples/mcp/server.py", @@ -50238,67 +49568,12 @@ "label": "Merge a `cellpy` entry into the client config, leaving the rest alone.", "_origin": "ast", "community": 157, - "community_name": "mcp/server.py", + "community_name": "_client_config_path", "file_type": "rationale", "norm_label": "merge a `cellpy` entry into the client config, leaving the rest alone.", "source_file": "examples/mcp/server.py", "source_location": "L1026" }, - { - "id": "examples_mcp_server_rationale_51", - "label": "# NOTE: `mcp.server.mcpserver.Context` \u2014 *not* `mcp.server.context.Context`.", - "_origin": "ast", - "community": 157, - "community_name": "mcp/server.py", - "file_type": "rationale", - "norm_label": "# note: `mcp.server.mcpserver.context` \u2014 *not* `mcp.server.context.context`.", - "source_file": "examples/mcp/server.py", - "source_location": "L51" - }, - { - "id": "examples_mcp_server_rationale_555", - "label": "Every public callable in API_MODULES, built once and kept.", - "_origin": "ast", - "community": 157, - "community_name": "mcp/server.py", - "file_type": "rationale", - "norm_label": "every public callable in api_modules, built once and kept.", - "source_file": "examples/mcp/server.py", - "source_location": "L555" - }, - { - "id": "examples_mcp_server_rationale_658", - "label": "The first line of a docstring that says something. `CellpyCell.set_mass` opens\u2026", - "_origin": "ast", - "community": 157, - "community_name": "mcp/server.py", - "file_type": "rationale", - "norm_label": "the first line of a docstring that says something. `cellpycell.set_mass` opens...", - "source_file": "examples/mcp/server.py", - "source_location": "L658" - }, - { - "id": "examples_mcp_server_rationale_675", - "label": "Find cellpy calls by name, or by what their first docstring line says. Use this\u2026", - "_origin": "ast", - "community": 157, - "community_name": "mcp/server.py", - "file_type": "rationale", - "norm_label": "find cellpy calls by name, or by what their first docstring line says. use this...", - "source_file": "examples/mcp/server.py", - "source_location": "L675" - }, - { - "id": "examples_mcp_server_rationale_9", - "label": "A prototype MCP server for cellpy \u2014 enough to prove or disprove the design.\u2026", - "_origin": "ast", - "community": 157, - "community_name": "mcp/server.py", - "file_type": "rationale", - "norm_label": "a prototype mcp server for cellpy \u2014 enough to prove or disprove the design....", - "source_file": "examples/mcp/server.py", - "source_location": "L9" - }, { "id": "issueflows_03_solved_issues_issue15_original", "label": "issue15_original.md", @@ -50391,6 +49666,18 @@ "source_file": "tests/test_remote_find.py", "source_location": "L47" }, + { + "id": "agents", + "label": "AGENTS.md", + "_origin": "ast", + "community": 161, + "community_name": "Development information", + "file_type": "document", + "node_kind": "page", + "norm_label": "agents.md", + "source_file": "AGENTS.md", + "source_location": "L1" + }, { "id": "agents_branch_hygiene", "label": "Branch hygiene", @@ -50427,6 +49714,18 @@ "source_file": "AGENTS.md", "source_location": "L288" }, + { + "id": "agents_cursor_cloud_specific_instructions", + "label": "Cursor Cloud specific instructions", + "_origin": "ast", + "community": 161, + "community_name": "Development information", + "file_type": "document", + "node_kind": "heading", + "norm_label": "cursor cloud specific instructions", + "source_file": "AGENTS.md", + "source_location": "L345" + }, { "id": "agents_designs_and_guides", "label": "Designs and guides", @@ -50463,6 +49762,54 @@ "source_file": "AGENTS.md", "source_location": "L328" }, + { + "id": "agents_if_the_project_uses_conda", + "label": "If the project uses conda", + "_origin": "ast", + "community": 161, + "community_name": "Development information", + "file_type": "document", + "node_kind": "heading", + "norm_label": "if the project uses conda", + "source_file": "AGENTS.md", + "source_location": "L18" + }, + { + "id": "agents_if_the_project_uses_uv_issue_flow_s_default", + "label": "If the project uses uv (issue-flow's default)", + "_origin": "ast", + "community": 161, + "community_name": "Development information", + "file_type": "document", + "node_kind": "heading", + "norm_label": "if the project uses uv (issue-flow's default)", + "source_file": "AGENTS.md", + "source_location": "L34" + }, + { + "id": "agents_issue_flow_best_practices", + "label": "Issue-flow best practices", + "_origin": "ast", + "community": 161, + "community_name": "Development information", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue-flow best practices", + "source_file": "AGENTS.md", + "source_location": "L2" + }, + { + "id": "agents_issue_tracking_structure", + "label": "Issue tracking structure", + "_origin": "ast", + "community": 161, + "community_name": "Development information", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue tracking structure", + "source_file": "AGENTS.md", + "source_location": "L72" + }, { "id": "agents_knowledge_graph_optional_via_graphify_https_iflow_graphify_net", "label": "Knowledge graph (optional, via [graphify](https://iflow-graphify.net))", @@ -50499,6 +49846,18 @@ "source_file": "AGENTS.md", "source_location": "L259" }, + { + "id": "agents_other_toolchains_plain_venv_pip_poetry", + "label": "Other toolchains (plain venv / pip / poetry)", + "_origin": "ast", + "community": 161, + "community_name": "Development information", + "file_type": "document", + "node_kind": "heading", + "norm_label": "other toolchains (plain venv / pip / poetry)", + "source_file": "AGENTS.md", + "source_location": "L66" + }, { "id": "agents_planning_aids", "label": "Planning aids", @@ -50511,6 +49870,18 @@ "source_file": "AGENTS.md", "source_location": "L274" }, + { + "id": "agents_running_python", + "label": "Running python", + "_origin": "ast", + "community": 161, + "community_name": "Development information", + "file_type": "document", + "node_kind": "heading", + "norm_label": "running python", + "source_file": "AGENTS.md", + "source_location": "L5" + }, { "id": "agents_scripts_that_can_help_us_when_working_on_issues", "label": "Scripts that can help us when working on issues", @@ -50558,6 +49929,77 @@ "source_file": "tools/gen_api_reference.py", "source_location": "L1" }, + { + "id": "issueflows_04_designs_and_guides_agent_docs_test_if_you_run_it_again", + "label": "If you run it again", + "_origin": "ast", + "community": 162, + "community_name": "gen_api_reference.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "if you run it again", + "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", + "source_location": "L102" + }, + { + "id": "issueflows_04_designs_and_guides_agent_docs_test_protocol", + "label": "Protocol", + "_origin": "ast", + "community": 162, + "community_name": "gen_api_reference.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "protocol", + "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", + "source_location": "L10" + }, + { + "id": "issueflows_04_designs_and_guides_agent_docs_test_results", + "label": "Results", + "_origin": "ast", + "community": 162, + "community_name": "gen_api_reference.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "results", + "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", + "source_location": "L33" + }, + { + "id": "issueflows_04_designs_and_guides_agent_docs_test_the_cold_context_agent_test", + "label": "The cold-context agent test", + "_origin": "ast", + "community": 162, + "community_name": "gen_api_reference.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "the cold-context agent test", + "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_agent_docs_test_what_the_test_found", + "label": "What the test found", + "_origin": "ast", + "community": 162, + "community_name": "gen_api_reference.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what the test found", + "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", + "source_location": "L52" + }, + { + "id": "tests_test_guides_rationale_50", + "label": "Claims about broken upstream behaviour need checking too. This was found the\u2026", + "_origin": "ast", + "community": 162, + "community_name": "gen_api_reference.py", + "file_type": "rationale", + "norm_label": "claims about broken upstream behaviour need checking too. this was found the...", + "source_file": "tests/test_guides.py", + "source_location": "L50" + }, { "id": "tools_gen_api_reference_rationale_1", "label": "Generate `docs/api-reference.md` from the installed cellpy (#127). The list of\u2026", @@ -50651,85 +50093,88 @@ "source_location": "L5" }, { - "id": "issueflows_04_designs_and_guides_mcp_server_design_and_a_boundary", - "label": "And a boundary", + "id": "issueflows_03_solved_issues_issue81_plan", + "label": "issue81_plan.md", "_origin": "ast", "community": 164, - "community_name": "describe_api", + "community_name": "Issue #81 \u2014 Plan: consistent CE summary panel order", "file_type": "document", - "node_kind": "heading", - "norm_label": "and a boundary", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L288" + "node_kind": "page", + "norm_label": "issue81_plan.md", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_mcp_server_design_finding_3_the_documentation_is_usually_there_one_hop_away", - "label": "Finding 3 \u2014 the documentation is usually there, one hop away", + "id": "issueflows_03_solved_issues_issue81_plan_approach", + "label": "Approach", "_origin": "ast", "community": 164, - "community_name": "describe_api", + "community_name": "Issue #81 \u2014 Plan: consistent CE summary panel order", "file_type": "document", "node_kind": "heading", - "norm_label": "finding 3 \u2014 the documentation is usually there, one hop away", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L242" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L27" }, { - "id": "issueflows_04_designs_and_guides_mcp_server_design_the_api_family_and_what_it_measured", - "label": "The API family \u2014 and what it measured", + "id": "issueflows_03_solved_issues_issue81_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", "community": 164, - "community_name": "describe_api", + "community_name": "Issue #81 \u2014 Plan: consistent CE summary panel order", "file_type": "document", "node_kind": "heading", - "norm_label": "the api family \u2014 and what it measured", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L222" + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L49" }, { - "id": "issueflows_04_designs_and_guides_mcp_server_design_two_smaller_traps_both_fixed_and_both_tested", - "label": "Two smaller traps, both fixed and both tested", + "id": "issueflows_03_solved_issues_issue81_plan_goal", + "label": "Goal", "_origin": "ast", "community": 164, - "community_name": "describe_api", + "community_name": "Issue #81 \u2014 Plan: consistent CE summary panel order", "file_type": "document", "node_kind": "heading", - "norm_label": "two smaller traps, both fixed and both tested", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L279" + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L3" }, { - "id": "examples_mcp_server_rationale_532", - "label": "Import as far as the path allows, then getattr the rest \u2014 inside API_ROOTS.", + "id": "issueflows_03_solved_issues_issue81_plan_issue_81_plan_consistent_ce_summary_panel_order", + "label": "Issue #81 \u2014 Plan: consistent CE summary panel order", "_origin": "ast", "community": 164, - "community_name": "describe_api", - "file_type": "rationale", - "norm_label": "import as far as the path allows, then getattr the rest \u2014 inside api_roots.", - "source_file": "examples/mcp/server.py", - "source_location": "L532" + "community_name": "Issue #81 \u2014 Plan: consistent CE summary panel order", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #81 \u2014 plan: consistent ce summary panel order", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L1" }, { - "id": "examples_mcp_server_rationale_624", - "label": "Resolve a Sphinx cross-reference in `doc` to the docstring it points at. This\u2026", + "id": "issueflows_03_solved_issues_issue81_plan_open_questions", + "label": "Open questions", "_origin": "ast", "community": 164, - "community_name": "describe_api", - "file_type": "rationale", - "norm_label": "resolve a sphinx cross-reference in `doc` to the docstring it points at. this...", - "source_file": "examples/mcp/server.py", - "source_location": "L624" + "community_name": "Issue #81 \u2014 Plan: consistent CE summary panel order", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L67" }, { - "id": "examples_mcp_server_rationale_711", - "label": "What a cellpy call takes and what it does, from the installed package. `name`\u2026", + "id": "issueflows_03_solved_issues_issue81_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 164, - "community_name": "describe_api", - "file_type": "rationale", - "norm_label": "what a cellpy call takes and what it does, from the installed package. `name`...", - "source_file": "examples/mcp/server.py", - "source_location": "L711" + "community_name": "Issue #81 \u2014 Plan: consistent CE summary panel order", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L59" }, { "id": "issueflows_03_solved_issues_issue47_status", @@ -50905,125 +50350,482 @@ "source_location": "L16" }, { - "id": "packaging_smoke_test", - "label": "smoke_test.py", + "id": "packaging_smoke_test_rationale_55", + "label": "A capability this machine genuinely lacks, as opposed to a broken build.\u2026", "_origin": "ast", "community": 168, - "community_name": "smoke_test.py", - "file_type": "code", - "norm_label": "smoke_test.py", + "community_name": "Client", + "file_type": "rationale", + "norm_label": "a capability this machine genuinely lacks, as opposed to a broken build....", "source_file": "packaging/smoke_test.py", - "source_location": "L1" + "source_location": "L55" }, { - "id": "packaging_smoke_test_py_path", - "label": "Path", + "id": "packaging_smoke_test_rationale_92", + "label": "Talks to an app that is already serving.", + "_origin": "ast", + "community": 168, + "community_name": "Client", + "file_type": "rationale", + "norm_label": "talks to an app that is already serving.", + "source_file": "packaging/smoke_test.py", + "source_location": "L92" + }, + { + "id": "tests_test_mcp_prototype_rationale_210", + "label": "The design doc lists these; drift makes the doc wrong, not the code.", "_origin": "ast", "community": 168, - "community_name": "smoke_test.py", + "community_name": "Client", + "file_type": "rationale", + "norm_label": "the design doc lists these; drift makes the doc wrong, not the code.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L210" + }, + { + "id": "dataframe", + "label": "DataFrame", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "path", + "norm_label": "dataframe", "source_file": "", "source_location": "" }, { - "id": "packaging_smoke_test_rationale_1", - "label": "Smoke-test a built app by driving it over HTTP. Deliberately talks to a\u2026", + "id": "src_cellpy_simple_gui_core_cellpy_adapter", + "label": "cellpy_adapter.py", "_origin": "ast", - "community": 168, - "community_name": "smoke_test.py", - "file_type": "rationale", - "norm_label": "smoke-test a built app by driving it over http. deliberately talks to a...", - "source_file": "packaging/smoke_test.py", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "cellpy_adapter.py", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L1" }, { - "id": "packaging_smoke_test_rationale_141", - "label": "Launches a binary and picks its URL and token out of the startup log.", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_any", + "label": "Any", "_origin": "ast", - "community": 168, - "community_name": "smoke_test.py", - "file_type": "rationale", - "norm_label": "launches a binary and picks its url and token out of the startup log.", - "source_file": "packaging/smoke_test.py", - "source_location": "L141" + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "any", + "source_file": "", + "source_location": "" }, { - "id": "packaging_smoke_test_rationale_55", - "label": "A capability this machine genuinely lacks, as opposed to a broken build.\u2026", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_exception", + "label": "Exception", "_origin": "ast", - "community": 168, - "community_name": "smoke_test.py", - "file_type": "rationale", - "norm_label": "a capability this machine genuinely lacks, as opposed to a broken build....", - "source_file": "packaging/smoke_test.py", - "source_location": "L55" + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "exception", + "source_file": "", + "source_location": "" }, { - "id": "packaging_smoke_test_rationale_92", - "label": "Talks to an app that is already serving.", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_path", + "label": "Path", "_origin": "ast", - "community": 168, - "community_name": "smoke_test.py", - "file_type": "rationale", - "norm_label": "talks to an app that is already serving.", - "source_file": "packaging/smoke_test.py", - "source_location": "L92" + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" }, { - "id": "cellpy_painpoints_1_no_public_collection_from_in_memory_cells", - "label": "1. \ud83d\udd34 No public \"collection from in-memory cells\"", + "id": "src_cellpy_simple_gui_core_export_py_path", + "label": "Path", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_phase_1_this_pr", + "label": "Phase 1 (this PR)", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", - "norm_label": "1. \ud83d\udd34 no public \"collection from in-memory cells\"", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L126" + "norm_label": "phase 1 (this pr)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L130" }, { - "id": "cellpy_painpoints_21_no_selective_summary_rebuild_after_meta_edits", - "label": "21. \ud83d\udfe0 No selective summary rebuild after meta edits", + "id": "issueflows_03_solved_issues_issue160_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", - "norm_label": "21. \ud83d\udfe0 no selective summary rebuild after meta edits", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L529" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L151" }, { - "id": "issueflows_03_solved_issues_issue3_plan_constraints", + "id": "issueflows_03_solved_issues_issue162_plan_constraints", "label": "Constraints", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L7" + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L11" + }, + { + "id": "issueflows_03_solved_issues_issue162_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L141" + }, + { + "id": "issueflows_03_solved_issues_issue162_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L35" + }, + { + "id": "issueflows_03_solved_issues_issue28_status", + "label": "issue28_status.md", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue28_status.md", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue28_status_issue_28_status_export_cells_from_manage_cells", + "label": "Issue #28 status \u2014 Export cells from Manage cells", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #28 status \u2014 export cells from manage cells", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue28_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue28_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L5" }, { "id": "issueflows_03_solved_issues_issue3_plan_prior_art", "label": "Prior art", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", "source_file": ".issueflows/03-solved-issues/issue3_plan.md", "source_location": "L15" }, + { + "id": "issueflows_03_solved_issues_issue41_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue41_status", + "label": "issue41_status.md", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue41_status.md", + "source_file": ".issueflows/03-solved-issues/issue41_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue41_status_progress", + "label": "Progress", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "progress", + "source_file": ".issueflows/03-solved-issues/issue41_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue41_status_status_issue_41", + "label": "Status \u2014 Issue #41", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 issue #41", + "source_file": ".issueflows/03-solved-issues/issue41_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan", + "label": "issue52_plan.md", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue52_plan.md", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L39" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L9" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L95" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_issue_52_plan_bump_cellpy_post4_delegate_app_glue", + "label": "Issue #52 \u2014 Plan: bump cellpy post4 + delegate app glue", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #52 \u2014 plan: bump cellpy post4 + delegate app glue", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L120" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_phase_a_bump_smoke", + "label": "Phase A \u2014 bump + smoke", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase a \u2014 bump + smoke", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L44" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_phase_b_written_inventory", + "label": "Phase B \u2014 written inventory", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase b \u2014 written inventory", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L51" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_phase_c_implement_delegate_now", + "label": "Phase C \u2014 implement \u201cdelegate now\u201d", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase c \u2014 implement \u201cdelegate now\u201d", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L69" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_phase_d_docs", + "label": "Phase D \u2014 docs", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase d \u2014 docs", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L89" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L21" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L112" + }, + { + "id": "issueflows_03_solved_issues_issue52_status", + "label": "issue52_status.md", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue52_status.md", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue52_status_issue_52_status", + "label": "Issue #52 \u2014 Status", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #52 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue52_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue52_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L5" + }, { "id": "issueflows_03_solved_issues_issue69_plan", "label": "issue69_plan.md", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "page", "norm_label": "issue69_plan.md", @@ -51035,7 +50837,7 @@ "label": "Approach", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -51047,7 +50849,7 @@ "label": "Constraints", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -51059,7 +50861,7 @@ "label": "Files to touch", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -51071,7 +50873,7 @@ "label": "Goal", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -51083,7 +50885,7 @@ "label": "Issue #69 \u2014 Plan: edit cell metadata", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "issue #69 \u2014 plan: edit cell metadata", @@ -51095,7 +50897,7 @@ "label": "Open questions", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -51107,7 +50909,7 @@ "label": "Prior art", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", @@ -51119,7 +50921,7 @@ "label": "Test strategy", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -51131,7 +50933,7 @@ "label": "issue69_status.md", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "page", "norm_label": "issue69_status.md", @@ -51143,7 +50945,7 @@ "label": "Issue #69 \u2014 Status", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "issue #69 \u2014 status", @@ -51155,7 +50957,7 @@ "label": "Remaining work", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -51167,91 +50969,19 @@ "label": "What's done", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", "source_file": ".issueflows/03-solved-issues/issue69_status.md", "source_location": "L5" }, - { - "id": "issueflows_03_solved_issues_issue86_original", - "label": "issue86_original.md", - "_origin": "ast", - "community": 17, - "community_name": "apply_physical_meta", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue86_original.md", - "source_file": ".issueflows/03-solved-issues/issue86_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue86_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 17, - "community_name": "apply_physical_meta", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue86_original.md", - "source_location": "L20" - }, - { - "id": "issueflows_03_solved_issues_issue86_original_issue_86_manage_cells_edit_nominal_capacity_basis_gravimetric_areal_absolute", - "label": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", - "_origin": "ast", - "community": 17, - "community_name": "apply_physical_meta", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #86: manage cells: edit nominal-capacity basis (gravimetric / areal / absolute)", - "source_file": ".issueflows/03-solved-issues/issue86_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue86_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 17, - "community_name": "apply_physical_meta", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue86_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue86_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 17, - "community_name": "apply_physical_meta", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue86_original.md", - "source_location": "L28" - }, - { - "id": "issueflows_03_solved_issues_issue86_original_problem_context", - "label": "Problem / context", - "_origin": "ast", - "community": 17, - "community_name": "apply_physical_meta", - "file_type": "document", - "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue86_original.md", - "source_location": "L7" - }, { "id": "issueflows_03_solved_issues_issue86_original_spec", "label": "Spec", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "spec", @@ -51263,7 +50993,7 @@ "label": "issue86_plan.md", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "page", "norm_label": "issue86_plan.md", @@ -51275,7 +51005,7 @@ "label": "Approach", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -51287,7 +51017,7 @@ "label": "Constraints", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -51299,7 +51029,7 @@ "label": "Files to touch", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -51311,7 +51041,7 @@ "label": "Goal", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -51323,7 +51053,7 @@ "label": "Issue #86 \u2014 Plan: edit nominal-capacity basis", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "issue #86 \u2014 plan: edit nominal-capacity basis", @@ -51335,7 +51065,7 @@ "label": "Open questions", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -51347,7 +51077,7 @@ "label": "Prior art", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", @@ -51359,30 +51089,286 @@ "label": "Test strategy", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", "source_file": ".issueflows/03-solved-issues/issue86_plan.md", "source_location": "L49" }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_release_gating_note_resolved_for_816_818_819", + "label": "Release-gating note (resolved for #816/#818/#819)", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "release-gating note (resolved for #816/#818/#819)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L11" + }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_still_app_owned_no_upstream_yet_by_design", + "label": "Still app-owned (no upstream yet / by design)", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "still app-owned (no upstream yet / by design)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L178" + }, + { + "id": "issueflows_04_designs_and_guides_manage_cells_modal_behaviour", + "label": "Behaviour", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "behaviour", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_1", + "label": "The one and only bridge to cellpy (>= 2.1). Every cellpy import and every\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "the one and only bridge to cellpy (>= 2.1). every cellpy import and every...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_179", + "label": "Can this machine actually read an Arbin ``.res``? Cheap enough to call on every\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "can this machine actually read an arbin ``.res``? cheap enough to call on every...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L179" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_221", + "label": "Describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L221" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_228", + "label": "Peek cellpy-file metadata without loading raw/steps/summary (#799).", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "peek cellpy-file metadata without loading raw/steps/summary (#799).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L228" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_253", + "label": "Load and process a raw instrument file into a ``CellpyCell``. Only the metadata\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "load and process a raw instrument file into a ``cellpycell``. only the metadata...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L253" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_292", + "label": "Hint when the cellpy-native HDF5 reader ran instead of a raw loader.", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "hint when the cellpy-native hdf5 reader ran instead of a raw loader.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L292" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_304", + "label": "Return the path to a bundled example raw file (downloading if needed).", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "return the path to a bundled example raw file (downloading if needed).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L304" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_322", + "label": "Local path string or remote URI suitable for ``cellpy.get`` (#160).", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "local path string or remote uri suitable for ``cellpy.get`` (#160).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L322" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_341", + "label": "Load a cellpy file (``.cellpy`` / legacy ``.h5``) from disk or remote URI.", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "load a cellpy file (``.cellpy`` / legacy ``.h5``) from disk or remote uri.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L341" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_371", + "label": "Result of :func:`find_remote_files`. ``paths`` is the capped, de-duplicated\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "result of :func:`find_remote_files`. ``paths`` is the capped, de-duplicated...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L371" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_385", + "label": "Seam around ``cellpy.filefinder.find_in_raw_file_directory``.", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "seam around ``cellpy.filefinder.find_in_raw_file_directory``.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L385" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_394", + "label": "Turn the UI's name filter into filefinder's ``glob_txt``. Bare text means\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "turn the ui's name filter into filefinder's ``glob_txt``. bare text means...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L394" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_414", + "label": "Approximate a remote \"glob\": list files under an ``sftp://`` folder. Wraps\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "approximate a remote \"glob\": list files under an ``sftp://`` folder. wraps...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L414" + }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_494", "label": "Return a plain-dict projection of a cell's metadata.", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "rationale", "norm_label": "return a plain-dict projection of a cell's metadata.", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L494" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_530", + "label": "Return the per-cycle summary DataFrame for a cell. Uses the modern\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "return the per-cycle summary dataframe for a cell. uses the modern...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L530" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_557", + "label": "Return a voltage-capacity curve for one cycle. Columns: ``capacity``,\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "return a voltage-capacity curve for one cycle. columns: ``capacity``,...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L557" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_61", + "label": "Load one bundled example cell. Returns a ``CellpyCell``. ``kind`` is one of\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "load one bundled example cell. returns a ``cellpycell``. ``kind`` is one of...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L61" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_718", + "label": "Write a cell to a self-contained ``.cellpy`` file (overwriting).", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "write a cell to a self-contained ``.cellpy`` file (overwriting).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L718" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_725", + "label": "Write a cell via cellpy ``to_excel`` (default sheets / options).", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "write a cell via cellpy ``to_excel`` (default sheets / options).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L725" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_732", + "label": "Write cellpy ``to_csv`` outputs into ``datadir``; return created files.", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "write cellpy ``to_csv`` outputs into ``datadir``; return created files.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L732" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_742", + "label": "Refresh the summary after a physical meta change. cellpy \u22652.1.2a4 exposes\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "refresh the summary after a physical meta change. cellpy \u22652.1.2a4 exposes...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L742" + }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_769", "label": "Assign physical meta knobs and refresh the summary once. Returns the names of\u2026", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "rationale", "norm_label": "assign physical meta knobs and refresh the summary once. returns the names of...", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", @@ -51393,7 +51379,7 @@ "label": "Update the active-material mass and refresh the summary.", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "rationale", "norm_label": "update the active-material mass and refresh the summary.", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", @@ -51404,7 +51390,7 @@ "label": "Update active electrode area (cm\u00b2) and refresh the summary.", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "rationale", "norm_label": "update active electrode area (cm2) and refresh the summary.", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", @@ -51415,29 +51401,95 @@ "label": "Update nominal capacity and refresh the summary.", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "rationale", "norm_label": "update nominal capacity and refresh the summary.", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L808" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_813", + "label": "Update nominal-capacity basis and refresh the summary.", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "update nominal-capacity basis and refresh the summary.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L813" + }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_818", "label": "Update cycle mode (anode/cathode/full_cell) and refresh the summary.", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "rationale", "norm_label": "update cycle mode (anode/cathode/full_cell) and refresh the summary.", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L818" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_85", + "label": "The available instrument loaders (id / label / models / suffixes). Uses\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "the available instrument loaders (id / label / models / suffixes). uses...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L85" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_654", + "label": "Fold theme tokens into cellpy #801 knobs before ``collection.plot``.", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "fold theme tokens into cellpy #801 knobs before ``collection.plot``.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L654" + }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_169", + "label": "Render Plotly figure JSON to static image bytes (requires kaleido). Delegates\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "render plotly figure json to static image bytes (requires kaleido). delegates...", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L169" + }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_236", + "label": "Write one cell into ``work``; return (archive_name, path) pairs.", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "write one cell into ``work``; return (archive_name, path) pairs.", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L236" + }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_256", + "label": "Export library cells via cellpy save/to_csv/to_excel. Returns ``(bytes,\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "export library cells via cellpy save/to_csv/to_excel. returns ``(bytes,...", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L256" + }, { "id": "src_cellpy_simple_gui_core_models_rationale_320", "label": "A single editable-grid change.", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "rationale", "norm_label": "a single editable-grid change.", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -51448,12 +51500,34 @@ "label": "Everything the UI needs to know about one loaded cell. The heavy ``CellpyCell``\u2026", "_origin": "ast", "community": 17, - "community_name": "apply_physical_meta", + "community_name": "cellpy_adapter.py", "file_type": "rationale", "norm_label": "everything the ui needs to know about one loaded cell. the heavy ``cellpycell``...", "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L68" }, + { + "id": "src_cellpy_simple_gui_core_paths_rationale_44", + "label": "True when ``raw`` is an ssh/sftp/scp URI (cellpy OtherPath).", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "true when ``raw`` is an ssh/sftp/scp uri (cellpy otherpath).", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L44" + }, + { + "id": "src_cellpy_simple_gui_core_paths_rationale_50", + "label": "True when this instance may open SSH/SFTP remotes (#160). Same gate as host\u2026", + "_origin": "ast", + "community": 17, + "community_name": "cellpy_adapter.py", + "file_type": "rationale", + "norm_label": "true when this instance may open ssh/sftp remotes (#160). same gate as host...", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L50" + }, { "id": "issueflows_03_solved_issues_issue58_status", "label": "issue58_status.md", @@ -51634,6 +51708,28 @@ "source_file": "docs/guides/06-state-and-threading.md", "source_location": "L77" }, + { + "id": "src_cellpy_simple_gui_api_jobs_rationale_121", + "label": "A fixed set of daemon worker threads consuming a queue. Workers are daemons so\u2026", + "_origin": "ast", + "community": 172, + "community_name": "6. Process state and threading", + "file_type": "rationale", + "norm_label": "a fixed set of daemon worker threads consuming a queue. workers are daemons so...", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L121" + }, + { + "id": "src_cellpy_simple_gui_api_jobs_rationale_165", + "label": "Retire the workers. Never waits \u2014 a stuck job would block exit.", + "_origin": "ast", + "community": 172, + "community_name": "6. Process state and threading", + "file_type": "rationale", + "norm_label": "retire the workers. never waits \u2014 a stuck job would block exit.", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L165" + }, { "id": "issueflows_03_solved_issues_issue73_plan", "label": "issue73_plan.md", @@ -51982,6 +52078,17 @@ "source_file": ".issueflows/03-solved-issues/issue14_original.md", "source_location": "L5" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a_mouse", + "label": ".mouse()", + "_origin": "ast", + "community": 18, + "community_name": "m", + "file_type": "code", + "norm_label": ".mouse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "issueflows_03_solved_issues_issue14_status", "label": "issue14_status.md", @@ -52235,48 +52342,94 @@ "source_location": "L5" }, { - "id": "tests_test_api_py_essential", - "label": "essential", + "id": "cursor_skills_iflow_cleanup_skill", + "label": "iflow-cleanup/SKILL.md", "_origin": "ast", "community": 188, - "community_name": "essential", - "file_type": "code", - "norm_label": "essential", - "source_file": "", - "source_location": "" - }, + "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "file_type": "document", + "frontmatter": { + "name": "iflow-cleanup", + "description": ">-", + "disable-model-invocation": "true", + "issue-flow-version": "0.4.2a4" + }, + "node_kind": "page", + "norm_label": "iflow-cleanup/skill.md", + "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", + "source_location": "L1" + }, { - "id": "tests_test_api_rationale_74", - "label": "The config panel gets sections + provenance, and never a secrets section.", + "id": "cursor_skills_iflow_cleanup_skill_constraints", + "label": "Constraints", "_origin": "ast", "community": 188, - "community_name": "essential", - "file_type": "rationale", - "norm_label": "the config panel gets sections + provenance, and never a secrets section.", - "source_file": "tests/test_api.py", - "source_location": "L74" + "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", + "source_location": "L134" }, { - "id": "tests_test_api_rationale_746", - "label": "The blast radius of the old behaviour was the host, not the app (#120).", + "id": "cursor_skills_iflow_cleanup_skill_input", + "label": "Input", "_origin": "ast", "community": 188, - "community_name": "essential", - "file_type": "rationale", - "norm_label": "the blast radius of the old behaviour was the host, not the app (#120).", - "source_file": "tests/test_api.py", - "source_location": "L746" + "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "input", + "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", + "source_location": "L57" }, { - "id": "tests_test_api_rationale_762", - "label": "Loading is a job, so the refusal comes back as an error, not a status.", + "id": "cursor_skills_iflow_cleanup_skill_instructions", + "label": "Instructions", "_origin": "ast", "community": 188, - "community_name": "essential", - "file_type": "rationale", - "norm_label": "loading is a job, so the refusal comes back as an error, not a status.", - "source_file": "tests/test_api.py", - "source_location": "L762" + "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "instructions", + "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", + "source_location": "L68" + }, + { + "id": "cursor_skills_iflow_cleanup_skill_issue_flow_issue_cleanup_iflow_cleanup", + "label": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "_origin": "ast", + "community": 188, + "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", + "source_location": "L12" + }, + { + "id": "cursor_skills_iflow_cleanup_skill_model_execution_directive", + "label": "MODEL & EXECUTION DIRECTIVE", + "_origin": "ast", + "community": 188, + "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "model & execution directive", + "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", + "source_location": "L22" + }, + { + "id": "cursor_skills_iflow_cleanup_skill_resolve_project_root_multi_root_workspaces", + "label": "Resolve project root (multi-root workspaces)", + "_origin": "ast", + "community": 188, + "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "resolve project root (multi-root workspaces)", + "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", + "source_location": "L36" }, { "id": "issueflows_03_solved_issues_issue28_original", @@ -52495,48 +52648,88 @@ "source_location": "L46" }, { - "id": "tests_test_api_rationale_671", - "label": "Make ``import webview`` fail, as it would on a server-only install.", + "id": "issueflows_01_current_issues_issue184_plan", + "label": "issue184_plan.md", "_origin": "ast", "community": 190, - "community_name": "_without_webview", - "file_type": "rationale", - "norm_label": "make ``import webview`` fail, as it would on a server-only install.", - "source_file": "tests/test_api.py", - "source_location": "L671" + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue184_plan.md", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L1" }, { - "id": "tests_test_api_rationale_681", - "label": "A server-only install must serve the whole app (#118). pywebview moved to the\u2026", + "id": "issueflows_01_current_issues_issue184_plan_approach_front_end_only_app_js_modal_markup", + "label": "Approach (front-end only, `app.js` + modal markup)", "_origin": "ast", "community": 190, - "community_name": "_without_webview", - "file_type": "rationale", - "norm_label": "a server-only install must serve the whole app (#118). pywebview moved to the...", - "source_file": "tests/test_api.py", - "source_location": "L681" + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach (front-end only, `app.js` + modal markup)", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L21" }, { - "id": "tests_test_api_rationale_700", - "label": "The two endpoints that genuinely need a window fail clearly, not with a 500.", + "id": "issueflows_01_current_issues_issue184_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", "community": 190, - "community_name": "_without_webview", - "file_type": "rationale", - "norm_label": "the two endpoints that genuinely need a window fail clearly, not with a 500.", - "source_file": "tests/test_api.py", - "source_location": "L700" + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L37" }, { - "id": "tests_test_api_rationale_712", - "label": "Falling back to the browser should say what to install, not raise ImportError.", + "id": "issueflows_01_current_issues_issue184_plan_goal", + "label": "Goal", "_origin": "ast", "community": 190, - "community_name": "_without_webview", - "file_type": "rationale", - "norm_label": "falling back to the browser should say what to install, not raise importerror.", - "source_file": "tests/test_api.py", - "source_location": "L712" + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "label": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "_origin": "ast", + "community": 190, + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan \u2014 #184 update plots when the manage cells modal closes", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_01_current_issues_issue184_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 190, + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L46" + }, + { + "id": "issueflows_01_current_issues_issue184_plan_what_happens_today", + "label": "What happens today", + "_origin": "ast", + "community": 190, + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what happens today", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L10" }, { "id": "issueflows_03_solved_issues_issue36_status", @@ -52574,24 +52767,132 @@ "source_file": ".issueflows/03-solved-issues/issue36_status.md", "source_location": "L1" }, + { + "id": "docs_api_reference_attributes_worth_knowing", + "label": "Attributes worth knowing", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "attributes worth knowing", + "source_file": "docs/api-reference.md", + "source_location": "L277" + }, + { + "id": "docs_api_reference_cellpy_api_surface", + "label": "cellpy API surface", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "cellpy api surface", + "source_file": "docs/api-reference.md", + "source_location": "L1" + }, + { + "id": "docs_api_reference_cells_into_a_collection", + "label": "Cells into a Collection", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "cells into a collection", + "source_file": "docs/api-reference.md", + "source_location": "L104" + }, + { + "id": "docs_api_reference_collect_options", + "label": "Collect options", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "collect options", + "source_file": "docs/api-reference.md", + "source_location": "L138" + }, { "id": "docs_api_reference_configuration", "label": "Configuration", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "configuration", "source_file": "docs/api-reference.md", "source_location": "L243" }, + { + "id": "docs_api_reference_figures_to_bytes", + "label": "Figures to bytes", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "figures to bytes", + "source_file": "docs/api-reference.md", + "source_location": "L229" + }, + { + "id": "docs_api_reference_loading", + "label": "Loading", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "loading", + "source_file": "docs/api-reference.md", + "source_location": "L16" + }, + { + "id": "docs_api_reference_one_cell", + "label": "One cell", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "one cell", + "source_file": "docs/api-reference.md", + "source_location": "L70" + }, + { + "id": "docs_api_reference_single_cell_plots", + "label": "Single-cell plots", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "single-cell plots", + "source_file": "docs/api-reference.md", + "source_location": "L210" + }, + { + "id": "docs_api_reference_the_plot_registry", + "label": "The plot registry", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "the plot registry", + "source_file": "docs/api-reference.md", + "source_location": "L186" + }, { "id": "docs_guides_05_configuration_5_configuration", "label": "5. Configuration", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "5. configuration", @@ -52603,7 +52904,7 @@ "label": "Changing settings", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "changing settings", @@ -52615,7 +52916,7 @@ "label": "Credentials", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "credentials", @@ -52627,7 +52928,7 @@ "label": "Never write the user's config file", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "never write the user's config file", @@ -52639,7 +52940,7 @@ "label": "The layers", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "the layers", @@ -52651,7 +52952,7 @@ "label": "The relative-path trap", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "the relative-path trap", @@ -52663,7 +52964,7 @@ "label": "Where to go next", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "where to go next", @@ -52675,31 +52976,67 @@ "label": "Which file actually won, and where each value came from", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "which file actually won, and where each value came from", "source_file": "docs/guides/05-configuration.md", "source_location": "L38" }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_configuration_cellpy_config_new_in_2_1_2", + "label": "Configuration (`cellpy.config`, new in 2.1.2)", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "configuration (`cellpy.config`, new in 2.1.2)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L67" + }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_resolved_in_2_1_2a3", + "label": "Resolved in 2.1.2a3", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "resolved in 2.1.2a3", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L84" + }, { "id": "readme_find_files_in_a_remote_folder", "label": "Find files in a remote folder", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "find files in a remote folder", "source_file": "README.md", "source_location": "L378" }, + { + "id": "readme_local_vs_served_what_the_app_may_touch", + "label": "Local vs served: what the app may touch", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "local vs served: what the app may touch", + "source_file": "README.md", + "source_location": "L319" + }, { "id": "readme_moving_the_data_directory", "label": "Moving the data directory", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "moving the data directory", @@ -52711,7 +53048,7 @@ "label": "Per-project cellpy settings", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "per-project cellpy settings", @@ -52723,7 +53060,7 @@ "label": "Projects on disk", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "projects on disk", @@ -52735,7 +53072,7 @@ "label": "Remote files (SSH / SFTP)", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "remote files (ssh / sftp)", @@ -52747,7 +53084,7 @@ "label": "Configuration", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "configuration", @@ -52759,7 +53096,7 @@ "label": "Every loader cellpy can offer on this machine. Discovered at runtime, so the\u2026", "_origin": "ast", "community": 192, - "community_name": "instruments", + "community_name": "cellpy API surface", "file_type": "rationale", "norm_label": "every loader cellpy can offer on this machine. discovered at runtime, so the...", "source_file": "examples/starter/app.py", @@ -52977,104 +53314,122 @@ "type": "package" }, { - "id": "tests_test_mcp_prototype_rationale_122", - "label": "Only preview returns rows, and it caps whatever it is asked for.", + "id": "issueflows_03_solved_issues_issue37_original", + "label": "issue37_original.md", "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "rationale", - "norm_label": "only preview returns rows, and it caps whatever it is asked for.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L122" + "community": 202, + "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue37_original.md", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "source_location": "L1" }, { - "id": "tests_test_mcp_prototype_rationale_178", - "label": "A write primitive outside the boundary would make the read check decor.", + "id": "issueflows_03_solved_issues_issue37_original_acceptance_criteria", + "label": "Acceptance criteria", "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "rationale", - "norm_label": "a write primitive outside the boundary would make the read check decor.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L178" + "community": 202, + "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "source_location": "L20" }, { - "id": "tests_test_mcp_prototype_rationale_196", - "label": "Error text is read by a model, so it has to name the next call.", + "id": "issueflows_03_solved_issues_issue37_original_issue_37_spread_bands_too_opaque_for_safe_muted_color_schemes", + "label": "Issue #37: Spread bands too opaque for safe/muted color schemes", "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "rationale", - "norm_label": "error text is read by a model, so it has to name the next call.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L196" + "community": 202, + "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #37: spread bands too opaque for safe/muted color schemes", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "source_location": "L1" }, { - "id": "tests_test_mcp_prototype_rationale_243", - "label": "The finding this family turns on. `CellpyCell.get_cap` points at the\u2026", + "id": "issueflows_03_solved_issues_issue37_original_original_issue_text", + "label": "Original issue text", "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "rationale", - "norm_label": "the finding this family turns on. `cellpycell.get_cap` points at the...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L243" + "community": 202, + "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "source_location": "L5" }, { - "id": "tests_test_mcp_prototype_rationale_264", - "label": "`self` in a rendered signature invites a model to pass it.", + "id": "issueflows_03_solved_issues_issue37_original_out_of_scope", + "label": "Out of scope", "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "rationale", - "norm_label": "`self` in a rendered signature invites a model to pass it.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L264" + "community": 202, + "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "source_location": "L27" }, { - "id": "tests_test_mcp_prototype_rationale_276", - "label": "Resolving a dotted path is importing it, and the caller is a model. The refusal\u2026", + "id": "issueflows_03_solved_issues_issue37_original_problem_context", + "label": "Problem / context", + "_origin": "ast", + "community": 202, + "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue37_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 202, + "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "source_location": "L13" + }, + { + "id": "tests_test_mcp_prototype_py_parametrize", + "label": "parametrize", "_origin": "ast", "community": 204, - "community_name": "drive", - "file_type": "rationale", - "norm_label": "resolving a dotted path is importing it, and the caller is a model. the refusal...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L276" + "community_name": "steps", + "file_type": "code", + "norm_label": "parametrize", + "source_file": "", + "source_location": "" }, { - "id": "tests_test_mcp_prototype_rationale_297", - "label": "`utils.helpers` re-exports `CellpyCell`; a path through it sends the reader to\u2026", + "id": "tests_test_mcp_prototype_rationale_167", + "label": "The caller is a model acting on text it may have read somewhere.", "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "rationale", - "norm_label": "`utils.helpers` re-exports `cellpycell`; a path through it sends the reader to...", + "norm_label": "the caller is a model acting on text it may have read somewhere.", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L297" + "source_location": "L167" }, { "id": "tests_test_mcp_prototype_rationale_311", "label": "The happy path downloads a cookiecutter from GitHub, so CI tests the boundary \u2014\u2026", "_origin": "ast", "community": 204, - "community_name": "drive", + "community_name": "steps", "file_type": "rationale", "norm_label": "the happy path downloads a cookiecutter from github, so ci tests the boundary \u2014...", "source_file": "tests/test_mcp_prototype.py", "source_location": "L311" }, - { - "id": "tests_test_mcp_prototype_rationale_56", - "label": "Run `steps(call)` against a connected client; return whatever it returns.", - "_origin": "ast", - "community": 204, - "community_name": "drive", - "file_type": "rationale", - "norm_label": "run `steps(call)` against a connected client; return whatever it returns.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L56" - }, { "id": "cellpy_painpoints", "label": "CELLPY_PAINPOINTS.md", @@ -53364,82 +53719,189 @@ "source_location": "L572" }, { - "id": "src_cellpy_simple_gui_core_library_py_any", - "label": "Any", + "id": "skills_readme", + "label": "skills/README.md", "_origin": "ast", - "community": 214, - "community_name": ".restore_cell", + "community": 205, + "community_name": "README.md", + "file_type": "document", + "node_kind": "page", + "norm_label": "skills/readme.md", + "source_file": "skills/README.md", + "source_location": "L1" + }, + { + "id": "skills_readme_cellpy_app", + "label": "`cellpy-app`", + "_origin": "ast", + "community": 205, + "community_name": "README.md", + "file_type": "document", + "node_kind": "heading", + "norm_label": "`cellpy-app`", + "source_file": "skills/README.md", + "source_location": "L6" + }, + { + "id": "skills_readme_skills", + "label": "Skills", + "_origin": "ast", + "community": 205, + "community_name": "README.md", + "file_type": "document", + "node_kind": "heading", + "norm_label": "skills", + "source_file": "skills/README.md", + "source_location": "L1" + }, + { + "id": "packaging_zip_installer", + "label": "zip_installer.py", + "_origin": "ast", + "community": 212, + "community_name": "zip_installer.py", "file_type": "code", - "norm_label": "any", - "source_file": "", - "source_location": "" + "norm_label": "zip_installer.py", + "source_file": "packaging/zip_installer.py", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_library_py_path", + "id": "packaging_zip_installer_py_path", "label": "Path", "_origin": "ast", - "community": 214, - "community_name": ".restore_cell", + "community": 212, + "community_name": "zip_installer.py", "file_type": "code", "norm_label": "path", "source_file": "", "source_location": "" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_still_app_owned_no_upstream_yet_by_design", - "label": "Still app-owned (no upstream yet / by design)", + "id": "packaging_zip_installer_rationale_1", + "label": "Zip each Windows installer ``.exe`` beside itself (#173). A corporate download\u2026", + "_origin": "ast", + "community": 212, + "community_name": "zip_installer.py", + "file_type": "rationale", + "norm_label": "zip each windows installer ``.exe`` beside itself (#173). a corporate download...", + "source_file": "packaging/zip_installer.py", + "source_location": "L1" + }, + { + "id": "packaging_zip_installer_rationale_15", + "label": "Write ``.zip`` next to every ``*.exe`` in ``directory``. Args: directory:\u2026", + "_origin": "ast", + "community": 212, + "community_name": "zip_installer.py", + "file_type": "rationale", + "norm_label": "write ``.zip`` next to every ``*.exe`` in ``directory``. args: directory:...", + "source_file": "packaging/zip_installer.py", + "source_location": "L15" + }, + { + "id": "tests_test_mcp_prototype_rationale_122", + "label": "Only preview returns rows, and it caps whatever it is asked for.", + "_origin": "ast", + "community": 213, + "community_name": "drive", + "file_type": "rationale", + "norm_label": "only preview returns rows, and it caps whatever it is asked for.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L122" + }, + { + "id": "tests_test_mcp_prototype_rationale_56", + "label": "Run `steps(call)` against a connected client; return whatever it returns.", + "_origin": "ast", + "community": 213, + "community_name": "drive", + "file_type": "rationale", + "norm_label": "run `steps(call)` against a connected client; return whatever it returns.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L56" + }, + { + "id": "tests_test_mcp_prototype_rationale_78", + "label": "Load -> collect -> render -> export, as a client actually does it.", + "_origin": "ast", + "community": 213, + "community_name": "drive", + "file_type": "rationale", + "norm_label": "load -> collect -> render -> export, as a client actually does it.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L78" + }, + { + "id": "issueflows_03_solved_issues_issue37_plan", + "label": "issue37_plan.md", + "_origin": "ast", + "community": 214, + "community_name": "Plan \u2014 Issue #37", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue37_plan.md", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue37_plan_approach", + "label": "Approach", "_origin": "ast", "community": 214, - "community_name": ".restore_cell", + "community_name": "Plan \u2014 Issue #37", "file_type": "document", "node_kind": "heading", - "norm_label": "still app-owned (no upstream yet / by design)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L178" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_location": "L7" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_148", - "label": "Add a cell while preserving saved organisational metadata. Physical quantities\u2026", + "id": "issueflows_03_solved_issues_issue37_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", "community": 214, - "community_name": ".restore_cell", - "file_type": "rationale", - "norm_label": "add a cell while preserving saved organisational metadata. physical quantities...", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L148" + "community_name": "Plan \u2014 Issue #37", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_location": "L14" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_230", - "label": "Record that ``rid``'s data was just written to ``path``.", + "id": "issueflows_03_solved_issues_issue37_plan_goal", + "label": "Goal", "_origin": "ast", "community": 214, - "community_name": ".restore_cell", - "file_type": "rationale", - "norm_label": "record that ``rid``'s data was just written to ``path``.", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L230" + "community_name": "Plan \u2014 Issue #37", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_location": "L3" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_237", - "label": "The on-disk copy of ``rid``'s data, when it provably still matches. Three\u2026", + "id": "issueflows_03_solved_issues_issue37_plan_plan_issue_37", + "label": "Plan \u2014 Issue #37", "_origin": "ast", "community": 214, - "community_name": ".restore_cell", - "file_type": "rationale", - "norm_label": "the on-disk copy of ``rid``'s data, when it provably still matches. three...", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L237" + "community_name": "Plan \u2014 Issue #37", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan \u2014 issue #37", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_31", - "label": "``(size, mtime_ns)`` for ``path``, or ``None`` if it cannot be read. Cheap\u2026", + "id": "issueflows_03_solved_issues_issue37_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 214, - "community_name": ".restore_cell", - "file_type": "rationale", - "norm_label": "``(size, mtime_ns)`` for ``path``, or ``none`` if it cannot be read. cheap...", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L31" + "community_name": "Plan \u2014 Issue #37", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_location": "L20" }, { "id": "cursor_skills_iflow_split_skill", @@ -53633,113 +54095,6 @@ "source_file": "", "source_location": "" }, - { - "id": "src_cellpy_simple_gui_api_routers_ingest_py_post", - "label": "post", - "_origin": "ast", - "community": 216, - "community_name": "starter/app.py", - "file_type": "code", - "norm_label": "post", - "source_file": "", - "source_location": "" - }, - { - "id": "agents", - "label": "AGENTS.md", - "_origin": "ast", - "community": 216, - "community_name": "starter/app.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "agents.md", - "source_file": "AGENTS.md", - "source_location": "L1" - }, - { - "id": "agents_cursor_cloud_specific_instructions", - "label": "Cursor Cloud specific instructions", - "_origin": "ast", - "community": 216, - "community_name": "starter/app.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cursor cloud specific instructions", - "source_file": "AGENTS.md", - "source_location": "L345" - }, - { - "id": "agents_if_the_project_uses_conda", - "label": "If the project uses conda", - "_origin": "ast", - "community": 216, - "community_name": "starter/app.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "if the project uses conda", - "source_file": "AGENTS.md", - "source_location": "L18" - }, - { - "id": "agents_if_the_project_uses_uv_issue_flow_s_default", - "label": "If the project uses uv (issue-flow's default)", - "_origin": "ast", - "community": 216, - "community_name": "starter/app.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "if the project uses uv (issue-flow's default)", - "source_file": "AGENTS.md", - "source_location": "L34" - }, - { - "id": "agents_issue_flow_best_practices", - "label": "Issue-flow best practices", - "_origin": "ast", - "community": 216, - "community_name": "starter/app.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue-flow best practices", - "source_file": "AGENTS.md", - "source_location": "L2" - }, - { - "id": "agents_issue_tracking_structure", - "label": "Issue tracking structure", - "_origin": "ast", - "community": 216, - "community_name": "starter/app.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue tracking structure", - "source_file": "AGENTS.md", - "source_location": "L72" - }, - { - "id": "agents_other_toolchains_plain_venv_pip_poetry", - "label": "Other toolchains (plain venv / pip / poetry)", - "_origin": "ast", - "community": 216, - "community_name": "starter/app.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "other toolchains (plain venv / pip / poetry)", - "source_file": "AGENTS.md", - "source_location": "L66" - }, - { - "id": "agents_running_python", - "label": "Running python", - "_origin": "ast", - "community": 216, - "community_name": "starter/app.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "running python", - "source_file": "AGENTS.md", - "source_location": "L5" - }, { "id": "issueflows_03_solved_issues_issue3_plan_ux", "label": "UX", @@ -54392,211 +54747,19 @@ "source_location": "L121" }, { - "id": "issueflows_03_solved_issues_issue32_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_03_solved_issues_issue32_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", + "norm_label": "prior art", "source_file": ".issueflows/03-solved-issues/issue32_plan.md", - "source_location": "L111" - }, - { - "id": "issueflows_03_solved_issues_issue32_status", - "label": "issue32_status.md", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue32_status.md", - "source_file": ".issueflows/03-solved-issues/issue32_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue32_status_issue_32_status", - "label": "Issue #32 \u2014 Status", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #32 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue32_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue32_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue32_status.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue32_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue32_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue37_original", - "label": "issue37_original.md", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue37_original.md", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue37_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L20" - }, - { - "id": "issueflows_03_solved_issues_issue37_original_issue_37_spread_bands_too_opaque_for_safe_muted_color_schemes", - "label": "Issue #37: Spread bands too opaque for safe/muted color schemes", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #37: spread bands too opaque for safe/muted color schemes", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue37_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue37_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L27" - }, - { - "id": "issueflows_03_solved_issues_issue37_original_problem_context", - "label": "Problem / context", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue37_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L13" - }, - { - "id": "issueflows_03_solved_issues_issue37_plan", - "label": "issue37_plan.md", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue37_plan.md", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue37_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue37_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue37_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue37_plan_plan_issue_37", - "label": "Plan \u2014 Issue #37", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plan \u2014 issue #37", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", - "source_location": "L1" + "source_location": "L24" }, { - "id": "issueflows_03_solved_issues_issue37_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue32_plan_test_strategy", "label": "Test strategy", "_origin": "ast", "community": 221, @@ -54604,128 +54767,8 @@ "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", - "source_location": "L20" - }, - { - "id": "issueflows_03_solved_issues_issue37_status", - "label": "issue37_status.md", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue37_status.md", - "source_file": ".issueflows/03-solved-issues/issue37_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue37_status_progress", - "label": "Progress", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "progress", - "source_file": ".issueflows/03-solved-issues/issue37_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue37_status_status_issue_37", - "label": "Status \u2014 Issue #37", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "status \u2014 issue #37", - "source_file": ".issueflows/03-solved-issues/issue37_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue38_original", - "label": "issue38_original.md", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue38_original.md", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L19" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_issue_38_use_cellpy_label_builders_for_summary_cycle_axis_titles", - "label": "Issue #38: Use cellpy label builders for summary/cycle axis titles", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #38: use cellpy label builders for summary/cycle axis titles", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L26" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_problem_context", - "label": "Problem / context", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L11" + "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_location": "L111" }, { "id": "issueflows_03_solved_issues_issue52_original", @@ -54812,19 +54855,19 @@ "source_location": "L15" }, { - "id": "issueflows_03_solved_issues_issue52_plan_phase_b_written_inventory", - "label": "Phase B \u2014 written inventory", + "id": "issueflows_03_solved_issues_issue62_plan_constraints", + "label": "Constraints", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "phase b \u2014 written inventory", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L51" + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue52_plan_prior_art", + "id": "issueflows_03_solved_issues_issue62_plan_prior_art", "label": "Prior art", "_origin": "ast", "community": 221, @@ -54832,20 +54875,8 @@ "file_type": "document", "node_kind": "heading", "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L21" - }, - { - "id": "issueflows_03_solved_issues_issue62_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L7" + "source_location": "L16" }, { "id": "issueflows_04_designs_and_guides_plot_appearance_alternatives_considered", @@ -54896,60 +54927,74 @@ "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_summary_legend_long_names_decision", - "label": "Decision", + "id": "issueflows_04_designs_and_guides_summary_legend_long_names_alternatives_considered", + "label": "Alternatives considered", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "decision", + "norm_label": "alternatives considered", "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", - "source_location": "L10" + "source_location": "L20" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1146", - "label": "Truncate long legend-facing labels; return longest *displayed* length. Journal\u2026", + "id": "issueflows_04_designs_and_guides_summary_legend_long_names_context", + "label": "Context", "_origin": "ast", "community": 221, "community_name": "_restyle", - "file_type": "rationale", - "norm_label": "truncate long legend-facing labels; return longest *displayed* length. journal...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1146" + "file_type": "document", + "node_kind": "heading", + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", + "source_location": "L3" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1186", - "label": "Best-effort cleanup if a ``variable=\u2026`` strip slipped past cellpy. cellpy\u2026", + "id": "issueflows_04_designs_and_guides_summary_legend_long_names_decision", + "label": "Decision", "_origin": "ast", "community": 221, "community_name": "_restyle", - "file_type": "rationale", - "norm_label": "best-effort cleanup if a ``variable=...`` strip slipped past cellpy. cellpy...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1186" + "file_type": "document", + "node_kind": "heading", + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", + "source_location": "L10" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1333", - "label": "Turn ``#RRGGBB`` into ``rgba(r,g,b,a)`` for translucent Plotly fills.", + "id": "issueflows_04_designs_and_guides_summary_legend_long_names_summary_plot_legend_long_cell_names_1", + "label": "Summary plot legend + long cell names (#1)", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "summary plot legend + long cell names (#1)", + "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_1146", + "label": "Truncate long legend-facing labels; return longest *displayed* length. Journal\u2026", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "rationale", - "norm_label": "turn ``#rrggbb`` into ``rgba(r,g,b,a)`` for translucent plotly fills.", + "norm_label": "truncate long legend-facing labels; return longest *displayed* length. journal...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1333" + "source_location": "L1146" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1346", - "label": "Cycle a discrete colorway across legend series (name / legendgroup).", + "id": "src_cellpy_simple_gui_core_collect_rationale_1174", + "label": "True when PX facet annotations sit on the right edge (collide with legend).", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "rationale", - "norm_label": "cycle a discrete colorway across legend series (name / legendgroup).", + "norm_label": "true when px facet annotations sit on the right edge (collide with legend).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1346" + "source_location": "L1174" }, { "id": "src_cellpy_simple_gui_core_collect_rationale_1377", @@ -55297,60 +55342,12 @@ "source_file": ".issueflows/03-solved-issues/issue177_plan.md", "source_location": "L75" }, - { - "id": "issueflows_03_solved_issues_issue54_status", - "label": "issue54_status.md", - "_origin": "ast", - "community": 225, - "community_name": "collect", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue54_status.md", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue54_status_issue_54_status", - "label": "Issue #54 status", - "_origin": "ast", - "community": 225, - "community_name": "collect", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #54 status", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue54_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 225, - "community_name": "collect", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue54_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 225, - "community_name": "collect", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", - "source_location": "L5" - }, { "id": "issueflows_03_solved_issues_issue72_original", "label": "issue72_original.md", "_origin": "ast", "community": 225, - "community_name": "collect", + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", "file_type": "document", "node_kind": "page", "norm_label": "issue72_original.md", @@ -55362,7 +55359,7 @@ "label": "Acceptance criteria", "_origin": "ast", "community": 225, - "community_name": "collect", + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", "file_type": "document", "node_kind": "heading", "norm_label": "acceptance criteria", @@ -55374,7 +55371,7 @@ "label": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", "_origin": "ast", "community": 225, - "community_name": "collect", + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", "file_type": "document", "node_kind": "heading", "norm_label": "issue #72: cycles tab: mode change does not update x-axis capacity units", @@ -55386,7 +55383,7 @@ "label": "Original issue text", "_origin": "ast", "community": 225, - "community_name": "collect", + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", "file_type": "document", "node_kind": "heading", "norm_label": "original issue text", @@ -55398,7 +55395,7 @@ "label": "Out of scope", "_origin": "ast", "community": 225, - "community_name": "collect", + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", "file_type": "document", "node_kind": "heading", "norm_label": "out of scope", @@ -55410,7 +55407,7 @@ "label": "Problem / context", "_origin": "ast", "community": 225, - "community_name": "collect", + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", "file_type": "document", "node_kind": "heading", "norm_label": "problem / context", @@ -55422,7 +55419,7 @@ "label": "Spec", "_origin": "ast", "community": 225, - "community_name": "collect", + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", "file_type": "document", "node_kind": "heading", "norm_label": "spec", @@ -55430,157 +55427,98 @@ "source_location": "L13" }, { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_2_target_architecture", - "label": "2. Target architecture", - "_origin": "ast", - "community": 225, - "community_name": "collect", - "file_type": "document", - "node_kind": "heading", - "norm_label": "2. target architecture", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L36" - }, - { - "id": "readme_how_it_is_built", - "label": "How it is built", - "_origin": "ast", - "community": 225, - "community_name": "collect", - "file_type": "document", - "node_kind": "heading", - "norm_label": "how it is built", - "source_file": "README.md", - "source_location": "L424" - }, - { - "id": "examples_mcp_server_rationale_306", - "label": "Build a collection. `kind` is one of: summary, cycles, ica, dva. Returns a\u2026", - "_origin": "ast", - "community": 225, - "community_name": "collect", - "file_type": "rationale", - "norm_label": "build a collection. `kind` is one of: summary, cycles, ica, dva. returns a...", - "source_file": "examples/mcp/server.py", - "source_location": "L306" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_progressfn", - "label": "ProgressFn", - "_origin": "ast", - "community": 226, - "community_name": "load_journal_cells", - "file_type": "code", - "norm_label": "progressfn", - "source_file": "", - "source_location": "" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan", - "label": "issue19_plan.md", + "id": "issueflows_03_solved_issues_issue86_original", + "label": "issue86_original.md", "_origin": "ast", "community": 226, - "community_name": "load_journal_cells", + "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", "file_type": "document", "node_kind": "page", - "norm_label": "issue19_plan.md", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "norm_label": "issue86_original.md", + "source_file": ".issueflows/03-solved-issues/issue86_original.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue19_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 226, - "community_name": "load_journal_cells", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan_goal", - "label": "Goal", + "id": "issueflows_03_solved_issues_issue86_original_acceptance_criteria", + "label": "Acceptance criteria", "_origin": "ast", "community": 226, - "community_name": "load_journal_cells", + "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", "file_type": "document", "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L3" + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue86_original.md", + "source_location": "L20" }, { - "id": "issueflows_03_solved_issues_issue19_plan_plan_issue_19_journal_load_error_surfacing", - "label": "Plan: Issue #19 \u2014 journal load error surfacing", + "id": "issueflows_03_solved_issues_issue86_original_issue_86_manage_cells_edit_nominal_capacity_basis_gravimetric_areal_absolute", + "label": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", "_origin": "ast", "community": 226, - "community_name": "load_journal_cells", + "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", "file_type": "document", "node_kind": "heading", - "norm_label": "plan: issue #19 \u2014 journal load error surfacing", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "norm_label": "issue #86: manage cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "source_file": ".issueflows/03-solved-issues/issue86_original.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue19_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_03_solved_issues_issue86_original_original_issue_text", + "label": "Original issue text", "_origin": "ast", "community": 226, - "community_name": "load_journal_cells", + "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L14" + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue86_original.md", + "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue19_status", - "label": "issue19_status.md", + "id": "issueflows_03_solved_issues_issue86_original_out_of_scope", + "label": "Out of scope", "_origin": "ast", "community": 226, - "community_name": "load_journal_cells", + "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", "file_type": "document", - "node_kind": "page", - "norm_label": "issue19_status.md", - "source_file": ".issueflows/03-solved-issues/issue19_status.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue86_original.md", + "source_location": "L28" }, { - "id": "issueflows_03_solved_issues_issue19_status_done", - "label": "Done", + "id": "issueflows_03_solved_issues_issue86_original_problem_context", + "label": "Problem / context", "_origin": "ast", "community": 226, - "community_name": "load_journal_cells", + "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", "file_type": "document", "node_kind": "heading", - "norm_label": "done", - "source_file": ".issueflows/03-solved-issues/issue19_status.md", - "source_location": "L5" + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue86_original.md", + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue19_status_status_issue_19_journal_load_errors", - "label": "Status: Issue #19 \u2014 journal load errors", + "id": "packaging_smoke_test_py_path", + "label": "Path", "_origin": "ast", - "community": 226, - "community_name": "load_journal_cells", - "file_type": "document", - "node_kind": "heading", - "norm_label": "status: issue #19 \u2014 journal load errors", - "source_file": ".issueflows/03-solved-issues/issue19_status.md", - "source_location": "L1" + "community": 227, + "community_name": "LaunchedApp", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_573", - "label": "Load a cellpy batch journal (.json) and return ``(label, cell, group)``. Uses\u2026", + "id": "packaging_smoke_test_rationale_141", + "label": "Launches a binary and picks its URL and token out of the startup log.", "_origin": "ast", - "community": 226, - "community_name": "load_journal_cells", + "community": 227, + "community_name": "LaunchedApp", "file_type": "rationale", - "norm_label": "load a cellpy batch journal (.json) and return ``(label, cell, group)``. uses...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L573" + "norm_label": "launches a binary and picks its url and token out of the startup log.", + "source_file": "packaging/smoke_test.py", + "source_location": "L141" }, { "id": "cursor_skills_iflow_init_skill", @@ -55841,77 +55779,154 @@ "source_location": "L1" }, { - "id": "basesettings", - "label": "BaseSettings", + "id": "packaging_readme_not_solvable_in_code", + "label": "Not solvable in code", "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "basesettings", - "source_file": "", - "source_location": "" + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "not solvable in code", + "source_file": "packaging/README.md", + "source_location": "L224" }, { - "id": "fastapi", - "label": "FastAPI", + "id": "packaging_readme_numbers", + "label": "Numbers", "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "fastapi", - "source_file": "", - "source_location": "" + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "numbers", + "source_file": "packaging/README.md", + "source_location": "L55" }, { - "id": "src_cellpy_simple_gui_api_app", - "label": "api/app.py", + "id": "packaging_readme_numbers_121", + "label": "Numbers", "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "api/app.py", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L1" + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "numbers", + "source_file": "packaging/README.md", + "source_location": "L121" }, { - "id": "src_cellpy_simple_gui_api_deps", - "label": "deps.py", + "id": "packaging_readme_numbers_216", + "label": "Numbers", "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "deps.py", - "source_file": "src/cellpy_simple_gui/api/deps.py", - "source_location": "L1" + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "numbers", + "source_file": "packaging/README.md", + "source_location": "L216" }, { - "id": "src_cellpy_simple_gui_api_routers_init", - "label": "routers/__init__.py", + "id": "packaging_readme_packaging", + "label": "Packaging", "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "routers/__init__.py", - "source_file": "src/cellpy_simple_gui/api/routers/__init__.py", + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "packaging", + "source_file": "packaging/README.md", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_config", - "label": "config.py", + "id": "packaging_readme_server_side_figure_export_is_not_in_the_image", + "label": "Server-side figure export is not in the image", + "_origin": "ast", + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "server-side figure export is not in the image", + "source_file": "packaging/README.md", + "source_location": "L103" + }, + { + "id": "packaging_readme_two_silent_failures_the_first_build_shipped_with", + "label": "Two silent failures the first build shipped with", + "_origin": "ast", + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "two silent failures the first build shipped with", + "source_file": "packaging/README.md", + "source_location": "L80" + }, + { + "id": "packaging_readme_what_the_container_established_121", + "label": "What the container established (#121)", + "_origin": "ast", + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what the container established (#121)", + "source_file": "packaging/README.md", + "source_location": "L72" + }, + { + "id": "packaging_readme_what_the_continuous_build_added_168", + "label": "What the continuous build added (#168)", + "_origin": "ast", + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what the continuous build added (#168)", + "source_file": "packaging/README.md", + "source_location": "L230" + }, + { + "id": "packaging_readme_what_the_installer_added_122", + "label": "What the installer added (#122)", + "_origin": "ast", + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what the installer added (#122)", + "source_file": "packaging/README.md", + "source_location": "L155" + }, + { + "id": "packaging_readme_what_the_spike_established_117", + "label": "What the spike established (#117)", + "_origin": "ast", + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what the spike established (#117)", + "source_file": "packaging/README.md", + "source_location": "L26" + }, + { + "id": "basesettings", + "label": "BaseSettings", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": "config.py", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L1" + "norm_label": "basesettings", + "source_file": "", + "source_location": "" }, { "id": "src_cellpy_simple_gui_config_py_field_validator", "label": "field_validator", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "field_validator", "source_file": "", @@ -55922,20 +55937,31 @@ "label": "Path", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "path", "source_file": "", "source_location": "" }, { - "id": "tests_test_api_py_fixture", - "label": "fixture", + "id": "src_cellpy_simple_gui_core_library_py_any", + "label": "Any", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", - "norm_label": "fixture", + "norm_label": "any", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_core_library_py_path", + "label": "Path", + "_origin": "ast", + "community": 23, + "community_name": "Library", + "file_type": "code", + "norm_label": "path", "source_file": "", "source_location": "" }, @@ -55944,7 +55970,7 @@ "label": "test_projects.py", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "test_projects.py", "source_file": "tests/test_projects.py", @@ -55955,62 +55981,30 @@ "label": "essential", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "code", "norm_label": "essential", "source_file": "", "source_location": "" }, { - "id": "src_cellpy_simple_gui_api_app_rationale_1", - "label": "FastAPI application factory.", - "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "fastapi application factory.", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_deps_rationale_1", - "label": "Shared dependencies: templates and the local-token guard.", - "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "shared dependencies: templates and the local-token guard.", - "source_file": "src/cellpy_simple_gui/api/deps.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_deps_rationale_37", - "label": "Guard API routes. The index page plants the token as a cookie; the frontend\u2026", - "_origin": "ast", - "community": 23, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "guard api routes. the index page plants the token as a cookie; the frontend...", - "source_file": "src/cellpy_simple_gui/api/deps.py", - "source_location": "L37" - }, - { - "id": "src_cellpy_simple_gui_config_rationale_1", - "label": "Application settings and paths.", + "id": "cellpy_painpoints_1_no_public_collection_from_in_memory_cells", + "label": "1. \ud83d\udd34 No public \"collection from in-memory cells\"", "_origin": "ast", "community": 23, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "application settings and paths.", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L1" + "community_name": "Library", + "file_type": "document", + "node_kind": "heading", + "norm_label": "1. \ud83d\udd34 no public \"collection from in-memory cells\"", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L126" }, { "id": "src_cellpy_simple_gui_config_rationale_61", "label": "``~`` and relative paths are normal in env vars; resolve them once. Resolving\u2026", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "``~`` and relative paths are normal in env vars; resolve them once. resolving...", "source_file": "src/cellpy_simple_gui/config.py", @@ -56021,51 +56015,62 @@ "label": "Thread-safe ordered collection of :class:`CellRecord`.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "thread-safe ordered collection of :class:`cellrecord`.", "source_file": "src/cellpy_simple_gui/core/library.py", "source_location": "L104" }, { - "id": "tests_test_api_rationale_403", - "label": "cellpy logs through stdlib, so the bridge must feed the ring buffer.", + "id": "src_cellpy_simple_gui_core_library_rationale_148", + "label": "Add a cell while preserving saved organisational metadata. Physical quantities\u2026", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", - "norm_label": "cellpy logs through stdlib, so the bridge must feed the ring buffer.", - "source_file": "tests/test_api.py", - "source_location": "L403" + "norm_label": "add a cell while preserving saved organisational metadata. physical quantities...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L148" }, { - "id": "tests_test_api_rationale_728", - "label": "A client for an instance bound to a network address.", + "id": "src_cellpy_simple_gui_core_library_rationale_230", + "label": "Record that ``rid``'s data was just written to ``path``.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", - "norm_label": "a client for an instance bound to a network address.", - "source_file": "tests/test_api.py", - "source_location": "L728" + "norm_label": "record that ``rid``'s data was just written to ``path``.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L230" }, { - "id": "tests_test_journal_rationale_84", - "label": "Job must finish with an errors[] payload the UI can toast \u2014 not hang.", + "id": "src_cellpy_simple_gui_core_library_rationale_237", + "label": "The on-disk copy of ``rid``'s data, when it provably still matches. Three\u2026", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", - "norm_label": "job must finish with an errors[] payload the ui can toast \u2014 not hang.", - "source_file": "tests/test_journal.py", - "source_location": "L84" + "norm_label": "the on-disk copy of ``rid``'s data, when it provably still matches. three...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L237" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_31", + "label": "``(size, mtime_ns)`` for ``path``, or ``None`` if it cannot be read. Cheap\u2026", + "_origin": "ast", + "community": 23, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "``(size, mtime_ns)`` for ``path``, or ``none`` if it cannot be read. cheap...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L31" }, { "id": "tests_test_projects_rationale_1", "label": "Tests for project persistence (core round-trip + API).", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "tests for project persistence (core round-trip + api).", "source_file": "tests/test_projects.py", @@ -56076,7 +56081,7 @@ "label": "A label-only change must not re-serialise the cell data (#29).", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "a label-only change must not re-serialise the cell data (#29).", "source_file": "tests/test_projects.py", @@ -56087,7 +56092,7 @@ "label": "Editing mass moves the cell, so its file must be rewritten (#29).", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "editing mass moves the cell, so its file must be rewritten (#29).", "source_file": "tests/test_projects.py", @@ -56098,7 +56103,7 @@ "label": "Provably untouched means the file too \u2014 not just the in-memory cell.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "provably untouched means the file too \u2014 not just the in-memory cell.", "source_file": "tests/test_projects.py", @@ -56109,7 +56114,7 @@ "label": "Save-As must produce a complete project, reuse or not (#29).", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "save-as must produce a complete project, reuse or not (#29).", "source_file": "tests/test_projects.py", @@ -56120,7 +56125,7 @@ "label": "The end-to-end guarantee: a reused save is still a loadable project.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "the end-to-end guarantee: a reused save is still a loadable project.", "source_file": "tests/test_projects.py", @@ -56131,7 +56136,7 @@ "label": "The flag itself: clean on open, dirty the moment the cell moves.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "the flag itself: clean on open, dirty the moment the cell moves.", "source_file": "tests/test_projects.py", @@ -56142,7 +56147,7 @@ "label": "#75: open works for absolute folders and project.json file paths.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "#75: open works for absolute folders and project.json file paths.", "source_file": "tests/test_projects.py", @@ -56153,7 +56158,7 @@ "label": "A project's cellpy.toml wins while open, and is dropped on close.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "a project's cellpy.toml wins while open, and is dropped on close.", "source_file": "tests/test_projects.py", @@ -56164,7 +56169,7 @@ "label": "Settings must not leak from one project into the next.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "settings must not leak from one project into the next.", "source_file": "tests/test_projects.py", @@ -56175,7 +56180,7 @@ "label": "An unparseable cellpy.toml must not stop the project from opening.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "an unparseable cellpy.toml must not stop the project from opening.", "source_file": "tests/test_projects.py", @@ -56186,7 +56191,7 @@ "label": "Pinning captures interpretation settings \u2014 never paths or credentials.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "pinning captures interpretation settings \u2014 never paths or credentials.", "source_file": "tests/test_projects.py", @@ -56197,7 +56202,7 @@ "label": "What is pinned is what a later open reproduces.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "what is pinned is what a later open reproduces.", "source_file": "tests/test_projects.py", @@ -56208,7 +56213,7 @@ "label": "A legacy .conf outranked by cellpy.toml is surfaced, not hidden (cellpy #851).", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "a legacy .conf outranked by cellpy.toml is surfaced, not hidden (cellpy #851).", "source_file": "tests/test_projects.py", @@ -56219,7 +56224,7 @@ "label": "A container points this at a volume (#119).", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "a container points this at a volume (#119).", "source_file": "tests/test_projects.py", @@ -56230,7 +56235,7 @@ "label": "Env vars carry ~ and relative paths; downstream wants one canonical root.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "env vars carry ~ and relative paths; downstream wants one canonical root.", "source_file": "tests/test_projects.py", @@ -56241,7 +56246,7 @@ "label": "Settings must not touch the filesystem \u2014 writers create what they need.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "settings must not touch the filesystem \u2014 writers create what they need.", "source_file": "tests/test_projects.py", @@ -56252,7 +56257,7 @@ "label": "End to end: point CSG_DATA_DIR at a volume and a save lands there (#119).\u2026", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "end to end: point csg_data_dir at a volume and a save lands there (#119)....", "source_file": "tests/test_projects.py", @@ -56263,7 +56268,7 @@ "label": "Interrupted save must not wipe or corrupt the previous project on disk.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "interrupted save must not wipe or corrupt the previous project on disk.", "source_file": "tests/test_projects.py", @@ -56274,7 +56279,7 @@ "label": "Wrap adapter.save_cell so a test can see how often it actually ran.", "_origin": "ast", "community": 23, - "community_name": "get_settings", + "community_name": "Library", "file_type": "rationale", "norm_label": "wrap adapter.save_cell so a test can see how often it actually ran.", "source_file": "tests/test_projects.py", @@ -56389,37 +56394,86 @@ "source_location": "L11" }, { - "id": "tests_test_api_rationale_524", - "label": "Every state key, getter and method declared at the top level of app().", + "id": "examples_mcp_server_rationale_555", + "label": "Every public callable in API_MODULES, built once and kept.", "_origin": "ast", "community": 232, - "community_name": "test_index_click_and_show_targets_exist", + "community_name": "_index", "file_type": "rationale", - "norm_label": "every state key, getter and method declared at the top level of app().", - "source_file": "tests/test_api.py", - "source_location": "L524" + "norm_label": "every public callable in api_modules, built once and kept.", + "source_file": "examples/mcp/server.py", + "source_location": "L555" }, { - "id": "tests_test_api_rationale_540", - "label": "Identifiers an Alpine expression reads from the component scope. Property\u2026", + "id": "examples_mcp_server_rationale_658", + "label": "The first line of a docstring that says something. `CellpyCell.set_mass` opens\u2026", "_origin": "ast", "community": 232, - "community_name": "test_index_click_and_show_targets_exist", + "community_name": "_index", "file_type": "rationale", - "norm_label": "identifiers an alpine expression reads from the component scope. property...", - "source_file": "tests/test_api.py", - "source_location": "L540" + "norm_label": "the first line of a docstring that says something. `cellpycell.set_mass` opens...", + "source_file": "examples/mcp/server.py", + "source_location": "L658" }, { - "id": "tests_test_api_rationale_562", - "label": "Every ``@click`` / ``x-show`` in the template resolves in the component. The\u2026", + "id": "issueflows_04_designs_and_guides_compare_cells", + "label": "compare-cells.md", "_origin": "ast", - "community": 232, - "community_name": "test_index_click_and_show_targets_exist", - "file_type": "rationale", - "norm_label": "every ``@click`` / ``x-show`` in the template resolves in the component. the...", - "source_file": "tests/test_api.py", - "source_location": "L562" + "community": 234, + "community_name": "Compare cells (#169)", + "file_type": "document", + "node_kind": "page", + "norm_label": "compare-cells.md", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_compare_cells_alternatives_considered", + "label": "Alternatives considered", + "_origin": "ast", + "community": 234, + "community_name": "Compare cells (#169)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L42" + }, + { + "id": "issueflows_04_designs_and_guides_compare_cells_compare_cells_169", + "label": "Compare cells (#169)", + "_origin": "ast", + "community": 234, + "community_name": "Compare cells (#169)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "compare cells (#169)", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_compare_cells_context", + "label": "Context", + "_origin": "ast", + "community": 234, + "community_name": "Compare cells (#169)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L3" + }, + { + "id": "issueflows_04_designs_and_guides_compare_cells_gotcha_recorded", + "label": "Gotcha recorded", + "_origin": "ast", + "community": 234, + "community_name": "Compare cells (#169)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "gotcha recorded", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L53" }, { "id": "docs_guides_01_loading_cells_1_getting_cells_into_memory", @@ -56518,210 +56572,52 @@ "source_location": "L80" }, { - "id": "cursor_skills_iflow_drive_skill", - "label": "iflow-drive/SKILL.md", + "id": "issueflows_03_solved_issues_issue28_plan", + "label": "issue28_plan.md", "_origin": "ast", - "community": 236, - "community_name": ".cancel", + "community": 238, + "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", "file_type": "document", - "frontmatter": { - "name": "iflow-drive", - "description": ">-", - "disable-model-invocation": "true", - "issue-flow-version": "0.4.2a4" - }, "node_kind": "page", - "norm_label": "iflow-drive/skill.md", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "norm_label": "issue28_plan.md", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", "source_location": "L1" }, { - "id": "agents_command_lifecycle", - "label": "Command lifecycle", - "_origin": "ast", - "community": 236, - "community_name": ".cancel", - "file_type": "document", - "node_kind": "heading", - "norm_label": "command lifecycle", - "source_file": "AGENTS.md", - "source_location": "L167" - }, - { - "id": "cursor_skills_iflow_drive_skill_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 236, - "community_name": ".cancel", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L178" - }, - { - "id": "cursor_skills_iflow_drive_skill_input", - "label": "Input", - "_origin": "ast", - "community": 236, - "community_name": ".cancel", - "file_type": "document", - "node_kind": "heading", - "norm_label": "input", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L24" - }, - { - "id": "cursor_skills_iflow_drive_skill_instructions", - "label": "Instructions", - "_origin": "ast", - "community": 236, - "community_name": ".cancel", - "file_type": "document", - "node_kind": "heading", - "norm_label": "instructions", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L83" - }, - { - "id": "cursor_skills_iflow_drive_skill_issue_flow_drive_iflow_drive", - "label": "issue-flow \u2014 drive (`/iflow-drive`)", - "_origin": "ast", - "community": 236, - "community_name": ".cancel", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue-flow \u2014 drive (`/iflow-drive`)", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L11" - }, - { - "id": "cursor_skills_iflow_drive_skill_model_execution_directive", - "label": "MODEL & EXECUTION DIRECTIVE", - "_origin": "ast", - "community": 236, - "community_name": ".cancel", - "file_type": "document", - "node_kind": "heading", - "norm_label": "model & execution directive", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L48" - }, - { - "id": "cursor_skills_iflow_drive_skill_resolve_project_root_multi_root_workspaces", - "label": "Resolve project root (multi-root workspaces)", - "_origin": "ast", - "community": 236, - "community_name": ".cancel", - "file_type": "document", - "node_kind": "heading", - "norm_label": "resolve project root (multi-root workspaces)", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L62" - }, - { - "id": "docs_issue_workflow_16_iflow_drive_compose_epic_publish_auto_all", - "label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", + "id": "issueflows_03_solved_issues_issue28_plan_approach", + "label": "Approach", "_origin": "ast", - "community": 236, - "community_name": ".cancel", + "community": 238, + "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", "file_type": "document", "node_kind": "heading", - "norm_label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", - "source_file": "docs/issue-workflow.md", - "source_location": "L550" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app", - "label": "app.js", - "_origin": "ast", - "community": 237, - "community_name": "test_index_alpine_state_is_defined", - "file_type": "code", - "norm_label": "app.js", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app_plotly_config", - "label": "PLOTLY_CONFIG", - "_origin": "ast", - "community": 237, - "community_name": "test_index_alpine_state_is_defined", - "file_type": "code", - "norm_label": "plotly_config", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L29" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app_recent_kinds", - "label": "RECENT_KINDS", - "_origin": "ast", - "community": 237, - "community_name": "test_index_alpine_state_is_defined", - "file_type": "code", - "norm_label": "recent_kinds", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L44" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_location": "L28" }, { - "id": "issueflows_03_solved_issues_issue136_plan_constraints", + "id": "issueflows_03_solved_issues_issue28_plan_constraints", "label": "Constraints", "_origin": "ast", - "community": 237, - "community_name": "test_index_alpine_state_is_defined", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue175_plan_4_ui_app_js_index_html_app_css", - "label": "4. UI (`app.js`, `index.html`, `app.css`)", - "_origin": "ast", - "community": 237, - "community_name": "test_index_alpine_state_is_defined", - "file_type": "document", - "node_kind": "heading", - "norm_label": "4. ui (`app.js`, `index.html`, `app.css`)", - "source_file": ".issueflows/03-solved-issues/issue175_plan.md", - "source_location": "L110" - }, - { - "id": "tests_test_api_rationale_475", - "label": "Every x-model in the template must exist in the component, or Alpine throws.\u2026", - "_origin": "ast", - "community": 237, - "community_name": "test_index_alpine_state_is_defined", - "file_type": "rationale", - "norm_label": "every x-model in the template must exist in the component, or alpine throws....", - "source_file": "tests/test_api.py", - "source_location": "L475" - }, - { - "id": "issueflows_03_solved_issues_issue28_plan", - "label": "issue28_plan.md", - "_origin": "ast", "community": 238, "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", "file_type": "document", - "node_kind": "page", - "norm_label": "issue28_plan.md", + "node_kind": "heading", + "norm_label": "constraints", "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L1" + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue28_plan_constraints", - "label": "Constraints", + "id": "issueflows_03_solved_issues_issue28_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", "community": 238, "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", + "norm_label": "files to touch", "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L7" + "source_location": "L50" }, { "id": "issueflows_03_solved_issues_issue28_plan_goal", @@ -56784,28 +56680,28 @@ "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_manage_cells_modal_behaviour", - "label": "Behaviour", + "id": "issueflows_04_designs_and_guides_manage_cells_modal_manage_cells_modal", + "label": "Manage cells modal", "_origin": "ast", "community": 238, "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", "file_type": "document", "node_kind": "heading", - "norm_label": "behaviour", + "norm_label": "manage cells modal", "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", - "source_location": "L5" + "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_manage_cells_modal_manage_cells_modal", - "label": "Manage cells modal", + "id": "issueflows_04_designs_and_guides_manage_cells_modal_plot_refresh_timing_issue_184", + "label": "Plot refresh timing (issue #184)", "_origin": "ast", "community": 238, "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", "file_type": "document", "node_kind": "heading", - "norm_label": "manage cells modal", + "norm_label": "plot refresh timing (issue #184)", "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", - "source_location": "L1" + "source_location": "L24" }, { "id": "issueflows_04_designs_and_guides_manage_cells_modal_ui_location", @@ -56817,7 +56713,7 @@ "node_kind": "heading", "norm_label": "ui location", "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", - "source_location": "L24" + "source_location": "L41" }, { "id": "issueflows_05_epics_next_phase_deployment_and_docs", @@ -56928,62 +56824,148 @@ "source_location": "L29" }, { - "id": "issueflows_03_solved_issues_issue31_status", - "label": "issue31_status.md", + "id": "issueflows_03_solved_issues_issue54_status", + "label": "issue54_status.md", + "_origin": "ast", + "community": 240, + "community_name": "Issue #54 status", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue54_status.md", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue54_status_issue_54_status", + "label": "Issue #54 status", + "_origin": "ast", + "community": 240, + "community_name": "Issue #54 status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #54 status", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue54_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 240, + "community_name": "Issue #54 status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue54_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 240, + "community_name": "Issue #54 status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue55_status", + "label": "issue55_status.md", "_origin": "ast", "community": 242, - "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", + "community_name": "Issue #55 \u2014 Status", "file_type": "document", "node_kind": "page", - "norm_label": "issue31_status.md", - "source_file": ".issueflows/03-solved-issues/issue31_status.md", + "norm_label": "issue55_status.md", + "source_file": ".issueflows/03-solved-issues/issue55_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue31_status_issue_31_status_iterative_fixes_export_download_location", - "label": "Issue #31 status \u2014 Iterative fixes: export download location", + "id": "issueflows_03_solved_issues_issue55_status_issue_55_status", + "label": "Issue #55 \u2014 Status", "_origin": "ast", "community": 242, - "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", + "community_name": "Issue #55 \u2014 Status", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #31 status \u2014 iterative fixes: export download location", - "source_file": ".issueflows/03-solved-issues/issue31_status.md", + "norm_label": "issue #55 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue55_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue31_status_iterative_fixes_log", - "label": "Iterative fixes log", + "id": "issueflows_03_solved_issues_issue55_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 242, - "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", + "community_name": "Issue #55 \u2014 Status", "file_type": "document", "node_kind": "heading", - "norm_label": "iterative fixes log", - "source_file": ".issueflows/03-solved-issues/issue31_status.md", - "source_location": "L7" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue55_status.md", + "source_location": "L15" }, { - "id": "tests_test_mcp_prototype_py_parametrize", - "label": "parametrize", + "id": "issueflows_03_solved_issues_issue55_status_what_s_done", + "label": "What's done", "_origin": "ast", - "community": 245, - "community_name": "test_paths_outside_the_sandbox_are_refused", - "file_type": "code", - "norm_label": "parametrize", - "source_file": "", - "source_location": "" + "community": 242, + "community_name": "Issue #55 \u2014 Status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue55_status.md", + "source_location": "L5" }, { - "id": "tests_test_mcp_prototype_rationale_167", - "label": "The caller is a model acting on text it may have read somewhere.", + "id": "issueflows_03_solved_issues_issue72_status", + "label": "issue72_status.md", "_origin": "ast", - "community": 245, - "community_name": "test_paths_outside_the_sandbox_are_refused", - "file_type": "rationale", - "norm_label": "the caller is a model acting on text it may have read somewhere.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L167" + "community": 243, + "community_name": "Issue #72 status", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue72_status.md", + "source_file": ".issueflows/03-solved-issues/issue72_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue72_status_issue_72_status", + "label": "Issue #72 status", + "_origin": "ast", + "community": 243, + "community_name": "Issue #72 status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #72 status", + "source_file": ".issueflows/03-solved-issues/issue72_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue72_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 243, + "community_name": "Issue #72 status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue72_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue72_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 243, + "community_name": "Issue #72 status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue72_status.md", + "source_location": "L5" }, { "id": "issueflows_03_solved_issues_issue169_original", @@ -57022,40 +57004,15 @@ "source_location": "L5" }, { - "id": "skills_readme", - "label": "skills/README.md", - "_origin": "ast", - "community": 248, - "community_name": "skills/README.md", - "file_type": "document", - "node_kind": "page", - "norm_label": "skills/readme.md", - "source_file": "skills/README.md", - "source_location": "L1" - }, - { - "id": "skills_readme_cellpy_app", - "label": "`cellpy-app`", - "_origin": "ast", - "community": 248, - "community_name": "skills/README.md", - "file_type": "document", - "node_kind": "heading", - "norm_label": "`cellpy-app`", - "source_file": "skills/README.md", - "source_location": "L6" - }, - { - "id": "skills_readme_skills", - "label": "Skills", + "id": "examples_mcp_server_rationale_178", + "label": "Which cellpy loaders exist, and which can actually run on this machine.", "_origin": "ast", - "community": 248, - "community_name": "skills/README.md", - "file_type": "document", - "node_kind": "heading", - "norm_label": "skills", - "source_file": "skills/README.md", - "source_location": "L1" + "community": 249, + "community_name": "list_instruments", + "file_type": "rationale", + "norm_label": "which cellpy loaders exist, and which can actually run on this machine.", + "source_file": "examples/mcp/server.py", + "source_location": "L178" }, { "id": "cursor_skills_iflow_pr_sync_skill", @@ -57400,153 +57357,48 @@ "source_location": "L20" }, { - "id": "cursor_skills_gh_ci_skill", - "label": "gh-ci/SKILL.md", - "_origin": "ast", - "community": 258, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", - "file_type": "document", - "frontmatter": { - "name": "gh-ci", - "description": ">-", - "issue-flow-version": "0.4.2a4" - }, - "node_kind": "page", - "norm_label": "gh-ci/skill.md", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L1" - }, - { - "id": "cursor_skills_gh_ci_skill_fallback_workflow_runs", - "label": "Fallback (workflow runs)", - "_origin": "ast", - "community": 258, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "fallback (workflow runs)", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L34" - }, - { - "id": "cursor_skills_gh_ci_skill_gh_ci_wait_on_github_ci_with_gh", - "label": "gh-ci \u2014 wait on GitHub CI with `gh`", - "_origin": "ast", - "community": 258, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "gh-ci \u2014 wait on github ci with `gh`", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L12" - }, - { - "id": "cursor_skills_gh_ci_skill_primary_pr_attached_checks", - "label": "Primary (PR-attached checks)", - "_origin": "ast", - "community": 258, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "primary (pr-attached checks)", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L17" - }, - { - "id": "cursor_skills_gh_ci_skill_semantics", - "label": "Semantics", + "id": "tests_test_mcp_prototype_rationale_110", + "label": "The trap made visible: fewer points than rows, reported rather than hidden.", "_origin": "ast", - "community": 258, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "semantics", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L47" + "community": 256, + "community_name": "test_a_default_direction_plot_says_it_drew_less", + "file_type": "rationale", + "norm_label": "the trap made visible: fewer points than rows, reported rather than hidden.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L110" }, { - "id": "cursor_skills_gh_ci_skill_where_this_fits", - "label": "Where this fits", + "id": "tests_test_mcp_prototype_rationale_178", + "label": "A write primitive outside the boundary would make the read check decor.", "_origin": "ast", "community": 258, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "where this fits", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L55" - }, - { - "id": "issueflows_03_solved_issues_issue60_original", - "label": "issue60_original.md", - "_origin": "ast", - "community": 259, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue60_original.md", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue60_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 259, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L22" - }, - { - "id": "issueflows_03_solved_issues_issue60_original_issue_60_fix_summary_y_ranges_warn_miss_on_charge_capacity_facet", - "label": "Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet", - "_origin": "ast", - "community": 259, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #60: fix: summary y_ranges warn/miss on charge_capacity facet", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue60_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 259, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L5" + "community_name": "test_writes_are_sandboxed_too", + "file_type": "rationale", + "norm_label": "a write primitive outside the boundary would make the read check decor.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L178" }, { - "id": "issueflows_03_solved_issues_issue60_original_out_of_scope", - "label": "Out of scope", + "id": "tests_test_mcp_prototype_rationale_196", + "label": "Error text is read by a model, so it has to name the next call.", "_origin": "ast", "community": 259, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L27" + "community_name": "test_unknown_handles_and_kinds_are_told_what_to_do", + "file_type": "rationale", + "norm_label": "error text is read by a model, so it has to name the next call.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L196" }, { - "id": "issueflows_03_solved_issues_issue60_original_problem_context", - "label": "Problem / context", + "id": "tests_test_mcp_prototype_rationale_243", + "label": "The finding this family turns on. `CellpyCell.get_cap` points at the\u2026", "_origin": "ast", - "community": 259, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L7" + "community": 261, + "community_name": "test_describe_api_follows_the_reference_the_docstring_points_at", + "file_type": "rationale", + "norm_label": "the finding this family turns on. `cellpycell.get_cap` points at the...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L243" }, { "id": "cursor_skills_iflow_ops_skill", @@ -57626,6 +57478,18 @@ "source_file": ".cursor/skills/iflow-ops/SKILL.md", "source_location": "L36" }, + { + "id": "cellpy_painpoints_3_silent_all_or_nothing_group_averaging_when_any_group_is_a_singleton", + "label": "3. \ud83d\udfe0 Silent all-or-nothing group-averaging when any group is a singleton", + "_origin": "ast", + "community": 265, + "community_name": "2. Cells into a Collection", + "file_type": "document", + "node_kind": "heading", + "norm_label": "3. \ud83d\udfe0 silent all-or-nothing group-averaging when any group is a singleton", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L171" + }, { "id": "docs_guides_02_collections_2_cells_into_a_collection", "label": "2. Cells into a Collection", @@ -57710,6 +57574,17 @@ "source_file": "docs/guides/02-collections.md", "source_location": "L278" }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_643", + "label": "True when the collection carries averaged (mean/std) series.", + "_origin": "ast", + "community": 265, + "community_name": "2. Cells into a Collection", + "file_type": "rationale", + "norm_label": "true when the collection carries averaged (mean/std) series.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L643" + }, { "id": "docs_guides_07_delegation_7_what_cellpy_will_and_will_not_do_for_you", "label": "7. What cellpy will and will not do for you", @@ -57878,6 +57753,17 @@ "source_file": ".issueflows/03-solved-issues/issue173_status.md", "source_location": "L11" }, + { + "id": "tests_test_mcp_prototype_rationale_264", + "label": "`self` in a rendered signature invites a model to pass it.", + "_origin": "ast", + "community": 269, + "community_name": "test_describe_api_renders_a_method_the_way_you_would_call_it", + "file_type": "rationale", + "norm_label": "`self` in a rendered signature invites a model to pass it.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L264" + }, { "id": "cursor_skills_iflow_plan_skill", "label": "iflow-plan/SKILL.md", @@ -58154,27 +58040,49 @@ "source_location": "L5" }, { - "id": "issueflows_01_current_issues_issue186_original", - "label": "issue186_original.md", + "id": "tests_test_mcp_prototype_rationale_297", + "label": "`utils.helpers` re-exports `CellpyCell`; a path through it sends the reader to\u2026", "_origin": "ast", "community": 274, - "community_name": "issue186_original.md", + "community_name": "test_search_api_points_at_the_module_that_defines_the_call", + "file_type": "rationale", + "norm_label": "`utils.helpers` re-exports `cellpycell`; a path through it sends the reader to...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L297" + }, + { + "id": "tests_test_packaging_rationale_70", + "label": "Not just None: a detached handle raises on write.", + "_origin": "ast", + "community": 275, + "community_name": "test_stderr_usable_rejects_a_broken_handle", + "file_type": "rationale", + "norm_label": "not just none: a detached handle raises on write.", + "source_file": "tests/test_packaging.py", + "source_location": "L70" + }, + { + "id": "issueflows_01_current_issues_issue184_original", + "label": "issue184_original.md", + "_origin": "ast", + "community": 276, + "community_name": "issue184_original.md", "file_type": "document", "node_kind": "page", - "norm_label": "issue186_original.md", - "source_file": ".issueflows/01-current-issues/issue186_original.md", + "norm_label": "issue184_original.md", + "source_file": ".issueflows/01-current-issues/issue184_original.md", "source_location": "L1" }, { - "id": "issueflows_01_current_issues_issue186_original_186_y_ranges_not_working_for_cycle_summary_grouped_with_spread", - "label": "#186 \u2014 y ranges not working for cycle summary grouped with spread", + "id": "issueflows_01_current_issues_issue184_original_184_update_plots_when_cells_modal_closes", + "label": "#184 \u2014 update plots when cells modal closes", "_origin": "ast", - "community": 274, - "community_name": "issue186_original.md", + "community": 276, + "community_name": "issue184_original.md", "file_type": "document", "node_kind": "heading", - "norm_label": "#186 \u2014 y ranges not working for cycle summary grouped with spread", - "source_file": ".issueflows/01-current-issues/issue186_original.md", + "norm_label": "#184 \u2014 update plots when cells modal closes", + "source_file": ".issueflows/01-current-issues/issue184_original.md", "source_location": "L1" }, { @@ -58243,12 +58151,36 @@ "source_file": "tests/test_ingest.py", "source_location": "L70" }, + { + "id": "issueflows_03_solved_issues_issue186_original", + "label": "issue186_original.md", + "_origin": "ast", + "community": 279, + "community_name": "issue186_original.md", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue186_original.md", + "source_file": ".issueflows/03-solved-issues/issue186_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue186_original_186_y_ranges_not_working_for_cycle_summary_grouped_with_spread", + "label": "#186 \u2014 y ranges not working for cycle summary grouped with spread", + "_origin": "ast", + "community": 279, + "community_name": "issue186_original.md", + "file_type": "document", + "node_kind": "heading", + "norm_label": "#186 \u2014 y ranges not working for cycle summary grouped with spread", + "source_file": ".issueflows/03-solved-issues/issue186_original.md", + "source_location": "L1" + }, { "id": "binaryio", "label": "BinaryIO", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "code", "norm_label": "binaryio", "source_file": "", @@ -58259,7 +58191,7 @@ "label": "routers/uploads.py", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "code", "norm_label": "routers/uploads.py", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", @@ -58270,7 +58202,7 @@ "label": "delete", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "code", "norm_label": "delete", "source_file": "", @@ -58281,7 +58213,7 @@ "label": "get", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "code", "norm_label": "get", "source_file": "", @@ -58292,7 +58224,7 @@ "label": "post", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "code", "norm_label": "post", "source_file": "", @@ -58303,18 +58235,29 @@ "label": "core/__init__.py", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "code", "norm_label": "core/__init__.py", "source_file": "src/cellpy_simple_gui/core/__init__.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_core_library", + "label": "library.py", + "_origin": "ast", + "community": 28, + "community_name": "library.py", + "file_type": "code", + "norm_label": "library.py", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L1" + }, { "id": "src_cellpy_simple_gui_core_uploads", "label": "core/uploads.py", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "code", "norm_label": "core/uploads.py", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58325,7 +58268,7 @@ "label": "Path", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "code", "norm_label": "path", "source_file": "", @@ -58336,7 +58279,7 @@ "label": "ValueError", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "code", "norm_label": "valueerror", "source_file": "", @@ -58347,7 +58290,7 @@ "label": "UploadFile", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "code", "norm_label": "uploadfile", "source_file": "", @@ -58358,7 +58301,7 @@ "label": "Bringing files in through the browser (#133). Upload writes into\u2026", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "bringing files in through the browser (#133). upload writes into...", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", @@ -58369,7 +58312,7 @@ "label": "Accept one or more files; report what landed and what did not. A rejected file\u2026", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "accept one or more files; report what landed and what did not. a rejected file...", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", @@ -58380,7 +58323,7 @@ "label": "Delete every uploaded file. Never happens on a timer \u2014 see core.uploads.", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "delete every uploaded file. never happens on a timer \u2014 see core.uploads.", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", @@ -58391,18 +58334,29 @@ "label": "Core layer: pure-Python domain logic for cellpy-simple-gui. Nothing in this\u2026", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "core layer: pure-python domain logic for cellpy-simple-gui. nothing in this...", "source_file": "src/cellpy_simple_gui/core/__init__.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_1", + "label": "In-memory library of loaded cells \u2014 the backend's source of truth. For a\u2026", + "_origin": "ast", + "community": 28, + "community_name": "library.py", + "file_type": "rationale", + "norm_label": "in-memory library of loaded cells \u2014 the backend's source of truth. for a...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L1" + }, { "id": "src_cellpy_simple_gui_core_uploads_rationale_1", "label": "Files brought in through the browser (#133). A served instance may only read\u2026", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "files brought in through the browser (#133). a served instance may only read...", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58413,7 +58367,7 @@ "label": "What is sitting in the uploads folder, so it is not a mystery.", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "what is sitting in the uploads folder, so it is not a mystery.", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58424,7 +58378,7 @@ "label": "Delete every uploaded file. Uploads are never pruned automatically. Between\u2026", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "delete every uploaded file. uploads are never pruned automatically. between...", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58435,7 +58389,7 @@ "label": "The upload cannot be accepted \u2014 bad name, too large, nowhere to put it.", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "the upload cannot be accepted \u2014 bad name, too large, nowhere to put it.", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58446,7 +58400,7 @@ "label": "Where uploads live: ``/uploads``. Inside the sandbox on purpose, so\u2026", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "where uploads live: ``/uploads``. inside the sandbox on purpose, so...", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58457,7 +58411,7 @@ "label": "A filename we are willing to create. Only the final component is considered, so\u2026", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "a filename we are willing to create. only the final component is considered, so...", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58468,7 +58422,7 @@ "label": "Never silently overwrite: two uploads of `cell.h5` are two files.", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "never silently overwrite: two uploads of `cell.h5` are two files.", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58479,79 +58433,12 @@ "label": "Stream one upload to disk, refusing it if it grows past the cap.", "_origin": "ast", "community": 28, - "community_name": "core/__init__.py", + "community_name": "library.py", "file_type": "rationale", "norm_label": "stream one upload to disk, refusing it if it grows past the cap.", "source_file": "src/cellpy_simple_gui/core/uploads.py", "source_location": "L89" }, - { - "id": "examples_mcp_server_py_valueerror", - "label": "ValueError", - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "code", - "norm_label": "valueerror", - "source_file": "", - "source_location": "" - }, - { - "id": "issueflows_04_designs_and_guides_mcp_server_design_hard_part_2_file_access", - "label": "Hard part 2 \u2014 file access", - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "document", - "node_kind": "heading", - "norm_label": "hard part 2 \u2014 file access", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L119" - }, - { - "id": "examples_mcp_server_rationale_410", - "label": "Draw a collection and write the figure to `path` (.json or .html).\u2026", - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "rationale", - "norm_label": "draw a collection and write the figure to `path` (.json or .html)....", - "source_file": "examples/mcp/server.py", - "source_location": "L410" - }, - { - "id": "examples_mcp_server_rationale_451", - "label": "Write the collected frame to `path` (.csv, .parquet or .json).", - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "rationale", - "norm_label": "write the collected frame to `path` (.csv, .parquet or .json).", - "source_file": "examples/mcp/server.py", - "source_location": "L451" - }, - { - "id": "examples_mcp_server_rationale_84", - "label": "The request is not allowed. The message is meant for the model to read.", - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "rationale", - "norm_label": "the request is not allowed. the message is meant for the model to read.", - "source_file": "examples/mcp/server.py", - "source_location": "L84" - }, - { - "id": "examples_mcp_server_rationale_93", - "label": "Resolve a caller-supplied path inside ROOT, or refuse it. The volume is settled\u2026", - "_origin": "ast", - "community": 280, - "community_name": "Refused", - "file_type": "rationale", - "norm_label": "resolve a caller-supplied path inside root, or refuse it. the volume is settled...", - "source_file": "examples/mcp/server.py", - "source_location": "L93" - }, { "id": "docs_guides_readme_building_on_cellpy", "label": "Building on cellpy", @@ -58755,6 +58642,30 @@ "source_file": "examples/starter/README.md", "source_location": "L91" }, + { + "id": "issueflows_03_solved_issues_issue169_plan_2_core_core_collect_py", + "label": "2. Core \u2014 `core/collect.py`", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "2. core \u2014 `core/collect.py`", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L113" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_3_core_core_plotting_py", + "label": "3. Core \u2014 `core/plotting.py`", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "3. core \u2014 `core/plotting.py`", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L136" + }, { "id": "issueflows_03_solved_issues_issue169_plan_prior_art", "label": "Prior art", @@ -58768,55 +58679,163 @@ "source_location": "L64" }, { - "id": "issueflows_03_solved_issues_issue169_plan_what_exists_today_and_the_gap", - "label": "What exists today, and the gap", + "id": "issueflows_03_solved_issues_issue175_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "what exists today, and the gap", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L13" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue175_plan.md", + "source_location": "L38" }, { - "id": "issueflows_03_solved_issues_issue81_plan", - "label": "issue81_plan.md", + "id": "issueflows_03_solved_issues_issue28_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue2_status", + "label": "issue2_status.md", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "page", - "norm_label": "issue81_plan.md", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "norm_label": "issue2_status.md", + "source_file": ".issueflows/03-solved-issues/issue2_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue81_plan_approach", - "label": "Approach", + "id": "issueflows_03_solved_issues_issue2_status_issue_2_status", + "label": "Issue #2 status", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L27" + "norm_label": "issue #2 status", + "source_file": ".issueflows/03-solved-issues/issue2_status.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue81_plan_constraints", - "label": "Constraints", + "id": "issueflows_03_solved_issues_issue2_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L9" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue2_status.md", + "source_location": "L20" }, { - "id": "issueflows_03_solved_issues_issue81_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue2_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue2_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue32_status", + "label": "issue32_status.md", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue32_status.md", + "source_file": ".issueflows/03-solved-issues/issue32_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue32_status_issue_32_status", + "label": "Issue #32 \u2014 Status", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #32 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue32_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue32_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue32_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue32_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue32_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue37_status", + "label": "issue37_status.md", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue37_status.md", + "source_file": ".issueflows/03-solved-issues/issue37_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue37_status_progress", + "label": "Progress", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "progress", + "source_file": ".issueflows/03-solved-issues/issue37_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue37_status_status_issue_37", + "label": "Status \u2014 Issue #37", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 issue #37", + "source_file": ".issueflows/03-solved-issues/issue37_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 3, @@ -58824,47 +58843,59 @@ "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L49" + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L75" }, { - "id": "issueflows_03_solved_issues_issue81_plan_goal", - "label": "Goal", + "id": "issueflows_03_solved_issues_issue38_status", + "label": "issue38_status.md", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L3" + "node_kind": "page", + "norm_label": "issue38_status.md", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue81_plan_issue_81_plan_consistent_ce_summary_panel_order", - "label": "Issue #81 \u2014 Plan: consistent CE summary panel order", + "id": "issueflows_03_solved_issues_issue38_status_issue_38_status", + "label": "Issue #38 status", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #81 \u2014 plan: consistent ce summary panel order", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "norm_label": "issue #38 status", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue81_plan_open_questions", - "label": "Open questions", + "id": "issueflows_03_solved_issues_issue38_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L67" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "source_location": "L14" }, { - "id": "issueflows_03_solved_issues_issue81_plan_prior_art", + "id": "issueflows_03_solved_issues_issue38_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue55_plan_prior_art", "label": "Prior art", "_origin": "ast", "community": 3, @@ -58872,20 +58903,32 @@ "file_type": "document", "node_kind": "heading", "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L26" + }, + { + "id": "issueflows_03_solved_issues_issue81_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L18" + "source_location": "L9" }, { - "id": "issueflows_03_solved_issues_issue81_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_03_solved_issues_issue81_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", + "norm_label": "prior art", "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L59" + "source_location": "L18" }, { "id": "issueflows_03_solved_issues_issue81_status", @@ -58936,27 +58979,40 @@ "source_location": "L5" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_hover", - "label": "Hover", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cycles_pane_curve_kinds_95", + "label": "Cycles pane curve kinds (#95)", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "hover", + "norm_label": "cycles pane curve kinds (#95)", "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L150" + "source_location": "L140" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_rationale_26", - "label": "Curated summary plot types, with panel ids for the current capacity basis.\u2026", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_removed_in_the_2_1_2a2_cleanup", + "label": "Removed in the 2.1.2a2 cleanup", "_origin": "ast", "community": 3, "community_name": "collect.py", - "file_type": "rationale", - "norm_label": "curated summary plot types, with panel ids for the current capacity basis....", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L26" + "file_type": "document", + "node_kind": "heading", + "norm_label": "removed in the 2.1.2a2 cleanup", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L53" + }, + { + "id": "issueflows_04_designs_and_guides_compare_cells_decision", + "label": "Decision", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L12" }, { "id": "src_cellpy_simple_gui_core_collect_rationale_1", @@ -58992,59 +59048,81 @@ "source_location": "L1130" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1174", - "label": "True when PX facet annotations sit on the right edge (collide with legend).", + "id": "src_cellpy_simple_gui_core_collect_rationale_1222", + "label": "Facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. PX\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "true when px facet annotations sit on the right edge (collide with legend).", + "norm_label": "facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. px...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1174" + "source_location": "L1222" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1206", - "label": "Which cell a per-cell facet trace belongs to. Plotly Express writes\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1250", + "label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation.\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "which cell a per-cell facet trace belongs to. plotly express writes...", + "norm_label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1206" + "source_location": "L1250" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1222", - "label": "Facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. PX\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1333", + "label": "Turn ``#RRGGBB`` into ``rgba(r,g,b,a)`` for translucent Plotly fills.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. px...", + "norm_label": "turn ``#rrggbb`` into ``rgba(r,g,b,a)`` for translucent plotly fills.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1222" + "source_location": "L1333" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1250", - "label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation.\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_134", + "label": "Every summary family cellpy registers, marked available or not (#97).\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation....", + "norm_label": "every summary family cellpy registers, marked available or not (#97)....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1250" + "source_location": "L134" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_134", - "label": "Every summary family cellpy registers, marked available or not (#97).\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1346", + "label": "Cycle a discrete colorway across legend series (name / legendgroup).", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "every summary family cellpy registers, marked available or not (#97)....", + "norm_label": "cycle a discrete colorway across legend series (name / legendgroup).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L134" + "source_location": "L1346" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_1441", + "label": "Serialise a tidy polars frame in-memory. Returns (bytes, media_type).", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "rationale", + "norm_label": "serialise a tidy polars frame in-memory. returns (bytes, media_type).", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1441" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_1458", + "label": "Serialise a collection's tidy frame in-memory. Returns (bytes, media_type).", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "rationale", + "norm_label": "serialise a collection's tidy frame in-memory. returns (bytes, media_type).", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1458" }, { "id": "src_cellpy_simple_gui_core_collect_rationale_183", @@ -59090,6 +59168,17 @@ "source_file": "src/cellpy_simple_gui/core/collect.py", "source_location": "L237" }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_261", + "label": "Which of ``columns`` the loaded cells do not actually carry. A family's\u2026", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "rationale", + "norm_label": "which of ``columns`` the loaded cells do not actually carry. a family's...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L261" + }, { "id": "src_cellpy_simple_gui_core_collect_rationale_273", "label": "Columns for a registry family, resolved against the loaded cells.", @@ -59167,6 +59256,17 @@ "source_file": "src/cellpy_simple_gui/core/collect.py", "source_location": "L407" }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_433", + "label": "``variable \u2192`` unit-bearing axis title via cellpy label builders (#38).", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "rationale", + "norm_label": "``variable \u2192`` unit-bearing axis title via cellpy label builders (#38).", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L433" + }, { "id": "src_cellpy_simple_gui_core_collect_rationale_438", "label": "Panel descriptors (column id + short label) for summary y-range widgets.", @@ -59190,125 +59290,114 @@ "source_location": "L446" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_681", - "label": "Min/max over finite numeric samples on trace ``x`` or ``y``. When ``axis_id``\u2026", - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "rationale", - "norm_label": "min/max over finite numeric samples on trace ``x`` or ``y``. when ``axis_id``...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L681" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_721", - "label": "Turn ``[lo|None, hi|None]`` into a concrete ``[lo, hi]`` using data.", + "id": "src_cellpy_simple_gui_core_collect_rationale_471", + "label": "Collect summaries, optionally under a family's own :class:`SummaryOptions`.\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "turn ``[lo|none, hi|none]`` into a concrete ``[lo, hi]`` using data.", + "norm_label": "collect summaries, optionally under a family's own :class:`summaryoptions`....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L721" + "source_location": "L471" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_754", - "label": "Pin axes to ``[lo, hi]``; missing ends use the data extent.", + "id": "src_cellpy_simple_gui_core_collect_rationale_536", + "label": "Collect DVA (dV/dQ) curves \u2014 the sibling of :func:`ica_collection`. cellpy\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "pin axes to ``[lo, hi]``; missing ends use the data extent.", + "norm_label": "collect dva (dv/dq) curves \u2014 the sibling of :func:`ica_collection`. cellpy...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L754" + "source_location": "L536" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_774", - "label": "Give spread traces the hover the plain group-average plot already has (#40).\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_550", + "label": "Filter a collected ICA frame to one half-cycle for **export**. Mirrors what\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "give spread traces the hover the plain group-average plot already has (#40)....", + "norm_label": "filter a collected ica frame to one half-cycle for **export**. mirrors what...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L774" + "source_location": "L550" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_808", - "label": "Match the fields the non-averaged plot shows: series, variable, x, y.", + "id": "src_cellpy_simple_gui_core_collect_rationale_66", + "label": "The ``cell`` label each record gets in a collected frame, in order. This is the\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "match the fields the non-averaged plot shows: series, variable, x, y.", + "norm_label": "the ``cell`` label each record gets in a collected frame, in order. this is the...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L808" + "source_location": "L66" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_816", - "label": "Put the band half-width on the mean trace so hover can show ``\u00b1 std``.", + "id": "src_cellpy_simple_gui_core_collect_rationale_681", + "label": "Min/max over finite numeric samples on trace ``x`` or ``y``. When ``axis_id``\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "put the band half-width on the mean trace so hover can show ``\u00b1 std``.", + "norm_label": "min/max over finite numeric samples on trace ``x`` or ``y``. when ``axis_id``...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L816" + "source_location": "L681" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_834", - "label": "Traces grouped by the subplot they live on, in figure order.", + "id": "src_cellpy_simple_gui_core_collect_rationale_721", + "label": "Turn ``[lo|None, hi|None]`` into a concrete ``[lo, hi]`` using data.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "traces grouped by the subplot they live on, in figure order.", + "norm_label": "turn ``[lo|none, hi|none]`` into a concrete ``[lo, hi]`` using data.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L834" + "source_location": "L721" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_843", - "label": "The y-axis title for ``y``/``y2``/\u2026 \u2014 what names the facet on screen.", + "id": "src_cellpy_simple_gui_core_collect_rationale_754", + "label": "Pin axes to ``[lo, hi]``; missing ends use the data extent.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "the y-axis title for ``y``/``y2``/... \u2014 what names the facet on screen.", + "norm_label": "pin axes to ``[lo, hi]``; missing ends use the data extent.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L843" + "source_location": "L754" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_925", - "label": "Raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_86", + "label": "Build a cellpy ``Batch`` from library records (labels/groups/selection).", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2...", + "norm_label": "build a cellpy ``batch`` from library records (labels/groups/selection).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L925" + "source_location": "L86" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_954", - "label": "Raw traces annotated with step/cycle info, via cellpy's ``cycle_info_plot``.\u2026", + "id": "src_cellpy_simple_gui_core_library_rationale_45", + "label": "A loaded cell plus its mutable, user-editable metadata.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "raw traces annotated with step/cycle info, via cellpy's ``cycle_info_plot``....", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L954" + "norm_label": "a loaded cell plus its mutable, user-editable metadata.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L45" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_981", - "label": "Say so when cellpy downsampled \u2014 a silently thinned plot is misleading.\u2026", + "id": "src_cellpy_simple_gui_core_models_rationale_125", + "label": "Drives a cellpy ``collect_cycles`` collection. With ``cell_id`` set: one\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "say so when cellpy downsampled \u2014 a silently thinned plot is misleading....", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L981" + "norm_label": "drives a cellpy ``collect_cycles`` collection. with ``cell_id`` set: one...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L125" }, { "id": "httpexception", @@ -59321,17 +59410,6 @@ "source_file": "", "source_location": "" }, - { - "id": "runtimeerror", - "label": "RuntimeError", - "_origin": "ast", - "community": 30, - "community_name": "routers/export.py", - "file_type": "code", - "norm_label": "runtimeerror", - "source_file": "", - "source_location": "" - }, { "id": "src_cellpy_simple_gui_api_routers_export", "label": "routers/export.py", @@ -59431,50 +59509,6 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L113" }, - { - "id": "src_cellpy_simple_gui_core_export_rationale_52", - "label": "Static figure export failed (often missing kaleido or its browser).", - "_origin": "ast", - "community": 30, - "community_name": "routers/export.py", - "file_type": "rationale", - "norm_label": "static figure export failed (often missing kaleido or its browser).", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L52" - }, - { - "id": "tests_conftest", - "label": "conftest.py", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "conftest.py", - "source_file": "tests/conftest.py", - "source_location": "L1" - }, - { - "id": "tests_test_agent_docs", - "label": "test_agent_docs.py", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_agent_docs.py", - "source_file": "tests/test_agent_docs.py", - "source_location": "L1" - }, - { - "id": "tests_test_agent_docs_py_fixture", - "label": "fixture", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "fixture", - "source_file": "", - "source_location": "" - }, { "id": "tests_test_api_reference", "label": "test_api_reference.py", @@ -59519,6 +59553,17 @@ "source_file": "", "source_location": "" }, + { + "id": "tests_test_journal", + "label": "test_journal.py", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_journal.py", + "source_file": "tests/test_journal.py", + "source_location": "L1" + }, { "id": "tests_test_starter", "label": "test_starter.py", @@ -59541,83 +59586,6 @@ "source_file": "", "source_location": "" }, - { - "id": "tests_conftest_rationale_1", - "label": "Shared test fixtures. The example cells are downloaded from GitHub on first use\u2026", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "shared test fixtures. the example cells are downloaded from github on first use...", - "source_file": "tests/conftest.py", - "source_location": "L1" - }, - { - "id": "tests_test_agent_docs_rationale_1", - "label": "`llms.txt`, `llms-full.txt` and the Claude Skill (#127). These are the\u2026", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "`llms.txt`, `llms-full.txt` and the claude skill (#127). these are the...", - "source_file": "tests/test_agent_docs.py", - "source_location": "L1" - }, - { - "id": "tests_test_agent_docs_rationale_100", - "label": "The API listing is the cheap half. These are why the skill exists.", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "the api listing is the cheap half. these are why the skill exists.", - "source_file": "tests/test_agent_docs.py", - "source_location": "L100" - }, - { - "id": "tests_test_agent_docs_rationale_116", - "label": "Installed elsewhere, the skill has no repo to fall back on.", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "installed elsewhere, the skill has no repo to fall back on.", - "source_file": "tests/test_agent_docs.py", - "source_location": "L116" - }, - { - "id": "tests_test_agent_docs_rationale_55", - "label": "A dead link in an index written for machines is silent until it is not.", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "a dead link in an index written for machines is silent until it is not.", - "source_file": "tests/test_agent_docs.py", - "source_location": "L55" - }, - { - "id": "tests_test_agent_docs_rationale_65", - "label": "Adding a guide without listing it is the easy mistake; catch it here.", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "adding a guide without listing it is the easy mistake; catch it here.", - "source_file": "tests/test_agent_docs.py", - "source_location": "L65" - }, - { - "id": "tests_test_agent_docs_rationale_72", - "label": "An index is cheap; the concatenation is what an agent will rely on.", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "an index is cheap; the concatenation is what an agent will rely on.", - "source_file": "tests/test_agent_docs.py", - "source_location": "L72" - }, { "id": "tests_test_api_reference_rationale_1", "label": "Keep `docs/api-reference.md` honest (#127). The reference exists so an agent\u2026", @@ -59717,6 +59685,39 @@ "source_file": "tests/test_guides.py", "source_location": "L45" }, + { + "id": "tests_test_journal_rationale_1", + "label": "Tests for loading native cellpy batch journals.", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "rationale", + "norm_label": "tests for loading native cellpy batch journals.", + "source_file": "tests/test_journal.py", + "source_location": "L1" + }, + { + "id": "tests_test_journal_rationale_10", + "label": "Write a real cellpy batch journal referencing the bundled example files.", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "rationale", + "norm_label": "write a real cellpy batch journal referencing the bundled example files.", + "source_file": "tests/test_journal.py", + "source_location": "L10" + }, + { + "id": "tests_test_journal_rationale_52", + "label": "A journal pointing at non-existent .cellpy files yields no linkable cells.", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "rationale", + "norm_label": "a journal pointing at non-existent .cellpy files yields no linkable cells.", + "source_file": "tests/test_journal.py", + "source_location": "L52" + }, { "id": "tests_test_starter_rationale_1", "label": "The starter app in ``examples/starter/`` (#125). The starter is documentation\u2026", @@ -60008,12 +60009,257 @@ "source_file": "packaging/build_installer.ps1", "source_location": "L1" }, + { + "id": "cursor_skills_iflow_setup_skill", + "label": "iflow-setup/SKILL.md", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "frontmatter": { + "name": "iflow-setup", + "description": ">-", + "disable-model-invocation": "true", + "issue-flow-version": "0.4.2a4" + }, + "node_kind": "page", + "norm_label": "iflow-setup/skill.md", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L1" + }, + { + "id": "cursor_skills_iflow_status_skill", + "label": "iflow-status/SKILL.md", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "frontmatter": { + "name": "iflow-status", + "description": ">-", + "disable-model-invocation": "true", + "issue-flow-version": "0.4.2a4" + }, + "node_kind": "page", + "norm_label": "iflow-status/skill.md", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L1" + }, + { + "id": "cursor_skills_gh_ci_skill", + "label": "gh-ci/SKILL.md", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "frontmatter": { + "name": "gh-ci", + "description": ">-", + "issue-flow-version": "0.4.2a4" + }, + "node_kind": "page", + "norm_label": "gh-ci/skill.md", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L1" + }, + { + "id": "cursor_skills_gh_ci_skill_fallback_workflow_runs", + "label": "Fallback (workflow runs)", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "fallback (workflow runs)", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L34" + }, + { + "id": "cursor_skills_gh_ci_skill_gh_ci_wait_on_github_ci_with_gh", + "label": "gh-ci \u2014 wait on GitHub CI with `gh`", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "gh-ci \u2014 wait on github ci with `gh`", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L12" + }, + { + "id": "cursor_skills_gh_ci_skill_primary_pr_attached_checks", + "label": "Primary (PR-attached checks)", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "primary (pr-attached checks)", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L17" + }, + { + "id": "cursor_skills_gh_ci_skill_semantics", + "label": "Semantics", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "semantics", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L47" + }, + { + "id": "cursor_skills_gh_ci_skill_where_this_fits", + "label": "Where this fits", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "where this fits", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L55" + }, + { + "id": "cursor_skills_iflow_setup_skill_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L110" + }, + { + "id": "cursor_skills_iflow_setup_skill_input", + "label": "Input", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "input", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L63" + }, + { + "id": "cursor_skills_iflow_setup_skill_instructions", + "label": "Instructions", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "instructions", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L70" + }, + { + "id": "cursor_skills_iflow_setup_skill_issue_flow_guided_project_setup_iflow_setup", + "label": "issue-flow \u2014 guided project setup (`/iflow-setup`)", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue-flow \u2014 guided project setup (`/iflow-setup`)", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L10" + }, + { + "id": "cursor_skills_iflow_setup_skill_model_execution_directive", + "label": "MODEL & EXECUTION DIRECTIVE", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "model & execution directive", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L27" + }, + { + "id": "cursor_skills_iflow_setup_skill_resolve_project_root_multi_root_workspaces", + "label": "Resolve project root (multi-root workspaces)", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "resolve project root (multi-root workspaces)", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L41" + }, + { + "id": "cursor_skills_iflow_status_skill_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L84" + }, + { + "id": "cursor_skills_iflow_status_skill_instructions", + "label": "Instructions", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "instructions", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L56" + }, + { + "id": "cursor_skills_iflow_status_skill_issue_flow_issue_status_overview_iflow_status", + "label": "issue-flow \u2014 issue status overview (`/iflow-status`)", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue-flow \u2014 issue status overview (`/iflow-status`)", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L9" + }, + { + "id": "cursor_skills_iflow_status_skill_model_execution_directive", + "label": "MODEL & EXECUTION DIRECTIVE", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "model & execution directive", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L21" + }, + { + "id": "cursor_skills_iflow_status_skill_resolve_project_root_multi_root_workspaces", + "label": "Resolve project root (multi-root workspaces)", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "resolve project root (multi-root workspaces)", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L35" + }, { "id": "docs_issue_workflow", "label": "issue-workflow.md", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "page", "norm_label": "issue-workflow.md", @@ -60025,7 +60271,7 @@ "label": "0. `/iflow` \u2014 smart dispatcher (quick start)", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "0. `/iflow` \u2014 smart dispatcher (quick start)", @@ -60037,7 +60283,7 @@ "label": "0a. `/iflow-pick` \u2014 choose the next issue (front door)", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "0a. `/iflow-pick` \u2014 choose the next issue (front door)", @@ -60049,7 +60295,7 @@ "label": "10. `/iflow-issue` \u2014 create a normal (non-epic) issue", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "10. `/iflow-issue` \u2014 create a normal (non-epic) issue", @@ -60061,7 +60307,7 @@ "label": "10a. `/iflow-split` \u2014 linked sub-issues for an over-large issue", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "10a. `/iflow-split` \u2014 linked sub-issues for an over-large issue", @@ -60073,7 +60319,7 @@ "label": "11. `/iflow-status` \u2014 status overview of all issues (read-only)", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "11. `/iflow-status` \u2014 status overview of all issues (read-only)", @@ -60085,7 +60331,7 @@ "label": "12. `/iflow-review` \u2014 review open issues and apply labels", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "12. `/iflow-review` \u2014 review open issues and apply labels", @@ -60097,7 +60343,7 @@ "label": "13. `/iflow-epic` \u2014 plan a large change as staged issues", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "13. `/iflow-epic` \u2014 plan a large change as staged issues", @@ -60109,7 +60355,7 @@ "label": "17. `/iflow-archive` \u2014 condense the solved-issues archive (destructive, gated)", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "17. `/iflow-archive` \u2014 condense the solved-issues archive (destructive, gated)", @@ -60121,7 +60367,7 @@ "label": "1. `/iflow-capture` \u2014 capture the issue locally", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "1. `/iflow-capture` \u2014 capture the issue locally", @@ -60133,7 +60379,7 @@ "label": "1a. `/iflow-init` \u2014 cold-start the harness (off-path)", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "1a. `/iflow-init` \u2014 cold-start the harness (off-path)", @@ -60145,7 +60391,7 @@ "label": "2. `/iflow-plan` \u2014 design the approach", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "2. `/iflow-plan` \u2014 design the approach", @@ -60157,7 +60403,7 @@ "label": "3. `/iflow-build` \u2014 implement the plan", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "3. `/iflow-build` \u2014 implement the plan", @@ -60169,7 +60415,7 @@ "label": "4. `/iflow-pause` \u2014 park work safely", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "4. `/iflow-pause` \u2014 park work safely", @@ -60181,7 +60427,7 @@ "label": "5. `/iflow-close` \u2014 land the work", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "5. `/iflow-close` \u2014 land the work", @@ -60193,7 +60439,7 @@ "label": "6. `/iflow-cleanup` \u2014 post-merge branch hygiene", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "6. `/iflow-cleanup` \u2014 post-merge branch hygiene", @@ -60205,7 +60451,7 @@ "label": "7. `/iflow-graphify` \u2014 rebuild the knowledge graph (optional)", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "7. `/iflow-graphify` \u2014 rebuild the knowledge graph (optional)", @@ -60217,7 +60463,7 @@ "label": "8. `/iflow-yolo` \u2014 all-in-one for small issues", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "8. `/iflow-yolo` \u2014 all-in-one for small issues", @@ -60229,7 +60475,7 @@ "label": "8b. `/iflow-ops` \u2014 ops / no-PR work", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "8b. `/iflow-ops` \u2014 ops / no-pr work", @@ -60241,7 +60487,7 @@ "label": "9. `/iflow-fix` \u2014 interactive iterative-fixes session", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "9. `/iflow-fix` \u2014 interactive iterative-fixes session", @@ -60253,7 +60499,7 @@ "label": "Agent Skills", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "agent skills", @@ -60265,7 +60511,7 @@ "label": "Branch and folder hygiene", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "branch and folder hygiene", @@ -60277,7 +60523,7 @@ "label": "Cursor issue workflow (Agent Skills)", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "cursor issue workflow (agent skills)", @@ -60289,7 +60535,7 @@ "label": "End-to-end flow", "_origin": "ast", "community": 32, - "community_name": "Cursor issue workflow (Agent Skills)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "end-to-end flow", @@ -60297,404 +60543,101 @@ "source_location": "L592" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_exception", - "label": "Exception", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "code", - "norm_label": "exception", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_path", - "label": "Path", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" - }, - { - "id": "cellpy_painpoints_14_h5_auto_picks_cellpy_format_over_raw_instrument_loaders", - "label": "14. \ud83d\udfe0 `.h5` auto-picks cellpy format over raw instrument loaders", + "id": "issueflows_03_solved_issues_issue41_plan", + "label": "issue41_plan.md", "_origin": "ast", "community": 33, - "community_name": "load_raw", + "community_name": "Plan \u2014 Issue #41", "file_type": "document", - "node_kind": "heading", - "norm_label": "14. \ud83d\udfe0 `.h5` auto-picks cellpy format over raw instrument loaders", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L357" + "node_kind": "page", + "norm_label": "issue41_plan.md", + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue160_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue41_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 33, - "community_name": "load_raw", + "community_name": "Plan \u2014 Issue #41", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L128" + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", + "source_location": "L15" }, { - "id": "issueflows_03_solved_issues_issue160_plan_phase_1_this_pr", - "label": "Phase 1 (this PR)", + "id": "issueflows_03_solved_issues_issue41_plan_goal", + "label": "Goal", "_origin": "ast", "community": 33, - "community_name": "load_raw", + "community_name": "Plan \u2014 Issue #41", "file_type": "document", "node_kind": "heading", - "norm_label": "phase 1 (this pr)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L130" + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue160_plan_phase_2_follow_up_issue", - "label": "Phase 2 (follow-up issue)", + "id": "issueflows_03_solved_issues_issue41_plan_plan_issue_41", + "label": "Plan \u2014 Issue #41", "_origin": "ast", "community": 33, - "community_name": "load_raw", + "community_name": "Plan \u2014 Issue #41", "file_type": "document", "node_kind": "heading", - "norm_label": "phase 2 (follow-up issue)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L142" + "norm_label": "plan \u2014 issue #41", + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue160_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue41_plan_test_strategy", "label": "Test strategy", "_origin": "ast", "community": 33, - "community_name": "load_raw", + "community_name": "Plan \u2014 Issue #41", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L151" - }, - { - "id": "issueflows_03_solved_issues_issue160_status", - "label": "issue160_status.md", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue160_status.md", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L1" + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", + "source_location": "L22" }, { - "id": "issueflows_03_solved_issues_issue160_status_issue_160_status", - "label": "Issue #160 \u2014 Status", + "id": "src_cellpy_simple_gui_core_cellpy_config", + "label": "cellpy_config.py", "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #160 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "community": 35, + "community_name": "cellpy_config.py", + "file_type": "code", + "norm_label": "cellpy_config.py", + "source_file": "src/cellpy_simple_gui/core/cellpy_config.py", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue160_status_remaining_work", - "label": "Remaining work", + "id": "src_cellpy_simple_gui_core_cellpy_config_py_any", + "label": "Any", "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L15" + "community": 35, + "community_name": "cellpy_config.py", + "file_type": "code", + "norm_label": "any", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue160_status_what_s_done", - "label": "What's done", + "id": "src_cellpy_simple_gui_core_cellpy_config_py_path", + "label": "Path", "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L5" + "community": 35, + "community_name": "cellpy_config.py", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue162_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L11" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L35" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan", - "label": "issue41_plan.md", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue41_plan.md", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan_plan_issue_41", - "label": "Plan \u2014 Issue #41", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plan \u2014 issue #41", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L22" - }, - { - "id": "issueflows_03_solved_issues_issue41_status", - "label": "issue41_status.md", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue41_status.md", - "source_file": ".issueflows/03-solved-issues/issue41_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue41_status_progress", - "label": "Progress", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "progress", - "source_file": ".issueflows/03-solved-issues/issue41_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue41_status_status_issue_41", - "label": "Status \u2014 Issue #41", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "document", - "node_kind": "heading", - "norm_label": "status \u2014 issue #41", - "source_file": ".issueflows/03-solved-issues/issue41_status.md", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_253", - "label": "Load and process a raw instrument file into a ``CellpyCell``. Only the metadata\u2026", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "rationale", - "norm_label": "load and process a raw instrument file into a ``cellpycell``. only the metadata...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L253" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_292", - "label": "Hint when the cellpy-native HDF5 reader ran instead of a raw loader.", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "rationale", - "norm_label": "hint when the cellpy-native hdf5 reader ran instead of a raw loader.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L292" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_304", - "label": "Return the path to a bundled example raw file (downloading if needed).", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "rationale", - "norm_label": "return the path to a bundled example raw file (downloading if needed).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L304" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_322", - "label": "Local path string or remote URI suitable for ``cellpy.get`` (#160).", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "rationale", - "norm_label": "local path string or remote uri suitable for ``cellpy.get`` (#160).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L322" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_341", - "label": "Load a cellpy file (``.cellpy`` / legacy ``.h5``) from disk or remote URI.", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "rationale", - "norm_label": "load a cellpy file (``.cellpy`` / legacy ``.h5``) from disk or remote uri.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L341" - }, - { - "id": "src_cellpy_simple_gui_core_paths_rationale_44", - "label": "True when ``raw`` is an ssh/sftp/scp URI (cellpy OtherPath).", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "rationale", - "norm_label": "true when ``raw`` is an ssh/sftp/scp uri (cellpy otherpath).", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L44" - }, - { - "id": "src_cellpy_simple_gui_core_paths_rationale_50", - "label": "True when this instance may open SSH/SFTP remotes (#160). Same gate as host\u2026", - "_origin": "ast", - "community": 33, - "community_name": "load_raw", - "file_type": "rationale", - "norm_label": "true when this instance may open ssh/sftp remotes (#160). same gate as host...", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L50" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_config", - "label": "cellpy_config.py", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "code", - "norm_label": "cellpy_config.py", - "source_file": "src/cellpy_simple_gui/core/cellpy_config.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_config_py_any", - "label": "Any", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "code", - "norm_label": "any", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_config_py_path", - "label": "Path", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" - }, - { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_configuration_cellpy_config_new_in_2_1_2", - "label": "Configuration (`cellpy.config`, new in 2.1.2)", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "configuration (`cellpy.config`, new in 2.1.2)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L67" - }, - { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_resolved_in_2_1_2a3", - "label": "Resolved in 2.1.2a3", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "resolved in 2.1.2a3", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L84" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_config_rationale_1", - "label": "Read-only view of cellpy's layered configuration. Answers \"where is cellpy\u2026", + "id": "src_cellpy_simple_gui_core_cellpy_config_rationale_1", + "label": "Read-only view of cellpy's layered configuration. Answers \"where is cellpy\u2026", "_origin": "ast", "community": 35, "community_name": "cellpy_config.py", @@ -61062,7 +61005,274 @@ "source_location": "L491" }, { - "id": "issueflows_01_current_issues_issue186_plan", + "id": "issueflows_03_solved_issues_issue169_plan", + "label": "issue169_plan.md", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue169_plan.md", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_1_spec_core_models_py", + "label": "1. Spec \u2014 `core/models.py`", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "1. spec \u2014 `core/models.py`", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L92" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_5_ui_web_templates_index_html_web_static_js_app_js_app_css", + "label": "5. UI \u2014 `web/templates/index.html`, `web/static/js/app.js`, `app.css`", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "5. ui \u2014 `web/templates/index.html`, `web/static/js/app.js`, `app.css`", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L155" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_6_docs", + "label": "6. Docs", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "6. docs", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L178" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L90" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L38" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L232" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_plan_issue_169_compare_selected_cells", + "label": "Plan \u2014 Issue #169: Compare selected cells", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan \u2014 issue #169: compare selected cells", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_what_exists_today_and_the_gap", + "label": "What exists today, and the gap", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what exists today, and the gap", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L13" + }, + { + "id": "issueflows_03_solved_issues_issue186_status", + "label": "issue186_status.md", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue186_status.md", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue186_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L24" + }, + { + "id": "issueflows_03_solved_issues_issue186_status_status_186_y_ranges_ignored_with_group_avg_spread", + "label": "Status \u2014 #186 y ranges ignored with Group avg + Spread", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 #186 y ranges ignored with group avg + spread", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue186_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L7" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_774", + "label": "Give spread traces the hover the plain group-average plot already has (#40).\u2026", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "rationale", + "norm_label": "give spread traces the hover the plain group-average plot already has (#40)....", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L774" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_808", + "label": "Match the fields the non-averaged plot shows: series, variable, x, y.", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "rationale", + "norm_label": "match the fields the non-averaged plot shows: series, variable, x, y.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L808" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_816", + "label": "Put the band half-width on the mean trace so hover can show ``\u00b1 std``.", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "rationale", + "norm_label": "put the band half-width on the mean trace so hover can show ``\u00b1 std``.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L816" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_834", + "label": "Traces grouped by the subplot they live on, in figure order.", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "rationale", + "norm_label": "traces grouped by the subplot they live on, in figure order.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L834" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_843", + "label": "The y-axis title for ``y``/``y2``/\u2026 \u2014 what names the facet on screen.", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "rationale", + "norm_label": "the y-axis title for ``y``/``y2``/... \u2014 what names the facet on screen.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L843" + }, + { + "id": "tests_test_core_rationale_1152", + "label": "Two demo cells in one group (so Group avg averages) plus a singleton.", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "rationale", + "norm_label": "two demo cells in one group (so group avg averages) plus a singleton.", + "source_file": "tests/test_core.py", + "source_location": "L1152" + }, + { + "id": "tests_test_core_rationale_1168", + "label": "Layout y-axis whose title contains ``needle`` (case-insensitive).", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "rationale", + "norm_label": "layout y-axis whose title contains ``needle`` (case-insensitive).", + "source_file": "tests/test_core.py", + "source_location": "L1168" + }, + { + "id": "tests_test_core_rationale_1181", + "label": "Group avg + Spread must honour per-panel y_ranges (#186). The spread hover\u2026", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "rationale", + "norm_label": "group avg + spread must honour per-panel y_ranges (#186). the spread hover...", + "source_file": "tests/test_core.py", + "source_location": "L1181" + }, + { + "id": "tests_test_core_rationale_1218", + "label": "A blank end is filled from the spread panel's own extent (#186).", + "_origin": "ast", + "community": 38, + "community_name": "_add_spread_hover", + "file_type": "rationale", + "norm_label": "a blank end is filled from the spread panel's own extent (#186).", + "source_file": "tests/test_core.py", + "source_location": "L1218" + }, + { + "id": "issueflows_03_solved_issues_issue186_plan", "label": "issue186_plan.md", "_origin": "ast", "community": 39, @@ -61070,11 +61280,11 @@ "file_type": "document", "node_kind": "page", "norm_label": "issue186_plan.md", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L1" }, { - "id": "issueflows_01_current_issues_issue186_plan_approach", + "id": "issueflows_03_solved_issues_issue186_plan_approach", "label": "Approach", "_origin": "ast", "community": 39, @@ -61082,11 +61292,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "approach", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L22" }, { - "id": "issueflows_01_current_issues_issue186_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue186_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 39, @@ -61094,11 +61304,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L30" }, { - "id": "issueflows_01_current_issues_issue186_plan_goal", + "id": "issueflows_03_solved_issues_issue186_plan_goal", "label": "Goal", "_origin": "ast", "community": 39, @@ -61106,11 +61316,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L3" }, { - "id": "issueflows_01_current_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", + "id": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", "label": "Plan \u2014 #186 y ranges ignored with Group avg + Spread", "_origin": "ast", "community": 39, @@ -61118,11 +61328,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "plan \u2014 #186 y ranges ignored with group avg + spread", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L1" }, { - "id": "issueflows_01_current_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", + "id": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", "label": "Root cause (reproduced with two demo cells in one group)", "_origin": "ast", "community": 39, @@ -61130,11 +61340,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "root cause (reproduced with two demo cells in one group)", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L8" }, { - "id": "issueflows_01_current_issues_issue186_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue186_plan_test_strategy", "label": "Test strategy", "_origin": "ast", "community": 39, @@ -61142,7 +61352,7 @@ "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L36" }, { @@ -61157,6 +61367,78 @@ "source_file": ".issueflows/03-solved-issues/issue54_plan.md", "source_location": "L1" }, + { + "id": "issueflows_03_solved_issues_issue60_original", + "label": "issue60_original.md", + "_origin": "ast", + "community": 39, + "community_name": "_apply_y_ranges", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue60_original.md", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 39, + "community_name": "_apply_y_ranges", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L22" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_issue_60_fix_summary_y_ranges_warn_miss_on_charge_capacity_facet", + "label": "Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet", + "_origin": "ast", + "community": 39, + "community_name": "_apply_y_ranges", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #60: fix: summary y_ranges warn/miss on charge_capacity facet", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 39, + "community_name": "_apply_y_ranges", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_out_of_scope", + "label": "Out of scope", + "_origin": "ast", + "community": 39, + "community_name": "_apply_y_ranges", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L27" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_problem_context", + "label": "Problem / context", + "_origin": "ast", + "community": 39, + "community_name": "_apply_y_ranges", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L7" + }, { "id": "issueflows_03_solved_issues_issue60_original_spec", "label": "Spec", @@ -61301,6 +61583,18 @@ "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", "source_location": "L3" }, + { + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_decision", + "label": "Decision", + "_origin": "ast", + "community": 39, + "community_name": "_apply_y_ranges", + "file_type": "document", + "node_kind": "heading", + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", + "source_location": "L9" + }, { "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_summary_plot_y_scales_2_54", "label": "Summary plot y-scales (#2, #54)", @@ -61812,28 +62106,6 @@ "source_file": ".issueflows/04-designs-and-guides/this-project.md", "source_location": "L15" }, - { - "id": "src_cellpy_simple_gui_api_jobs_rationale_121", - "label": "A fixed set of daemon worker threads consuming a queue. Workers are daemons so\u2026", - "_origin": "ast", - "community": 44, - "community_name": "Job", - "file_type": "rationale", - "norm_label": "a fixed set of daemon worker threads consuming a queue. workers are daemons so...", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L121" - }, - { - "id": "src_cellpy_simple_gui_api_jobs_rationale_165", - "label": "Retire the workers. Never waits \u2014 a stuck job would block exit.", - "_origin": "ast", - "community": 44, - "community_name": "Job", - "file_type": "rationale", - "norm_label": "retire the workers. never waits \u2014 a stuck job would block exit.", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L165" - }, { "id": "src_cellpy_simple_gui_api_jobs_rationale_188", "label": "Cancel running jobs and stop the pool without waiting on stuck work.", @@ -61960,6 +62232,18 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L320" }, + { + "id": "cellpy_painpoints_14_h5_auto_picks_cellpy_format_over_raw_instrument_loaders", + "label": "14. \ud83d\udfe0 `.h5` auto-picks cellpy format over raw instrument loaders", + "_origin": "ast", + "community": 47, + "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "14. \ud83d\udfe0 `.h5` auto-picks cellpy format over raw instrument loaders", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L357" + }, { "id": "cellpy_painpoints_15_cycles_collector_facet_strips_still_use_raw_cycle_num_cell", "label": "15. \ud83d\udfe2 Cycles collector facet strips still use raw `cycle_num=` / `cell=`", @@ -61972,6 +62256,18 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L380" }, + { + "id": "cellpy_painpoints_16_ica_plotter_direction_gaps_line_plots_both", + "label": "16. \ud83d\udfe2 ICA plotter direction gaps (line plots + `both`)", + "_origin": "ast", + "community": 47, + "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "16. \ud83d\udfe2 ica plotter direction gaps (line plots + `both`)", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L400" + }, { "id": "cellpy_painpoints_17_cycles_plotter_ignores_collect_mode_for_x_unit", "label": "17. \ud83d\udfe2 Cycles plotter ignores collect `mode` for `x_unit`", @@ -62020,6 +62316,18 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L508" }, + { + "id": "cellpy_painpoints_21_no_selective_summary_rebuild_after_meta_edits", + "label": "21. \ud83d\udfe0 No selective summary rebuild after meta edits", + "_origin": "ast", + "community": 47, + "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "21. \ud83d\udfe0 no selective summary rebuild after meta edits", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L529" + }, { "id": "cellpy_painpoints_22_model_dump_for_file_wrote_credentials_in_plaintext", "label": "22. \ud83d\udd34 `model_dump_for_file()` wrote credentials in plaintext", @@ -62164,6 +62472,18 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L209" }, + { + "id": "cellpy_painpoints_5_instrument_discovery_logs_a_warning_per_non_loader_module", + "label": "5. \ud83d\udfe0 Instrument discovery logs a WARNING per non-loader module", + "_origin": "ast", + "community": 47, + "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "5. \ud83d\udfe0 instrument discovery logs a warning per non-loader module", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L219" + }, { "id": "cellpy_painpoints_6_collection_save_only_supports_parquet_csv", "label": "6. \ud83d\udfe0 `Collection.save()` only supports parquet/csv", @@ -62272,45 +62592,122 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L1049" }, + { + "id": "examples_mcp_server", + "label": "mcp/server.py", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "mcp/server.py", + "source_file": "examples/mcp/server.py", + "source_location": "L1" + }, + { + "id": "fastapi", + "label": "FastAPI", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "fastapi", + "source_file": "", + "source_location": "" + }, { "id": "logrecord", "label": "LogRecord", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "logrecord", "source_file": "", "source_location": "" }, { - "id": "packaging_zip_installer", - "label": "zip_installer.py", + "id": "packaging_smoke_test", + "label": "smoke_test.py", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", - "norm_label": "zip_installer.py", - "source_file": "packaging/zip_installer.py", + "norm_label": "smoke_test.py", + "source_file": "packaging/smoke_test.py", "source_location": "L1" }, { - "id": "packaging_zip_installer_py_path", - "label": "Path", + "id": "src_cellpy_simple_gui_api_app", + "label": "api/app.py", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", - "norm_label": "path", + "norm_label": "api/app.py", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_deps", + "label": "deps.py", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "deps.py", + "source_file": "src/cellpy_simple_gui/api/deps.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_routers_init", + "label": "routers/__init__.py", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "routers/__init__.py", + "source_file": "src/cellpy_simple_gui/api/routers/__init__.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system", + "label": "system.py", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "system.py", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_py_get", + "label": "get", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "get", "source_file": "", "source_location": "" }, + { + "id": "src_cellpy_simple_gui_config", + "label": "config.py", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "config.py", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L1" + }, { "id": "src_cellpy_simple_gui_desktop", "label": "desktop.py", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "desktop.py", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -62321,7 +62718,7 @@ "label": "logging_setup.py", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "logging_setup.py", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62332,7 +62729,7 @@ "label": "Path", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "path", "source_file": "", @@ -62343,7 +62740,7 @@ "label": "__main__.py", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "__main__.py", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -62354,18 +62751,29 @@ "label": "cellpy_simple_gui/server.py", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "code", "norm_label": "cellpy_simple_gui/server.py", "source_file": "src/cellpy_simple_gui/server.py", "source_location": "L1" }, + { + "id": "tests_test_api_py_fixture", + "label": "fixture", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "fixture", + "source_file": "", + "source_location": "" + }, { "id": "issueflows_03_solved_issues_issue12_plan", "label": "issue12_plan.md", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "page", "norm_label": "issue12_plan.md", @@ -62377,7 +62785,7 @@ "label": "Approach", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -62389,7 +62797,7 @@ "label": "Files to touch", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -62401,7 +62809,7 @@ "label": "Goal", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -62413,7 +62821,7 @@ "label": "Plan: Issue #12 \u2014 add logging", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "plan: issue #12 \u2014 add logging", @@ -62425,7 +62833,7 @@ "label": "Test strategy", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -62437,7 +62845,7 @@ "label": "issue12_status.md", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "page", "norm_label": "issue12_status.md", @@ -62449,7 +62857,7 @@ "label": "Done", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "done", @@ -62461,31 +62869,19 @@ "label": "Status: Issue #12 \u2014 add logging", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "status: issue #12 \u2014 add logging", "source_file": ".issueflows/03-solved-issues/issue12_status.md", "source_location": "L1" }, - { - "id": "issueflows_03_solved_issues_issue160_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 48, - "community_name": "pathlib", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L38" - }, { "id": "issueflows_03_solved_issues_issue48_plan", "label": "issue48_plan.md", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "page", "norm_label": "issue48_plan.md", @@ -62497,7 +62893,7 @@ "label": "Approach", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -62509,7 +62905,7 @@ "label": "Constraints", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -62521,7 +62917,7 @@ "label": "Files to touch", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -62533,7 +62929,7 @@ "label": "Goal", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -62545,7 +62941,7 @@ "label": "Issue #48 \u2014 create gui tests (plan)", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "issue #48 \u2014 create gui tests (plan)", @@ -62557,7 +62953,7 @@ "label": "Open questions", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -62569,7 +62965,7 @@ "label": "Prior art", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", @@ -62581,7 +62977,7 @@ "label": "Test strategy", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -62593,7 +62989,7 @@ "label": "issue48_status.md", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "page", "norm_label": "issue48_status.md", @@ -62605,7 +63001,7 @@ "label": "Issue #48 \u2014 status", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "issue #48 \u2014 status", @@ -62617,7 +63013,7 @@ "label": "Remaining work", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -62629,7 +63025,7 @@ "label": "What's done", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", @@ -62637,33 +63033,165 @@ "source_location": "L5" }, { - "id": "packaging_zip_installer_rationale_1", - "label": "Zip each Windows installer ``.exe`` beside itself (#173). A corporate download\u2026", + "id": "examples_mcp_server_rationale_51", + "label": "# NOTE: `mcp.server.mcpserver.Context` \u2014 *not* `mcp.server.context.Context`.", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", - "norm_label": "zip each windows installer ``.exe`` beside itself (#173). a corporate download...", - "source_file": "packaging/zip_installer.py", + "norm_label": "# note: `mcp.server.mcpserver.context` \u2014 *not* `mcp.server.context.context`.", + "source_file": "examples/mcp/server.py", + "source_location": "L51" + }, + { + "id": "examples_mcp_server_rationale_9", + "label": "A prototype MCP server for cellpy \u2014 enough to prove or disprove the design.\u2026", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "a prototype mcp server for cellpy \u2014 enough to prove or disprove the design....", + "source_file": "examples/mcp/server.py", + "source_location": "L9" + }, + { + "id": "packaging_smoke_test_rationale_1", + "label": "Smoke-test a built app by driving it over HTTP. Deliberately talks to a\u2026", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "smoke-test a built app by driving it over http. deliberately talks to a...", + "source_file": "packaging/smoke_test.py", "source_location": "L1" }, { - "id": "packaging_zip_installer_rationale_15", - "label": "Write ``.zip`` next to every ``*.exe`` in ``directory``. Args: directory:\u2026", + "id": "src_cellpy_simple_gui_api_app_rationale_1", + "label": "FastAPI application factory.", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", - "norm_label": "write ``.zip`` next to every ``*.exe`` in ``directory``. args: directory:...", - "source_file": "packaging/zip_installer.py", - "source_location": "L15" + "norm_label": "fastapi application factory.", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_deps_rationale_1", + "label": "Shared dependencies: templates and the local-token guard.", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "shared dependencies: templates and the local-token guard.", + "source_file": "src/cellpy_simple_gui/api/deps.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_deps_rationale_37", + "label": "Guard API routes. The index page plants the token as a cookie; the frontend\u2026", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "guard api routes. the index page plants the token as a cookie; the frontend...", + "source_file": "src/cellpy_simple_gui/api/deps.py", + "source_location": "L37" + }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_rationale_142", + "label": "Guard endpoints that only exist in developer mode (#97).", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "guard endpoints that only exist in developer mode (#97).", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L142" + }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_rationale_26", + "label": "Curated summary plot types, with panel ids for the current capacity basis.\u2026", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "curated summary plot types, with panel ids for the current capacity basis....", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L26" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_1", + "label": "System endpoints: capability probe, native file pickers, config diagnostics.", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "system endpoints: capability probe, native file pickers, config diagnostics.", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_109", + "label": "Where cellpy resolves each setting from (read-only; secrets never included).", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "where cellpy resolves each setting from (read-only; secrets never included).", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L109" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_40", + "label": "The active pywebview window, or None when running as a plain server.", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "the active pywebview window, or none when running as a plain server.", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L40" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_85", + "label": "Recent log records \u2014 developer mode (#97). Saves a round trip to\u2026", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "recent log records \u2014 developer mode (#97). saves a round trip to...", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L85" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_99", + "label": "Recent jobs with queue and run times \u2014 developer mode (#97).", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "recent jobs with queue and run times \u2014 developer mode (#97).", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L99" + }, + { + "id": "src_cellpy_simple_gui_config_rationale_1", + "label": "Application settings and paths.", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "application settings and paths.", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L1" }, { "id": "src_cellpy_simple_gui_desktop_rationale_1", "label": "Desktop shell: run the local app inside a native window via pywebview.", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "desktop shell: run the local app inside a native window via pywebview.", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -62674,7 +63202,7 @@ "label": "Destroy open windows so webview.start() can return.", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "destroy open windows so webview.start() can return.", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -62685,7 +63213,7 @@ "label": "Make Ctrl+C close the native window (SIGINT alone often never fires in the GUI\u2026", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "make ctrl+c close the native window (sigint alone often never fires in the gui...", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -62696,7 +63224,7 @@ "label": "Stop jobs + uvicorn so the process can exit and free the terminal.", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "stop jobs + uvicorn so the process can exit and free the terminal.", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -62707,7 +63235,7 @@ "label": "Terminal logging via loguru, with a stdlib logging bridge.", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "terminal logging via loguru, with a stdlib logging bridge.", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62718,7 +63246,7 @@ "label": "Forward stdlib logging records into loguru.", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "forward stdlib logging records into loguru.", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62729,7 +63257,7 @@ "label": "Configure colorized loguru output on stderr and intercept stdlib logging. Level\u2026", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "configure colorized loguru output on stderr and intercept stdlib logging. level...", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62740,7 +63268,7 @@ "label": "Where a windowed build writes its log, resolved without app config.\u2026", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "where a windowed build writes its log, resolved without app config....", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62751,7 +63279,7 @@ "label": "False in a windowed PyInstaller build, where there is no console.\u2026", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "false in a windowed pyinstaller build, where there is no console....", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62762,18 +63290,29 @@ "label": "Start capturing records for the in-app viewer (idempotent). Also installs the\u2026", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "start capturing records for the in-app viewer (idempotent). also installs the...", "source_file": "src/cellpy_simple_gui/logging_setup.py", "source_location": "L67" }, + { + "id": "src_cellpy_simple_gui_logging_setup_rationale_84", + "label": "Newest-last slice of the ring, optionally filtered to a minimum level.", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "newest-last slice of the ring, optionally filtered to a minimum level.", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L84" + }, { "id": "src_cellpy_simple_gui_main_rationale_1", "label": "Entry point. cellpy-simple-gui -> open in a native desktop window (default)\u2026", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "entry point. cellpy-simple-gui -> open in a native desktop window (default)...", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -62784,7 +63323,7 @@ "label": "Give cellpy's writable directories an absolute home before it picks one.\u2026", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "give cellpy's writable directories an absolute home before it picks one....", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -62795,7 +63334,7 @@ "label": "Server helpers shared by the plain-browser and desktop entry points.", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "server helpers shared by the plain-browser and desktop entry points.", "source_file": "src/cellpy_simple_gui/server.py", @@ -62806,7 +63345,7 @@ "label": "Run uvicorn in a background thread so a desktop window can own the main thread.", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "run uvicorn in a background thread so a desktop window can own the main thread.", "source_file": "src/cellpy_simple_gui/server.py", @@ -62817,12 +63356,45 @@ "label": "Ask uvicorn to exit and briefly wait for the daemon thread.", "_origin": "ast", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "ask uvicorn to exit and briefly wait for the daemon thread.", "source_file": "src/cellpy_simple_gui/server.py", "source_location": "L63" }, + { + "id": "tests_test_api_rationale_403", + "label": "cellpy logs through stdlib, so the bridge must feed the ring buffer.", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "cellpy logs through stdlib, so the bridge must feed the ring buffer.", + "source_file": "tests/test_api.py", + "source_location": "L403" + }, + { + "id": "tests_test_api_rationale_728", + "label": "A client for an instance bound to a network address.", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "a client for an instance bound to a network address.", + "source_file": "tests/test_api.py", + "source_location": "L728" + }, + { + "id": "tests_test_journal_rationale_84", + "label": "Job must finish with an errors[] payload the UI can toast \u2014 not hang.", + "_origin": "ast", + "community": 48, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "job must finish with an errors[] payload the ui can toast \u2014 not hang.", + "source_file": "tests/test_journal.py", + "source_location": "L84" + }, { "id": "cursor_skills_iflow_pick_skill", "label": "iflow-pick/SKILL.md", @@ -63041,6 +63613,18 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L651" }, + { + "id": "cellpy_painpoints_29_an_unknown_layout_is_accepted_silently_fixed_in_2_1_3", + "label": "29. \ud83d\udfe0 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "29. \ud83d\udfe0 an unknown `layout=` is accepted silently *(fixed in 2.1.3)*", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L717" + }, { "id": "cellpy_painpoints_30_spread_plot_traces_carry_no_hover_at_all_open", "label": "30. \ud83d\udfe0 `spread_plot` traces carry no hover at all *(open)*", @@ -63210,112 +63794,52 @@ "source_location": "L451" }, { - "id": "issueflows_03_solved_issues_issue169_plan", - "label": "issue169_plan.md", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue169_plan.md", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue169_plan_1_spec_core_models_py", - "label": "1. Spec \u2014 `core/models.py`", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "1. spec \u2014 `core/models.py`", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L92" - }, - { - "id": "issueflows_03_solved_issues_issue169_plan_5_ui_web_templates_index_html_web_static_js_app_js_app_css", - "label": "5. UI \u2014 `web/templates/index.html`, `web/static/js/app.js`, `app.css`", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "5. ui \u2014 `web/templates/index.html`, `web/static/js/app.js`, `app.css`", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L155" - }, - { - "id": "issueflows_03_solved_issues_issue169_plan_6_docs", - "label": "6. Docs", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "6. docs", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L178" - }, - { - "id": "issueflows_03_solved_issues_issue169_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L90" - }, - { - "id": "issueflows_03_solved_issues_issue169_plan_constraints", - "label": "Constraints", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cellpy_delegation_inventory_issue_52", + "label": "cellpy delegation inventory (issue #52)", "_origin": "ast", "community": 52, "community_name": "plots.py", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L38" + "norm_label": "cellpy delegation inventory (issue #52)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue169_plan_goal", - "label": "Goal", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_hover", + "label": "Hover", "_origin": "ast", "community": 52, "community_name": "plots.py", "file_type": "document", "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L5" + "norm_label": "hover", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L150" }, { - "id": "issueflows_03_solved_issues_issue169_plan_open_questions", - "label": "Open questions", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_incremental_analysis_ica_dva", + "label": "Incremental analysis (ICA / DVA)", "_origin": "ast", "community": 52, "community_name": "plots.py", "file_type": "document", "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L232" + "norm_label": "incremental analysis (ica / dva)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L102" }, { - "id": "issueflows_03_solved_issues_issue169_plan_plan_issue_169_compare_selected_cells", - "label": "Plan \u2014 Issue #169: Compare selected cells", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_raw_data_views_developer_mode", + "label": "Raw data views (developer mode)", "_origin": "ast", "community": 52, "community_name": "plots.py", "file_type": "document", "node_kind": "heading", - "norm_label": "plan \u2014 issue #169: compare selected cells", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L1" + "norm_label": "raw data views (developer mode)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L123" }, { "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_summary_plot_families", @@ -63440,6 +63964,39 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L93" }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_925", + "label": "Raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2\u2026", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "rationale", + "norm_label": "raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L925" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_981", + "label": "Say so when cellpy downsampled \u2014 a silently thinned plot is misleading.\u2026", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "rationale", + "norm_label": "say so when cellpy downsampled \u2014 a silently thinned plot is misleading....", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L981" + }, + { + "id": "src_cellpy_simple_gui_core_plotting_rationale_296", + "label": "Raw time-series traces for one cell \u2014 developer mode.", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "rationale", + "norm_label": "raw time-series traces for one cell \u2014 developer mode.", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L296" + }, { "id": "cursor_skills_iflow_issue_skill", "label": "iflow-issue/SKILL.md", @@ -63753,89 +64310,212 @@ "source_location": "L20" }, { - "id": "tests_test_journal", - "label": "test_journal.py", + "id": "docs_api_reference_the_collection", + "label": "The Collection", "_origin": "ast", "community": 56, - "community_name": "test_journal.py", - "file_type": "code", - "norm_label": "test_journal.py", - "source_file": "tests/test_journal.py", + "community_name": "ea", + "file_type": "document", + "node_kind": "heading", + "norm_label": "the collection", + "source_file": "docs/api-reference.md", + "source_location": "L157" + }, + { + "id": "issueflows_03_solved_issues_issue55_plan", + "label": "issue55_plan.md", + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue55_plan.md", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", "source_location": "L1" }, { - "id": "tests_test_journal_rationale_1", - "label": "Tests for loading native cellpy batch journals.", + "id": "issueflows_03_solved_issues_issue55_plan_approach", + "label": "Approach", "_origin": "ast", "community": 56, - "community_name": "test_journal.py", - "file_type": "rationale", - "norm_label": "tests for loading native cellpy batch journals.", - "source_file": "tests/test_journal.py", + "community_name": "ea", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L44" + }, + { + "id": "issueflows_03_solved_issues_issue55_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L9" + }, + { + "id": "issueflows_03_solved_issues_issue55_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L74" + }, + { + "id": "issueflows_03_solved_issues_issue55_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue55_plan_issue_55_plan_cycles_collector_per_cell_per_cycle", + "label": "Issue #55 \u2014 Plan: cycles collector (per cell / per cycle)", + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #55 \u2014 plan: cycles collector (per cell / per cycle)", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", "source_location": "L1" }, { - "id": "tests_test_journal_rationale_10", - "label": "Write a real cellpy batch journal referencing the bundled example files.", + "id": "issueflows_03_solved_issues_issue55_plan_open_questions", + "label": "Open questions", "_origin": "ast", "community": 56, - "community_name": "test_journal.py", - "file_type": "rationale", - "norm_label": "write a real cellpy batch journal referencing the bundled example files.", - "source_file": "tests/test_journal.py", - "source_location": "L10" + "community_name": "ea", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L98" }, { - "id": "tests_test_journal_rationale_52", - "label": "A journal pointing at non-existent .cellpy files yields no linkable cells.", + "id": "issueflows_03_solved_issues_issue55_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 56, - "community_name": "test_journal.py", - "file_type": "rationale", - "norm_label": "a journal pointing at non-existent .cellpy files yields no linkable cells.", - "source_file": "tests/test_journal.py", - "source_location": "L52" + "community_name": "ea", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L89" + }, + { + "id": "skills_cellpy_app_reference_api_reference_the_collection", + "label": "The Collection", + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "document", + "node_kind": "heading", + "norm_label": "the collection", + "source_file": "skills/cellpy-app/reference/api-reference.md", + "source_location": "L157" }, { "id": "context", "label": "Context", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "code", "norm_label": "context", "source_file": "", "source_location": "" }, + { + "id": "examples_mcp_server_py_valueerror", + "label": "ValueError", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "valueerror", + "source_file": "", + "source_location": "" + }, { "id": "tool", "label": "tool", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "code", "norm_label": "tool", "source_file": "", "source_location": "" }, { - "id": "cellpy_painpoints_3_silent_all_or_nothing_group_averaging_when_any_group_is_a_singleton", - "label": "3. \ud83d\udfe0 Silent all-or-nothing group-averaging when any group is a singleton", + "id": "examples_mcp_readme_cellpy_mcp_server_prototype", + "label": "cellpy MCP server (prototype)", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "document", "node_kind": "heading", - "norm_label": "3. \ud83d\udfe0 silent all-or-nothing group-averaging when any group is a singleton", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L171" + "norm_label": "cellpy mcp server (prototype)", + "source_file": "examples/mcp/README.md", + "source_location": "L1" + }, + { + "id": "examples_mcp_readme_four_things_it_does_on_purpose", + "label": "Four things it does on purpose", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "document", + "node_kind": "heading", + "norm_label": "four things it does on purpose", + "source_file": "examples/mcp/README.md", + "source_location": "L80" + }, + { + "id": "examples_mcp_readme_limits_worth_knowing_before_you_rely_on_it", + "label": "Limits worth knowing before you rely on it", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "document", + "node_kind": "heading", + "norm_label": "limits worth knowing before you rely on it", + "source_file": "examples/mcp/README.md", + "source_location": "L103" + }, + { + "id": "examples_mcp_readme_run_it", + "label": "Run it", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "document", + "node_kind": "heading", + "norm_label": "run it", + "source_file": "examples/mcp/README.md", + "source_location": "L14" }, { "id": "examples_mcp_readme_the_tools", "label": "The tools", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "document", "node_kind": "heading", "norm_label": "the tools", @@ -63843,46 +64523,59 @@ "source_location": "L45" }, { - "id": "issueflows_04_designs_and_guides_mcp_server_design_tool_surface", - "label": "Tool surface", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_2_target_architecture", + "label": "2. Target architecture", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "document", "node_kind": "heading", - "norm_label": "tool surface", + "norm_label": "2. target architecture", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L36" + }, + { + "id": "issueflows_04_designs_and_guides_mcp_server_design_finding_4_cellpy_new_cannot_currently_be_automated", + "label": "Finding 4 \u2014 `cellpy new` cannot currently be automated", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "document", + "node_kind": "heading", + "norm_label": "finding 4 \u2014 `cellpy new` cannot currently be automated", "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L39" + "source_location": "L297" }, { - "id": "issueflows_04_designs_and_guides_mcp_server_design_what_the_prototype_does_not_answer", - "label": "What the prototype does not answer", + "id": "issueflows_04_designs_and_guides_mcp_server_design_tool_surface", + "label": "Tool surface", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "document", "node_kind": "heading", - "norm_label": "what the prototype does not answer", + "norm_label": "tool surface", "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L154" + "source_location": "L39" }, { - "id": "examples_mcp_server_rationale_178", - "label": "Which cellpy loaders exist, and which can actually run on this machine.", + "id": "readme_how_it_is_built", + "label": "How it is built", "_origin": "ast", "community": 59, - "community_name": "The tools", - "file_type": "rationale", - "norm_label": "which cellpy loaders exist, and which can actually run on this machine.", - "source_file": "examples/mcp/server.py", - "source_location": "L178" + "community_name": "collect", + "file_type": "document", + "node_kind": "heading", + "norm_label": "how it is built", + "source_file": "README.md", + "source_location": "L424" }, { "id": "examples_mcp_server_rationale_212", "label": "Load one cell file and return a handle plus what the data can support.\u2026", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "rationale", "norm_label": "load one cell file and return a handle plus what the data can support....", "source_file": "examples/mcp/server.py", @@ -63893,7 +64586,7 @@ "label": "The cells loaded in this session.", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "rationale", "norm_label": "the cells loaded in this session.", "source_file": "examples/mcp/server.py", @@ -63904,51 +64597,172 @@ "label": "Summary plot families cellpy offers, and whether the loaded cells support them.\u2026", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "rationale", "norm_label": "summary plot families cellpy offers, and whether the loaded cells support them....", "source_file": "examples/mcp/server.py", "source_location": "L261" }, + { + "id": "examples_mcp_server_rationale_306", + "label": "Build a collection. `kind` is one of: summary, cycles, ica, dva. Returns a\u2026", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "build a collection. `kind` is one of: summary, cycles, ica, dva. returns a...", + "source_file": "examples/mcp/server.py", + "source_location": "L306" + }, { "id": "examples_mcp_server_rationale_390", "label": "A few rows, capped. This is the only tool that returns data, on purpose.", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "rationale", "norm_label": "a few rows, capped. this is the only tool that returns data, on purpose.", "source_file": "examples/mcp/server.py", "source_location": "L390" }, + { + "id": "examples_mcp_server_rationale_410", + "label": "Draw a collection and write the figure to `path` (.json or .html).\u2026", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "draw a collection and write the figure to `path` (.json or .html)....", + "source_file": "examples/mcp/server.py", + "source_location": "L410" + }, + { + "id": "examples_mcp_server_rationale_451", + "label": "Write the collected frame to `path` (.csv, .parquet or .json).", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "write the collected frame to `path` (.csv, .parquet or .json).", + "source_file": "examples/mcp/server.py", + "source_location": "L451" + }, + { + "id": "examples_mcp_server_rationale_532", + "label": "Import as far as the path allows, then getattr the rest \u2014 inside API_ROOTS.", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "import as far as the path allows, then getattr the rest \u2014 inside api_roots.", + "source_file": "examples/mcp/server.py", + "source_location": "L532" + }, + { + "id": "examples_mcp_server_rationale_624", + "label": "Resolve a Sphinx cross-reference in `doc` to the docstring it points at. This\u2026", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "resolve a sphinx cross-reference in `doc` to the docstring it points at. this...", + "source_file": "examples/mcp/server.py", + "source_location": "L624" + }, + { + "id": "examples_mcp_server_rationale_675", + "label": "Find cellpy calls by name, or by what their first docstring line says. Use this\u2026", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "find cellpy calls by name, or by what their first docstring line says. use this...", + "source_file": "examples/mcp/server.py", + "source_location": "L675" + }, + { + "id": "examples_mcp_server_rationale_711", + "label": "What a cellpy call takes and what it does, from the installed package. `name`\u2026", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "what a cellpy call takes and what it does, from the installed package. `name`...", + "source_file": "examples/mcp/server.py", + "source_location": "L711" + }, + { + "id": "examples_mcp_server_rationale_84", + "label": "The request is not allowed. The message is meant for the model to read.", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "the request is not allowed. the message is meant for the model to read.", + "source_file": "examples/mcp/server.py", + "source_location": "L84" + }, { "id": "examples_mcp_server_rationale_850", "label": "Batch templates available for `new_project`, registered and local. `cellpy new\u2026", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "rationale", "norm_label": "batch templates available for `new_project`, registered and local. `cellpy new...", "source_file": "examples/mcp/server.py", "source_location": "L850" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_643", - "label": "True when the collection carries averaged (mean/std) series.", + "id": "examples_mcp_server_rationale_882", + "label": "Create a batch project from a template \u2014 the `cellpy new` workflow. `project`\u2026", "_origin": "ast", "community": 59, - "community_name": "The tools", + "community_name": "collect", "file_type": "rationale", - "norm_label": "true when the collection carries averaged (mean/std) series.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L643" + "norm_label": "create a batch project from a template \u2014 the `cellpy new` workflow. `project`...", + "source_file": "examples/mcp/server.py", + "source_location": "L882" + }, + { + "id": "examples_mcp_server_rationale_93", + "label": "Resolve a caller-supplied path inside ROOT, or refuse it. The volume is settled\u2026", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "resolve a caller-supplied path inside root, or refuse it. the volume is settled...", + "source_file": "examples/mcp/server.py", + "source_location": "L93" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_readcallback", + "label": "._readCallback()", + "_origin": "ast", + "community": 6, + "community_name": "N", + "file_type": "code", + "norm_label": "._readcallback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "tests_conftest", + "label": "conftest.py", + "_origin": "ast", + "community": 61, + "community_name": "conftest.py", + "file_type": "code", + "norm_label": "conftest.py", + "source_file": "tests/conftest.py", + "source_location": "L1" }, { "id": "tests_conftest_py_fixture", "label": "fixture", "_origin": "ast", "community": 61, - "community_name": "loaded_library", + "community_name": "conftest.py", "file_type": "code", "norm_label": "fixture", "source_file": "", @@ -63959,7 +64773,7 @@ "label": "Test strategy", "_origin": "ast", "community": 61, - "community_name": "loaded_library", + "community_name": "conftest.py", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -63971,7 +64785,7 @@ "label": "Test strategy", "_origin": "ast", "community": 61, - "community_name": "loaded_library", + "community_name": "conftest.py", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -63979,339 +64793,319 @@ "source_location": "L106" }, { - "id": "issueflows_03_solved_issues_issue62_original", - "label": "issue62_original.md", + "id": "tests_conftest_rationale_1", + "label": "Shared test fixtures. The example cells are downloaded from GitHub on first use\u2026", + "_origin": "ast", + "community": 61, + "community_name": "conftest.py", + "file_type": "rationale", + "norm_label": "shared test fixtures. the example cells are downloaded from github on first use...", + "source_file": "tests/conftest.py", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan", + "label": "issue62_plan.md", "_origin": "ast", "community": 62, - "community_name": "Original issue text", + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "page", - "norm_label": "issue62_original.md", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "norm_label": "issue62_plan.md", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue62_original_acceptance_criteria", - "label": "Acceptance criteria", + "id": "issueflows_03_solved_issues_issue62_plan_approach", + "label": "Approach", "_origin": "ast", "community": 62, - "community_name": "Original issue text", + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L17" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L25" }, { - "id": "issueflows_03_solved_issues_issue62_original_comments_curated_summary", - "label": "Comments (curated summary)", + "id": "issueflows_03_solved_issues_issue62_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", "community": 62, - "community_name": "Original issue text", + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "comments (curated summary)", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L27" + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L35" }, { - "id": "issueflows_03_solved_issues_issue62_original_issue_62_add_checkbox_for_group_vs_individual_plotly_legend_muting_on_summary_plots", - "label": "Issue #62: Add checkbox for group vs individual Plotly legend muting on summary plots", + "id": "issueflows_03_solved_issues_issue62_plan_goal", + "label": "Goal", "_origin": "ast", "community": 62, - "community_name": "Original issue text", + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #62: add checkbox for group vs individual plotly legend muting on summary plots", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L1" + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue62_original_original_issue_text", - "label": "Original issue text", + "id": "issueflows_03_solved_issues_issue62_plan_open_questions", + "label": "Open questions", "_origin": "ast", "community": 62, - "community_name": "Original issue text", + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L5" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L52" }, { - "id": "issueflows_03_solved_issues_issue62_original_out_of_scope", - "label": "Out of scope", + "id": "issueflows_03_solved_issues_issue62_plan_plan_issue_62_group_vs_individual_plotly_legend_muting", + "label": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "_origin": "ast", "community": 62, - "community_name": "Original issue text", + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L23" + "norm_label": "plan \u2014 issue #62: group vs individual plotly legend muting", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue62_original_problem_context", - "label": "Problem / context", + "id": "issueflows_03_solved_issues_issue62_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 62, - "community_name": "Original issue text", + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L7" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L46" }, { - "id": "issueflows_03_solved_issues_issue160_plan_approach", - "label": "Approach", + "id": "issueflows_03_solved_issues_issue67_plan", + "label": "issue67_plan.md", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L66" + "node_kind": "page", + "norm_label": "issue67_plan.md", + "source_file": ".issueflows/03-solved-issues/issue67_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue160_plan_constraints", - "label": "Constraints", + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export", + "label": "group-average-and-figure-export.md", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L13" + "node_kind": "page", + "norm_label": "group-average-and-figure-export.md", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue160_plan_explicitly_deferred_later_than_phase_2", - "label": "Explicitly deferred (later than phase 2)", + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_static_figure_export", + "label": "Group average + static figure export", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "explicitly deferred (later than phase 2)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L112" + "norm_label": "group average + static figure export", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue160_plan_goal", - "label": "Goal", + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_with_mixed_group_sizes", + "label": "Group average with mixed group sizes", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L3" + "norm_label": "group average with mixed group sizes", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue160_plan_issue_160_plan_otherpath_remote_loading", - "label": "Issue #160 \u2014 Plan: OtherPath remote loading", + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_static_figure_export_png_svg_pdf", + "label": "Static figure export (PNG / SVG / PDF)", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #160 \u2014 plan: otherpath remote loading", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L1" + "norm_label": "static figure export (png / svg / pdf)", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L23" }, { - "id": "issueflows_03_solved_issues_issue160_plan_open_questions", - "label": "Open questions", + "id": "issueflows_04_designs_and_guides_plot_sidepane", + "label": "plot-sidepane.md", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L163" + "node_kind": "page", + "norm_label": "plot-sidepane.md", + "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue160_plan_ordering", - "label": "Ordering", + "id": "issueflows_04_designs_and_guides_plot_sidepane_alternatives_considered", + "label": "Alternatives considered", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "ordering", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L120" + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "source_location": "L30" }, { - "id": "issueflows_03_solved_issues_issue160_plan_phase_1_mvp_this_issue_after_accept", - "label": "Phase 1 \u2014 MVP (this issue after Accept)", + "id": "issueflows_04_designs_and_guides_plot_sidepane_context", + "label": "Context", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "phase 1 \u2014 mvp (this issue after accept)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L68" + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue160_plan_phase_2_filefinder_approx_glob_follow_up_issue_decided", - "label": "Phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", + "id": "issueflows_04_designs_and_guides_plot_sidepane_decision", + "label": "Decision", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L94" + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "source_location": "L9" }, { - "id": "issueflows_03_solved_issues_issue160_plan_scope_check", - "label": "Scope check", + "id": "issueflows_04_designs_and_guides_plot_sidepane_plot_side_pane_58_55", + "label": "Plot side pane (#58, #55)", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "heading", - "norm_label": "scope check", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L175" + "norm_label": "plot side pane (#58, #55)", + "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue162_original", - "label": "issue162_original.md", + "id": "issueflows_04_designs_and_guides_summary_legend_long_names", + "label": "summary-legend-long-names.md", "_origin": "ast", - "community": 64, - "community_name": ".max_files", + "community": 62, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", "file_type": "document", "node_kind": "page", - "norm_label": "issue162_original.md", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "norm_label": "summary-legend-long-names.md", + "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue162_original_goal", - "label": "Goal", - "_origin": "ast", - "community": 64, - "community_name": ".max_files", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L9" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_issue_162_remote_file_find_via_cellpy_filefinder_otherpath_phase_2", - "label": "Issue #162: Remote file find via cellpy.filefinder (OtherPath phase 2)", + "id": "tests_test_agent_docs", + "label": "test_agent_docs.py", "_origin": "ast", "community": 64, - "community_name": ".max_files", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #162: remote file find via cellpy.filefinder (otherpath phase 2)", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "community_name": "test_agent_docs.py", + "file_type": "code", + "norm_label": "test_agent_docs.py", + "source_file": "tests/test_agent_docs.py", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue162_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 64, - "community_name": ".max_files", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_out_of_scope", - "label": "Out of scope", + "id": "tests_test_agent_docs_py_fixture", + "label": "fixture", "_origin": "ast", "community": 64, - "community_name": ".max_files", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L20" + "community_name": "test_agent_docs.py", + "file_type": "code", + "norm_label": "fixture", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue162_original_spec", - "label": "Spec", + "id": "tests_test_agent_docs_rationale_1", + "label": "`llms.txt`, `llms-full.txt` and the Claude Skill (#127). These are the\u2026", "_origin": "ast", "community": 64, - "community_name": ".max_files", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L13" + "community_name": "test_agent_docs.py", + "file_type": "rationale", + "norm_label": "`llms.txt`, `llms-full.txt` and the claude skill (#127). these are the...", + "source_file": "tests/test_agent_docs.py", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue162_status", - "label": "issue162_status.md", + "id": "tests_test_agent_docs_rationale_100", + "label": "The API listing is the cheap half. These are why the skill exists.", "_origin": "ast", "community": 64, - "community_name": ".max_files", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue162_status.md", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L1" + "community_name": "test_agent_docs.py", + "file_type": "rationale", + "norm_label": "the api listing is the cheap half. these are why the skill exists.", + "source_file": "tests/test_agent_docs.py", + "source_location": "L100" }, { - "id": "issueflows_03_solved_issues_issue162_status_issue_162_status", - "label": "Issue #162 \u2014 Status", + "id": "tests_test_agent_docs_rationale_116", + "label": "Installed elsewhere, the skill has no repo to fall back on.", "_origin": "ast", "community": 64, - "community_name": ".max_files", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #162 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L1" + "community_name": "test_agent_docs.py", + "file_type": "rationale", + "norm_label": "installed elsewhere, the skill has no repo to fall back on.", + "source_file": "tests/test_agent_docs.py", + "source_location": "L116" }, { - "id": "issueflows_03_solved_issues_issue162_status_remaining_work", - "label": "Remaining work", + "id": "tests_test_agent_docs_rationale_55", + "label": "A dead link in an index written for machines is silent until it is not.", "_origin": "ast", "community": 64, - "community_name": ".max_files", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L34" + "community_name": "test_agent_docs.py", + "file_type": "rationale", + "norm_label": "a dead link in an index written for machines is silent until it is not.", + "source_file": "tests/test_agent_docs.py", + "source_location": "L55" }, { - "id": "issueflows_03_solved_issues_issue162_status_what_s_done", - "label": "What's done", + "id": "tests_test_agent_docs_rationale_65", + "label": "Adding a guide without listing it is the easy mistake; catch it here.", "_origin": "ast", "community": 64, - "community_name": ".max_files", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L5" + "community_name": "test_agent_docs.py", + "file_type": "rationale", + "norm_label": "adding a guide without listing it is the easy mistake; catch it here.", + "source_file": "tests/test_agent_docs.py", + "source_location": "L65" }, { - "id": "src_cellpy_simple_gui_config_rationale_71", - "label": "Cap on files pulled in by one glob / load (raised in dev mode).", + "id": "tests_test_agent_docs_rationale_72", + "label": "An index is cheap; the concatenation is what an agent will rely on.", "_origin": "ast", "community": 64, - "community_name": ".max_files", + "community_name": "test_agent_docs.py", "file_type": "rationale", - "norm_label": "cap on files pulled in by one glob / load (raised in dev mode).", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L71" + "norm_label": "an index is cheap; the concatenation is what an agent will rely on.", + "source_file": "tests/test_agent_docs.py", + "source_location": "L72" }, { "id": "src_cellpy_simple_gui_api_routers_projects_py_delete", @@ -64752,40 +65546,18 @@ "label": "Request", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "code", "norm_label": "request", "source_file": "", "source_location": "" }, - { - "id": "src_cellpy_simple_gui_api_routers_system", - "label": "system.py", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "system.py", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_py_get", - "label": "get", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "get", - "source_file": "", - "source_location": "" - }, { "id": "src_cellpy_simple_gui_api_routers_system_py_post", "label": "post", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "code", "norm_label": "post", "source_file": "", @@ -64796,7 +65568,7 @@ "label": "issue4_plan.md", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "page", "norm_label": "issue4_plan.md", @@ -64808,7 +65580,7 @@ "label": "Approach", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -64820,7 +65592,7 @@ "label": "Constraints", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -64832,7 +65604,7 @@ "label": "Files to touch", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -64844,7 +65616,7 @@ "label": "Goal", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -64856,7 +65628,7 @@ "label": "Issue #4 plan", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "issue #4 plan", @@ -64868,7 +65640,7 @@ "label": "Open questions", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -64880,7 +65652,7 @@ "label": "Prior art", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", @@ -64892,7 +65664,7 @@ "label": "Test strategy", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -64904,7 +65676,7 @@ "label": "issue4_status.md", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "page", "norm_label": "issue4_status.md", @@ -64916,7 +65688,7 @@ "label": "Issue #4 status", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "issue #4 status", @@ -64928,7 +65700,7 @@ "label": "Remaining work", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -64940,52 +65712,19 @@ "label": "What's done", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", "source_file": ".issueflows/03-solved-issues/issue4_status.md", "source_location": "L5" }, - { - "id": "src_cellpy_simple_gui_api_routers_plots_rationale_142", - "label": "Guard endpoints that only exist in developer mode (#97).", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "guard endpoints that only exist in developer mode (#97).", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L142" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_1", - "label": "System endpoints: capability probe, native file pickers, config diagnostics.", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "system endpoints: capability probe, native file pickers, config diagnostics.", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_109", - "label": "Where cellpy resolves each setting from (read-only; secrets never included).", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "where cellpy resolves each setting from (read-only; secrets never included).", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L109" - }, { "id": "src_cellpy_simple_gui_api_routers_system_rationale_119", "label": "Open a native file-open (or folder) dialog and return chosen absolute paths.", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "rationale", "norm_label": "open a native file-open (or folder) dialog and return chosen absolute paths.", "source_file": "src/cellpy_simple_gui/api/routers/system.py", @@ -64996,56 +65735,12 @@ "label": "Show a native Save As dialog and write the request body to the chosen path.\u2026", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "rationale", "norm_label": "show a native save as dialog and write the request body to the chosen path....", "source_file": "src/cellpy_simple_gui/api/routers/system.py", "source_location": "L144" }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_40", - "label": "The active pywebview window, or None when running as a plain server.", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "the active pywebview window, or none when running as a plain server.", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L40" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_85", - "label": "Recent log records \u2014 developer mode (#97). Saves a round trip to\u2026", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "recent log records \u2014 developer mode (#97). saves a round trip to...", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L85" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_99", - "label": "Recent jobs with queue and run times \u2014 developer mode (#97).", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "recent jobs with queue and run times \u2014 developer mode (#97).", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L99" - }, - { - "id": "src_cellpy_simple_gui_logging_setup_rationale_84", - "label": "Newest-last slice of the ring, optionally filtered to a minimum level.", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "newest-last slice of the ring, optionally filtered to a minimum level.", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L84" - }, { "id": "issueflows_03_solved_issues_issue56_plan", "label": "issue56_plan.md", @@ -65214,90 +65909,6 @@ "source_file": ".issueflows/03-solved-issues/issue56_status.md", "source_location": "L5" }, - { - "id": "issueflows_03_solved_issues_issue62_plan", - "label": "issue62_plan.md", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue62_plan.md", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue62_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L25" - }, - { - "id": "issueflows_03_solved_issues_issue62_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L35" - }, - { - "id": "issueflows_03_solved_issues_issue62_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue62_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L52" - }, - { - "id": "issueflows_03_solved_issues_issue62_plan_plan_issue_62_group_vs_individual_plotly_legend_muting", - "label": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plan \u2014 issue #62: group vs individual plotly legend muting", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue67_plan", - "label": "issue67_plan.md", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue67_plan.md", - "source_file": ".issueflows/03-solved-issues/issue67_plan.md", - "source_location": "L1" - }, { "id": "issueflows_03_solved_issues_issue67_plan_approach", "label": "Approach", @@ -65442,150 +66053,6 @@ "source_file": ".issueflows/03-solved-issues/issue67_status.md", "source_location": "L5" }, - { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export", - "label": "group-average-and-figure-export.md", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "group-average-and-figure-export.md", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_static_figure_export", - "label": "Group average + static figure export", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "group average + static figure export", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_with_mixed_group_sizes", - "label": "Group average with mixed group sizes", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "group average with mixed group sizes", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L5" - }, - { - "id": "issueflows_04_designs_and_guides_plot_sidepane", - "label": "plot-sidepane.md", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "plot-sidepane.md", - "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_plot_sidepane_alternatives_considered", - "label": "Alternatives considered", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", - "source_location": "L30" - }, - { - "id": "issueflows_04_designs_and_guides_plot_sidepane_context", - "label": "Context", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", - "source_location": "L3" - }, - { - "id": "issueflows_04_designs_and_guides_plot_sidepane_decision", - "label": "Decision", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", - "source_location": "L9" - }, - { - "id": "issueflows_04_designs_and_guides_plot_sidepane_plot_side_pane_58_55", - "label": "Plot side pane (#58, #55)", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plot side pane (#58, #55)", - "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_summary_legend_long_names", - "label": "summary-legend-long-names.md", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "summary-legend-long-names.md", - "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_summary_legend_long_names_alternatives_considered", - "label": "Alternatives considered", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", - "source_location": "L20" - }, - { - "id": "issueflows_04_designs_and_guides_summary_legend_long_names_context", - "label": "Context", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", - "source_location": "L3" - }, - { - "id": "issueflows_04_designs_and_guides_summary_legend_long_names_summary_plot_legend_long_cell_names_1", - "label": "Summary plot legend + long cell names (#1)", - "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "summary plot legend + long cell names (#1)", - "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_core_collect_rationale_520", "label": "Collect ICA (dQ/dV) curves, both half-cycles (``direction`` column kept).\u2026", @@ -65924,136 +66391,71 @@ "source_location": "L13" }, { - "id": "packaging_readme_not_solvable_in_code", - "label": "Not solvable in code", - "_origin": "ast", - "community": 71, - "community_name": "Packaging", - "file_type": "document", - "node_kind": "heading", - "norm_label": "not solvable in code", - "source_file": "packaging/README.md", - "source_location": "L224" - }, - { - "id": "packaging_readme_numbers", - "label": "Numbers", - "_origin": "ast", - "community": 71, - "community_name": "Packaging", - "file_type": "document", - "node_kind": "heading", - "norm_label": "numbers", - "source_file": "packaging/README.md", - "source_location": "L55" - }, - { - "id": "packaging_readme_numbers_121", - "label": "Numbers", - "_origin": "ast", - "community": 71, - "community_name": "Packaging", - "file_type": "document", - "node_kind": "heading", - "norm_label": "numbers", - "source_file": "packaging/README.md", - "source_location": "L121" - }, - { - "id": "packaging_readme_numbers_216", - "label": "Numbers", - "_origin": "ast", - "community": 71, - "community_name": "Packaging", - "file_type": "document", - "node_kind": "heading", - "norm_label": "numbers", - "source_file": "packaging/README.md", - "source_location": "L216" - }, - { - "id": "packaging_readme_packaging", - "label": "Packaging", - "_origin": "ast", - "community": 71, - "community_name": "Packaging", - "file_type": "document", - "node_kind": "heading", - "norm_label": "packaging", - "source_file": "packaging/README.md", - "source_location": "L1" - }, - { - "id": "packaging_readme_server_side_figure_export_is_not_in_the_image", - "label": "Server-side figure export is not in the image", + "id": "issueflows_03_solved_issues_issue162_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 71, - "community_name": "Packaging", + "community_name": "app_main_module", "file_type": "document", "node_kind": "heading", - "norm_label": "server-side figure export is not in the image", - "source_file": "packaging/README.md", - "source_location": "L103" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L157" }, { - "id": "packaging_readme_two_silent_failures_the_first_build_shipped_with", - "label": "Two silent failures the first build shipped with", + "id": "tests_test_packaging_rationale_113", + "label": "Stand in for ``cellpy.config``, recording any reload.", "_origin": "ast", "community": 71, - "community_name": "Packaging", - "file_type": "document", - "node_kind": "heading", - "norm_label": "two silent failures the first build shipped with", - "source_file": "packaging/README.md", - "source_location": "L80" + "community_name": "app_main_module", + "file_type": "rationale", + "norm_label": "stand in for ``cellpy.config``, recording any reload.", + "source_file": "tests/test_packaging.py", + "source_location": "L113" }, { - "id": "packaging_readme_what_the_container_established_121", - "label": "What the container established (#121)", + "id": "tests_test_packaging_rationale_147", + "label": "Otherwise cellpy writes demo data inside the install directory (#122).", "_origin": "ast", "community": 71, - "community_name": "Packaging", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what the container established (#121)", - "source_file": "packaging/README.md", - "source_location": "L72" + "community_name": "app_main_module", + "file_type": "rationale", + "norm_label": "otherwise cellpy writes demo data inside the install directory (#122).", + "source_file": "tests/test_packaging.py", + "source_location": "L147" }, { - "id": "packaging_readme_what_the_continuous_build_added_168", - "label": "What the continuous build added (#168)", + "id": "tests_test_packaging_rationale_162", + "label": "cellpy's defaults are *relative* (``cellpy_data/examples``, ``.../logs``).\u2026", "_origin": "ast", "community": 71, - "community_name": "Packaging", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what the continuous build added (#168)", - "source_file": "packaging/README.md", - "source_location": "L230" + "community_name": "app_main_module", + "file_type": "rationale", + "norm_label": "cellpy's defaults are *relative* (``cellpy_data/examples``, ``.../logs``)....", + "source_file": "tests/test_packaging.py", + "source_location": "L162" }, { - "id": "packaging_readme_what_the_installer_added_122", - "label": "What the installer added (#122)", + "id": "tests_test_packaging_rationale_195", + "label": "``rawdatadir`` can be an scp:// URL \u2014 not absolute, and not ours to fix.", "_origin": "ast", "community": 71, - "community_name": "Packaging", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what the installer added (#122)", - "source_file": "packaging/README.md", - "source_location": "L155" + "community_name": "app_main_module", + "file_type": "rationale", + "norm_label": "``rawdatadir`` can be an scp:// url \u2014 not absolute, and not ours to fix.", + "source_file": "tests/test_packaging.py", + "source_location": "L195" }, { - "id": "packaging_readme_what_the_spike_established_117", - "label": "What the spike established (#117)", + "id": "tests_test_packaging_rationale_211", + "label": "A broken probe must not stop the app from starting.", "_origin": "ast", "community": 71, - "community_name": "Packaging", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what the spike established (#117)", - "source_file": "packaging/README.md", - "source_location": "L26" + "community_name": "app_main_module", + "file_type": "rationale", + "norm_label": "a broken probe must not stop the app from starting.", + "source_file": "tests/test_packaging.py", + "source_location": "L211" }, { "id": "issueflows_03_solved_issues_issue58_plan", @@ -66304,18 +66706,6 @@ "source_file": "", "source_location": "" }, - { - "id": "issueflows_03_solved_issues_issue162_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L157" - }, { "id": "src_cellpy_simple_gui_init_rationale_1", "label": "cellpy-simple-gui: a simple desktop GUI for exploring battery data with cellpy.", @@ -66338,61 +66728,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L1" }, - { - "id": "tests_test_packaging_rationale_113", - "label": "Stand in for ``cellpy.config``, recording any reload.", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "stand in for ``cellpy.config``, recording any reload.", - "source_file": "tests/test_packaging.py", - "source_location": "L113" - }, - { - "id": "tests_test_packaging_rationale_147", - "label": "Otherwise cellpy writes demo data inside the install directory (#122).", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "otherwise cellpy writes demo data inside the install directory (#122).", - "source_file": "tests/test_packaging.py", - "source_location": "L147" - }, - { - "id": "tests_test_packaging_rationale_162", - "label": "cellpy's defaults are *relative* (``cellpy_data/examples``, ``.../logs``).\u2026", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "cellpy's defaults are *relative* (``cellpy_data/examples``, ``.../logs``)....", - "source_file": "tests/test_packaging.py", - "source_location": "L162" - }, - { - "id": "tests_test_packaging_rationale_195", - "label": "``rawdatadir`` can be an scp:// URL \u2014 not absolute, and not ours to fix.", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "``rawdatadir`` can be an scp:// url \u2014 not absolute, and not ours to fix.", - "source_file": "tests/test_packaging.py", - "source_location": "L195" - }, - { - "id": "tests_test_packaging_rationale_211", - "label": "A broken probe must not stop the app from starting.", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "a broken probe must not stop the app from starting.", - "source_file": "tests/test_packaging.py", - "source_location": "L211" - }, { "id": "tests_test_packaging_rationale_223", "label": "Runtime droppings inside {app} would otherwise outlive the uninstall \u2014 and no\u2026", @@ -66448,28 +66783,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L30" }, - { - "id": "tests_test_packaging_rationale_320", - "label": "`continuous` is force-moved on every merge to main. If it ever matched the\u2026", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "`continuous` is force-moved on every merge to main. if it ever matched the...", - "source_file": "tests/test_packaging.py", - "source_location": "L320" - }, - { - "id": "tests_test_packaging_rationale_350", - "label": "Two callers, one recipe. A second copy of the PyInstaller + smoke-test + ISCC\u2026", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "two callers, one recipe. a second copy of the pyinstaller + smoke-test + iscc...", - "source_file": "tests/test_packaging.py", - "source_location": "L350" - }, { "id": "tests_test_packaging_rationale_376", "label": "The zip is the installer, not a second build (#173).", @@ -66492,17 +66805,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L38" }, - { - "id": "tests_test_packaging_rationale_396", - "label": "Both downloadable installers offer a .zip of the same .exe (#173).", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "both downloadable installers offer a .zip of the same .exe (#173).", - "source_file": "tests/test_packaging.py", - "source_location": "L396" - }, { "id": "tests_test_packaging_rationale_48", "label": "``sys.stderr`` is None in a windowed PyInstaller build. Handing that to\u2026", @@ -66514,17 +66816,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L48" }, - { - "id": "tests_test_packaging_rationale_70", - "label": "Not just None: a detached handle raises on write.", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "not just none: a detached handle raises on write.", - "source_file": "tests/test_packaging.py", - "source_location": "L70" - }, { "id": "issueflows_03_solved_issues_issue136_plan_approach", "label": "Approach", @@ -66561,30 +66852,6 @@ "source_file": ".issueflows/03-solved-issues/issue136_plan.md", "source_location": "L1" }, - { - "id": "issueflows_03_solved_issues_issue136_plan_manual_smoke_checklist_g3_g4_server_mode_csg_token_devtoken", - "label": "Manual smoke checklist (G3/G4; server mode, `CSG_TOKEN=devtoken`)", - "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "manual smoke checklist (g3/g4; server mode, `csg_token=devtoken`)", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L272" - }, - { - "id": "issueflows_03_solved_issues_issue136_plan_new_tests_summary", - "label": "New tests (summary)", - "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "new tests (summary)", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L288" - }, { "id": "issueflows_03_solved_issues_issue136_plan_open_questions", "label": "Open questions", @@ -66669,280 +66936,6 @@ "source_file": ".issueflows/03-solved-issues/issue136_plan.md", "source_location": "L213" }, - { - "id": "issueflows_03_solved_issues_issue136_plan_test_gates_when_to_run_what", - "label": "Test gates \u2014 when to run what", - "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test gates \u2014 when to run what", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L254" - }, - { - "id": "issueflows_03_solved_issues_issue136_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L245" - }, - { - "id": "issueflows_03_solved_issues_issue177_status", - "label": "issue177_status.md", - "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue177_status.md", - "source_file": ".issueflows/03-solved-issues/issue177_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue177_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue177_status.md", - "source_location": "L13" - }, - { - "id": "issueflows_03_solved_issues_issue177_status_status_issue_177", - "label": "Status \u2014 Issue #177", - "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "status \u2014 issue #177", - "source_file": ".issueflows/03-solved-issues/issue177_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue177_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue177_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan", - "label": "issue52_plan.md", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue52_plan.md", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L39" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L9" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L95" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_issue_52_plan_bump_cellpy_post4_delegate_app_glue", - "label": "Issue #52 \u2014 Plan: bump cellpy post4 + delegate app glue", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #52 \u2014 plan: bump cellpy post4 + delegate app glue", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L120" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_phase_a_bump_smoke", - "label": "Phase A \u2014 bump + smoke", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase a \u2014 bump + smoke", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L44" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_phase_c_implement_delegate_now", - "label": "Phase C \u2014 implement \u201cdelegate now\u201d", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase c \u2014 implement \u201cdelegate now\u201d", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L69" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_phase_d_docs", - "label": "Phase D \u2014 docs", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase d \u2014 docs", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L89" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L112" - }, - { - "id": "issueflows_03_solved_issues_issue52_status", - "label": "issue52_status.md", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue52_status.md", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue52_status_issue_52_status", - "label": "Issue #52 \u2014 Status", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #52 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue52_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue52_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_221", - "label": "Describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "rationale", - "norm_label": "describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L221" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_228", - "label": "Peek cellpy-file metadata without loading raw/steps/summary (#799).", - "_origin": "ast", - "community": 79, - "community_name": "instrument_meta_schema", - "file_type": "rationale", - "norm_label": "peek cellpy-file metadata without loading raw/steps/summary (#799).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L228" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a", "label": "a", @@ -67056,30 +67049,12 @@ "source_file": ".cursor/skills/iflow-epic/SKILL.md", "source_location": "L42" }, - { - "id": "cursor_skills_iflow_cleanup_skill", - "label": "iflow-cleanup/SKILL.md", - "_origin": "ast", - "community": 82, - "community_name": "gh", - "file_type": "document", - "frontmatter": { - "name": "iflow-cleanup", - "description": ">-", - "disable-model-invocation": "true", - "issue-flow-version": "0.4.2a4" - }, - "node_kind": "page", - "norm_label": "iflow-cleanup/skill.md", - "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", - "source_location": "L1" - }, { "id": "cursor_skills_iflow_review_skill", "label": "iflow-review/SKILL.md", "_origin": "ast", "community": 82, - "community_name": "gh", + "community_name": "issue-flow \u2014 review and label issues (`/iflow-review`)", "file_type": "document", "frontmatter": { "name": "iflow-review", @@ -67093,429 +67068,681 @@ "source_location": "L1" }, { - "id": "cursor_skills_iflow_setup_skill", - "label": "iflow-setup/SKILL.md", - "_origin": "ast", - "community": 82, - "community_name": "gh", - "file_type": "document", - "frontmatter": { - "name": "iflow-setup", - "description": ">-", - "disable-model-invocation": "true", - "issue-flow-version": "0.4.2a4" - }, - "node_kind": "page", - "norm_label": "iflow-setup/skill.md", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L1" - }, - { - "id": "cursor_skills_iflow_status_skill", - "label": "iflow-status/SKILL.md", - "_origin": "ast", - "community": 82, - "community_name": "gh", - "file_type": "document", - "frontmatter": { - "name": "iflow-status", - "description": ">-", - "disable-model-invocation": "true", - "issue-flow-version": "0.4.2a4" - }, - "node_kind": "page", - "norm_label": "iflow-status/skill.md", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L1" - }, - { - "id": "cursor_skills_iflow_cleanup_skill_constraints", + "id": "cursor_skills_iflow_review_skill_constraints", "label": "Constraints", "_origin": "ast", "community": 82, - "community_name": "gh", + "community_name": "issue-flow \u2014 review and label issues (`/iflow-review`)", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", - "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", - "source_location": "L134" + "source_file": ".cursor/skills/iflow-review/SKILL.md", + "source_location": "L130" }, { - "id": "cursor_skills_iflow_cleanup_skill_input", + "id": "cursor_skills_iflow_review_skill_input", "label": "Input", "_origin": "ast", "community": 82, - "community_name": "gh", + "community_name": "issue-flow \u2014 review and label issues (`/iflow-review`)", "file_type": "document", "node_kind": "heading", "norm_label": "input", - "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", - "source_location": "L57" + "source_file": ".cursor/skills/iflow-review/SKILL.md", + "source_location": "L61" }, { - "id": "cursor_skills_iflow_cleanup_skill_instructions", + "id": "cursor_skills_iflow_review_skill_instructions", "label": "Instructions", "_origin": "ast", "community": 82, - "community_name": "gh", + "community_name": "issue-flow \u2014 review and label issues (`/iflow-review`)", "file_type": "document", "node_kind": "heading", "norm_label": "instructions", - "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", - "source_location": "L68" + "source_file": ".cursor/skills/iflow-review/SKILL.md", + "source_location": "L79" }, { - "id": "cursor_skills_iflow_cleanup_skill_issue_flow_issue_cleanup_iflow_cleanup", - "label": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "id": "cursor_skills_iflow_review_skill_issue_flow_review_and_label_issues_iflow_review", + "label": "issue-flow \u2014 review and label issues (`/iflow-review`)", "_origin": "ast", "community": 82, - "community_name": "gh", + "community_name": "issue-flow \u2014 review and label issues (`/iflow-review`)", "file_type": "document", "node_kind": "heading", - "norm_label": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", - "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", - "source_location": "L12" + "norm_label": "issue-flow \u2014 review and label issues (`/iflow-review`)", + "source_file": ".cursor/skills/iflow-review/SKILL.md", + "source_location": "L9" }, { - "id": "cursor_skills_iflow_cleanup_skill_model_execution_directive", + "id": "cursor_skills_iflow_review_skill_model_execution_directive", "label": "MODEL & EXECUTION DIRECTIVE", "_origin": "ast", "community": 82, - "community_name": "gh", + "community_name": "issue-flow \u2014 review and label issues (`/iflow-review`)", "file_type": "document", "node_kind": "heading", "norm_label": "model & execution directive", - "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", - "source_location": "L22" + "source_file": ".cursor/skills/iflow-review/SKILL.md", + "source_location": "L25" }, { - "id": "cursor_skills_iflow_cleanup_skill_resolve_project_root_multi_root_workspaces", + "id": "cursor_skills_iflow_review_skill_resolve_project_root_multi_root_workspaces", "label": "Resolve project root (multi-root workspaces)", "_origin": "ast", "community": 82, - "community_name": "gh", + "community_name": "issue-flow \u2014 review and label issues (`/iflow-review`)", "file_type": "document", "node_kind": "heading", "norm_label": "resolve project root (multi-root workspaces)", - "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", - "source_location": "L36" + "source_file": ".cursor/skills/iflow-review/SKILL.md", + "source_location": "L39" }, { - "id": "cursor_skills_iflow_review_skill_constraints", - "label": "Constraints", + "id": "cursor_skills_iflow_review_skill_review_kinds_extendable", + "label": "Review kinds (extendable)", "_origin": "ast", "community": 82, - "community_name": "gh", + "community_name": "issue-flow \u2014 review and label issues (`/iflow-review`)", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", + "norm_label": "review kinds (extendable)", "source_file": ".cursor/skills/iflow-review/SKILL.md", - "source_location": "L130" + "source_location": "L70" }, { - "id": "cursor_skills_iflow_review_skill_input", - "label": "Input", + "id": "pathlike", + "label": "PathLike", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "pathlike", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_core_files", + "label": "files.py", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "files.py", + "source_file": "src/cellpy_simple_gui/core/files.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_core_paths", + "label": "paths.py", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "paths.py", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_core_paths_py_path", + "label": "Path", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_core_paths_py_valueerror", + "label": "ValueError", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "valueerror", + "source_file": "", + "source_location": "" + }, + { + "id": "tests_test_files", + "label": "test_files.py", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "test_files.py", + "source_file": "tests/test_files.py", + "source_location": "L1" + }, + { + "id": "tests_test_files_py_essential", + "label": "essential", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "essential", + "source_file": "", + "source_location": "" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "input", - "source_file": ".cursor/skills/iflow-review/SKILL.md", - "source_location": "L61" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L48" }, { - "id": "cursor_skills_iflow_review_skill_instructions", - "label": "Instructions", + "id": "issueflows_03_solved_issues_issue136_plan_stage_3_staged_file_list_glob_preview_endpoint", + "label": "Stage 3 \u2014 Staged file list + glob preview endpoint", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "instructions", - "source_file": ".cursor/skills/iflow-review/SKILL.md", - "source_location": "L79" + "norm_label": "stage 3 \u2014 staged file list + glob preview endpoint", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L138" }, { - "id": "cursor_skills_iflow_review_skill_issue_flow_review_and_label_issues_iflow_review", - "label": "issue-flow \u2014 review and label issues (`/iflow-review`)", + "id": "issueflows_03_solved_issues_issue160_plan_approach", + "label": "Approach", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "issue-flow \u2014 review and label issues (`/iflow-review`)", - "source_file": ".cursor/skills/iflow-review/SKILL.md", - "source_location": "L9" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L66" }, { - "id": "cursor_skills_iflow_review_skill_model_execution_directive", - "label": "MODEL & EXECUTION DIRECTIVE", + "id": "issueflows_03_solved_issues_issue160_plan_constraints", + "label": "Constraints", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "model & execution directive", - "source_file": ".cursor/skills/iflow-review/SKILL.md", - "source_location": "L25" + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L13" }, { - "id": "cursor_skills_iflow_review_skill_resolve_project_root_multi_root_workspaces", - "label": "Resolve project root (multi-root workspaces)", + "id": "issueflows_03_solved_issues_issue160_plan_explicitly_deferred_later_than_phase_2", + "label": "Explicitly deferred (later than phase 2)", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "resolve project root (multi-root workspaces)", - "source_file": ".cursor/skills/iflow-review/SKILL.md", - "source_location": "L39" + "norm_label": "explicitly deferred (later than phase 2)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L112" }, { - "id": "cursor_skills_iflow_review_skill_review_kinds_extendable", - "label": "Review kinds (extendable)", + "id": "issueflows_03_solved_issues_issue160_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "review kinds (extendable)", - "source_file": ".cursor/skills/iflow-review/SKILL.md", - "source_location": "L70" + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L128" }, { - "id": "cursor_skills_iflow_setup_skill_constraints", - "label": "Constraints", + "id": "issueflows_03_solved_issues_issue160_plan_goal", + "label": "Goal", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L110" + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L3" }, { - "id": "cursor_skills_iflow_setup_skill_input", - "label": "Input", + "id": "issueflows_03_solved_issues_issue160_plan_issue_160_plan_otherpath_remote_loading", + "label": "Issue #160 \u2014 Plan: OtherPath remote loading", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "input", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L63" + "norm_label": "issue #160 \u2014 plan: otherpath remote loading", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L1" }, { - "id": "cursor_skills_iflow_setup_skill_instructions", - "label": "Instructions", + "id": "issueflows_03_solved_issues_issue160_plan_open_questions", + "label": "Open questions", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "instructions", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L70" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L163" }, { - "id": "cursor_skills_iflow_setup_skill_issue_flow_guided_project_setup_iflow_setup", - "label": "issue-flow \u2014 guided project setup (`/iflow-setup`)", + "id": "issueflows_03_solved_issues_issue160_plan_ordering", + "label": "Ordering", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "issue-flow \u2014 guided project setup (`/iflow-setup`)", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L10" + "norm_label": "ordering", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L120" }, { - "id": "cursor_skills_iflow_setup_skill_model_execution_directive", - "label": "MODEL & EXECUTION DIRECTIVE", + "id": "issueflows_03_solved_issues_issue160_plan_phase_1_mvp_this_issue_after_accept", + "label": "Phase 1 \u2014 MVP (this issue after Accept)", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "model & execution directive", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L27" + "norm_label": "phase 1 \u2014 mvp (this issue after accept)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L68" }, { - "id": "cursor_skills_iflow_setup_skill_resolve_project_root_multi_root_workspaces", - "label": "Resolve project root (multi-root workspaces)", + "id": "issueflows_03_solved_issues_issue160_plan_phase_2_filefinder_approx_glob_follow_up_issue_decided", + "label": "Phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "resolve project root (multi-root workspaces)", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L41" + "norm_label": "phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L94" }, { - "id": "cursor_skills_iflow_status_skill_constraints", - "label": "Constraints", + "id": "issueflows_03_solved_issues_issue160_plan_phase_2_follow_up_issue", + "label": "Phase 2 (follow-up issue)", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L84" + "norm_label": "phase 2 (follow-up issue)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L142" }, { - "id": "cursor_skills_iflow_status_skill_instructions", - "label": "Instructions", + "id": "issueflows_03_solved_issues_issue160_plan_prior_art", + "label": "Prior art", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "instructions", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L56" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L38" }, { - "id": "cursor_skills_iflow_status_skill_issue_flow_issue_status_overview_iflow_status", - "label": "issue-flow \u2014 issue status overview (`/iflow-status`)", + "id": "issueflows_03_solved_issues_issue160_plan_scope_check", + "label": "Scope check", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "issue-flow \u2014 issue status overview (`/iflow-status`)", - "source_file": ".cursor/skills/iflow-status/SKILL.md", + "norm_label": "scope check", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L175" + }, + { + "id": "issueflows_03_solved_issues_issue160_status", + "label": "issue160_status.md", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue160_status.md", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue160_status_issue_160_status", + "label": "Issue #160 \u2014 Status", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #160 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue160_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue160_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue162_original", + "label": "issue162_original.md", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue162_original.md", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue162_original_goal", + "label": "Goal", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", "source_location": "L9" }, { - "id": "cursor_skills_iflow_status_skill_model_execution_directive", - "label": "MODEL & EXECUTION DIRECTIVE", + "id": "issueflows_03_solved_issues_issue162_original_issue_162_remote_file_find_via_cellpy_filefinder_otherpath_phase_2", + "label": "Issue #162: Remote file find via cellpy.filefinder (OtherPath phase 2)", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "model & execution directive", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L21" + "norm_label": "issue #162: remote file find via cellpy.filefinder (otherpath phase 2)", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L1" }, { - "id": "cursor_skills_iflow_status_skill_resolve_project_root_multi_root_workspaces", - "label": "Resolve project root (multi-root workspaces)", + "id": "issueflows_03_solved_issues_issue162_original_original_issue_text", + "label": "Original issue text", "_origin": "ast", - "community": 82, - "community_name": "gh", + "community": 83, + "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "resolve project root (multi-root workspaces)", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L35" + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L5" }, { - "id": "pathlike", - "label": "PathLike", + "id": "issueflows_03_solved_issues_issue162_original_out_of_scope", + "label": "Out of scope", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "code", - "norm_label": "pathlike", - "source_file": "", - "source_location": "" + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L20" }, { - "id": "src_cellpy_simple_gui_core_files", - "label": "files.py", + "id": "issueflows_03_solved_issues_issue162_original_spec", + "label": "Spec", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "code", - "norm_label": "files.py", - "source_file": "src/cellpy_simple_gui/core/files.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L13" + }, + { + "id": "issueflows_03_solved_issues_issue162_plan", + "label": "issue162_plan.md", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue162_plan.md", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_paths", - "label": "paths.py", + "id": "issueflows_03_solved_issues_issue162_plan_approach", + "label": "Approach", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "code", - "norm_label": "paths.py", - "source_file": "src/cellpy_simple_gui/core/paths.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L77" + }, + { + "id": "issueflows_03_solved_issues_issue162_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue162_plan_issue_162_plan_remote_file_find_via_cellpy_filefinder_otherpath_phase_2", + "label": "Issue #162 \u2014 Plan: remote file find via `cellpy.filefinder` (OtherPath phase 2)", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #162 \u2014 plan: remote file find via `cellpy.filefinder` (otherpath phase 2)", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_paths_py_path", - "label": "Path", + "id": "issueflows_03_solved_issues_issue162_plan_open_questions", + "label": "Open questions", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L176" }, { - "id": "src_cellpy_simple_gui_core_paths_py_valueerror", - "label": "ValueError", + "id": "issueflows_03_solved_issues_issue162_plan_scope_check", + "label": "Scope check", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "code", - "norm_label": "valueerror", - "source_file": "", - "source_location": "" + "file_type": "document", + "node_kind": "heading", + "norm_label": "scope check", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L191" }, { - "id": "tests_test_files", - "label": "test_files.py", + "id": "issueflows_03_solved_issues_issue162_status", + "label": "issue162_status.md", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "code", - "norm_label": "test_files.py", - "source_file": "tests/test_files.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue162_status.md", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", "source_location": "L1" }, { - "id": "tests_test_files_py_essential", - "label": "essential", + "id": "issueflows_03_solved_issues_issue162_status_issue_162_status", + "label": "Issue #162 \u2014 Status", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "code", - "norm_label": "essential", - "source_file": "", - "source_location": "" + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #162 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue136_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue162_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 83, "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L48" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", + "source_location": "L34" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_3_staged_file_list_glob_preview_endpoint", - "label": "Stage 3 \u2014 Staged file list + glob preview endpoint", + "id": "issueflows_03_solved_issues_issue162_status_what_s_done", + "label": "What's done", "_origin": "ast", "community": 83, "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 3 \u2014 staged file list + glob preview endpoint", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L138" + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_04_designs_and_guides_loading_ui", + "label": "loading-ui.md", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "page", + "norm_label": "loading-ui.md", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_loading_ui_alternatives_considered", + "label": "Alternatives considered", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L60" + }, + { + "id": "issueflows_04_designs_and_guides_loading_ui_context", + "label": "Context", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L3" + }, + { + "id": "issueflows_04_designs_and_guides_loading_ui_decision", + "label": "Decision", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L13" + }, + { + "id": "issueflows_04_designs_and_guides_loading_ui_guard_rails_tests", + "label": "Guard rails (tests)", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "guard rails (tests)", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L49" + }, + { + "id": "issueflows_04_designs_and_guides_loading_ui_links", + "label": "Links", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "links", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L72" + }, + { + "id": "issueflows_04_designs_and_guides_loading_ui_loading_ui_add_cells_modal_staged_list_local_issue_136", + "label": "Loading UI: Add cells modal + staged list (local issue 136)", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "loading ui: add cells modal + staged list (local issue 136)", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_otherpath_remote_loading", + "label": "otherpath-remote-loading.md", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "page", + "norm_label": "otherpath-remote-loading.md", + "source_file": ".issueflows/04-designs-and-guides/otherpath-remote-loading.md", + "source_location": "L1" }, { "id": "issueflows_04_designs_and_guides_otherpath_remote_loading_alternatives_considered", @@ -67578,16 +67805,15 @@ "source_location": "L1" }, { - "id": "readme_local_vs_served_what_the_app_may_touch", - "label": "Local vs served: what the app may touch", + "id": "src_cellpy_simple_gui_config_rationale_71", + "label": "Cap on files pulled in by one glob / load (raised in dev mode).", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "local vs served: what the app may touch", - "source_file": "README.md", - "source_location": "L319" + "file_type": "rationale", + "norm_label": "cap on files pulled in by one glob / load (raised in dev mode).", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L71" }, { "id": "src_cellpy_simple_gui_core_files_rationale_1", @@ -67699,6 +67925,17 @@ "source_file": "src/cellpy_simple_gui/core/paths.py", "source_location": "L82" }, + { + "id": "tests_test_api_reference_rationale_98", + "label": "Independent of any cellpy version: two committed files, same bytes. This is the\u2026", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "rationale", + "norm_label": "independent of any cellpy version: two committed files, same bytes. this is the...", + "source_file": "tests/test_api_reference.py", + "source_location": "L98" + }, { "id": "tests_test_files_rationale_1", "label": "Tests for glob/path expansion.", @@ -68021,153 +68258,160 @@ "source_location": "L36" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_baseexception", - "label": "BaseException", + "id": "issueflows_03_solved_issues_issue136_plan_manual_smoke_checklist_g3_g4_server_mode_csg_token_devtoken", + "label": "Manual smoke checklist (G3/G4; server mode, `CSG_TOKEN=devtoken`)", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", - "file_type": "code", - "norm_label": "baseexception", - "source_file": "", - "source_location": "" + "community_name": "test_llms_full_txt_is_current", + "file_type": "document", + "node_kind": "heading", + "norm_label": "manual smoke checklist (g3/g4; server mode, `csg_token=devtoken`)", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L272" }, { - "id": "issueflows_03_solved_issues_issue162_plan_approach", - "label": "Approach", + "id": "issueflows_03_solved_issues_issue136_plan_new_tests_summary", + "label": "New tests (summary)", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", + "community_name": "test_llms_full_txt_is_current", "file_type": "document", "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L77" + "norm_label": "new tests (summary)", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L288" }, { - "id": "issueflows_03_solved_issues_issue162_plan_files_to_touch", - "label": "Files to touch", + "id": "issueflows_03_solved_issues_issue136_plan_test_gates_when_to_run_what", + "label": "Test gates \u2014 when to run what", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", + "community_name": "test_llms_full_txt_is_current", "file_type": "document", "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L141" + "norm_label": "test gates \u2014 when to run what", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L254" }, { - "id": "issueflows_03_solved_issues_issue162_plan_goal", - "label": "Goal", + "id": "issueflows_03_solved_issues_issue136_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", + "community_name": "test_llms_full_txt_is_current", "file_type": "document", "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L3" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L245" }, { - "id": "issueflows_03_solved_issues_issue162_plan_issue_162_plan_remote_file_find_via_cellpy_filefinder_otherpath_phase_2", - "label": "Issue #162 \u2014 Plan: remote file find via `cellpy.filefinder` (OtherPath phase 2)", + "id": "issueflows_03_solved_issues_issue136_status", + "label": "issue136_status.md", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", + "community_name": "test_llms_full_txt_is_current", "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #162 \u2014 plan: remote file find via `cellpy.filefinder` (otherpath phase 2)", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "node_kind": "page", + "norm_label": "issue136_status.md", + "source_file": ".issueflows/03-solved-issues/issue136_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue162_plan_open_questions", - "label": "Open questions", + "id": "issueflows_03_solved_issues_issue136_status_issue_136_status", + "label": "Issue #136 \u2014 Status", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", + "community_name": "test_llms_full_txt_is_current", "file_type": "document", "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L176" + "norm_label": "issue #136 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue136_status.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue162_plan_scope_check", - "label": "Scope check", + "id": "issueflows_03_solved_issues_issue136_status_notes_deviations", + "label": "Notes / deviations", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", + "community_name": "test_llms_full_txt_is_current", "file_type": "document", "node_kind": "heading", - "norm_label": "scope check", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L191" + "norm_label": "notes / deviations", + "source_file": ".issueflows/03-solved-issues/issue136_status.md", + "source_location": "L65" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_206", - "label": "Turn a loader failure into something a user can act on (#143). A raw\u2026", + "id": "issueflows_03_solved_issues_issue136_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", - "file_type": "rationale", - "norm_label": "turn a loader failure into something a user can act on (#143). a raw...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L206" + "community_name": "test_llms_full_txt_is_current", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue136_status.md", + "source_location": "L80" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_371", - "label": "Result of :func:`find_remote_files`. ``paths`` is the capped, de-duplicated\u2026", + "id": "issueflows_03_solved_issues_issue136_status_what_s_done", + "label": "What's done", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", - "file_type": "rationale", - "norm_label": "result of :func:`find_remote_files`. ``paths`` is the capped, de-duplicated...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L371" + "community_name": "test_llms_full_txt_is_current", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue136_status.md", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_385", - "label": "Seam around ``cellpy.filefinder.find_in_raw_file_directory``.", + "id": "issueflows_03_solved_issues_issue177_status", + "label": "issue177_status.md", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", - "file_type": "rationale", - "norm_label": "seam around ``cellpy.filefinder.find_in_raw_file_directory``.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L385" + "community_name": "test_llms_full_txt_is_current", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue177_status.md", + "source_file": ".issueflows/03-solved-issues/issue177_status.md", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_394", - "label": "Turn the UI's name filter into filefinder's ``glob_txt``. Bare text means\u2026", + "id": "issueflows_03_solved_issues_issue177_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", - "file_type": "rationale", - "norm_label": "turn the ui's name filter into filefinder's ``glob_txt``. bare text means...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L394" + "community_name": "test_llms_full_txt_is_current", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue177_status.md", + "source_location": "L13" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_414", - "label": "Approximate a remote \"glob\": list files under an ``sftp://`` folder. Wraps\u2026", + "id": "issueflows_03_solved_issues_issue177_status_status_issue_177", + "label": "Status \u2014 Issue #177", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", - "file_type": "rationale", - "norm_label": "approximate a remote \"glob\": list files under an ``sftp://`` folder. wraps...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L414" + "community_name": "test_llms_full_txt_is_current", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 issue #177", + "source_file": ".issueflows/03-solved-issues/issue177_status.md", + "source_location": "L1" }, { - "id": "tests_test_api_reference_rationale_98", - "label": "Independent of any cellpy version: two committed files, same bytes. This is the\u2026", + "id": "issueflows_03_solved_issues_issue177_status_what_s_done", + "label": "What's done", "_origin": "ast", "community": 87, - "community_name": "find_remote_files", - "file_type": "rationale", - "norm_label": "independent of any cellpy version: two committed files, same bytes. this is the...", - "source_file": "tests/test_api_reference.py", - "source_location": "L98" + "community_name": "test_llms_full_txt_is_current", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue177_status.md", + "source_location": "L5" }, { "id": "issueflows_03_solved_issues_issue3_plan", @@ -68217,6 +68461,18 @@ "source_file": ".issueflows/03-solved-issues/issue3_plan.md", "source_location": "L26" }, + { + "id": "issueflows_03_solved_issues_issue3_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L7" + }, { "id": "issueflows_03_solved_issues_issue3_plan_files_to_touch", "label": "Files to touch", @@ -68302,16 +68558,51 @@ "source_location": "L73" }, { - "id": "issueflows_03_solved_issues_issue175_plan_prior_art", - "label": "Prior art", + "id": "tests_test_core_py_skipif", + "label": "skipif", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "code", + "norm_label": "skipif", + "source_file": "", + "source_location": "" + }, + { + "id": "issueflows_03_solved_issues_issue27_status", + "label": "issue27_status.md", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue27_status.md", + "source_file": ".issueflows/03-solved-issues/issue27_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue27_status_issue_27_status_iterative_fixes_group_average_checkbox", + "label": "Issue #27 status \u2014 Iterative fixes: group average checkbox", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue175_plan.md", - "source_location": "L38" + "norm_label": "issue #27 status \u2014 iterative fixes: group average checkbox", + "source_file": ".issueflows/03-solved-issues/issue27_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue27_status_iterative_fixes_log", + "label": "Iterative fixes log", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "iterative fixes log", + "source_file": ".issueflows/03-solved-issues/issue27_status.md", + "source_location": "L7" }, { "id": "issueflows_03_solved_issues_issue2_original", @@ -68493,126 +68784,6 @@ "source_file": ".issueflows/03-solved-issues/issue2_plan.md", "source_location": "L21" }, - { - "id": "issueflows_03_solved_issues_issue2_status", - "label": "issue2_status.md", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue2_status.md", - "source_file": ".issueflows/03-solved-issues/issue2_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue2_status_issue_2_status", - "label": "Issue #2 status", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #2 status", - "source_file": ".issueflows/03-solved-issues/issue2_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue2_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue2_status.md", - "source_location": "L20" - }, - { - "id": "issueflows_03_solved_issues_issue2_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue2_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue32_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue32_plan.md", - "source_location": "L24" - }, - { - "id": "issueflows_03_solved_issues_issue38_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L75" - }, - { - "id": "issueflows_03_solved_issues_issue38_status", - "label": "issue38_status.md", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue38_status.md", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue38_status_issue_38_status", - "label": "Issue #38 status", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #38 status", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue38_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue38_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L5" - }, { "id": "issueflows_03_solved_issues_issue54_plan_approach", "label": "Approach", @@ -68710,88 +68881,100 @@ "source_location": "L83" }, { - "id": "issueflows_03_solved_issues_issue55_status", - "label": "issue55_status.md", + "id": "issueflows_03_solved_issues_issue62_original", + "label": "issue62_original.md", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "page", - "norm_label": "issue55_status.md", - "source_file": ".issueflows/03-solved-issues/issue55_status.md", + "norm_label": "issue62_original.md", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue55_status_issue_55_status", - "label": "Issue #55 \u2014 Status", + "id": "issueflows_03_solved_issues_issue62_original_acceptance_criteria", + "label": "Acceptance criteria", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #55 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue55_status.md", - "source_location": "L1" + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L17" }, { - "id": "issueflows_03_solved_issues_issue55_status_remaining_work", - "label": "Remaining work", + "id": "issueflows_03_solved_issues_issue62_original_comments_curated_summary", + "label": "Comments (curated summary)", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue55_status.md", - "source_location": "L15" + "norm_label": "comments (curated summary)", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L27" }, { - "id": "issueflows_03_solved_issues_issue55_status_what_s_done", - "label": "What's done", + "id": "issueflows_03_solved_issues_issue62_original_issue_62_add_checkbox_for_group_vs_individual_plotly_legend_muting_on_summary_plots", + "label": "Issue #62: Add checkbox for group vs individual Plotly legend muting on summary plots", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue55_status.md", + "norm_label": "issue #62: add checkbox for group vs individual plotly legend muting on summary plots", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue62_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue62_original_spec", - "label": "Spec", + "id": "issueflows_03_solved_issues_issue62_original_out_of_scope", + "label": "Out of scope", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "spec", + "norm_label": "out of scope", "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L10" + "source_location": "L23" }, { - "id": "issueflows_03_solved_issues_issue62_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue62_original_problem_context", + "label": "Problem / context", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L16" + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue62_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_03_solved_issues_issue62_original_spec", + "label": "Spec", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L46" + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L10" }, { "id": "issueflows_03_solved_issues_issue62_status", @@ -68842,173 +69025,236 @@ "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue72_plan_approach", - "label": "Approach", + "id": "issueflows_04_designs_and_guides_group_legend_muting", + "label": "group-legend-muting.md", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L32" + "node_kind": "page", + "norm_label": "group-legend-muting.md", + "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue72_plan_prior_art", - "label": "Prior art", + "id": "issueflows_04_designs_and_guides_group_legend_muting_alternatives_considered", + "label": "Alternatives considered", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L16" + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_location": "L20" }, { - "id": "issueflows_03_solved_issues_issue72_status", - "label": "issue72_status.md", + "id": "issueflows_04_designs_and_guides_group_legend_muting_context", + "label": "Context", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", - "node_kind": "page", - "norm_label": "issue72_status.md", - "source_file": ".issueflows/03-solved-issues/issue72_status.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue72_status_issue_72_status", - "label": "Issue #72 status", + "id": "issueflows_04_designs_and_guides_group_legend_muting_decision", + "label": "Decision", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #72 status", - "source_file": ".issueflows/03-solved-issues/issue72_status.md", - "source_location": "L1" + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_location": "L9" }, { - "id": "issueflows_03_solved_issues_issue72_status_remaining_work", - "label": "Remaining work", + "id": "issueflows_04_designs_and_guides_group_legend_muting_group_vs_individual_legend_muting_62", + "label": "Group vs individual legend muting (#62)", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue72_status.md", - "source_location": "L14" + "norm_label": "group vs individual legend muting (#62)", + "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue72_status_what_s_done", - "label": "What's done", + "id": "src_cellpy_simple_gui_core_models_rationale_90", + "label": "Drives a cellpy ``collect_summaries`` collection + its plot/export.", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue72_status.md", - "source_location": "L5" + "file_type": "rationale", + "norm_label": "drives a cellpy ``collect_summaries`` collection + its plot/export.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L90" }, { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_static_figure_export_png_svg_pdf", - "label": "Static figure export (PNG / SVG / PDF)", + "id": "tests_test_core_rationale_151", + "label": "#62: SummaryPlotSpec.group_legend_muting reaches collection.plot kwargs.", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "static figure export (png / svg / pdf)", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L23" + "file_type": "rationale", + "norm_label": "#62: summaryplotspec.group_legend_muting reaches collection.plot kwargs.", + "source_file": "tests/test_core.py", + "source_location": "L151" }, { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_decision", - "label": "Decision", + "id": "tests_test_core_rationale_1626", + "label": "A family the data cannot support must say so, not render blank (#97).", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", - "source_location": "L9" + "file_type": "rationale", + "norm_label": "a family the data cannot support must say so, not render blank (#97).", + "source_file": "tests/test_core.py", + "source_location": "L1626" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_261", - "label": "Which of ``columns`` the loaded cells do not actually carry. A family's\u2026", + "id": "tests_test_core_rationale_1649", + "label": "#106 / cellpy #868: collect-time columns must not read as missing data.\u2026", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "rationale", - "norm_label": "which of ``columns`` the loaded cells do not actually carry. a family's...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L261" + "norm_label": "#106 / cellpy #868: collect-time columns must not read as missing data....", + "source_file": "tests/test_core.py", + "source_location": "L1649" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_433", - "label": "``variable \u2192`` unit-bearing axis title via cellpy label builders (#38).", + "id": "tests_test_core_rationale_172", + "label": "#62: CyclesPlotSpec.group_legend_muting reaches collection.plot kwargs.", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "rationale", - "norm_label": "``variable \u2192`` unit-bearing axis title via cellpy label builders (#38).", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L433" + "norm_label": "#62: cyclesplotspec.group_legend_muting reaches collection.plot kwargs.", + "source_file": "tests/test_core.py", + "source_location": "L172" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_902", - "label": "Carry user-facing notes in ``layout.meta.warnings`` (#175). Plotly's ``meta``\u2026", + "id": "tests_test_core_rationale_612", + "label": "Group avg averages multi-member groups even when a singleton exists. cellpy\u2026", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "rationale", - "norm_label": "carry user-facing notes in ``layout.meta.warnings`` (#175). plotly's ``meta``...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L902" + "norm_label": "group avg averages multi-member groups even when a singleton exists. cellpy...", + "source_file": "tests/test_core.py", + "source_location": "L612" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_90", - "label": "Drives a cellpy ``collect_summaries`` collection + its plot/export.", + "id": "tests_test_core_rationale_649", + "label": "Avg group + singleton both render on every variable facet (#39/#816). cellpy\u2026", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "rationale", - "norm_label": "drives a cellpy ``collect_summaries`` collection + its plot/export.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L90" + "norm_label": "avg group + singleton both render on every variable facet (#39/#816). cellpy...", + "source_file": "tests/test_core.py", + "source_location": "L649" }, { - "id": "tests_test_core_rationale_151", - "label": "#62: SummaryPlotSpec.group_legend_muting reaches collection.plot kwargs.", + "id": "tests_test_core_rationale_735", + "label": "Long journal-style labels must not blow up the summary legend (#1).", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "rationale", - "norm_label": "#62: summaryplotspec.group_legend_muting reaches collection.plot kwargs.", + "norm_label": "long journal-style labels must not blow up the summary legend (#1).", "source_file": "tests/test_core.py", - "source_location": "L151" + "source_location": "L735" }, { - "id": "tests_test_core_rationale_172", - "label": "#62: CyclesPlotSpec.group_legend_muting reaches collection.plot kwargs.", + "id": "tests_test_core_rationale_765", + "label": "Short labels stay intact; right margin stays modest (#1).", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "rationale", - "norm_label": "#62: cyclesplotspec.group_legend_muting reaches collection.plot kwargs.", + "norm_label": "short labels stay intact; right margin stays modest (#1).", "source_file": "tests/test_core.py", - "source_location": "L172" + "source_location": "L765" + }, + { + "id": "tests_test_core_rationale_805", + "label": "Dark theme tokens land on layout (#32).", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "rationale", + "norm_label": "dark theme tokens land on layout (#32).", + "source_file": "tests/test_core.py", + "source_location": "L805" + }, + { + "id": "tests_test_core_rationale_818", + "label": "safe colorway paints at least one trace from library.PALETTE (#32).", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "rationale", + "norm_label": "safe colorway paints at least one trace from library.palette (#32).", + "source_file": "tests/test_core.py", + "source_location": "L818" + }, + { + "id": "tests_test_core_rationale_877", + "label": "#40: cellpy's spread_plot sets no hovertemplate at all \u2014 restore it. Turning\u2026", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "rationale", + "norm_label": "#40: cellpy's spread_plot sets no hovertemplate at all \u2014 restore it. turning...", + "source_file": "tests/test_core.py", + "source_location": "L877" + }, + { + "id": "tests_test_core_rationale_919", + "label": "No regression: cellpy already gives these paths good hover (#40).", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "rationale", + "norm_label": "no regression: cellpy already gives these paths good hover (#40).", + "source_file": "tests/test_core.py", + "source_location": "L919" + }, + { + "id": "runtimeerror", + "label": "RuntimeError", + "_origin": "ast", + "community": 90, + "community_name": "core/export.py", + "file_type": "code", + "norm_label": "runtimeerror", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_core_export", + "label": "core/export.py", + "_origin": "ast", + "community": 90, + "community_name": "core/export.py", + "file_type": "code", + "norm_label": "core/export.py", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L1" }, { "id": "tests_test_uploads", "label": "test_uploads.py", "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "test_uploads.py", "source_file": "tests/test_uploads.py", @@ -69019,7 +69265,7 @@ "label": "fixture", "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "fixture", "source_file": "", @@ -69030,18 +69276,62 @@ "label": "parametrize", "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "code", "norm_label": "parametrize", "source_file": "", "source_location": "" }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_1", + "label": "Data + static-figure export. Data path: cellpy collections \u2192 csv / xlsx /\u2026", + "_origin": "ast", + "community": 90, + "community_name": "core/export.py", + "file_type": "rationale", + "norm_label": "data + static-figure export. data path: cellpy collections \u2192 csv / xlsx /...", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_214", + "label": "Stable, filesystem-safe stems; disambiguate duplicates with ``_2``, \u2026", + "_origin": "ast", + "community": 90, + "community_name": "core/export.py", + "file_type": "rationale", + "norm_label": "stable, filesystem-safe stems; disambiguate duplicates with ``_2``, ...", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L214" + }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_52", + "label": "Static figure export failed (often missing kaleido or its browser).", + "_origin": "ast", + "community": 90, + "community_name": "core/export.py", + "file_type": "rationale", + "norm_label": "static figure export failed (often missing kaleido or its browser).", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L52" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_256", + "label": "Differential voltage (dV/dQ vs capacity) for one cell \u2014 developer mode. Same\u2026", + "_origin": "ast", + "community": 90, + "community_name": "core/export.py", + "file_type": "rationale", + "norm_label": "differential voltage (dv/dq vs capacity) for one cell \u2014 developer mode. same...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L256" + }, { "id": "tests_test_uploads_rationale_1", "label": "Browser upload for served instances (#133). The sandbox (#120) is right to\u2026", "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "rationale", "norm_label": "browser upload for served instances (#133). the sandbox (#120) is right to...", "source_file": "tests/test_uploads.py", @@ -69052,7 +69342,7 @@ "label": "A served instance with its data dir under tmp_path.", "_origin": "ast", "community": 90, - "community_name": "test_uploads.py", + "community_name": "core/export.py", "file_type": "rationale", "norm_label": "a served instance with its data dir under tmp_path.", "source_file": "tests/test_uploads.py", @@ -69070,18 +69360,6 @@ "source_file": ".issueflows/03-solved-issues/issue136_original.md", "source_location": "L1" }, - { - "id": "issueflows_03_solved_issues_issue136_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue136_original.md", - "source_location": "L87" - }, { "id": "issueflows_03_solved_issues_issue136_original_issue_136_redesign_the_loading_surface_one_add_cells_flow_staged_file_list_contextual_help", "label": "Issue #136: Redesign the loading surface: one \"Add cells\" flow, staged file list, contextual help", @@ -69154,77 +69432,6 @@ "source_file": ".issueflows/03-solved-issues/issue136_plan.md", "source_location": "L1" }, - { - "id": "issueflows_03_solved_issues_issue136_status", - "label": "issue136_status.md", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue136_status.md", - "source_file": ".issueflows/03-solved-issues/issue136_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue136_status_issue_136_status", - "label": "Issue #136 \u2014 Status", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #136 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue136_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue136_status_notes_deviations", - "label": "Notes / deviations", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "notes / deviations", - "source_file": ".issueflows/03-solved-issues/issue136_status.md", - "source_location": "L65" - }, - { - "id": "issueflows_03_solved_issues_issue136_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue136_status.md", - "source_location": "L80" - }, - { - "id": "issueflows_03_solved_issues_issue136_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue136_status.md", - "source_location": "L5" - }, - { - "id": "tests_test_api_rationale_454", - "label": "A syntax error in app.js breaks the whole UI while Python tests stay green.\u2026", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "rationale", - "norm_label": "a syntax error in app.js breaks the whole ui while python tests stay green....", - "source_file": "tests/test_api.py", - "source_location": "L454" - }, { "id": "issueflows_03_solved_issues_issue60_status", "label": "issue60_status.md", @@ -69391,6 +69598,36 @@ "source_file": ".cursor/skills/iflow-auto/SKILL.md", "source_location": "L1" }, + { + "id": "cursor_skills_iflow_drive_skill", + "label": "iflow-drive/SKILL.md", + "_origin": "ast", + "community": 96, + "community_name": ".status", + "file_type": "document", + "frontmatter": { + "name": "iflow-drive", + "description": ">-", + "disable-model-invocation": "true", + "issue-flow-version": "0.4.2a4" + }, + "node_kind": "page", + "norm_label": "iflow-drive/skill.md", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L1" + }, + { + "id": "agents_command_lifecycle", + "label": "Command lifecycle", + "_origin": "ast", + "community": 96, + "community_name": ".status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "command lifecycle", + "source_file": "AGENTS.md", + "source_location": "L167" + }, { "id": "cursor_skills_iflow_auto_skill_constraints", "label": "Constraints", @@ -69464,112 +69701,100 @@ "source_location": "L54" }, { - "id": "docs_issue_workflow_15_iflow_auto_unattended_large_change_orchestration", - "label": "15. `/iflow-auto` \u2014 unattended large-change orchestration", + "id": "cursor_skills_iflow_drive_skill_constraints", + "label": "Constraints", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "15. `/iflow-auto` \u2014 unattended large-change orchestration", - "source_file": "docs/issue-workflow.md", - "source_location": "L529" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan", - "label": "issue162_plan.md", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue162_plan.md", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L1" + "norm_label": "constraints", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L178" }, { - "id": "issueflows_04_designs_and_guides_loading_ui", - "label": "loading-ui.md", + "id": "cursor_skills_iflow_drive_skill_input", + "label": "Input", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", - "node_kind": "page", - "norm_label": "loading-ui.md", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "input", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L24" }, { - "id": "issueflows_04_designs_and_guides_loading_ui_alternatives_considered", - "label": "Alternatives considered", + "id": "cursor_skills_iflow_drive_skill_instructions", + "label": "Instructions", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L60" + "norm_label": "instructions", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L83" }, { - "id": "issueflows_04_designs_and_guides_loading_ui_context", - "label": "Context", + "id": "cursor_skills_iflow_drive_skill_issue_flow_drive_iflow_drive", + "label": "issue-flow \u2014 drive (`/iflow-drive`)", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L3" + "norm_label": "issue-flow \u2014 drive (`/iflow-drive`)", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L11" }, { - "id": "issueflows_04_designs_and_guides_loading_ui_decision", - "label": "Decision", + "id": "cursor_skills_iflow_drive_skill_model_execution_directive", + "label": "MODEL & EXECUTION DIRECTIVE", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L13" + "norm_label": "model & execution directive", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L48" }, { - "id": "issueflows_04_designs_and_guides_loading_ui_guard_rails_tests", - "label": "Guard rails (tests)", + "id": "cursor_skills_iflow_drive_skill_resolve_project_root_multi_root_workspaces", + "label": "Resolve project root (multi-root workspaces)", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "guard rails (tests)", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L49" + "norm_label": "resolve project root (multi-root workspaces)", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L62" }, { - "id": "issueflows_04_designs_and_guides_loading_ui_links", - "label": "Links", + "id": "docs_issue_workflow_15_iflow_auto_unattended_large_change_orchestration", + "label": "15. `/iflow-auto` \u2014 unattended large-change orchestration", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "links", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L72" + "norm_label": "15. `/iflow-auto` \u2014 unattended large-change orchestration", + "source_file": "docs/issue-workflow.md", + "source_location": "L529" }, { - "id": "issueflows_04_designs_and_guides_loading_ui_loading_ui_add_cells_modal_staged_list_local_issue_136", - "label": "Loading UI: Add cells modal + staged list (local issue 136)", + "id": "docs_issue_workflow_16_iflow_drive_compose_epic_publish_auto_all", + "label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "loading ui: add cells modal + staged list (local issue 136)", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L1" + "norm_label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", + "source_file": "docs/issue-workflow.md", + "source_location": "L550" }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_decided_2026_09_05", @@ -69583,18 +69808,6 @@ "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", "source_location": "L445" }, - { - "id": "issueflows_04_designs_and_guides_otherpath_remote_loading", - "label": "otherpath-remote-loading.md", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "node_kind": "page", - "norm_label": "otherpath-remote-loading.md", - "source_file": ".issueflows/04-designs-and-guides/otherpath-remote-loading.md", - "source_location": "L1" - }, { "id": "packaging_smoke_test_rationale_116", "label": "The HTTP status alone \u2014 for checking that a guard actually guards.", @@ -69619,16 +69832,28 @@ "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_mcp_server_design_finding_4_cellpy_new_cannot_currently_be_automated", - "label": "Finding 4 \u2014 `cellpy new` cannot currently be automated", + "id": "issueflows_04_designs_and_guides_mcp_server_design_and_a_boundary", + "label": "And a boundary", "_origin": "ast", "community": 97, "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", "file_type": "document", "node_kind": "heading", - "norm_label": "finding 4 \u2014 `cellpy new` cannot currently be automated", + "norm_label": "and a boundary", "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L297" + "source_location": "L288" + }, + { + "id": "issueflows_04_designs_and_guides_mcp_server_design_finding_3_the_documentation_is_usually_there_one_hop_away", + "label": "Finding 3 \u2014 the documentation is usually there, one hop away", + "_origin": "ast", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", + "file_type": "document", + "node_kind": "heading", + "norm_label": "finding 3 \u2014 the documentation is usually there, one hop away", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L242" }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_hard_part_1_state", @@ -69642,6 +69867,18 @@ "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", "source_location": "L75" }, + { + "id": "issueflows_04_designs_and_guides_mcp_server_design_hard_part_2_file_access", + "label": "Hard part 2 \u2014 file access", + "_origin": "ast", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", + "file_type": "document", + "node_kind": "heading", + "norm_label": "hard part 2 \u2014 file access", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L119" + }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_prompts_the_part_aimed_at_people_who_are_not_asking_for_tools", "label": "Prompts \u2014 the part aimed at people who are not asking for tools", @@ -69750,6 +69987,18 @@ "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", "source_location": "L347" }, + { + "id": "issueflows_04_designs_and_guides_mcp_server_design_the_api_family_and_what_it_measured", + "label": "The API family \u2014 and what it measured", + "_origin": "ast", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", + "file_type": "document", + "node_kind": "heading", + "norm_label": "the api family \u2014 and what it measured", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L222" + }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_the_sandbox_default_should_be_cellpy_s_own_paths", "label": "The sandbox default should be cellpy's own paths", @@ -69762,6 +70011,18 @@ "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", "source_location": "L385" }, + { + "id": "issueflows_04_designs_and_guides_mcp_server_design_two_smaller_traps_both_fixed_and_both_tested", + "label": "Two smaller traps, both fixed and both tested", + "_origin": "ast", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", + "file_type": "document", + "node_kind": "heading", + "norm_label": "two smaller traps, both fixed and both tested", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L279" + }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_what_is_still_open", "label": "What is still open", @@ -69775,27 +70036,28 @@ "source_location": "L402" }, { - "id": "issueflows_04_designs_and_guides_mcp_server_design_why_an_mcp_server_at_all", - "label": "Why an MCP server at all", + "id": "issueflows_04_designs_and_guides_mcp_server_design_what_the_prototype_does_not_answer", + "label": "What the prototype does not answer", "_origin": "ast", "community": 97, "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", "file_type": "document", "node_kind": "heading", - "norm_label": "why an mcp server at all", + "norm_label": "what the prototype does not answer", "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L17" + "source_location": "L154" }, { - "id": "examples_mcp_server_rationale_882", - "label": "Create a batch project from a template \u2014 the `cellpy new` workflow. `project`\u2026", + "id": "issueflows_04_designs_and_guides_mcp_server_design_why_an_mcp_server_at_all", + "label": "Why an MCP server at all", "_origin": "ast", "community": 97, "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", - "file_type": "rationale", - "norm_label": "create a batch project from a template \u2014 the `cellpy new` workflow. `project`...", - "source_file": "examples/mcp/server.py", - "source_location": "L882" + "file_type": "document", + "node_kind": "heading", + "norm_label": "why an mcp server at all", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L17" }, { "id": "cursor_skills_iflow_build_skill", @@ -69972,26 +70234,26 @@ "source_location": "L13" }, { - "id": "fastapi_responses", - "label": "fastapi_responses", + "id": "dataclasses", + "label": "dataclasses", "_origin": "semantic", "community": 0, "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "fastapi_responses", + "norm_label": "dataclasses", "source_file": "", "type": "external" }, { - "id": "itertools", - "label": "itertools", + "id": "fastapi_responses", + "label": "fastapi_responses", "_origin": "semantic", "community": 0, "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "itertools", + "norm_label": "fastapi_responses", "source_file": "", "type": "external" }, @@ -70008,134 +70270,86 @@ "type": "external" }, { - "id": "logging", - "label": "logging", + "id": "math", + "label": "math", "_origin": "semantic", "community": 0, "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "logging", + "norm_label": "math", "source_file": "", "type": "external" }, { - "id": "queue", - "label": "queue", + "id": "pydantic", + "label": "pydantic", "_origin": "semantic", "community": 0, "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "queue", + "norm_label": "pydantic", "source_file": "", "type": "external" }, { - "id": "typing", - "label": "typing", + "id": "queue", + "label": "queue", "_origin": "semantic", "community": 0, "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "typing", - "source_file": "", - "type": "external" - }, - { - "id": "playwright_sync_api", - "label": "playwright_sync_api", - "_origin": "semantic", - "community": 101, - "community_name": "test_gui_playwright.py", - "external": true, - "file_type": "concept", - "norm_label": "playwright_sync_api", - "source_file": "", - "type": "external" - }, - { - "id": "collections_abc", - "label": "collections_abc", - "_origin": "semantic", - "community": 104, - "community_name": "cellpy_adapter.py", - "external": true, - "file_type": "concept", - "norm_label": "collections_abc", - "source_file": "", - "type": "external" - }, - { - "id": "math", - "label": "math", - "_origin": "semantic", - "community": 105, - "community_name": "CyclesPlotSpec", - "external": true, - "file_type": "concept", - "norm_label": "math", - "source_file": "", - "type": "external" - }, - { - "id": "cellpy_exceptions", - "label": "cellpy_exceptions", - "_origin": "semantic", - "community": 107, - "community_name": "CellRecord", - "external": true, - "file_type": "concept", - "norm_label": "cellpy_exceptions", + "norm_label": "queue", "source_file": "", "type": "external" }, { - "id": "cellpy_plotting", - "label": "cellpy_plotting", + "id": "uuid", + "label": "uuid", "_origin": "semantic", - "community": 107, - "community_name": "CellRecord", + "community": 0, + "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "cellpy_plotting", + "norm_label": "uuid", "source_file": "", "type": "external" }, { - "id": "io", - "label": "io", + "id": "os", + "label": "os", "_origin": "semantic", - "community": 107, - "community_name": "CellRecord", + "community": 101, + "community_name": "test_gui_playwright.py", "external": true, "file_type": "concept", - "norm_label": "io", + "norm_label": "os", "source_file": "", "type": "external" }, { - "id": "plotly_io", - "label": "plotly_io", + "id": "playwright_sync_api", + "label": "playwright_sync_api", "_origin": "semantic", - "community": 107, - "community_name": "CellRecord", + "community": 101, + "community_name": "test_gui_playwright.py", "external": true, "file_type": "concept", - "norm_label": "plotly_io", + "norm_label": "playwright_sync_api", "source_file": "", "type": "external" }, { - "id": "tempfile", - "label": "tempfile", + "id": "collections_abc", + "label": "collections_abc", "_origin": "semantic", "community": 107, - "community_name": "CellRecord", + "community_name": "plotting.py", "external": true, "file_type": "concept", - "norm_label": "tempfile", + "norm_label": "collections_abc", "source_file": "", "type": "external" }, @@ -70164,26 +70378,14 @@ "type": "external" }, { - "id": "argparse", - "label": "argparse", - "_origin": "semantic", - "community": 115, - "community_name": "gen_llms_txt.py", - "external": true, - "file_type": "concept", - "norm_label": "argparse", - "source_file": "", - "type": "external" - }, - { - "id": "mcp_server_mcpserver", - "label": "mcp_server_mcpserver", + "id": "threading", + "label": "threading", "_origin": "semantic", - "community": 157, - "community_name": "mcp/server.py", + "community": 128, + "community_name": "test_jobs.py", "external": true, "file_type": "concept", - "norm_label": "mcp_server_mcpserver", + "norm_label": "threading", "source_file": "", "type": "external" }, @@ -70223,42 +70425,6 @@ "source_file": "", "type": "external" }, - { - "id": "subprocess", - "label": "subprocess", - "_origin": "semantic", - "community": 168, - "community_name": "smoke_test.py", - "external": true, - "file_type": "concept", - "norm_label": "subprocess", - "source_file": "", - "type": "external" - }, - { - "id": "urllib_error", - "label": "urllib_error", - "_origin": "semantic", - "community": 168, - "community_name": "smoke_test.py", - "external": true, - "file_type": "concept", - "norm_label": "urllib_error", - "source_file": "", - "type": "external" - }, - { - "id": "urllib_request", - "label": "urllib_request", - "_origin": "semantic", - "community": 168, - "community_name": "smoke_test.py", - "external": true, - "file_type": "concept", - "norm_label": "urllib_request", - "source_file": "", - "type": "external" - }, { "id": "exception", "label": "Exception", @@ -70271,86 +70437,86 @@ "source_location": "" }, { - "id": "uvicorn", - "label": "uvicorn", + "id": "zipfile", + "label": "zipfile", "_origin": "semantic", - "community": 216, - "community_name": "starter/app.py", + "community": 212, + "community_name": "zip_installer.py", "external": true, "file_type": "concept", - "norm_label": "uvicorn", + "norm_label": "zipfile", "source_file": "", "type": "external" }, { - "id": "fastapi_staticfiles", - "label": "fastapi_staticfiles", + "id": "plotly_io", + "label": "plotly_io", "_origin": "semantic", - "community": 23, - "community_name": "get_settings", + "community": 216, + "community_name": "starter/app.py", "external": true, "file_type": "concept", - "norm_label": "fastapi_staticfiles", + "norm_label": "plotly_io", "source_file": "", "type": "external" }, { - "id": "fastapi_templating", - "label": "fastapi_templating", + "id": "uvicorn", + "label": "uvicorn", "_origin": "semantic", - "community": 23, - "community_name": "get_settings", + "community": 216, + "community_name": "starter/app.py", "external": true, "file_type": "concept", - "norm_label": "fastapi_templating", + "norm_label": "uvicorn", "source_file": "", "type": "external" }, { - "id": "functools", - "label": "functools", + "id": "warnings", + "label": "warnings", "_origin": "semantic", - "community": 23, - "community_name": "get_settings", + "community": 216, + "community_name": "starter/app.py", "external": true, "file_type": "concept", - "norm_label": "functools", + "norm_label": "warnings", "source_file": "", "type": "external" }, { - "id": "pydantic_settings", - "label": "pydantic_settings", + "id": "itertools", + "label": "itertools", "_origin": "semantic", - "community": 23, - "community_name": "get_settings", + "community": 28, + "community_name": "library.py", "external": true, "file_type": "concept", - "norm_label": "pydantic_settings", + "norm_label": "itertools", "source_file": "", "type": "external" }, { - "id": "secrets", - "label": "secrets", + "id": "logging", + "label": "logging", "_origin": "semantic", - "community": 23, - "community_name": "get_settings", + "community": 28, + "community_name": "library.py", "external": true, "file_type": "concept", - "norm_label": "secrets", + "norm_label": "logging", "source_file": "", "type": "external" }, { - "id": "fastapi_testclient", - "label": "fastapi_testclient", + "id": "typing", + "label": "typing", "_origin": "semantic", - "community": 277, - "community_name": "test_ingest.py", + "community": 28, + "community_name": "library.py", "external": true, "file_type": "concept", - "norm_label": "fastapi_testclient", + "norm_label": "typing", "source_file": "", "type": "external" }, @@ -70390,6 +70556,18 @@ "source_file": "", "type": "external" }, + { + "id": "fastapi_testclient", + "label": "fastapi_testclient", + "_origin": "semantic", + "community": 304, + "community_name": "test_starter.py", + "external": true, + "file_type": "concept", + "norm_label": "fastapi_testclient", + "source_file": "", + "type": "external" + }, { "id": "importlib_metadata", "label": "importlib_metadata", @@ -70403,14 +70581,14 @@ "type": "external" }, { - "id": "importlib_util", - "label": "importlib_util", + "id": "pandas", + "label": "pandas", "_origin": "semantic", "community": 304, "community_name": "test_starter.py", "external": true, "file_type": "concept", - "norm_label": "importlib_util", + "norm_label": "pandas", "source_file": "", "type": "external" }, @@ -70450,18 +70628,6 @@ "source_file": "", "type": "external" }, - { - "id": "warnings", - "label": "warnings", - "_origin": "semantic", - "community": 304, - "community_name": "test_starter.py", - "external": true, - "file_type": "concept", - "norm_label": "warnings", - "source_file": "", - "type": "external" - }, { "id": "basemodel", "label": "BaseModel", @@ -70484,24 +70650,72 @@ "source_file": "", "source_location": "" }, + { + "id": "argparse", + "label": "argparse", + "_origin": "semantic", + "community": 48, + "community_name": "get_settings", + "external": true, + "file_type": "concept", + "norm_label": "argparse", + "source_file": "", + "type": "external" + }, { "id": "collections", "label": "collections", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", "norm_label": "collections", "source_file": "", "type": "external" }, + { + "id": "fastapi_staticfiles", + "label": "fastapi_staticfiles", + "_origin": "semantic", + "community": 48, + "community_name": "get_settings", + "external": true, + "file_type": "concept", + "norm_label": "fastapi_staticfiles", + "source_file": "", + "type": "external" + }, + { + "id": "fastapi_templating", + "label": "fastapi_templating", + "_origin": "semantic", + "community": 48, + "community_name": "get_settings", + "external": true, + "file_type": "concept", + "norm_label": "fastapi_templating", + "source_file": "", + "type": "external" + }, + { + "id": "functools", + "label": "functools", + "_origin": "semantic", + "community": 48, + "community_name": "get_settings", + "external": true, + "file_type": "concept", + "norm_label": "functools", + "source_file": "", + "type": "external" + }, { "id": "loguru", "label": "loguru", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", "norm_label": "loguru", @@ -70509,14 +70723,14 @@ "type": "external" }, { - "id": "os", - "label": "os", + "id": "mcp_server_mcpserver", + "label": "mcp_server_mcpserver", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "os", + "norm_label": "mcp_server_mcpserver", "source_file": "", "type": "external" }, @@ -70525,19 +70739,43 @@ "label": "pathlib", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", "norm_label": "pathlib", "source_file": "", "type": "external" }, + { + "id": "pydantic_settings", + "label": "pydantic_settings", + "_origin": "semantic", + "community": 48, + "community_name": "get_settings", + "external": true, + "file_type": "concept", + "norm_label": "pydantic_settings", + "source_file": "", + "type": "external" + }, + { + "id": "secrets", + "label": "secrets", + "_origin": "semantic", + "community": 48, + "community_name": "get_settings", + "external": true, + "file_type": "concept", + "norm_label": "secrets", + "source_file": "", + "type": "external" + }, { "id": "signal", "label": "signal", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", "norm_label": "signal", @@ -70549,7 +70787,7 @@ "label": "socket", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", "norm_label": "socket", @@ -70557,26 +70795,26 @@ "type": "external" }, { - "id": "sys", - "label": "sys", + "id": "subprocess", + "label": "subprocess", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "sys", + "norm_label": "subprocess", "source_file": "", "type": "external" }, { - "id": "threading", - "label": "threading", + "id": "sys", + "label": "sys", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "threading", + "norm_label": "sys", "source_file": "", "type": "external" }, @@ -70585,7 +70823,7 @@ "label": "time", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", "norm_label": "time", @@ -70593,74 +70831,62 @@ "type": "external" }, { - "id": "webbrowser", - "label": "webbrowser", + "id": "urllib_error", + "label": "urllib_error", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "webbrowser", + "norm_label": "urllib_error", "source_file": "", "type": "external" }, { - "id": "zipfile", - "label": "zipfile", + "id": "urllib_request", + "label": "urllib_request", "_origin": "semantic", "community": 48, - "community_name": "pathlib", + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "zipfile", + "norm_label": "urllib_request", "source_file": "", "type": "external" }, { - "id": "pandas", - "label": "pandas", + "id": "webbrowser", + "label": "webbrowser", "_origin": "semantic", - "community": 56, - "community_name": "test_journal.py", + "community": 48, + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "pandas", + "norm_label": "webbrowser", "source_file": "", "type": "external" }, { - "id": "datetime", - "label": "datetime", + "id": "importlib_util", + "label": "importlib_util", "_origin": "semantic", - "community": 65, - "community_name": "core/projects.py", + "community": 64, + "community_name": "test_agent_docs.py", "external": true, "file_type": "concept", - "norm_label": "datetime", + "norm_label": "importlib_util", "source_file": "", "type": "external" }, { - "id": "uuid", - "label": "uuid", + "id": "datetime", + "label": "datetime", "_origin": "semantic", "community": 65, "community_name": "core/projects.py", "external": true, "file_type": "concept", - "norm_label": "uuid", - "source_file": "", - "type": "external" - }, - { - "id": "pydantic", - "label": "pydantic", - "_origin": "semantic", - "community": 7, - "community_name": "test_compare.py", - "external": true, - "file_type": "concept", - "norm_label": "pydantic", + "norm_label": "datetime", "source_file": "", "type": "external" }, @@ -70689,26 +70915,62 @@ "type": "external" }, { - "id": "dataclasses", - "label": "dataclasses", + "id": "glob", + "label": "glob", "_origin": "semantic", "community": 83, "community_name": "expand_paths", "external": true, "file_type": "concept", - "norm_label": "dataclasses", + "norm_label": "glob", "source_file": "", "type": "external" }, { - "id": "glob", - "label": "glob", + "id": "cellpy_exceptions", + "label": "cellpy_exceptions", "_origin": "semantic", - "community": 83, - "community_name": "expand_paths", + "community": 90, + "community_name": "core/export.py", "external": true, "file_type": "concept", - "norm_label": "glob", + "norm_label": "cellpy_exceptions", + "source_file": "", + "type": "external" + }, + { + "id": "cellpy_plotting", + "label": "cellpy_plotting", + "_origin": "semantic", + "community": 90, + "community_name": "core/export.py", + "external": true, + "file_type": "concept", + "norm_label": "cellpy_plotting", + "source_file": "", + "type": "external" + }, + { + "id": "io", + "label": "io", + "_origin": "semantic", + "community": 90, + "community_name": "core/export.py", + "external": true, + "file_type": "concept", + "norm_label": "io", + "source_file": "", + "type": "external" + }, + { + "id": "tempfile", + "label": "tempfile", + "_origin": "semantic", + "community": 90, + "community_name": "core/export.py", + "external": true, + "file_type": "concept", + "norm_label": "tempfile", "source_file": "", "type": "external" } @@ -151714,6 +151976,18 @@ "source_location": "L49", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright_load_bundled_cell", + "target": "tests_test_gui_playwright_bundled_cellpy_file", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L220", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright_test_add_cells_modal_stages_and_loads", "target": "src_cellpy_simple_gui_core_library_get_library", @@ -151738,6 +152012,30 @@ "source_location": "L176", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright_test_cells_modal_defers_plot_refresh_until_close", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L233", + "weight": 1.0 + }, + { + "source": "tests_test_gui_playwright_test_cells_modal_defers_plot_refresh_until_close", + "target": "tests_test_gui_playwright_load_bundled_cell", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L236", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright_test_data_panel_collapses_after_load", "target": "src_cellpy_simple_gui_core_library_get_library", @@ -155974,6 +156272,18 @@ "source_location": "L158", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright_test_cells_modal_defers_plot_refresh_until_close", + "target": "e2e", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "decorator", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L229", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright_test_data_panel_collapses_after_load", "target": "e2e", @@ -163678,6 +163988,18 @@ "source_location": "L21", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue184_status_what_s_done", + "target": "tests_test_gui_playwright_test_cells_modal_defers_plot_refresh_until_close", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "tests/test_gui_playwright.py::test_cells_modal_defers_plot_refresh_until_close", + "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_location": "L20", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_web_static_js_plotly_min_a", "target": "src_cellpy_simple_gui_web_static_js_plotly_min_ca", @@ -169689,80 +170011,113 @@ "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_original", - "target": "issueflows_01_current_issues_issue186_original_186_y_ranges_not_working_for_cycle_summary_grouped_with_spread", + "source": "issueflows_01_current_issues_issue184_original", + "target": "issueflows_01_current_issues_issue184_original_184_update_plots_when_cells_modal_closes", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue186_original.md", + "source_file": ".issueflows/01-current-issues/issue184_original.md", "source_location": "L1", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan", - "target": "issueflows_01_current_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", + "source": "issueflows_01_current_issues_issue184_plan", + "target": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", "source_location": "L1", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", - "target": "issueflows_01_current_issues_issue186_plan_approach", + "source": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_01_current_issues_issue184_plan_what_happens_today", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue186_plan.md", - "source_location": "L22", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L10", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_01_current_issues_issue184_plan_approach_front_end_only_app_js_modal_markup", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L21", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", - "target": "issueflows_01_current_issues_issue186_plan_goal", + "source": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_01_current_issues_issue184_plan_goal", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", "source_location": "L3", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", - "target": "issueflows_01_current_issues_issue186_plan_files_to_touch", + "source": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_01_current_issues_issue184_plan_files_to_touch", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue186_plan.md", - "source_location": "L30", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L37", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", - "target": "issueflows_01_current_issues_issue186_plan_test_strategy", + "source": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_01_current_issues_issue184_plan_test_strategy", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue186_plan.md", - "source_location": "L36", + "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_location": "L46", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", - "target": "issueflows_01_current_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", + "source": "issueflows_01_current_issues_issue184_status", + "target": "issueflows_01_current_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue186_plan.md", - "source_location": "L8", + "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_location": "L1", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_01_current_issues_issue184_status_remaining_work", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_location": "L30", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_01_current_issues_issue184_status_what_s_done", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_location": "L9", "weight": 1.0 }, { @@ -171921,6 +172276,116 @@ "source_location": "L5", "weight": 1.0 }, + { + "source": "issueflows_03_solved_issues_issue186_original", + "target": "issueflows_03_solved_issues_issue186_original_186_y_ranges_not_working_for_cycle_summary_grouped_with_spread", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue186_original.md", + "source_location": "L1", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue186_plan", + "target": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L1", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", + "target": "issueflows_03_solved_issues_issue186_plan_approach", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L22", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", + "target": "issueflows_03_solved_issues_issue186_plan_goal", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L3", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", + "target": "issueflows_03_solved_issues_issue186_plan_files_to_touch", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L30", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", + "target": "issueflows_03_solved_issues_issue186_plan_test_strategy", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L36", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", + "target": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L8", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue186_status", + "target": "issueflows_03_solved_issues_issue186_status_status_186_y_ranges_ignored_with_group_avg_spread", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L1", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue186_status_status_186_y_ranges_ignored_with_group_avg_spread", + "target": "issueflows_03_solved_issues_issue186_status_remaining_work", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L24", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue186_status_status_186_y_ranges_ignored_with_group_avg_spread", + "target": "issueflows_03_solved_issues_issue186_status_what_s_done", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L7", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue18_original", "target": "issueflows_03_solved_issues_issue18_original_issue_18_improve_manage_cells_modal", @@ -177951,7 +178416,7 @@ }, { "source": "issueflows_04_designs_and_guides_manage_cells_modal_manage_cells_modal", - "target": "issueflows_04_designs_and_guides_manage_cells_modal_ui_location", + "target": "issueflows_04_designs_and_guides_manage_cells_modal_plot_refresh_timing_issue_184", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -177960,6 +178425,17 @@ "source_location": "L24", "weight": 1.0 }, + { + "source": "issueflows_04_designs_and_guides_manage_cells_modal_manage_cells_modal", + "target": "issueflows_04_designs_and_guides_manage_cells_modal_ui_location", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L41", + "weight": 1.0 + }, { "source": "issueflows_04_designs_and_guides_manage_cells_modal_manage_cells_modal", "target": "issueflows_04_designs_and_guides_manage_cells_modal_behaviour", @@ -194625,6 +195101,28 @@ "source_location": "L159", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright", + "target": "tests_test_gui_playwright_load_bundled_cell", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_gui_playwright.py", + "source_location": "L214", + "weight": 1.0 + }, + { + "source": "tests_test_gui_playwright", + "target": "tests_test_gui_playwright_test_cells_modal_defers_plot_refresh_until_close", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_gui_playwright.py", + "source_location": "L230", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright", "target": "tests_test_gui_playwright_chromium_available", @@ -221322,6 +221820,28 @@ "source_location": "L160", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright_rationale_215", + "target": "tests_test_gui_playwright_load_bundled_cell", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_gui_playwright.py", + "source_location": "L215", + "weight": 1.0 + }, + { + "source": "tests_test_gui_playwright_rationale_231", + "target": "tests_test_gui_playwright_test_cells_modal_defers_plot_refresh_until_close", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_gui_playwright.py", + "source_location": "L231", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright_rationale_42", "target": "tests_test_gui_playwright_live_server", @@ -251739,17 +252259,29 @@ "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", + "source": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", "target": "src_cellpy_simple_gui_core_collect_add_spread_hover", "relation": "references", "_origin": "ast", "confidence": "INFERRED", "confidence_score": 0.95, "context": "_add_spread_hover", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L16", "weight": 1.0 }, + { + "source": "issueflows_03_solved_issues_issue186_status_what_s_done", + "target": "src_cellpy_simple_gui_core_collect_add_spread_hover", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "_add_spread_hover", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L12", + "weight": 1.0 + }, { "source": "cellpy_painpoints_30_spread_plot_traces_carry_no_hover_at_all_open", "target": "src_cellpy_simple_gui_core_collect_add_spread_hover", @@ -251931,41 +252463,53 @@ "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_approach", + "source": "issueflows_03_solved_issues_issue186_plan_approach", "target": "src_cellpy_simple_gui_core_collect_apply_y_ranges", "relation": "references", "_origin": "ast", "confidence": "INFERRED", "confidence_score": 0.95, "context": "_apply_y_ranges", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L25", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_files_to_touch", + "source": "issueflows_03_solved_issues_issue186_plan_files_to_touch", "target": "src_cellpy_simple_gui_core_collect_apply_y_ranges", "relation": "references", "_origin": "ast", "confidence": "INFERRED", "confidence_score": 0.95, "context": "_apply_y_ranges", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L32", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", + "source": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", "target": "src_cellpy_simple_gui_core_collect_apply_y_ranges", "relation": "references", "_origin": "ast", "confidence": "INFERRED", "confidence_score": 0.95, "context": "_apply_y_ranges", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L13", "weight": 1.0 }, + { + "source": "issueflows_03_solved_issues_issue186_status_what_s_done", + "target": "src_cellpy_simple_gui_core_collect_apply_y_ranges", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "_apply_y_ranges", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L14", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue60_plan_approach", "target": "src_cellpy_simple_gui_core_collect_apply_y_ranges", @@ -252303,27 +252847,27 @@ "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", + "source": "issueflows_03_solved_issues_issue169_plan_2_core_core_collect_py", "target": "src_cellpy_simple_gui_core_collect_restyle", "relation": "references", "_origin": "ast", "confidence": "INFERRED", "confidence_score": 0.95, "context": "_restyle", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", - "source_location": "L11", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L133", "weight": 1.0 }, { - "source": "issueflows_03_solved_issues_issue169_plan_2_core_core_collect_py", + "source": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", "target": "src_cellpy_simple_gui_core_collect_restyle", "relation": "references", "_origin": "ast", "confidence": "INFERRED", "confidence_score": 0.95, "context": "_restyle", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L133", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L11", "weight": 1.0 }, { @@ -252711,14 +253255,14 @@ "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", + "source": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", "target": "src_cellpy_simple_gui_core_collect_variable_axis_map", "relation": "references", "_origin": "ast", "confidence": "INFERRED", "confidence_score": 0.95, "context": "_variable_axis_map", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L14", "weight": 1.0 }, @@ -253563,14 +254107,14 @@ "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", + "source": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", "target": "src_cellpy_simple_gui_core_collect_figure_json", "relation": "references", "_origin": "ast", "confidence": "INFERRED", "confidence_score": 0.95, "context": "collect.figure_json", - "source_file": ".issueflows/01-current-issues/issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L10", "weight": 1.0 }, @@ -260042,6 +260586,30 @@ "source_location": "L33", "weight": 1.0 }, + { + "source": "issueflows_03_solved_issues_issue186_status_what_s_done", + "target": "tests_test_core_test_summary_figure_y_ranges_apply_with_group_avg_and_spread", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L18", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue186_status_what_s_done", + "target": "tests_test_core_test_summary_figure_y_ranges_one_sided_with_spread", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "test_summary_figure_y_ranges_one_sided_with_spread", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L20", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue81_plan_files_to_touch", "target": "tests_test_core_test_summary_panels_for_capacity_ce", @@ -261142,5 +261710,5 @@ } ], "hyperedges": [], - "built_at_commit": "8379324141c5a460890d81125268c855ac154da2" + "built_at_commit": "6b32234ed5a43f741b96f8c16ca7ce8c7912a236" } \ No newline at end of file diff --git a/graphify-out/2026-10-03/manifest.json b/graphify-out/2026-10-03/manifest.json index e067ca7..f1d6713 100644 --- a/graphify-out/2026-10-03/manifest.json +++ b/graphify-out/2026-10-03/manifest.json @@ -252,9 +252,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/web/static/js/app.js": { - "mtime": 1791060643.0, - "seen": 1791065546.3203897, - "ast_hash": "e66075c4c37965398dd4930e261ad51e", + "mtime": 1791065900.1998394, + "seen": 1791066515.7277255, + "ast_hash": "48753f2f7e2e5599600e4cfb4c2eb499", "semantic_hash": "" }, "src/cellpy_simple_gui/web/static/js/plotly.min.js": { @@ -300,9 +300,9 @@ "semantic_hash": "" }, "tests/test_gui_playwright.py": { - "mtime": 1791060643.0, - "seen": 1791065546.3203962, - "ast_hash": "afa1386fdb31076887ff752b3e569391", + "mtime": 1791065876.852518, + "seen": 1791066515.7277324, + "ast_hash": "569e797e4061aade92a02610d5deee85", "semantic_hash": "" }, "tests/test_guides.py": { @@ -1404,9 +1404,9 @@ "semantic_hash": "" }, ".issueflows/04-designs-and-guides/manage-cells-modal.md": { - "mtime": 1791060643.0, - "seen": 1791065546.320527, - "ast_hash": "b4f915cfd6ff2b9e5cd08517910a0560", + "mtime": 1791066442.463957, + "seen": 1791066515.7278786, + "ast_hash": "d9ae75c590f4e782ee532bfb24c4f9a3", "semantic_hash": "" }, ".issueflows/04-designs-and-guides/mcp-server-design.md": { @@ -1638,9 +1638,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/web/templates/index.html": { - "mtime": 1791060643.0, - "seen": 1791065546.320552, - "ast_hash": "4f45e8ce2be3b8736ceded28311b6bd2", + "mtime": 1791065834.841673, + "seen": 1791066515.7279058, + "ast_hash": "a66e02dd9d8f9b9da94cba63dba30c37", "semantic_hash": "" }, "assets/cellpy-icon-bw.png": { @@ -1853,18 +1853,6 @@ "ast_hash": "fa6a36a1d97b1a897f84889147c11619", "semantic_hash": "" }, - ".issueflows/01-current-issues/issue186_original.md": { - "mtime": 1791065421.3608186, - "seen": 1791065546.32043, - "ast_hash": "ce10b9dcf5eb40fa209d00cecfc46fe2", - "semantic_hash": "" - }, - ".issueflows/01-current-issues/issue186_plan.md": { - "mtime": 1791065433.1966095, - "seen": 1791065546.320431, - "ast_hash": "56a9666cdc45f6401a531a4294c8904b", - "semantic_hash": "" - }, ".issueflows/03-solved-issues/issue173_original.md": { "mtime": 1791060643.0, "seen": 1791065546.3204515, @@ -1912,5 +1900,41 @@ "seen": 1791065546.3204553, "ast_hash": "16076aed0e04c9a86040b080b48cd143", "semantic_hash": "" + }, + ".issueflows/01-current-issues/issue184_original.md": { + "mtime": 1791065746.0076878, + "seen": 1791066515.7277706, + "ast_hash": "b483ff80c288e8696ed39f372e43454f", + "semantic_hash": "" + }, + ".issueflows/01-current-issues/issue184_plan.md": { + "mtime": 1791065763.8073456, + "seen": 1791066515.7277718, + "ast_hash": "00553469235a2b17de1193b31e754d47", + "semantic_hash": "" + }, + ".issueflows/01-current-issues/issue184_status.md": { + "mtime": 1791066454.5959675, + "seen": 1791066515.7277725, + "ast_hash": "c9c175bb780e1fc771c14bd59d3d98fc", + "semantic_hash": "" + }, + ".issueflows/03-solved-issues/issue186_original.md": { + "mtime": 1791065421.3608186, + "seen": 1791066515.7278008, + "ast_hash": "ce10b9dcf5eb40fa209d00cecfc46fe2", + "semantic_hash": "" + }, + ".issueflows/03-solved-issues/issue186_plan.md": { + "mtime": 1791065433.1966095, + "seen": 1791066515.7278016, + "ast_hash": "56a9666cdc45f6401a531a4294c8904b", + "semantic_hash": "" + }, + ".issueflows/03-solved-issues/issue186_status.md": { + "mtime": 1791065565.6602807, + "seen": 1791066515.727802, + "ast_hash": "09a2311e0ce760529092e6197de9bb53", + "semantic_hash": "" } } \ No newline at end of file diff --git a/graphify-out/2026-10-04/.graphify_labels.json b/graphify-out/2026-10-04/.graphify_labels.json index e2a5166..b3085f0 100644 --- a/graphify-out/2026-10-04/.graphify_labels.json +++ b/graphify-out/2026-10-04/.graphify_labels.json @@ -5,11 +5,11 @@ "3": "collect.py", "4": "ss", "5": "i", - "6": "N", + "6": "hn", "7": "test_compare.py", "8": "$", "9": "SummaryPlotSpec", - "10": "u", + "10": "o", "11": "vn", "12": "test_api.py", "13": "wo", @@ -17,37 +17,37 @@ "15": "e", "16": "test_remote_find.py", "17": "cellpy_adapter.py", - "18": "m", + "18": "a", "19": "issue-flow — issue comments triage", - "20": ".add", + "20": "pi", "21": "na", - "22": "wt", - "23": "Library", + "22": ".get", + "23": "test_projects.py", "24": "oa", "25": "eu", - "26": ".push", + "26": "b", "27": "issue-flow — issue plan (`/iflow-plan`)", - "28": "library.py", + "28": "core/uploads.py", "29": "xi", - "30": "routers/export.py", + "30": "CyclesPlotSpec", "31": "issue-flow — issue close (`/iflow-close`)", - "32": "gh", + "32": "Cursor issue workflow (Agent Skills)", "33": "Plan — Issue #41", - "34": ".createVertexBuffer", + "34": "yr", "35": "cellpy_config.py", "36": "test_paths.py", "37": ".resume", - "38": "_add_spread_hover", - "39": "_apply_y_ranges", + "38": "Plan — Issue #169: Compare selected cells", + "39": "Original issue text", "40": "Dt", "41": "Plan — Issue #168: Create installer using CI", "42": "Instructions", "43": "issue-flow — history update", "44": "Job", "45": "resize", - "46": "ca", + "46": "Ga", "47": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", - "48": "get_settings", + "48": "logging_setup.py", "49": "hi", "50": "Instructions", "51": ".reset", @@ -57,39 +57,39 @@ "55": "fa", "56": "ea", "57": "I", - "58": ".renderLayer", - "59": "collect", + "58": ".draw", + "59": "Refused", "60": ".parse", - "61": "conftest.py", - "62": "Plan — Issue #62: Group vs individual Plotly legend muting", + "61": "Library", + "62": ".max_files", "63": "ti", - "64": "test_agent_docs.py", + "64": ".concat", "65": "core/projects.py", - "66": "Ra", - "67": "pick", - "68": "g", + "66": "N", + "67": "system.py", + "68": ".load", "69": "IcaPlotSpec", "70": "Issue #73: Job progress pane: Cancel/Dismiss overlap long status text", "71": "app_main_module", - "72": "de", + "72": "._checkLoaded", "73": "Issue #58 plan: plot side pane + top bar blend", "74": "Issue #5 plan", "75": "test_packaging.py", - "76": "ah", + "76": ".populate", "77": "da", - "78": "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)", - "79": ".constructor", - "80": "_render", + "78": "Tn", + "79": "de", + "80": "layout", "81": "issue-flow — epic planning (`/iflow-epic`)", "82": "issue-flow — review and label issues (`/iflow-review`)", "83": "expand_paths", "84": "cellpy API surface", "85": "ii", "86": "issue-flow — issue yolo (`/iflow-yolo`)", - "87": "test_llms_full_txt_is_current", + "87": "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)", "88": "Plan — Issue #3: Manage cells in an expanded editor", - "89": "ju", - "90": "core/export.py", + "89": ".render", + "90": "get_settings", "91": "Original issue text", "92": "Issue #60 status", "93": "Be token greedy - as a caveman", @@ -99,21 +99,21 @@ "97": "An MCP server for cellpy — design, and what a prototype found", "98": "issue-flow — issue build (`/iflow-build`)", "99": "Issue #67: Cell explorer dQ/dV: Charge/Discharge direction has no effect (and joins half-cycles)", - "100": "fo", + "100": "Do", "101": "test_gui_playwright.py", - "102": "_tidy_facet_annotations", + "102": "select_ica_direction", "103": "test_core.py", "104": ".destroy", - "105": "RawPlotSpec", - "106": "rh", - "107": "plotting.py", + "105": "models.py", + "106": "fo", + "107": "CellRecord", "108": "ro", "109": "Issue #36: Chart card stays white under dark figure theme; default figure theme to Match app", - "110": "ri", + "110": "qr", "111": "Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet", - "112": ".create", + "112": ".fire", "113": "Issue #3: Make the Cells list workable for many cells (modal or expanded editor)", - "114": "test_mcp_prototype.py", + "114": "la", "115": "gen_llms_txt.py", "116": "Issue #4: Replace deprecated pywebview OPEN_DIALOG with FileDialog.OPEN", "117": "The Windows installer", @@ -123,7 +123,7 @@ "121": "Issue #5: Add cellpy logo and app icon", "122": "Issue #73 status", "123": "Essential tests (pytest)", - "124": "nl", + "124": "ca", "125": "issue-flow — archive solved issues (`/iflow-archive`)", "126": "issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`)", "127": "issue-flow — issue pause (`/iflow-pause`)", @@ -132,7 +132,7 @@ "130": "wn", "131": "Deploying cellpy simple GUI as a server", "132": "Issue #48: create gui tests", - "133": "Ic", + "133": "va", "134": "Plan: Issue #13 — add workflows", "135": "Ei", "136": "Issue #55: need to add collector plot for cycles", @@ -152,11 +152,11 @@ "150": "Issue #27: Iterative fixes: group average checkbox", "151": "Issue #31: Iterative fixes: export download location", "152": "Issue #63 status", - "153": "The prompts", + "153": "mcp/server.py", "154": "`00-tools/` — shared helper tools", "155": "playwright-gui-tests.md", "156": "Cycle status", - "157": "_client_config_path", + "157": "list_instruments", "158": "Issue #15: update readme", "159": "mt", "160": "oi", @@ -165,17 +165,17 @@ "163": "Status — Issue #3: Manage cells expanded editor", "164": "Issue #81 — Plan: consistent CE summary panel order", "165": "Issue #47 — Status", - "166": "entry.py", + "166": "smoke_test.py", "167": "Issue #50 — Status", - "168": "Client", - "169": ".getSouthEast", + "168": "Issue #32: Plot appearance options: color scheme and figure theme", + "169": "._cameraForBoxAndBearing", "170": "Issue #58 status", "171": "Issue #5 status", "172": "6. Process state and threading", "173": "Plan — Issue #73: Job progress Cancel/Dismiss overlap", "174": "Journal load diagnostics & desktop exit", "175": "Issue #12: add logging", - "176": "te", + "176": "ee", "177": "Issue #13: add workflows", "178": "Status: Issue #13 — add workflows", "179": "Issue #14: make saving and closing more obvious", @@ -186,10 +186,10 @@ "184": "Issue #18: improve manage cells modal", "185": "Status: Issue #18 — improve manage cells modal", "186": "Issue #19: stale loading of cellpy batch journal", - "187": "ho", - "188": "issue-flow — issue cleanup (`/iflow-cleanup`)", + "187": "Ic", + "188": "gh", "189": "Issue #28: add ability to export cellpy cell", - "190": "Plan — #184 update plots when the Manage cells modal closes", + "190": "Hl", "191": "Status — Issue #36", "192": "cellpy API surface", "193": "Status — Issue #39", @@ -201,66 +201,66 @@ "199": "ur", "200": "run", "201": "cellpy-simple-gui", - "202": "Issue #37: Spread bands too opaque for safe/muted color schemes", + "202": "ya", "203": "m", - "204": "steps", + "204": "test_mcp_prototype.py", "205": "README.md", "206": "Kt", "207": "gr", "208": "Exception", - "209": "getImageData", + "209": "essential", "210": "ft", "211": "k", "212": "zip_installer.py", - "213": "drive", - "214": "Plan — Issue #37", + "213": "_without_webview", + "214": "Plan — #184 update plots when the Manage cells modal closes", "215": "Instructions", "216": "starter/app.py", "217": "Continuous Windows installer from `main`", "218": "Issue #168: Create installer using CI", - "219": "Pt", + "219": ".constructor", "220": "U", "221": "_restyle", "222": "cellpy-simple-gui", - "223": "._validate", + "223": "Issue #38: Use cellpy label builders for summary/cycle axis titles", "224": "Plan — Issue #177: GUI color scheme and layout", - "225": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", - "226": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", - "227": "LaunchedApp", + "225": "collect", + "226": "apply_physical_meta", + "227": "_wait_for_job", "228": "issue-flow — harness init (`/iflow-init`)", "229": "Releasing", "230": "bt", "231": "Guides: what belongs upstream in cellpy", "232": "_index", "233": "Ki", - "234": "Compare cells (#169)", + "234": ".getRenderableIds", "235": "1. Getting cells into memory", "236": "get", - "237": "ls", - "238": "Issue #28 plan — Export cells from Manage cells", - "239": "Next phase — deployment routes and app-builder documentation", - "240": "Issue #54 status", - "241": ".get", + "237": "ps", + "238": "save_cell", + "239": "se", + "240": "sr", + "241": ".evaluate", "242": "Issue #55 — Status", "243": "Issue #72 status", "244": "En", - "245": "once", - "246": "pu", + "245": "test_default_visible_hint_budget", + "246": "test_index_click_and_show_targets_exist", "247": "Issue #169: Compare selected cells", - "248": ".constructor", - "249": "list_instruments", + "248": "_dva_spec", + "249": "_load_entry", "250": "Zi", "251": "issue-flow — PR queue sync (`/iflow-pr-sync`)", "252": "4. Exporting data and figures", "253": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", "254": "Issue #81: Keep CE summary panel order consistent (prefer CE on top)", "255": "Xe", - "256": "test_a_default_direction_plot_says_it_drew_less", + "256": "Plan: Issue #19 — journal load error surfacing", "257": "_t", - "258": "test_writes_are_sandboxed_too", - "259": "test_unknown_handles_and_kinds_are_told_what_to_do", - "260": ".possiblyEvaluate", - "261": "test_describe_api_follows_the_reference_the_docstring_points_at", + "258": "Ft", + "259": "_default_visible_hints", + "260": "yi", + "261": "Issue #160 — Status", "262": "Gu", "263": "issue-flow — ops / no-PR (`/iflow-ops`)", "264": "th", @@ -268,22 +268,30 @@ "266": "7. What cellpy will and will not do for you", "267": "Status — Issue #169: Compare selected cells", "268": "Issue #173 status", - "269": "test_describe_api_renders_a_method_the_way_you_would_call_it", + "269": "Issue #31 status — Iterative fixes: export download location", "270": "Issue #173: Create also a zip file with the installer during release.", "271": "Issue #175: missing or bad cycles not reported", - "272": "y", + "272": ".push", "273": "Issue #177: gui color scheme and layout", - "274": "test_search_api_points_at_the_module_that_defines_the_call", + "274": "aa", "275": "test_stderr_usable_rejects_a_broken_handle", - "276": "issue184_original.md", + "276": "test_smoke_test_skips_only_a_missing_reader", "277": "test_ingest.py", "278": "qn", "279": "issue186_original.md", + "280": "Done", + "281": "Progress", "282": "Xt", + "283": "test_startup_survives_an_unreadable_cellpy_config", + "284": "issue187_original.md", "285": "Building on cellpy", "286": "Issue #69: edit meta data", "287": "ge", "288": "Issue #86 — Status", + "289": "issue184_original.md", + "290": "test_dva_missing_cell_is_404_not_403", + "291": "test_files_preview_honours_served_sandbox", + "292": "test_local_instance_keeps_its_freedom", "293": "ht", "295": "Issue #160: Add option to use OtherPath for loading files from remote directory", "302": "wi", diff --git a/graphify-out/2026-10-04/GRAPH_REPORT.md b/graphify-out/2026-10-04/GRAPH_REPORT.md index 026eff1..c7d7494 100644 --- a/graphify-out/2026-10-04/GRAPH_REPORT.md +++ b/graphify-out/2026-10-04/GRAPH_REPORT.md @@ -1,17 +1,17 @@ # Graph Report - workspace (2026-10-03) ## Corpus Check -- 291 files · ~392,181 words +- 293 files · ~394,401 words - Verdict: corpus is large enough that graph structure adds value. - Unclassified: 22 file(s) not represented in the graph (top: (none) 13, .mdc 2, .toml 1) ## Summary -- 5935 nodes · 16347 edges · 295 communities (210 shown, 85 thin omitted) -- Extraction: 81% EXTRACTED · 19% INFERRED · 0% AMBIGUOUS · INFERRED: 3172 edges (avg confidence: 0.88) +- 5982 nodes · 16444 edges · 303 communities (210 shown, 93 thin omitted) +- Extraction: 81% EXTRACTED · 19% INFERRED · 0% AMBIGUOUS · INFERRED: 3196 edges (avg confidence: 0.88) - Token cost: 0 input · 0 output ## Graph Freshness -- Built from commit: `6b32234e` +- Built from commit: `0a646c66` - Run `git rev-parse HEAD` and compare to check if the graph is stale. - Run `graphify update .` after code changes (no API cost). @@ -22,11 +22,11 @@ - collect.py - ss - i -- N +- hn - test_compare.py - $ - SummaryPlotSpec -- u +- o - vn - test_api.py - wo @@ -34,37 +34,37 @@ - e - test_remote_find.py - cellpy_adapter.py -- m +- a - issue-flow — issue comments triage -- .add +- pi - na -- wt -- Library +- .get +- test_projects.py - oa - eu -- .push +- b - issue-flow — issue plan (`/iflow-plan`) -- library.py +- core/uploads.py - xi -- routers/export.py +- CyclesPlotSpec - issue-flow — issue close (`/iflow-close`) -- gh +- Cursor issue workflow (Agent Skills) - Plan — Issue #41 -- .createVertexBuffer +- yr - cellpy_config.py - test_paths.py - .resume -- _add_spread_hover -- _apply_y_ranges +- Plan — Issue #169: Compare selected cells +- Original issue text - Dt - Plan — Issue #168: Create installer using CI - Instructions - issue-flow — history update - Job - resize -- ca +- Ga - cellpy pain-points & wishlist (from building cellpy-simple-gui) -- get_settings +- logging_setup.py - hi - Instructions - .reset @@ -74,39 +74,38 @@ - fa - ea - I -- .renderLayer -- collect +- .draw +- Refused - .parse -- conftest.py -- Plan — Issue #62: Group vs individual Plotly legend muting +- Library +- .max_files - ti -- test_agent_docs.py +- .concat - core/projects.py -- Ra -- pick -- g +- N +- system.py - IcaPlotSpec - Issue #73: Job progress pane: Cancel/Dismiss overlap long status text - app_main_module -- de +- ._checkLoaded - Issue #58 plan: plot side pane + top bar blend - Issue #5 plan - test_packaging.py -- ah +- .populate - da -- Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import) -- .constructor -- _render +- Tn +- de +- layout - issue-flow — epic planning (`/iflow-epic`) - issue-flow — review and label issues (`/iflow-review`) - expand_paths - cellpy API surface - ii - issue-flow — issue yolo (`/iflow-yolo`) -- test_llms_full_txt_is_current +- Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import) - Plan — Issue #3: Manage cells in an expanded editor -- ju -- core/export.py +- .render +- get_settings - Original issue text - Issue #60 status - Be token greedy - as a caveman @@ -116,21 +115,21 @@ - An MCP server for cellpy — design, and what a prototype found - issue-flow — issue build (`/iflow-build`) - Issue #67: Cell explorer dQ/dV: Charge/Discharge direction has no effect (and joins half-cycles) -- fo +- Do - test_gui_playwright.py -- _tidy_facet_annotations +- select_ica_direction - test_core.py - .destroy -- RawPlotSpec -- rh -- plotting.py +- models.py +- fo +- CellRecord - ro - Issue #36: Chart card stays white under dark figure theme; default figure theme to Match app -- ri +- qr - Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet -- .create +- .fire - Issue #3: Make the Cells list workable for many cells (modal or expanded editor) -- test_mcp_prototype.py +- la - gen_llms_txt.py - Issue #4: Replace deprecated pywebview OPEN_DIALOG with FileDialog.OPEN - The Windows installer @@ -140,7 +139,7 @@ - Issue #5: Add cellpy logo and app icon - Issue #73 status - Essential tests (pytest) -- nl +- ca - issue-flow — archive solved issues (`/iflow-archive`) - issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`) - issue-flow — issue pause (`/iflow-pause`) @@ -149,7 +148,7 @@ - wn - Deploying cellpy simple GUI as a server - Issue #48: create gui tests -- Ic +- va - Plan: Issue #13 — add workflows - Ei - Issue #55: need to add collector plot for cycles @@ -169,11 +168,11 @@ - Issue #27: Iterative fixes: group average checkbox - Issue #31: Iterative fixes: export download location - Issue #63 status -- The prompts +- mcp/server.py - `00-tools/` — shared helper tools - playwright-gui-tests.md - Cycle status -- _client_config_path +- list_instruments - Issue #15: update readme - mt - oi @@ -182,16 +181,16 @@ - Status — Issue #3: Manage cells expanded editor - Issue #81 — Plan: consistent CE summary panel order - Issue #47 — Status -- entry.py +- smoke_test.py - Issue #50 — Status -- Client +- Issue #32: Plot appearance options: color scheme and figure theme - Issue #58 status - Issue #5 status - 6. Process state and threading - Plan — Issue #73: Job progress Cancel/Dismiss overlap - Journal load diagnostics & desktop exit - Issue #12: add logging -- te +- ee - Issue #13: add workflows - Status: Issue #13 — add workflows - Issue #14: make saving and closing more obvious @@ -202,10 +201,10 @@ - Issue #18: improve manage cells modal - Status: Issue #18 — improve manage cells modal - Issue #19: stale loading of cellpy batch journal -- ho -- issue-flow — issue cleanup (`/iflow-cleanup`) +- Ic +- gh - Issue #28: add ability to export cellpy cell -- Plan — #184 update plots when the Manage cells modal closes +- Hl - Status — Issue #36 - cellpy API surface - Status — Issue #39 @@ -215,63 +214,65 @@ - branding-assets.md - ur - cellpy-simple-gui -- Issue #37: Spread bands too opaque for safe/muted color schemes +- ya - m -- steps +- test_mcp_prototype.py - README.md - Kt - gr -- getImageData +- essential - ft - k - zip_installer.py -- drive -- Plan — Issue #37 +- _without_webview +- Plan — #184 update plots when the Manage cells modal closes - Instructions - starter/app.py - Continuous Windows installer from `main` - Issue #168: Create installer using CI -- Pt +- .constructor - U - _restyle - cellpy-simple-gui +- Issue #38: Use cellpy label builders for summary/cycle axis titles - Plan — Issue #177: GUI color scheme and layout -- Issue #72: Cycles tab: Mode change does not update x-axis capacity units -- Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute) -- LaunchedApp +- collect +- apply_physical_meta +- _wait_for_job - issue-flow — harness init (`/iflow-init`) - Releasing - bt - Guides: what belongs upstream in cellpy - _index - Ki -- Compare cells (#169) +- .getRenderableIds - 1. Getting cells into memory - get -- ls -- Issue #28 plan — Export cells from Manage cells -- Next phase — deployment routes and app-builder documentation -- Issue #54 status -- .get +- ps +- save_cell +- se +- sr +- .evaluate - Issue #55 — Status - Issue #72 status - En -- once -- pu +- test_default_visible_hint_budget +- test_index_click_and_show_targets_exist - Issue #169: Compare selected cells -- .constructor -- list_instruments +- _dva_spec +- _load_entry - Zi - issue-flow — PR queue sync (`/iflow-pr-sync`) - 4. Exporting data and figures - Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5` - Issue #81: Keep CE summary panel order consistent (prefer CE on top) - Xe -- test_a_default_direction_plot_says_it_drew_less +- Plan: Issue #19 — journal load error surfacing - _t -- test_writes_are_sandboxed_too -- test_unknown_handles_and_kinds_are_told_what_to_do -- test_describe_api_follows_the_reference_the_docstring_points_at +- Ft +- _default_visible_hints +- yi +- Issue #160 — Status - Gu - issue-flow — ops / no-PR (`/iflow-ops`) - th @@ -279,22 +280,30 @@ - 7. What cellpy will and will not do for you - Status — Issue #169: Compare selected cells - Issue #173 status -- test_describe_api_renders_a_method_the_way_you_would_call_it +- Issue #31 status — Iterative fixes: export download location - Issue #173: Create also a zip file with the installer during release. - Issue #175: missing or bad cycles not reported -- y +- .push - Issue #177: gui color scheme and layout -- test_search_api_points_at_the_module_that_defines_the_call +- aa - test_stderr_usable_rejects_a_broken_handle -- issue184_original.md +- test_smoke_test_skips_only_a_missing_reader - test_ingest.py - qn - issue186_original.md +- Done +- Progress - Xt +- test_startup_survives_an_unreadable_cellpy_config +- issue187_original.md - Building on cellpy - Issue #69: edit meta data - ge - Issue #86 — Status +- issue184_original.md +- test_dva_missing_cell_is_404_not_403 +- test_files_preview_honours_served_sandbox +- test_local_instance_keeps_its_freedom - ht - Issue #160: Add option to use OtherPath for loading files from remote directory - wi @@ -316,161 +325,157 @@ 10. `n()` - 130 edges ## Surprising Connections (you probably didn't know these) -- `What the prototype does not answer` --references--> `load_cell()` [INFERRED] - .issueflows/04-designs-and-guides/mcp-server-design.md → examples/mcp/server.py -- `What's done` --references--> `collect()` [INFERRED] - .issueflows/03-solved-issues/issue54_status.md → examples/mcp/server.py -- `Spec` --references--> `collect()` [INFERRED] - .issueflows/03-solved-issues/issue72_original.md → examples/mcp/server.py -- `Hard part 2 — file access` --references--> `export_collection()` [INFERRED] - .issueflows/04-designs-and-guides/mcp-server-design.md → examples/mcp/server.py - `Finding 3 — the documentation is usually there, one hop away` --references--> `describe_api()` [INFERRED] .issueflows/04-designs-and-guides/mcp-server-design.md → examples/mcp/server.py +- `Resolved in 2.1.2a3` --references--> `instruments()` [INFERRED] + .issueflows/04-designs-and-guides/cellpy-delegation-inventory.md → examples/starter/app.py +- `Configuration and threads` --references--> `instruments()` [INFERRED] + skills/cellpy-app/SKILL.md → examples/starter/app.py +- `Raw data views (developer mode)` --references--> `raw_plot()` [INFERRED] + .issueflows/04-designs-and-guides/cellpy-delegation-inventory.md → src/cellpy_simple_gui/api/routers/plots.py +- `Strong — general cellpy knowledge, no app in it` --references--> `cycle_info_plot()` [INFERRED] + .issueflows/04-designs-and-guides/guides-upstream-candidates.md → src/cellpy_simple_gui/api/routers/plots.py ## Import Cycles - None detected. -## Communities (295 total, 85 thin omitted) +## Communities (303 total, 93 thin omitted) ### Community 0 - "get_library" -Cohesion: 0.03 -Nodes (56): Approach, Goal, Plan: Issue #19 — journal load error surfacing, Test strategy, Done, Status: Issue #19 — journal load errors, Decision, guard_path() (+48 more) +Cohesion: 0.05 +Nodes (40): Decision, guard_path(), Cancelled, get_job_manager(), Progress, clear(), delete_cell(), get_state() (+32 more) ### Community 1 - "CellProcessor 2.0 — design guide (for agents)" Cohesion: 0.17 Nodes (12): 10. Risks & open questions, 11. Sibling repos (context only), 1. Goals & locked decisions, 3. Technology choices (design vs MVP), 4. Package layout, 5. Core layer rules, 7. Frontend pages (parity map), 8. Packaging, native deps & updates (still open) (+4 more) +### Community 2 - "ni" +Cohesion: 0.09 +Nodes (3): Hi(), gi(), ni() + ### Community 3 - "collect.py" Cohesion: 0.03 -Nodes (71): What to add next, and where to look, 2. Core — `core/collect.py`, 3. Core — `core/plotting.py`, Prior art, Prior art, Prior art, Issue #2 status, Remaining work (+63 more) +Nodes (66): What to add next, and where to look, Approach, Files to touch, Goal, Plan — #186 y ranges ignored with Group avg + Spread, Root cause (reproduced with two demo cells in one group), Test strategy, Remaining work (+58 more) ### Community 4 - "ss" -Cohesion: 0.07 -Nodes (27): As(), bs(), cl(), cs(), ds(), el(), Es(), fs() (+19 more) +Cohesion: 0.08 +Nodes (25): As(), bs(), cl(), cs(), ds(), el(), Es(), gs() (+17 more) ### Community 5 - "i" -Cohesion: 0.04 -Nodes (121): ar(), e(), c(), Br(), r(), Dc(), Dn(), l() (+113 more) +Cohesion: 0.03 +Nodes (91): ar(), e(), c(), Br(), r(), ce(), ct(), l() (+83 more) -### Community 6 - "N" -Cohesion: 0.05 -Nodes (17): an(), Be(), er(), a(), he(), ke(), N(), f() (+9 more) +### Community 6 - "hn" +Cohesion: 0.12 +Nodes (8): an(), getPaintProperty(), hn(), Je(), ln(), nn(), on(), sn() ### Community 7 - "test_compare.py" Cohesion: 0.06 Nodes (36): _ids(), picks(), _spec(), test_api_compare_differentials(), test_api_compare_export(), test_api_compare_missing_cycles_are_reported(), test_api_compare_overlay_and_side_by_side(), test_api_compare_validation_and_404() (+28 more) ### Community 8 - "$" -Cohesion: 0.03 -Nodes (52): $, addLayer(), addSprite(), bh(), clearMetrics(), _containerDimensions(), _diffStyle(), Dl() (+44 more) +Cohesion: 0.02 +Nodes (84): $, addControl(), addImage(), addLayer(), addSprite(), bh(), Bu(), _cancelRenderFrame() (+76 more) ### Community 9 - "SummaryPlotSpec" Cohesion: 0.03 -Nodes (52): Issue #27 status — Iterative fixes: group average checkbox, Iterative fixes log, Acceptance criteria, Issue #2: Allow independent y-limits on multi-panel summary plots, Original issue text, Out of scope, Problem / context, Spec (+44 more) +Nodes (74): Issue #27 status — Iterative fixes: group average checkbox, Iterative fixes log, Acceptance criteria, Issue #2: Allow independent y-limits on multi-panel summary plots, Original issue text, Out of scope, Problem / context, Spec (+66 more) -### Community 10 - "u" -Cohesion: 0.07 -Nodes (13): at(), kt(), o(), b(), u(), A(), b(), E() (+5 more) +### Community 10 - "o" +Cohesion: 0.05 +Nodes (12): a(), c(), o(), r(), s(), finish(), j(), c() (+4 more) ### Community 12 - "test_api.py" -Cohesion: 0.03 -Nodes (42): Acceptance criteria, Constraints, 4. UI (`app.js`, `index.html`, `app.css`), Issue #31 status — Iterative fixes: export download location, Iterative fixes log, _add_cells_modal_html(), _component_names(), _default_visible_hints() (+34 more) +Cohesion: 0.10 +Nodes (5): test_files_preview_literal_missing_and_glob(), test_pin_config_requires_a_project(), test_plot_types_curated_by_default(), test_system_capabilities_no_file_picker(), test_webview_file_type_filters_are_valid() ### Community 13 - "wo" -Cohesion: 0.07 -Nodes (11): Ao(), bo(), Co(), Eo(), ko(), Lo(), Mo(), So() (+3 more) +Cohesion: 0.06 +Nodes (13): Ao(), bo(), Co(), Eo(), ko(), Lo(), Mo(), Po() (+5 more) ### Community 14 - "Uc" -Cohesion: 0.08 -Nodes (6): hc(), lh(), sh(), Uc(), Yl(), zu +Cohesion: 0.09 +Nodes (4): hc(), Uc(), Yl(), zu ### Community 15 - "e" Cohesion: 0.05 -Nodes (52): c(), d(), E(), f(), h(), o(), p(), r() (+44 more) +Nodes (53): Be(), c(), d(), f(), o(), p(), r(), S() (+45 more) ### Community 16 - "test_remote_find.py" Cohesion: 0.10 Nodes (11): _client(), fake_finder(), local(), served(), test_find_surfaces_search_failures(), test_remote_find_endpoint_enforces_the_max_files_ceiling(), test_remote_find_endpoint_needs_the_token(), test_remote_find_endpoint_rejects_empty_directory() (+3 more) ### Community 17 - "cellpy_adapter.py" -Cohesion: 0.03 -Nodes (90): Phase 1 (this PR), Test strategy, Constraints, Files to touch, Prior art, Issue #28 status — Export cells from Manage cells, Remaining work, What's done (+82 more) - -### Community 18 - "m" Cohesion: 0.06 -Nodes (33): a(), c(), l(), f(), u(), o(), r(), s() (+25 more) +Nodes (27): Constraints, Files to touch, Prior art, Approach, Phase A — bump + smoke, capacity_curve(), cellpy_version(), example_raw_path() (+19 more) + +### Community 18 - "a" +Cohesion: 0.07 +Nodes (91): ae(), g(), h(), Dc(), M(), x(), a(), l() (+83 more) ### Community 19 - "issue-flow — issue comments triage" Cohesion: 0.14 Nodes (12): Constraints, Instructions, issue-flow — issue capture (`/iflow-capture`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), Constraints, Edge cases, Inputs (+4 more) -### Community 20 - ".add" -Cohesion: 0.06 -Nodes (12): completeTask(), constructor(), _createCanvas(), finish(), isMoving(), Li(), mark(), pi() (+4 more) - -### Community 22 - "wt" +### Community 22 - ".get" Cohesion: 0.10 -Nodes (6): au(), isParsed(), setMethods(), stream(), wt(), u() - -### Community 23 - "Library" -Cohesion: 0.03 -Nodes (31): 1. 🔴 No public "collection from in-memory cells", Settings, file_stat(), Library, _counting_save_cell(), _make_project_dir(), test_api_save_and_open(), test_broken_project_config_does_not_block_open() (+23 more) +Nodes (6): kt(), oh(), stream(), ve(), h(), wt() -### Community 24 - "oa" -Cohesion: 0.08 -Nodes (3): Bu(), nu(), oa() +### Community 23 - "test_projects.py" +Cohesion: 0.05 +Nodes (26): What the current architecture already decides for us, Settings, _counting_save_cell(), _make_project_dir(), test_api_save_and_open(), test_broken_project_config_does_not_block_open(), test_data_dir_defaults_to_home(), test_data_dir_expands_user_and_relative() (+18 more) ### Community 25 - "eu" Cohesion: 0.06 -Nodes (10): bl(), cu(), dh(), eu(), Ku(), lu(), ou(), qc() (+2 more) +Nodes (12): au(), bl(), cu(), dh(), eu(), ja, lu(), ou() (+4 more) -### Community 26 - ".push" -Cohesion: 0.07 -Nodes (17): a(), b(), getFeatureState(), gt(), e(), r(), e(), T() (+9 more) +### Community 26 - "b" +Cohesion: 0.08 +Nodes (11): a(), b(), getFeatureState(), i(), c(), P(), l(), z() (+3 more) ### Community 27 - "issue-flow — issue plan (`/iflow-plan`)" Cohesion: 0.15 Nodes (11): Activation, Boundaries, Grill me — relentless planning interview, How to grill, When to use, Constraints, Instructions, issue-flow — issue plan (`/iflow-plan`) (+3 more) -### Community 28 - "library.py" -Cohesion: 0.08 +### Community 28 - "core/uploads.py" +Cohesion: 0.10 Nodes (12): clear_uploads(), list_uploads(), upload(), clear(), max_upload_bytes(), safe_name(), save(), Saved (+4 more) -### Community 30 - "routers/export.py" -Cohesion: 0.24 -Nodes (12): _check_data_fmt(), _check_figure_fmt(), _cycles_records(), export_cells(), export_compare(), export_cycles(), export_dva(), export_ica() (+4 more) +### Community 30 - "CyclesPlotSpec" +Cohesion: 0.09 +Nodes (24): Prior art, _check_data_fmt(), _check_figure_fmt(), _cycles_records(), export_cells(), export_compare(), export_cycles(), export_dva() (+16 more) ### Community 31 - "issue-flow — issue close (`/iflow-close`)" Cohesion: 0.15 Nodes (12): Branch switch tokens (command input), Changelog update tokens (command input), Constraints, Draft PR token (command input), Hands-off token (command input), Instructions, issue-flow — issue close (`/iflow-close`), MODEL & EXECUTION DIRECTIVE (+4 more) -### Community 32 - "gh" -Cohesion: 0.06 -Nodes (41): Fallback (workflow runs), gh-ci — wait on GitHub CI with `gh`, Primary (PR-attached checks), Semantics, Where this fits, Constraints, Input, Instructions (+33 more) +### Community 32 - "Cursor issue workflow (Agent Skills)" +Cohesion: 0.08 +Nodes (23): 0. `/iflow` — smart dispatcher (quick start), 0a. `/iflow-pick` — choose the next issue (front door), 10. `/iflow-issue` — create a normal (non-epic) issue, 10a. `/iflow-split` — linked sub-issues for an over-large issue, 11. `/iflow-status` — status overview of all issues (read-only), 12. `/iflow-review` — review open issues and apply labels, 13. `/iflow-epic` — plan a large change as staged issues, 17. `/iflow-archive` — condense the solved-issues archive (destructive, gated) (+15 more) ### Community 33 - "Plan — Issue #41" Cohesion: 0.40 Nodes (4): Files to touch, Goal, Plan — Issue #41, Test strategy ### Community 35 - "cellpy_config.py" -Cohesion: 0.12 -Nodes (16): activate_project_config(), active_project_config(), _config_dump(), _deactivate_locked(), deactivate_project_config(), diagnostics(), _discovery(), _entry() (+8 more) +Cohesion: 0.10 +Nodes (20): Configuration (`cellpy.config`, new in 2.1.2), Resolved in 2.1.2a3, Hard part 1 — state, activate_project_config(), active_project_config(), _config_dump(), _deactivate_locked(), deactivate_project_config() (+12 more) ### Community 36 - "test_paths.py" Cohesion: 0.06 Nodes (7): local(), served(), test_another_volume_is_refused_without_touching_the_filesystem(), test_glob_drops_symlinked_escapes(), test_override_forces_the_sandbox_on_loopback(), test_served_mode_refuses_a_symlink_pointing_out(), test_served_mode_refuses_drive_and_unc_paths() ### Community 37 - ".resume" -Cohesion: 0.15 +Cohesion: 0.18 Nodes (10): All yolo issues + merge conflicts, Constraints, Input — queue spec, Instructions, issue-flow — issue cycle (`/iflow-cycle`), MODEL & EXECUTION DIRECTIVE, Parallel dispatch (experimental, opt-in), Resolve project root (multi-root workspaces) (+2 more) -### Community 38 - "_add_spread_hover" -Cohesion: 0.07 -Nodes (21): 1. Spec — `core/models.py`, 5. UI — `web/templates/index.html`, `web/static/js/app.js`, `app.css`, 6. Docs, Approach, Constraints, Goal, Open questions, Plan — Issue #169: Compare selected cells (+13 more) +### Community 38 - "Plan — Issue #169: Compare selected cells" +Cohesion: 0.14 +Nodes (13): 1. Spec — `core/models.py`, 5. UI — `web/templates/index.html`, `web/static/js/app.js`, `app.css`, 6. Docs, Approach, Goal, Open questions, Plan — Issue #169: Compare selected cells, Test strategy (+5 more) -### Community 39 - "_apply_y_ranges" -Cohesion: 0.07 -Nodes (27): Approach, Files to touch, Goal, Plan — #186 y ranges ignored with Group avg + Spread, Root cause (reproduced with two demo cells in one group), Test strategy, Acceptance criteria, Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet (+19 more) +### Community 39 - "Original issue text" +Cohesion: 0.33 +Nodes (5): Acceptance criteria, Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet, Original issue text, Out of scope, Problem / context ### Community 41 - "Plan — Issue #168: Create installer using CI" Cohesion: 0.14 @@ -485,27 +490,27 @@ Cohesion: 0.18 Nodes (10): A. No version bump — append to `[Unreleased]`, B. Version bump happened — promote `[Unreleased]` to a new release section, Conflict resolution — keep both bullet sets, Constraints, Inputs from `/iflow-close`, issue-flow — history update, MODEL & EXECUTION DIRECTIVE, Operation modes (+2 more) ### Community 44 - "Job" -Cohesion: 0.11 +Cohesion: 0.12 Nodes (5): Stack / runtime, Job, _job_result_errors(), _job_result_summary(), JobManager ### Community 45 - "resize" -Cohesion: 0.12 -Nodes (4): ka, resize(), setPixelRatio(), ya +Cohesion: 0.10 +Nodes (6): ba, ma, resize(), sa(), setPixelRatio(), xa -### Community 46 - "ca" -Cohesion: 0.06 -Nodes (8): ca(), Ga(), ja, ma, pa(), va, Wa(), Za() +### Community 46 - "Ga" +Cohesion: 0.12 +Nodes (3): Ga(), Wa(), Za() ### Community 47 - "cellpy pain-points & wishlist (from building cellpy-simple-gui)" Cohesion: 0.06 -Nodes (35): 10. 🟢 No per-instrument metadata schema, 11. 🟢 Collected figures aren't app-friendly by default, 12. 🟢 Per-panel y-limits on collected summary facets, 12b. 🟠 `spread_plot` ignores `share_y` / `match_axes`, 13. 🟠 No app-friendly static figure export on the collect path, 14. 🟠 `.h5` auto-picks cellpy format over raw instrument loaders, 15. 🟢 Cycles collector facet strips still use raw `cycle_num=` / `cell=`, 16. 🟢 ICA plotter direction gaps (line plots + `both`) (+27 more) +Nodes (33): 10. 🟢 No per-instrument metadata schema, 11. 🟢 Collected figures aren't app-friendly by default, 12. 🟢 Per-panel y-limits on collected summary facets, 12b. 🟠 `spread_plot` ignores `share_y` / `match_axes`, 13. 🟠 No app-friendly static figure export on the collect path, 14. 🟠 `.h5` auto-picks cellpy format over raw instrument loaders, 15. 🟢 Cycles collector facet strips still use raw `cycle_num=` / `cell=`, 17. 🟢 Cycles plotter ignores collect `mode` for `x_unit` (+25 more) -### Community 48 - "get_settings" -Cohesion: 0.03 -Nodes (55): Approach, Files to touch, Goal, Plan: Issue #12 — add logging, Test strategy, Done, Status: Issue #12 — add logging, Approach (+47 more) +### Community 48 - "logging_setup.py" +Cohesion: 0.04 +Nodes (36): Approach, Files to touch, Goal, Plan: Issue #12 — add logging, Test strategy, Done, Status: Issue #12 — add logging, Prior art (+28 more) ### Community 49 - "hi" -Cohesion: 0.11 +Cohesion: 0.08 Nodes (6): Vi(), hi(), r(), setMaxPitch(), setMinPitch(), c() ### Community 50 - "Instructions" @@ -513,12 +518,12 @@ Cohesion: 0.20 Nodes (9): Constraints, Input, Instructions, issue-flow — pick next issue (`/iflow-pick`), MODEL & EXECUTION DIRECTIVE, Phase 1 — choose the issue, Phase 2 — create the branch, Phase 3 — hand off (+1 more) ### Community 51 - ".reset" -Cohesion: 0.07 -Nodes (3): vi(), xn(), s() +Cohesion: 0.05 +Nodes (4): gn(), vi(), xn(), s() ### Community 52 - "plots.py" Cohesion: 0.06 -Nodes (42): 25. 🟠 `dva_plot(direction="both")` drew both half-cycles identically, 26. 🟠 No `collect_dva`, 27. 🟠 `raw_plot` has no way to limit points *(fixed in 2.1.2)*, 28. 🔴 Seven registered families cannot be collected at all *(fixed in 2.1.2)*, 29. 🟠 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*, 30. 🟠 `spread_plot` traces carry no hover at all *(open)*, Round 4 — DVA and raw data, 3. Plotting a collection (+34 more) +Nodes (37): 25. 🟠 `dva_plot(direction="both")` drew both half-cycles identically, 26. 🟠 No `collect_dva`, 27. 🟠 `raw_plot` has no way to limit points *(fixed in 2.1.2)*, 28. 🔴 Seven registered families cannot be collected at all *(fixed in 2.1.2)*, 30. 🟠 `spread_plot` traces carry no hover at all *(open)*, Round 4 — DVA and raw data, 3. Plotting a collection, Asked-for columns are not drawn columns (+29 more) ### Community 53 - "issue-flow — create a normal issue (`/iflow-issue`)" Cohesion: 0.22 @@ -529,68 +534,64 @@ Cohesion: 0.12 Nodes (15): Bump levels (both strategies), Choosing the level, Constraints, issue-flow — version bump, MODEL & EXECUTION DIRECTIVE, Resolve the release strategy first, Strategy: git-tag derived, Strategy: static version (uv) (+7 more) ### Community 56 - "ea" -Cohesion: 0.08 -Nodes (14): The Collection, Approach, Constraints, Files to touch, Goal, Issue #55 — Plan: cycles collector (per cell / per cycle), Open questions, Test strategy (+6 more) +Cohesion: 0.11 +Nodes (4): ea(), ia(), paint(), ta() ### Community 57 - "I" -Cohesion: 0.04 -Nodes (21): u(), ct(), E(), a(), i(), I(), a(), r() (+13 more) - -### Community 58 - ".renderLayer" -Cohesion: 0.09 -Nodes (5): getPaintProperty(), on(), Tn(), vr(), yr() +Cohesion: 0.05 +Nodes (17): E(), a(), o(), s(), I(), r(), s(), u() (+9 more) -### Community 59 - "collect" -Cohesion: 0.08 -Nodes (27): cellpy MCP server (prototype), Four things it does on purpose, Limits worth knowing before you rely on it, Run it, The tools, _cell(), collect(), _collection() (+19 more) +### Community 59 - "Refused" +Cohesion: 0.07 +Nodes (28): cellpy MCP server (prototype), Four things it does on purpose, Limits worth knowing before you rely on it, Run it, The tools, _cell(), _collection(), describe_api() (+20 more) ### Community 60 - ".parse" -Cohesion: 0.16 -Nodes (6): dt(), r(), ct(), ht(), ut(), se() +Cohesion: 0.24 +Nodes (4): dt(), ct(), ht(), ut() -### Community 61 - "conftest.py" -Cohesion: 0.32 -Nodes (4): Test strategy, Test strategy, example_cell(), loaded_library() +### Community 61 - "Library" +Cohesion: 0.06 +Nodes (12): 1. 🔴 No public "collection from in-memory cells", Approach, Findings, Plan — #187 name of groups, Still app-owned (no upstream yet / by design), file_stat(), Library, test_group_names_saved_and_restored() (+4 more) -### Community 62 - "Plan — Issue #62: Group vs individual Plotly legend muting" -Cohesion: 0.11 -Nodes (13): Approach, Files to touch, Goal, Open questions, Plan — Issue #62: Group vs individual Plotly legend muting, Test strategy, Group average + static figure export, Group average with mixed group sizes (+5 more) +### Community 62 - ".max_files" +Cohesion: 0.09 +Nodes (19): Constraints, Files to touch, Goal, Issue #160 — Plan: OtherPath remote loading, Open questions, Phase 1 (this PR), Phase 2 — filefinder “approx glob” (follow-up issue; decided), Phase 2 (follow-up issue) (+11 more) ### Community 63 - "ti" -Cohesion: 0.17 -Nodes (5): mr(), ti(), a(), i(), o() +Cohesion: 0.10 +Nodes (6): ri(), a(), ti(), a(), i(), o() -### Community 64 - "test_agent_docs.py" -Cohesion: 0.12 -Nodes (6): generator(), test_every_path_the_index_points_at_exists(), test_llms_full_actually_contains_the_documents(), test_the_index_lists_every_guide(), test_the_skill_reference_is_bundled(), test_the_skill_states_the_traps_that_produce_plausible_output() +### Community 64 - ".concat" +Cohesion: 0.14 +Nodes (9): Pn(), Dn(), jt(), a(), qt(), a(), i(), rn() (+1 more) ### Community 65 - "core/projects.py" Cohesion: 0.06 -Nodes (38): Acceptance criteria, Issue #75: Refresh project list and open portable projects from the import path, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+30 more) +Nodes (39): Acceptance criteria, Issue #75: Refresh project list and open portable projects from the import path, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+31 more) -### Community 67 - "pick" +### Community 66 - "N" Cohesion: 0.10 -Nodes (15): Approach, Constraints, Files to touch, Goal, Issue #4 plan, Open questions, Prior art, Test strategy (+7 more) +Nodes (10): N(), f(), h(), l(), r(), M(), e(), i() (+2 more) -### Community 68 - "g" +### Community 67 - "system.py" Cohesion: 0.08 -Nodes (22): ae(), ce(), fe(), i(), n(), ie(), r(), kr() (+14 more) +Nodes (22): Approach, Constraints, Files to touch, Goal, Issue #4 plan, Open questions, Prior art, Test strategy (+14 more) ### Community 69 - "IcaPlotSpec" -Cohesion: 0.07 -Nodes (32): Approach, Constraints, Files to touch, Goal, Grill decisions (locked), Issue #56 — Plan: single-cell dQ/dV in Cell explorer, Open questions, Prior art (+24 more) +Cohesion: 0.06 +Nodes (36): Approach, Constraints, Files to touch, Goal, Grill decisions (locked), Issue #56 — Plan: single-cell dQ/dV in Cell explorer, Open questions, Prior art (+28 more) ### Community 70 - "Issue #73: Job progress pane: Cancel/Dismiss overlap long status text" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #73: Job progress pane: Cancel/Dismiss overlap long status text, Original issue text, Out of scope, Problem / context, Spec ### Community 71 - "app_main_module" -Cohesion: 0.19 -Nodes (9): Test strategy, app_main_module(), _clear_overrides(), _fake_cellpy_config(), reload(), test_absolute_cellpy_dirs_are_created_but_not_overridden(), test_relative_cellpy_dirs_are_anchored_at_home_not_cwd(), test_remote_paths_are_never_touched() (+1 more) +Cohesion: 0.26 +Nodes (8): Test strategy, app_main_module(), _clear_overrides(), _fake_cellpy_config(), reload(), test_absolute_cellpy_dirs_are_created_but_not_overridden(), test_relative_cellpy_dirs_are_anchored_at_home_not_cwd(), test_remote_paths_are_never_touched() -### Community 72 - "de" -Cohesion: 0.06 -Nodes (11): addSource(), de(), getLayer(), getLayoutProperty(), getSource(), hasImage(), isSourceLoaded(), loaded() (+3 more) +### Community 72 - "._checkLoaded" +Cohesion: 0.09 +Nodes (4): getLayer(), getLayoutProperty(), getSource(), removeFeatureState() ### Community 73 - "Issue #58 plan: plot side pane + top bar blend" Cohesion: 0.22 @@ -601,24 +602,20 @@ Cohesion: 0.22 Nodes (8): Approach, Constraints, Files to touch, Goal, Issue #5 plan, Open questions, Prior art, Test strategy ### Community 75 - "test_packaging.py" -Cohesion: 0.08 -Nodes (13): _load_entry(), _load_zip_installer(), _smoke_test_module(), test_crash_goes_to_stderr_when_there_is_a_console(), test_crash_report_is_written_and_the_dialog_names_it(), test_crash_reporter_agrees_with_the_app_on_where_logs_go(), test_installer_removes_its_own_directory_but_never_user_data(), test_installer_version_resource_stays_numeric() (+5 more) - -### Community 76 - "ah" -Cohesion: 0.09 -Nodes (7): aa(), ah, feature(), ih, nh, pop(), push() +Cohesion: 0.12 +Nodes (7): _load_zip_installer(), test_installer_removes_its_own_directory_but_never_user_data(), test_installer_version_resource_stays_numeric(), test_setup_logging_survives_a_windowed_build(), test_spec_ships_both_a_windowed_and_a_console_executable(), test_zip_installer_refuses_a_directory_with_no_exe(), test_zip_installer_wraps_each_exe() -### Community 77 - "da" -Cohesion: 0.09 -Nodes (4): da(), ha(), la(), qa +### Community 76 - ".populate" +Cohesion: 0.08 +Nodes (9): ah, feature(), ih, lh(), nh, pop(), push(), sh() (+1 more) -### Community 78 - "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)" -Cohesion: 0.20 -Nodes (10): Approach, Goal, Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import), Open questions, Scope check, Stage 1 — Sidebar restructure (template + CSS), Stage 2 — "Add cells" modal with source switcher, Stage 4 — Adaptive source zone (drop / browse / paste) (+2 more) +### Community 79 - "de" +Cohesion: 0.06 +Nodes (6): addSource(), de(), getGlyphs(), _getMapId(), isSourceLoaded(), loaded() -### Community 80 - "_render" -Cohesion: 0.40 -Nodes (4): g(), isRotating(), redraw(), _render() +### Community 80 - "layout" +Cohesion: 0.18 +Nodes (11): 29. 🟠 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*, The Collection, Approach, Constraints, Files to touch, Goal, Issue #55 — Plan: cycles collector (per cell / per cycle), Open questions (+3 more) ### Community 81 - "issue-flow — epic planning (`/iflow-epic`)" Cohesion: 0.25 @@ -629,32 +626,32 @@ Cohesion: 0.25 Nodes (7): Constraints, Input, Instructions, issue-flow — review and label issues (`/iflow-review`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), Review kinds (extendable) ### Community 83 - "expand_paths" -Cohesion: 0.03 -Nodes (61): Prior art, Stage 3 — Staged file list + glob preview endpoint, Approach, Constraints, Explicitly deferred (later than phase 2), Files to touch, Goal, Issue #160 — Plan: OtherPath remote loading (+53 more) +Cohesion: 0.05 +Nodes (43): Prior art, Stage 3 — Staged file list + glob preview endpoint, Approach, Explicitly deferred (later than phase 2), Ordering, Phase 1 — MVP (this issue after Accept), Approach, Goal (+35 more) ### Community 84 - "cellpy API surface" Cohesion: 0.12 Nodes (15): Attributes worth knowing, cellpy API surface, Cells into a Collection, Collect options, Figures to bytes, Loading, One cell, Single-cell plots (+7 more) ### Community 85 - "ii" -Cohesion: 0.11 +Cohesion: 0.12 Nodes (6): Ai(), ci(), i(), n(), ii(), o() ### Community 86 - "issue-flow — issue yolo (`/iflow-yolo`)" Cohesion: 0.25 Nodes (7): Chain, Constraints, issue-flow — issue yolo (`/iflow-yolo`), MODEL & EXECUTION DIRECTIVE, Post-run, Preflight (abort on any failure), Resolve project root (multi-root workspaces) -### Community 87 - "test_llms_full_txt_is_current" -Cohesion: 0.15 -Nodes (12): Manual smoke checklist (G3/G4; server mode, `CSG_TOKEN=devtoken`), New tests (summary), Test gates — when to run what, Test strategy, Issue #136 — Status, Notes / deviations, Remaining work, What's done (+4 more) +### Community 87 - "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)" +Cohesion: 0.07 +Nodes (27): Acceptance criteria, Approach, Constraints, Goal, Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import), Manual smoke checklist (G3/G4; server mode, `CSG_TOKEN=devtoken`), New tests (summary), Open questions (+19 more) ### Community 88 - "Plan — Issue #3: Manage cells in an expanded editor" -Cohesion: 0.17 -Nodes (11): Approach, Backend, Chrome decision: **centered modal** (not drawer / not resizable sidebar), Constraints, Files to touch, Goal, Niceties in scope, Open questions (+3 more) +Cohesion: 0.18 +Nodes (10): Approach, Backend, Chrome decision: **centered modal** (not drawer / not resizable sidebar), Files to touch, Goal, Niceties in scope, Open questions, Plan — Issue #3: Manage cells in an expanded editor (+2 more) -### Community 90 - "core/export.py" -Cohesion: 0.06 -Nodes (11): dva_figure_export(), FigureExportError, _safe_stem(), _unique_stems(), DvaPlotSpec, client(), served(), test_capabilities_advertise_the_cap() (+3 more) +### Community 90 - "get_settings" +Cohesion: 0.04 +Nodes (24): create_app(), require_token(), get_settings(), client(), served_client(), test_job_timings_reported(), test_log_viewer_captures_stdlib_records(), client() (+16 more) ### Community 91 - "Original issue text" Cohesion: 0.29 @@ -669,20 +666,20 @@ Cohesion: 0.29 Nodes (6): Auto-Clarity, Be token greedy - as a caveman, Boundaries, Intensity, Persistence, Rules ### Community 94 - "Si" -Cohesion: 0.07 -Nodes (6): Hi(), getCanvas(), gi(), isZooming(), Si(), yi() +Cohesion: 0.13 +Nodes (3): isZooming(), Si(), unproject() ### Community 95 - "alpine.min.js" Cohesion: 0.07 Nodes (21): Ae(), bi(), effect(), Gt(), ht(), _i(), Ji(), Jt() (+13 more) ### Community 96 - ".status" -Cohesion: 0.10 -Nodes (16): Command lifecycle, Constraints, Input, Instructions, issue-flow — advanced auto (`/iflow-auto`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), Constraints (+8 more) +Cohesion: 0.20 +Nodes (8): Constraints, Input, Instructions, issue-flow — advanced auto (`/iflow-auto`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), 15. `/iflow-auto` — unattended large-change orchestration, Decided (2026-09-05) ### Community 97 - "An MCP server for cellpy — design, and what a prototype found" -Cohesion: 0.10 -Nodes (20): An MCP server for cellpy — design, and what a prototype found, And a boundary, Finding 3 — the documentation is usually there, one hop away, Hard part 1 — state, Hard part 2 — file access, Prompts — the part aimed at people who are not asking for tools, Proposed: `cellpy mcp`, not `cellpy server mcp`, Proposed upstream (+12 more) +Cohesion: 0.12 +Nodes (16): An MCP server for cellpy — design, and what a prototype found, And a boundary, Finding 3 — the documentation is usually there, one hop away, Prompts — the part aimed at people who are not asking for tools, Proposed: `cellpy mcp`, not `cellpy server mcp`, Proposed upstream, Proposed upstream — round two, Recommendation (+8 more) ### Community 98 - "issue-flow — issue build (`/iflow-build`)" Cohesion: 0.29 @@ -692,29 +689,29 @@ Nodes (6): Constraints, Early PR tokens (command input), Instructions, issue-flo Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #67: Cell explorer dQ/dV: Charge/Discharge direction has no effect (and joins half-cycles), Original issue text, Out of scope, Problem / context, Spec -### Community 100 - "fo" -Cohesion: 0.08 -Nodes (6): Do, fo(), Io(), jo(), Oo(), Po() +### Community 100 - "Do" +Cohesion: 0.14 +Nodes (4): Do, Io(), jo(), Oo() ### Community 101 - "test_gui_playwright.py" Cohesion: 0.08 -Nodes (18): Remaining work, Status — #184 update plots when the Manage cells modal closes, What's done, Files to touch, app(), loadRecent(), PLOTLY_CONFIG, RECENT_KINDS (+10 more) +Nodes (19): Files to touch, Remaining work, Status — #184 update plots when the Manage cells modal closes, What's done, app(), loadRecent(), PLOTLY_CONFIG, RECENT_KINDS (+11 more) -### Community 102 - "_tidy_facet_annotations" -Cohesion: 0.08 -Nodes (20): Acceptance criteria, Issue #38: Use cellpy label builders for summary/cycle axis titles, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+12 more) +### Community 102 - "select_ica_direction" +Cohesion: 0.09 +Nodes (23): 16. 🟢 ICA plotter direction gaps (line plots + `both`), Prior art, Approach, Constraints, Files to touch, Goal, Open questions, Plan — Issue #72: Cycles Mode ↔ x-axis capacity units (+15 more) ### Community 103 - "test_core.py" -Cohesion: 0.02 -Nodes (81): dev_mode(), _hover_variable(), _ica_y_values(), _numeric_y_values(), _rate_library(), _summary_facet_titles_top_to_bottom(), test_build_reports_without_a_frame_never_calls_cycles_unreadable(), test_cells_export_cellpy_and_xlsx() (+73 more) +Cohesion: 0.01 +Nodes (91): _hover_variable(), _ica_y_values(), _numeric_y_values(), _rate_library(), _spread_library(), _summary_facet_titles_top_to_bottom(), test_build_reports_without_a_frame_never_calls_cycles_unreadable(), test_cells_export_cellpy_and_xlsx() (+83 more) -### Community 105 - "RawPlotSpec" -Cohesion: 0.15 -Nodes (4): _clean_axis_range(), ComparePick, RawPlotSpec, test_raw_figure_is_downsampled_for_transport() +### Community 105 - "models.py" +Cohesion: 0.07 +Nodes (15): CellsExportSpec, _clean_axis_range(), ComparePick, CycleInfoPlotSpec, ExportSpec, GroupLabelUpdate, IngestExampleRequest, IngestRequest (+7 more) -### Community 107 - "plotting.py" -Cohesion: 0.06 -Nodes (51): 4. API — `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`, Files to touch, Test strategy, 2026-10-02 — built, 1. Core — a small, pure cycle report (`core/cycle_report.py`, new), 2. `collect.py`, 3. `plotting.py`, 5. Docs (+43 more) +### Community 107 - "CellRecord" +Cohesion: 0.05 +Nodes (60): 3. Core — `core/plotting.py`, 4. API — `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`, Files to touch, 2026-10-02 — built, 1. Core — a small, pure cycle report (`core/cycle_report.py`, new), 2. `collect.py`, 3. `plotting.py`, 5. Docs (+52 more) ### Community 109 - "Issue #36: Chart card stays white under dark figure theme; default figure theme to Match app" Cohesion: 0.29 @@ -724,17 +721,17 @@ Nodes (6): Acceptance criteria, Issue #36: Chart card stays white under dark fig Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet, Original issue text, Out of scope, Problem / context, Spec -### Community 112 - ".create" -Cohesion: 0.16 -Nodes (3): _createButton(), qi(), h() +### Community 112 - ".fire" +Cohesion: 0.09 +Nodes (6): constructor(), _createButton(), qi(), Qu(), h(), setMaxBounds() ### Community 113 - "Issue #3: Make the Cells list workable for many cells (modal or expanded editor)" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #3: Make the Cells list workable for many cells (modal or expanded editor), Original issue text, Out of scope, Problem / context, Spec -### Community 114 - "test_mcp_prototype.py" -Cohesion: 0.20 -Nodes (3): prototype(), test_describe_api_will_not_import_outside_cellpy(), steps() +### Community 114 - "la" +Cohesion: 0.18 +Nodes (3): ha(), la(), qa ### Community 115 - "gen_llms_txt.py" Cohesion: 0.36 @@ -752,10 +749,6 @@ Nodes (10): Arbin `.res` needs a Microsoft ODBC driver, Building it yourself, Do Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #58: Add a plot side pane and match the top bar to the app background, Original issue text, Out of scope, Problem / context, Spec -### Community 119 - "Mn" -Cohesion: 0.18 -Nodes (3): An(), Mn(), setMaxBounds() - ### Community 120 - "mh" Cohesion: 0.24 Nodes (8): fh(), hh(), mh(), ph(), qh(), uh, Vh(), yh() @@ -772,10 +765,6 @@ Nodes (3): Issue #73 status, Remaining work, What's done Cohesion: 0.29 Nodes (5): CI recipe (copy-paste), Contract, Essential tests (pytest), Non-goals (v1), Test registry -### Community 124 - "nl" -Cohesion: 0.18 -Nodes (5): al(), il(), jl(), nl(), Ul() - ### Community 125 - "issue-flow — archive solved issues (`/iflow-archive`)" Cohesion: 0.33 Nodes (5): Constraints, Input, Instructions, issue-flow — archive solved issues (`/iflow-archive`), MODEL & EXECUTION DIRECTIVE @@ -789,7 +778,7 @@ Cohesion: 0.33 Nodes (5): Constraints, Instructions, issue-flow — issue pause (`/iflow-pause`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) ### Community 128 - "test_jobs.py" -Cohesion: 0.11 +Cohesion: 0.12 Nodes (6): test_jobs_do_not_depend_on_private_stdlib_internals(), test_manager_reports_a_failing_job_rather_than_hanging(), test_one_failing_job_does_not_kill_the_worker(), boom(), test_pool_workers_are_daemons(), test_shutdown_does_not_wait_on_a_stuck_job() ### Community 129 - "issue-flow — iflow smart dispatcher (`/iflow`)" @@ -798,7 +787,7 @@ Nodes (5): Constraints, Instructions, issue-flow — iflow smart dispatcher (`/i ### Community 130 - "wn" Cohesion: 0.09 -Nodes (3): kn(), ln(), wn() +Nodes (3): kn(), ne(), wn() ### Community 131 - "Deploying cellpy simple GUI as a server" Cohesion: 0.08 @@ -809,8 +798,8 @@ Cohesion: 0.33 Nodes (5): Approach, Files to touch, Goal, Plan: Issue #13 — add workflows, Test strategy ### Community 135 - "Ei" -Cohesion: 0.08 -Nodes (9): calculateCameraOptionsFromTo(), _cancelRenderFrame(), Ei(), i(), project(), _requestRenderFrame(), setMaxZoom(), setMinZoom() (+1 more) +Cohesion: 0.09 +Nodes (6): calculateCameraOptionsFromTo(), Ei(), project(), _requestRenderFrame(), setMaxZoom(), setMinZoom() ### Community 137 - "Plan: Issue #14 — make saving and closing more obvious" Cohesion: 0.33 @@ -852,10 +841,6 @@ Nodes (5): test_an_unrecognised_error_is_passed_through_unchanged(), test_availa Cohesion: 0.40 Nodes (4): Constraints, Instructions, issue-flow — graph rebuild (`/iflow-graphify`), MODEL & EXECUTION DIRECTIVE -### Community 148 - "bn" -Cohesion: 0.08 -Nodes (4): bn(), di(), qr(), Qu() - ### Community 150 - "Issue #27: Iterative fixes: group average checkbox" Cohesion: 0.40 Nodes (4): First reported bug, Interactive `/iflow-fix` session, Issue #27: Iterative fixes: group average checkbox, Original issue text @@ -864,9 +849,9 @@ Nodes (4): First reported bug, Interactive `/iflow-fix` session, Issue #27: Iter Cohesion: 0.40 Nodes (4): First reported bug, Interactive `/iflow-fix` session, Issue #31: Iterative fixes: export download location, Original issue text -### Community 153 - "The prompts" -Cohesion: 0.32 -Nodes (4): The prompts, analyse_cell(), explain_call(), start_batch_project() +### Community 153 - "mcp/server.py" +Cohesion: 0.15 +Nodes (6): The prompts, analyse_cell(), _client_config_path(), explain_call(), _install(), start_batch_project() ### Community 154 - "`00-tools/` — shared helper tools" Cohesion: 0.50 @@ -876,6 +861,10 @@ Nodes (3): `00-tools/` — shared helper tools, Tool index, When working an issu Cohesion: 0.50 Nodes (3): Cycle status, Queue, Skipped / blocked +### Community 157 - "list_instruments" +Cohesion: 0.25 +Nodes (5): 5. 🟠 Instrument discovery logs a WARNING per non-loader module, list_instruments(), arbin_res_reader_available(), instrument_ids(), list_instruments() + ### Community 158 - "Issue #15: update readme" Cohesion: 0.50 Nodes (3): Comments (curated summary), Issue #15: update readme, Original issue text @@ -885,12 +874,12 @@ Cohesion: 0.20 Nodes (9): ct(), kn(), kr(), lt(), mt(), nr(), P(), tr() (+1 more) ### Community 160 - "oi" -Cohesion: 0.07 -Nodes (10): bi(), ch(), oi(), a(), i(), n(), r(), s() (+2 more) +Cohesion: 0.10 +Nodes (8): ch(), oi(), a(), i(), n(), r(), s(), setTerrain() ### Community 161 - "Development information" -Cohesion: 0.10 -Nodes (20): Branch hygiene, Chat invocation (no slash), CI via GitHub CLI, Cursor Cloud specific instructions, Designs and guides, Development information, Folder hygiene for `.issueflows/01-current-issues`, If the project uses conda (+12 more) +Cohesion: 0.09 +Nodes (21): Branch hygiene, Chat invocation (no slash), CI via GitHub CLI, Command lifecycle, Designs and guides, Development information, Folder hygiene for `.issueflows/01-current-issues`, Knowledge graph (optional, via [graphify](https://iflow-graphify.net)) (+13 more) ### Community 162 - "gen_api_reference.py" Cohesion: 0.13 @@ -908,17 +897,17 @@ Nodes (7): Approach, Files to touch, Goal, Issue #81 — Plan: consistent CE sum Cohesion: 0.50 Nodes (3): Issue #47 — Status, Iterative fixes log, Remaining work -### Community 166 - "entry.py" -Cohesion: 0.19 -Nodes (4): _log_dir(), main(), _report_crash(), _show_dialog() +### Community 166 - "smoke_test.py" +Cohesion: 0.08 +Nodes (8): _log_dir(), main(), _report_crash(), _show_dialog(), LaunchedApp, main(), run_checks(), skip() ### Community 167 - "Issue #50 — Status" Cohesion: 0.50 Nodes (3): Issue #50 — Status, Iterative fixes log, Remaining work -### Community 168 - "Client" -Cohesion: 0.18 -Nodes (6): Client, main(), run_checks(), skip(), test_the_tool_surface_is_small_and_named_as_documented(), main() +### Community 168 - "Issue #32: Plot appearance options: color scheme and figure theme" +Cohesion: 0.25 +Nodes (7): Acceptance criteria, Comments (curated summary), Issue #32: Plot appearance options: color scheme and figure theme, Original issue text, Out of scope, Problem / context, Spec ### Community 170 - "Issue #58 status" Cohesion: 0.50 @@ -929,7 +918,7 @@ Cohesion: 0.50 Nodes (3): Issue #5 status, Remaining work, What's done ### Community 172 - "6. Process state and threading" -Cohesion: 0.14 +Cohesion: 0.13 Nodes (8): 6. Process state and threading, A worker pool that survives its workers, `override` is per thread; `reload` is not, Progress and cancellation, The short answer, Where to go next, Your own singletons are the real constraint, _DaemonPool ### Community 173 - "Plan — Issue #73: Job progress Cancel/Dismiss overlap" @@ -940,37 +929,37 @@ Nodes (11): Approach, Constraints, Files to touch, Goal, Open questions, Plan Cohesion: 0.50 Nodes (3): Desktop exit / terminal prompt, Journal load diagnostics & desktop exit, Journal / project load -### Community 187 - "ho" -Cohesion: 0.09 -Nodes (6): ho(), mu(), pl, qo(), su(), zo() +### Community 176 - "ee" +Cohesion: 0.18 +Nodes (4): ee(), a(), r(), te() -### Community 188 - "issue-flow — issue cleanup (`/iflow-cleanup`)" -Cohesion: 0.29 -Nodes (6): Constraints, Input, Instructions, issue-flow — issue cleanup (`/iflow-cleanup`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) +### Community 187 - "Ic" +Cohesion: 0.05 +Nodes (12): al(), Go(), ho(), Ic(), il(), jl(), nl(), Ns() (+4 more) -### Community 190 - "Plan — #184 update plots when the Manage cells modal closes" -Cohesion: 0.29 -Nodes (6): Approach (front-end only, `app.js` + modal markup), Files to touch, Goal, Plan — #184 update plots when the Manage cells modal closes, Test strategy, What happens today +### Community 188 - "gh" +Cohesion: 0.09 +Nodes (24): Fallback (workflow runs), gh-ci — wait on GitHub CI with `gh`, Primary (PR-attached checks), Semantics, Where this fits, Constraints, Input, Instructions (+16 more) + +### Community 190 - "Hl" +Cohesion: 0.25 +Nodes (3): Hl(), ql(), tc() ### Community 192 - "cellpy API surface" -Cohesion: 0.07 -Nodes (29): Attributes worth knowing, cellpy API surface, Cells into a Collection, Collect options, Configuration, Figures to bytes, Loading, One cell (+21 more) +Cohesion: 0.08 +Nodes (25): Attributes worth knowing, cellpy API surface, Cells into a Collection, Collect options, Configuration, Figures to bytes, Loading, One cell (+17 more) ### Community 199 - "ur" -Cohesion: 0.05 -Nodes (11): cr(), dr(), fr(), Je(), lr(), sr(), ur(), o() (+3 more) - -### Community 202 - "Issue #37: Spread bands too opaque for safe/muted color schemes" -Cohesion: 0.29 -Nodes (6): Acceptance criteria, Issue #37: Spread bands too opaque for safe/muted color schemes, Original issue text, Out of scope, Problem / context, Spec +Cohesion: 0.09 +Nodes (6): cr(), dr(), fr(), lr(), ur(), o() ### Community 203 - "m" Cohesion: 0.13 Nodes (19): A(), cn(), d(), E(), has(), he(), ie(), Ir() (+11 more) -### Community 204 - "steps" -Cohesion: 0.23 -Nodes (9): main(), call(), test_availability_is_answered_rather_than_discovered_by_drawing(), steps(), test_new_project_refuses_before_it_writes_anything(), steps(), test_paths_outside_the_sandbox_are_refused(), steps() (+1 more) +### Community 204 - "test_mcp_prototype.py" +Cohesion: 0.06 +Nodes (31): Client, drive(), main(), call(), prototype(), test_a_default_direction_plot_says_it_drew_less(), steps(), test_availability_is_answered_rather_than_discovered_by_drawing() (+23 more) ### Community 205 - "README.md" Cohesion: 0.15 @@ -984,61 +973,73 @@ Nodes (7): It(), Kt(), oi(), Ot(), qn(), xe(), ze() Cohesion: 0.22 Nodes (14): br(), dr(), er(), Et(), gr(), mr(), pe(), S() (+6 more) -### Community 209 - "getImageData" -Cohesion: 0.17 -Nodes (9): addControl(), addImage(), draw(), getCanvasContainer(), getContainer(), getDefaultPosition(), getImageCanvasContext(), getImageData() (+1 more) +### Community 209 - "essential" +Cohesion: 0.25 +Nodes (5): test_cellpy_config_diagnostics_endpoint(), test_examples(), test_healthz(), test_served_instance_refuses_paths_outside_its_data_dir(), test_token_required() ### Community 210 - "ft" -Cohesion: 0.15 +Cohesion: 0.17 Nodes (4): ft(), off(), onRemove(), removeControl() ### Community 211 - "k" -Cohesion: 0.03 -Nodes (17): A(), Dt(), getImage(), j(), v(), k(), s(), loadImage() (+9 more) +Cohesion: 0.07 +Nodes (11): l(), f(), u(), D(), y(), P(), getImage(), k() (+3 more) -### Community 213 - "drive" -Cohesion: 0.29 -Nodes (4): drive(), test_no_tool_returns_a_frame(), steps(), test_the_whole_arc_over_the_protocol() +### Community 213 - "_without_webview" +Cohesion: 0.25 +Nodes (4): test_api_works_without_pywebview(), test_desktop_import_failure_names_the_extra(), test_native_dialogs_refuse_without_pywebview(), _without_webview() -### Community 214 - "Plan — Issue #37" -Cohesion: 0.33 -Nodes (5): Approach, Files to touch, Goal, Plan — Issue #37, Test strategy +### Community 214 - "Plan — #184 update plots when the Manage cells modal closes" +Cohesion: 0.29 +Nodes (6): Approach (front-end only, `app.js` + modal markup), Files to touch, Goal, Plan — #184 update plots when the Manage cells modal closes, Test strategy, What happens today ### Community 215 - "Instructions" Cohesion: 0.20 Nodes (9): Constraints, Input, Instructions, issue-flow — split an over-large issue (`/iflow-split`), MODEL & EXECUTION DIRECTIVE, Phase 1 — draft children, Phase 2 — create and link, Phase 3 — optional handoff (+1 more) ### Community 216 - "starter/app.py" -Cohesion: 0.08 -Nodes (17): add_cells(), clear_cells(), collection_for(), export(), export_csv(), figure(), figure_json(), index() (+9 more) +Cohesion: 0.05 +Nodes (31): Cursor Cloud specific instructions, If the project uses conda, If the project uses uv (issue-flow's default), Issue-flow best practices, Issue tracking structure, Other toolchains (plain venv / pip / poetry), Running python, add_cells() (+23 more) ### Community 217 - "Continuous Windows installer from `main`" Cohesion: 0.40 Nodes (4): Alternatives considered, Context, Continuous Windows installer from `main`, Decision +### Community 219 - ".constructor" +Cohesion: 0.10 +Nodes (5): isParsed(), Pt(), removeSource(), setFeatureState(), setMethods() + ### Community 220 - "U" Cohesion: 0.29 Nodes (8): en(), ki(), q(), qr(), tn(), U(), zi(), zr() ### Community 221 - "_restyle" -Cohesion: 0.04 -Nodes (52): Acceptance criteria, Issue #1: Fix Plotly summary legend when cell names are very long, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+44 more) +Cohesion: 0.03 +Nodes (81): 2. Core — `core/collect.py`, Acceptance criteria, Issue #1: Fix Plotly summary legend when cell names are very long, Original issue text, Out of scope, Problem / context, Spec, Approach (+73 more) ### Community 222 - "cellpy-simple-gui" Cohesion: 0.13 Nodes (12): Cross-repo guidance, Default for lifecycle commands, Members, Multi-root workspace — cellpyapp, Toolchain disambiguation, cellpy-simple-gui, Conventions, How to run / test (+4 more) +### Community 223 - "Issue #38: Use cellpy label builders for summary/cycle axis titles" +Cohesion: 0.29 +Nodes (6): Acceptance criteria, Issue #38: Use cellpy label builders for summary/cycle axis titles, Original issue text, Out of scope, Problem / context, Spec + ### Community 224 - "Plan — Issue #177: GUI color scheme and layout" Cohesion: 0.17 Nodes (11): A — Quiet lab (recommended), Approach, B — Plot-first, C — Top strip, Constraints, Files to touch, Goal, Open questions (+3 more) -### Community 225 - "Issue #72: Cycles tab: Mode change does not update x-axis capacity units" -Cohesion: 0.29 -Nodes (6): Acceptance criteria, Issue #72: Cycles tab: Mode change does not update x-axis capacity units, Original issue text, Out of scope, Problem / context, Spec +### Community 225 - "collect" +Cohesion: 0.13 +Nodes (12): collect(), Issue #54 status, Remaining work, What's done, Acceptance criteria, Issue #72: Cycles tab: Mode change does not update x-axis capacity units, Original issue text, Out of scope (+4 more) -### Community 226 - "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)" -Cohesion: 0.33 -Nodes (5): Acceptance criteria, Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute), Original issue text, Out of scope, Problem / context +### Community 226 - "apply_physical_meta" +Cohesion: 0.06 +Nodes (36): 21. 🟠 No selective summary rebuild after meta edits, Constraints, Prior art, Approach, Constraints, Files to touch, Goal, Issue #69 — Plan: edit cell metadata (+28 more) + +### Community 227 - "_wait_for_job" +Cohesion: 0.29 +Nodes (5): test_export_cells_cellpy(), test_job_cancel_running_load(), test_rename_group(), test_served_instance_will_not_load_files_from_the_host(), _wait_for_job() ### Community 228 - "issue-flow — harness init (`/iflow-init`)" Cohesion: 0.22 @@ -1052,10 +1053,6 @@ Nodes (20): Cutting a release, One-time: let PyPI trust this repository, One-tim Cohesion: 0.22 Nodes (8): Candidates, by strength, Guides: what belongs upstream in cellpy, Medium — general, but shaped by a decision an app has to make, New finding to file separately, Stays here — about building an app, not about cellpy, Strong — general cellpy knowledge, no app in it, Suggested shape of the proposal, Why not upstream first -### Community 234 - "Compare cells (#169)" -Cohesion: 0.40 -Nodes (4): Alternatives considered, Compare cells (#169), Context, Gotcha recorded - ### Community 235 - "1. Getting cells into memory" Cohesion: 0.25 Nodes (8): 1. Getting cells into memory, Asking the user for the right metadata, Discovered is not the same as usable, Looking before you load, Many files at once, Opening a real file, Where to go next, Which instrument? @@ -1064,21 +1061,13 @@ Nodes (8): 1. Getting cells into memory, Asking the user for the right metadata, Cohesion: 0.40 Nodes (5): Bn(), fr(), get(), Gi(), Oe() -### Community 238 - "Issue #28 plan — Export cells from Manage cells" -Cohesion: 0.17 -Nodes (10): Approach, Constraints, Files to touch, Goal, Issue #28 plan — Export cells from Manage cells, Open questions, Test strategy, Manage cells modal (+2 more) - -### Community 239 - "Next phase — deployment routes and app-builder documentation" -Cohesion: 0.20 -Nodes (8): Decisions taken up front, Issues, Milestone 1 — Headless-ready, Milestone 3 — Build your own cellpy app, Next phase — deployment routes and app-builder documentation, Risks, Sequencing, What the current architecture already decides for us - -### Community 240 - "Issue #54 status" -Cohesion: 0.50 -Nodes (3): Issue #54 status, Remaining work, What's done +### Community 238 - "save_cell" +Cohesion: 0.09 +Nodes (17): Approach, Constraints, Files to touch, Goal, Issue #28 plan — Export cells from Manage cells, Open questions, Test strategy, Issue #28 status — Export cells from Manage cells (+9 more) -### Community 241 - ".get" -Cohesion: 0.11 -Nodes (8): Fl(), Go(), Ml(), Ns(), Sl(), xu(), yc(), zh() +### Community 241 - ".evaluate" +Cohesion: 0.06 +Nodes (9): eh(), Fl(), hu(), Ku(), no(), pu(), Ra(), rh (+1 more) ### Community 242 - "Issue #55 — Status" Cohesion: 0.50 @@ -1088,9 +1077,21 @@ Nodes (3): Issue #55 — Status, Remaining work, What's done Cohesion: 0.50 Nodes (3): Issue #72 status, Remaining work, What's done -### Community 245 - "once" -Cohesion: 0.50 -Nodes (3): _createDelegatedListener(), once(), queryRenderedFeatures() +### Community 245 - "test_default_visible_hint_budget" +Cohesion: 0.40 +Nodes (4): _add_cells_modal_html(), _template_html(), test_add_cells_modal_has_one_primary_action(), test_default_visible_hint_budget() + +### Community 246 - "test_index_click_and_show_targets_exist" +Cohesion: 0.33 +Nodes (3): _component_names(), _free_identifiers(), test_index_click_and_show_targets_exist() + +### Community 248 - "_dva_spec" +Cohesion: 0.33 +Nodes (4): _dva_spec(), test_dva_endpoints_need_no_dev_mode(), test_raw_and_cycle_info_are_dev_only(), test_raw_and_cycle_info_in_dev_mode() + +### Community 249 - "_load_entry" +Cohesion: 0.33 +Nodes (4): _load_entry(), test_crash_goes_to_stderr_when_there_is_a_console(), test_crash_report_is_written_and_the_dialog_names_it(), test_crash_reporter_agrees_with_the_app_on_where_logs_go() ### Community 251 - "issue-flow — PR queue sync (`/iflow-pr-sync`)" Cohesion: 0.29 @@ -1108,10 +1109,18 @@ Nodes (6): Acceptance criteria, Issue #41: Arbin SQL HDF5 import uses cellpy `.h Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #81: Keep CE summary panel order consistent (prefer CE on top), Original issue text, Out of scope, Problem / context, Spec +### Community 256 - "Plan: Issue #19 — journal load error surfacing" +Cohesion: 0.40 +Nodes (4): Approach, Goal, Plan: Issue #19 — journal load error surfacing, Test strategy + ### Community 257 - "_t" Cohesion: 0.20 Nodes (9): Gn(), Ln(), Re(), _t(), te(), Un(), Wn(), x() (+1 more) +### Community 261 - "Issue #160 — Status" +Cohesion: 0.50 +Nodes (3): Issue #160 — Status, Remaining work, What's done + ### Community 262 - "Gu" Cohesion: 0.40 Nodes (3): Gu(), Wu(), Yu() @@ -1121,8 +1130,8 @@ Cohesion: 0.33 Nodes (5): Constraints, Instructions, issue-flow — ops / no-PR (`/iflow-ops`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) ### Community 265 - "2. Cells into a Collection" -Cohesion: 0.18 -Nodes (9): 3. 🟠 Silent all-or-nothing group-averaging when any group is a singleton, 2. Cells into a Collection, Collecting, Grouping and averaging, polars here, pandas there, Two things that go wrong, What a Collection is, Where to go next (+1 more) +Cohesion: 0.29 +Nodes (7): 2. Cells into a Collection, Collecting, Grouping and averaging, polars here, pandas there, Two things that go wrong, What a Collection is, Where to go next ### Community 266 - "7. What cellpy will and will not do for you" Cohesion: 0.33 @@ -1136,12 +1145,16 @@ Nodes (3): 2026-10-02 — picked, captured, planned, Remaining, Status — Issue Cohesion: 0.50 Nodes (3): Done, Issue #173 status, Remaining -### Community 272 - "y" -Cohesion: 0.06 -Nodes (88): J(), R(), i(), K(), cn(), D(), y(), E() (+80 more) +### Community 269 - "Issue #31 status — Iterative fixes: export download location" +Cohesion: 0.50 +Nodes (3): Issue #31 status — Iterative fixes: export download location, Iterative fixes log, test_system_save_rejected_without_webview() + +### Community 272 - ".push" +Cohesion: 0.04 +Nodes (95): J(), R(), at(), i(), K(), E(), cn(), E() (+87 more) ### Community 277 - "test_ingest.py" -Cohesion: 0.11 +Cohesion: 0.10 Nodes (12): _client(), test_adapter_load_raw_pec(), test_ingest_bad_instrument_400(), test_ingest_example_neware(), test_instruments_endpoint(), test_load_file_passes_remote_uri(), test_load_file_remote_missing_raises(), test_load_raw_passes_instrument() (+4 more) ### Community 285 - "Building on cellpy" @@ -1160,32 +1173,28 @@ Nodes (10): ci(), ei(), ge(), ii(), jn(), me(), ni(), Pr() (+2 more) Cohesion: 0.50 Nodes (3): Issue #86 — Status, Remaining work, What's done -### Community 293 - "ht" -Cohesion: 0.10 -Nodes (3): ht(), resolveURL(), sendAsync() - ### Community 304 - "test_starter.py" -Cohesion: 0.04 -Nodes (23): generated_against(), generator(), skip_unless_pinned_cellpy(), test_every_listed_call_actually_exists(), test_it_covers_the_calls_the_guides_lean_on(), test_the_committed_reference_matches_the_installed_cellpy(), test_the_reference_does_not_depend_on_which_python_generated_it(), test_the_sharp_edges_are_stated_where_someone_will_read_them() (+15 more) +Cohesion: 0.03 +Nodes (26): generator(), test_every_path_the_index_points_at_exists(), test_llms_full_actually_contains_the_documents(), test_the_index_lists_every_guide(), test_the_skill_reference_is_bundled(), test_the_skill_states_the_traps_that_produce_plausible_output(), generated_against(), generator() (+18 more) ### Community 318 - "xt" Cohesion: 0.27 Nodes (10): B(), Ce(), fe(), Fn(), k(), $n(), Ne(), xt() (+2 more) ## Knowledge Gaps -- **710 isolated node(s):** `docker-entrypoint.sh script`, `cellpy-simple-gui`, `PLOTLY_CONFIG`, `RECENT_KINDS`, `Persistence` (+705 more) - These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 2328 node(s) total have ≤1 connection when file, concept and rationale nodes are included.) -- **85 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. +- **711 isolated node(s):** `docker-entrypoint.sh script`, `cellpy-simple-gui`, `PLOTLY_CONFIG`, `RECENT_KINDS`, `Persistence` (+706 more) + These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 2350 node(s) total have ≤1 connection when file, concept and rationale nodes are included.) +- **93 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. ## Suggested Questions _Questions this graph is uniquely positioned to answer:_ -- **Why does `$` connect `$` to `ni`, `ss`, `i`, `N`, `u`, `vn`, `wo`, `Uc`, `e`, `m`, `.add`, `na`, `wt`, `oa`, `eu`, `.push`, `xi`, `gh`, `.createVertexBuffer`, `.resume`, `Dt`, `resize`, `ca`, `hi`, `.reset`, `issue-flow — version bump`, `fa`, `ea`, `I`, `.renderLayer`, `.parse`, `ti`, `Ra`, `g`, `de`, `ah`, `da`, `.constructor`, `_render`, `ii`, `ju`, `Si`, `alpine.min.js`, `fo`, `.destroy`, `rh`, `ro`, `ri`, `.create`, `Mn`, `mh`, `nl`, `wn`, `Ic`, `Ei`, `bn`, `mt`, `oi`, `te`, `ho`, `ur`, `Kt`, `gr`, `getImageData`, `ft`, `k`, `Pt`, `bt`, `Ki`, `ls`, `.get`, `En`, `once`, `pu`, `.constructor`, `Zi`, `Xe`, `_t`, `Gu`, `th`, `y`, `qn`, `Xt`, `ge`, `ht`, `wi`, `jh`?** - _High betweenness centrality (0.382) - this node is a cross-community bridge._ -- **Why does `gh()` connect `gh` to `issue-flow — iflow smart dispatcher (`/iflow`)`, `i`, `issue-flow — ops / no-PR (`/iflow-ops`)`, `$`, `issue-flow — issue comments triage`, `eu`, `issue-flow — issue plan (`/iflow-plan`)`, `issue-flow — issue close (`/iflow-close`)`, `Development information`, `.resume`, `Instructions`, `Job`, `Instructions`, `issue-flow — create a normal issue (`/iflow-issue`)`, `issue-flow — issue cleanup (`/iflow-cleanup`)`, `issue-flow — epic planning (`/iflow-epic`)`, `issue-flow — review and label issues (`/iflow-review`)`, `issue-flow — issue yolo (`/iflow-yolo`)`, `Instructions`, `Original issue text`, `cellpy-simple-gui`, `.status`, `issue-flow — issue build (`/iflow-build`)`, `issue-flow — harness init (`/iflow-init`)`, `mh`, `issue-flow — PR queue sync (`/iflow-pr-sync`)`, `issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`)`, `issue-flow — issue pause (`/iflow-pause`)`?** - _High betweenness centrality (0.262) - this node is a cross-community bridge._ -- **Why does `Stack / runtime` connect `Job` to `gh`, `_restyle`, `cellpy-simple-gui`, `Library`?** - _High betweenness centrality (0.170) - this node is a cross-community bridge._ +- **Why does `$` connect `$` to `ni`, `ss`, `i`, `hn`, `o`, `vn`, `wo`, `Uc`, `e`, `a`, `pi`, `na`, `.get`, `oa`, `eu`, `b`, `xi`, `yr`, `.resume`, `Dt`, `resize`, `Ga`, `hi`, `.reset`, `issue-flow — version bump`, `fa`, `ea`, `I`, `.draw`, `.parse`, `ti`, `.concat`, `N`, `.load`, `._checkLoaded`, `.populate`, `da`, `Tn`, `de`, `layout`, `ii`, `.render`, `Si`, `alpine.min.js`, `Do`, `.destroy`, `fo`, `ro`, `qr`, `.fire`, `la`, `Mn`, `mh`, `ca`, `wn`, `va`, `Ei`, `bn`, `mt`, `oi`, `ee`, `Ic`, `gh`, `Hl`, `ur`, `ya`, `Kt`, `gr`, `ft`, `k`, `.constructor`, `bt`, `Ki`, `.getRenderableIds`, `ps`, `se`, `sr`, `.evaluate`, `En`, `Zi`, `Xe`, `_t`, `Ft`, `yi`, `Gu`, `th`, `.push`, `aa`, `qn`, `Xt`, `ge`, `ht`, `wi`, `jh`?** + _High betweenness centrality (0.387) - this node is a cross-community bridge._ +- **Why does `gh()` connect `gh` to `issue-flow — iflow smart dispatcher (`/iflow`)`, `i`, `issue-flow — ops / no-PR (`/iflow-ops`)`, `$`, `a`, `issue-flow — issue comments triage`, `eu`, `issue-flow — issue plan (`/iflow-plan`)`, `issue-flow — issue close (`/iflow-close`)`, `Cursor issue workflow (Agent Skills)`, `Development information`, `.resume`, `Instructions`, `Job`, `Instructions`, `issue-flow — create a normal issue (`/iflow-issue`)`, `issue-flow — epic planning (`/iflow-epic`)`, `issue-flow — review and label issues (`/iflow-review`)`, `issue-flow — issue yolo (`/iflow-yolo`)`, `Instructions`, `Original issue text`, `cellpy-simple-gui`, `.status`, `issue-flow — issue build (`/iflow-build`)`, `issue-flow — harness init (`/iflow-init`)`, `mh`, `issue-flow — PR queue sync (`/iflow-pr-sync`)`, `issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`)`, `issue-flow — issue pause (`/iflow-pause`)`?** + _High betweenness centrality (0.253) - this node is a cross-community bridge._ +- **Why does `Stack / runtime` connect `Job` to `Library`, `gh`, `_restyle`, `cellpy-simple-gui`?** + _High betweenness centrality (0.149) - this node is a cross-community bridge._ - **Are the 45 inferred relationships involving `$` (e.g. with `J()` and `Jt()`) actually correct?** _`$` has 45 INFERRED edges - model-reasoned connections that need verification._ - **Are the 132 inferred relationships involving `e()` (e.g. with `u()` and `r()`) actually correct?** diff --git a/graphify-out/2026-10-04/graph.json b/graphify-out/2026-10-04/graph.json index 416dc26..9b11cf5 100644 --- a/graphify-out/2026-10-04/graph.json +++ b/graphify-out/2026-10-04/graph.json @@ -30,262 +30,249 @@ "source_location": "L27" }, { - "id": "src_cellpy_simple_gui_core_models_cellsexportspec", - "label": "CellsExportSpec", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a", + "label": "a()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": "cellsexportspec", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L313" + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_cycleinfoplotspec", - "label": "CycleInfoPlotSpec", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j", + "label": "j()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": "cycleinfoplotspec", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L289" + "norm_label": "j()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_exportspec", - "label": "ExportSpec", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o", + "label": "o()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": "exportspec", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L303" + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_ingestexamplerequest", - "label": "IngestExampleRequest", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do", + "label": "Do", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 100, + "community_name": "Do", "file_type": "code", - "norm_label": "ingestexamplerequest", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L372" + "norm_label": "do", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_ingestrequest", - "label": "IngestRequest", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_io", + "label": "Io()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 100, + "community_name": "Do", "file_type": "code", - "norm_label": "ingestrequest", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L358" + "norm_label": "io()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_loadexamplerequest", - "label": "LoadExampleRequest", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo", + "label": "Oo()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 100, + "community_name": "Do", "file_type": "code", - "norm_label": "loadexamplerequest", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L333" + "norm_label": "oo()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_loadfilesrequest", - "label": "LoadFilesRequest", + "id": "src_cellpy_simple_gui_core_models_cellsexportspec", + "label": "CellsExportSpec", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 105, + "community_name": "models.py", "file_type": "code", - "norm_label": "loadfilesrequest", + "norm_label": "cellsexportspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L337" + "source_location": "L321" }, { - "id": "src_cellpy_simple_gui_core_models_previewrequest", - "label": "PreviewRequest", + "id": "src_cellpy_simple_gui_core_models_comparepick", + "label": "ComparePick", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 105, + "community_name": "models.py", "file_type": "code", - "norm_label": "previewrequest", + "norm_label": "comparepick", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L342" + "source_location": "L176" }, { - "id": "src_cellpy_simple_gui_core_models_remotefindrequest", - "label": "RemoteFindRequest", + "id": "src_cellpy_simple_gui_core_models_cycleinfoplotspec", + "label": "CycleInfoPlotSpec", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 105, + "community_name": "models.py", "file_type": "code", - "norm_label": "remotefindrequest", + "norm_label": "cycleinfoplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L349" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt", - "label": "kt()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 10, - "community_name": "u", - "file_type": "code", - "norm_label": "kt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "source_location": "L297" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o", - "label": "o()", + "id": "src_cellpy_simple_gui_core_models_exportspec", + "label": "ExportSpec", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 10, - "community_name": "u", + "community": 105, + "community_name": "models.py", "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "exportspec", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L311" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u", - "label": "u()", + "id": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "label": "GroupLabelUpdate", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 10, - "community_name": "u", + "community": 105, + "community_name": "models.py", "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "grouplabelupdate", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L91" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do", - "label": "Do", + "id": "src_cellpy_simple_gui_core_models_ingestexamplerequest", + "label": "IngestExampleRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 105, + "community_name": "models.py", "file_type": "code", - "norm_label": "do", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ingestexamplerequest", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L380" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo", - "label": "fo()", + "id": "src_cellpy_simple_gui_core_models_ingestrequest", + "label": "IngestRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 105, + "community_name": "models.py", "file_type": "code", - "norm_label": "fo()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ingestrequest", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L366" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_io", - "label": "Io()", + "id": "src_cellpy_simple_gui_core_models_loadexamplerequest", + "label": "LoadExampleRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 105, + "community_name": "models.py", "file_type": "code", - "norm_label": "io()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "loadexamplerequest", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L341" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo", - "label": "Oo()", + "id": "src_cellpy_simple_gui_core_models_loadfilesrequest", + "label": "LoadFilesRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 105, + "community_name": "models.py", "file_type": "code", - "norm_label": "oo()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "loadfilesrequest", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L345" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po", - "label": "Po()", + "id": "src_cellpy_simple_gui_core_models_previewrequest", + "label": "PreviewRequest", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 105, + "community_name": "models.py", "file_type": "code", - "norm_label": "po()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "previewrequest", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L350" }, { - "id": "src_cellpy_simple_gui_core_models_comparepick", - "label": "ComparePick", + "id": "src_cellpy_simple_gui_core_models_rawplotspec", + "label": "RawPlotSpec", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", - "norm_label": "comparepick", + "norm_label": "rawplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L168" + "source_location": "L279" }, { - "id": "src_cellpy_simple_gui_core_models_rawplotspec", - "label": "RawPlotSpec", + "id": "src_cellpy_simple_gui_core_models_remotefindrequest", + "label": "RemoteFindRequest", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", - "norm_label": "rawplotspec", + "norm_label": "remotefindrequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L271" + "source_location": "L357" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh", - "label": "rh", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo", + "label": "fo()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 106, - "community_name": "rh", + "community_name": "fo", "file_type": "code", - "norm_label": "rh", + "norm_label": "fo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -296,12 +283,25 @@ "_callable_class": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "cyclereport", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", "source_location": "L39" }, + { + "id": "src_cellpy_simple_gui_core_library_cellrecord", + "label": "CellRecord", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": "cellrecord", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L49" + }, { "id": "src_cellpy_simple_gui_core_models_compareplotspec", "label": "ComparePlotSpec", @@ -309,22 +309,22 @@ "_callable_class": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "compareplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L180" + "source_location": "L188" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba", - "label": "ba", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu", + "label": "mu()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 108, "community_name": "ro", "file_type": "code", - "norm_label": "ba", + "norm_label": "mu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -368,15 +368,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri", - "label": "ri()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr", + "label": "qr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": "ri()", + "norm_label": "qr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -387,12 +387,64 @@ "_callable_class": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": "qi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu", + "label": "Qu()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": "qu()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha", + "label": "ha()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 114, + "community_name": "la", + "file_type": "code", + "norm_label": "ha()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la", + "label": "la()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 114, + "community_name": "la", + "file_type": "code", + "norm_label": "la()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa", + "label": "qa", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 114, + "community_name": "la", + "file_type": "code", + "norm_label": "qa", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn", "label": "Mn()", @@ -420,15 +472,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl", - "label": "nl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca", + "label": "ca()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 124, - "community_name": "nl", + "community_name": "ca", "file_type": "code", - "norm_label": "nl()", + "norm_label": "ca()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -497,6 +549,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po", + "label": "Po()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 13, + "community_name": "wo", + "file_type": "code", + "norm_label": "po()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_so", "label": "So()", @@ -537,15 +602,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc", - "label": "xc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo", + "label": "zo()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": "xc()", + "norm_label": "zo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -563,41 +628,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln", - "label": "ln()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wn", + "label": "wn()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 130, "community_name": "wn", "file_type": "code", - "norm_label": "ln()", + "norm_label": "wn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wn", - "label": "wn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa", + "label": "pa()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 130, - "community_name": "wn", + "community": 133, + "community_name": "va", "file_type": "code", - "norm_label": "wn()", + "norm_label": "pa()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic", - "label": "Ic()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va", + "label": "va", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 133, - "community_name": "Ic", + "community_name": "va", "file_type": "code", - "norm_label": "ic()", + "norm_label": "va", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -667,223 +732,236 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr", - "label": "qr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be", + "label": "Be()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 148, - "community_name": "bn", + "community": 15, + "community_name": "e", "file_type": "code", - "norm_label": "qr()", + "norm_label": "be()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu", - "label": "Qu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c", + "label": "c()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 148, - "community_name": "bn", + "community": 15, + "community_name": "e", "file_type": "code", - "norm_label": "qu()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji", + "label": "ji()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "c()", + "norm_label": "ji()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee", - "label": "ee()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi", + "label": "oi()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 160, + "community_name": "oi", "file_type": "code", - "norm_label": "ee()", + "norm_label": "oi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge", - "label": "ge()", + "id": "packaging_smoke_test_launchedapp", + "label": "LaunchedApp", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 166, + "community_name": "smoke_test.py", "file_type": "code", - "norm_label": "ge()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "launchedapp", + "source_file": "packaging/smoke_test.py", + "source_location": "L140" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji", - "label": "ji()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_remotefind", + "label": "RemoteFind", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 15, - "community_name": "e", + "community": 17, + "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "ji()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "remotefind", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L370" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi", - "label": "bi()", + "id": "src_cellpy_simple_gui_api_jobs_daemonpool", + "label": "_DaemonPool", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 160, - "community_name": "oi", + "community": 172, + "community_name": "6. Process state and threading", "file_type": "code", - "norm_label": "bi()", + "norm_label": "_daemonpool", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L120" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee", + "label": "ee()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 176, + "community_name": "ee", + "file_type": "code", + "norm_label": "ee()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi", - "label": "oi()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te", + "label": "te()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 160, - "community_name": "oi", + "community": 176, + "community_name": "ee", "file_type": "code", - "norm_label": "oi()", + "norm_label": "te()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "packaging_smoke_test_client", - "label": "Client", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae", + "label": "ae()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": "client", - "source_file": "packaging/smoke_test.py", - "source_location": "L91" + "norm_label": "ae()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_remotefind", - "label": "RemoteFind", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g", + "label": "g()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": "remotefind", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L370" + "norm_label": "g()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_cellmeta", - "label": "CellMeta", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h", + "label": "h()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": "cellmeta", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L67" + "norm_label": "h()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_journalrowupdate", - "label": "JournalRowUpdate", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc", + "label": "Lc()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": "journalrowupdate", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L319" + "norm_label": "lc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_jobs_daemonpool", - "label": "_DaemonPool", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le", + "label": "Le()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 172, - "community_name": "6. Process state and threading", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": "_daemonpool", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L120" + "norm_label": "le()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te", - "label": "te()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me", + "label": "Me()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 176, - "community_name": "te", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": "te()", + "norm_label": "me()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe", + "label": "qe()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "a()", + "norm_label": "qe()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ru", + "label": "ru()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "g()", + "norm_label": "ru()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr", - "label": "jr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ts", + "label": "ts()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "jr()", + "norm_label": "ts()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -894,22 +972,35 @@ "_callable_class": true, "_origin": "ast", "community": 187, - "community_name": "ho", + "community_name": "Ic", "file_type": "code", "norm_label": "ho()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu", - "label": "mu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic", + "label": "Ic()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": "ic()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl", + "label": "nl()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 187, - "community_name": "ho", + "community_name": "Ic", "file_type": "code", - "norm_label": "mu()", + "norm_label": "nl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -920,35 +1011,35 @@ "_callable_class": true, "_origin": "ast", "community": 187, - "community_name": "ho", + "community_name": "Ic", "file_type": "code", "norm_label": "pl", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su", - "label": "su()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc", + "label": "xc()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 187, - "community_name": "ho", + "community_name": "Ic", "file_type": "code", - "norm_label": "su()", + "norm_label": "xc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo", - "label": "zo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl", + "label": "Hl()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 190, + "community_name": "Hl", "file_type": "code", - "norm_label": "zo()", + "norm_label": "hl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1004,19 +1095,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr", - "label": "sr()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": "sr()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur", "label": "ur()", @@ -1031,95 +1109,95 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr", - "label": "Wr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi", + "label": "gi()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": "wr()", + "norm_label": "gi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr", - "label": "xr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni", + "label": "ni()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": "xr()", + "norm_label": "ni()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr", - "label": "zr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li", + "label": "Li()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 20, + "community_name": "pi", "file_type": "code", - "norm_label": "zr()", + "norm_label": "li()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn", - "label": "gn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi", + "label": "pi()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 20, + "community_name": "pi", "file_type": "code", - "norm_label": "gn()", + "norm_label": "pi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni", - "label": "ni()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka", + "label": "ka", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 202, + "community_name": "ya", "file_type": "code", - "norm_label": "ni()", + "norm_label": "ka", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li", - "label": "Li()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya", + "label": "ya", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 202, + "community_name": "ya", "file_type": "code", - "norm_label": "li()", + "norm_label": "ya", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi", - "label": "pi()", + "id": "packaging_smoke_test_client", + "label": "Client", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "pi()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "client", + "source_file": "packaging/smoke_test.py", + "source_location": "L91" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na", @@ -1148,15 +1226,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j", - "label": "j()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d", + "label": "D()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "j()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1174,41 +1252,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt", - "label": "rt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt", + "label": "Pt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 219, + "community_name": ".constructor", "file_type": "code", - "norm_label": "rt()", + "norm_label": "pt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt", - "label": "tt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt", + "label": "kt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": ".get", "file_type": "code", - "norm_label": "tt()", + "norm_label": "kt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt", - "label": "Pt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve", + "label": "ve()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 219, - "community_name": "Pt", + "community": 22, + "community_name": ".get", "file_type": "code", - "norm_label": "pt()", + "norm_label": "ve()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1219,50 +1297,50 @@ "_callable_class": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", "norm_label": "wt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "packaging_smoke_test_launchedapp", - "label": "LaunchedApp", + "id": "src_cellpy_simple_gui_core_models_cellmeta", + "label": "CellMeta", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 227, - "community_name": "LaunchedApp", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "launchedapp", - "source_file": "packaging/smoke_test.py", - "source_location": "L140" + "norm_label": "cellmeta", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L67" }, { - "id": "src_cellpy_simple_gui_config_settings", - "label": "Settings", + "id": "src_cellpy_simple_gui_core_models_journalrowupdate", + "label": "JournalRowUpdate", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "settings", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L18" + "norm_label": "journalrowupdate", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L327" }, { - "id": "src_cellpy_simple_gui_core_library_library", - "label": "Library", + "id": "src_cellpy_simple_gui_config_settings", + "label": "Settings", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "library", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L103" + "norm_label": "settings", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L18" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt", @@ -1291,28 +1369,28 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls", - "label": "ls()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps", + "label": "ps()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 237, - "community_name": "ls", + "community_name": "ps", "file_type": "code", - "norm_label": "ls()", + "norm_label": "ps()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu", - "label": "nu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se", + "label": "se()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 239, + "community_name": "se", "file_type": "code", - "norm_label": "nu()", + "norm_label": "se()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1330,15 +1408,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en", - "label": "En()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr", + "label": "sr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 240, + "community_name": "sr", "file_type": "code", - "norm_label": "en()", + "norm_label": "sr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku", + "label": "Ku()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 241, + "community_name": ".evaluate", + "file_type": "code", + "norm_label": "ku()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_no", + "label": "no()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 241, + "community_name": ".evaluate", + "file_type": "code", + "norm_label": "no()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1348,23 +1452,49 @@ "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 246, - "community_name": "pu", + "community": 241, + "community_name": ".evaluate", "file_type": "code", "norm_label": "pu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa", - "label": "sa()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra", + "label": "Ra()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 248, - "community_name": ".constructor", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "sa()", + "norm_label": "ra()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh", + "label": "rh", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 241, + "community_name": ".evaluate", + "file_type": "code", + "norm_label": "rh", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en", + "label": "En()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 244, + "community_name": "En", + "file_type": "code", + "norm_label": "en()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1382,15 +1512,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku", - "label": "Ku()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja", + "label": "ja", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": "ku()", + "norm_label": "ja", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1407,6 +1537,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su", + "label": "su()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": "su()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu", "label": "tu", @@ -1466,35 +1609,22 @@ "_callable_class": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt", - "label": "gt()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 26, - "community_name": ".push", - "file_type": "code", - "norm_label": "gt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt", - "label": "yt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi", + "label": "yi()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 260, + "community_name": "yi", "file_type": "code", - "norm_label": "yt()", + "norm_label": "yi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1518,61 +1648,61 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "cn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d", - "label": "D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f", + "label": "f()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "d()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt", + "label": "gt()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "f()", + "norm_label": "gt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it", + "label": "it()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "h()", + "norm_label": "it()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it", - "label": "it()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt", + "label": "lt()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "it()", + "norm_label": "lt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1583,7 +1713,7 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "nt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -1596,7 +1726,7 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "ot()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -1609,7 +1739,7 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -1622,12 +1752,38 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt", + "label": "rt()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "rt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st", + "label": "St()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "st()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t", "label": "T()", @@ -1635,12 +1791,38 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt", + "label": "tt()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "tt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u", + "label": "u()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut", "label": "ut()", @@ -1648,7 +1830,7 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "ut()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -1661,7 +1843,7 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "vt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -1674,7 +1856,7 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -1687,12 +1869,38 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt", + "label": "yt()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "yt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa", + "label": "aa()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 274, + "community_name": "aa", + "file_type": "code", + "norm_label": "aa()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn", "label": "qn()", @@ -1713,7 +1921,7 @@ "_callable_class": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "saved", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -1726,7 +1934,7 @@ "_callable_class": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "uploadrejected", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -1772,17 +1980,17 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_cellrecord", - "label": "CellRecord", + "id": "src_cellpy_simple_gui_core_export_figureexporterror", + "label": "FigureExportError", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 3, - "community_name": "collect.py", + "community": 30, + "community_name": "CyclesPlotSpec", "file_type": "code", - "norm_label": "cellrecord", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L44" + "norm_label": "figureexporterror", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L51" }, { "id": "src_cellpy_simple_gui_core_models_cyclesplotspec", @@ -1790,12 +1998,25 @@ "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 3, - "community_name": "collect.py", + "community": 30, + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "cyclesplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L124" + "source_location": "L132" + }, + { + "id": "src_cellpy_simple_gui_core_models_dvaplotspec", + "label": "DvaPlotSpec", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "dvaplotspec", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L263" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wi", @@ -1823,6 +2044,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr", + "label": "yr()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 34, + "community_name": "yr", + "file_type": "code", + "norm_label": "yr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bs", "label": "bs()", @@ -1863,39 +2097,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl", - "label": "Hl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls", + "label": "ls()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "hl()", + "norm_label": "ls()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps", - "label": "ps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt", + "label": "Dt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 4, - "community_name": "ss", - "file_type": "code", - "norm_label": "ps()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt", - "label": "Dt()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", + "community": 40, + "community_name": "Dt", "file_type": "code", "norm_label": "dt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -1928,106 +2149,67 @@ "source_location": "L170" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka", - "label": "ka", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba", + "label": "ba", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": "ka", + "norm_label": "ba", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya", - "label": "ya", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma", + "label": "ma", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": "ya", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca", - "label": "ca()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": "ca()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga", - "label": "Ga()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": "ga()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja", - "label": "ja", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": "ja", + "norm_label": "ma", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma", - "label": "ma", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa", + "label": "sa()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "ca", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "ma", + "norm_label": "sa()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa", - "label": "pa()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa", + "label": "xa", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "ca", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "pa()", + "norm_label": "xa", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va", - "label": "va", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga", + "label": "Ga()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", - "norm_label": "va", + "norm_label": "ga()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2038,7 +2220,7 @@ "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": "wa()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -2051,7 +2233,7 @@ "_callable_class": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": "za()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -2064,7 +2246,7 @@ "_callable_class": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "_intercepthandler", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -2077,7 +2259,7 @@ "_callable_class": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "serverthread", "source_file": "src/cellpy_simple_gui/server.py", @@ -2122,6 +2304,58 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce", + "label": "ce()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "ce()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er", + "label": "er()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "er()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe", + "label": "fe()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "fe()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge", + "label": "ge()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "ge()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr", "label": "gr()", @@ -2136,15 +2370,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn", - "label": "hn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he", + "label": "he()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "hn()", + "norm_label": "he()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2175,41 +2409,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc", - "label": "Lc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr", + "label": "jr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "lc()", + "norm_label": "jr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt", - "label": "lt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr", + "label": "kr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "lt()", + "norm_label": "kr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me", - "label": "Me()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr", + "label": "mr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "me()", + "norm_label": "mr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2226,6 +2460,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe", + "label": "oe()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "oe()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or", "label": "or()", @@ -2253,15 +2500,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt", - "label": "qt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re", + "label": "re()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "qt()", + "norm_label": "re()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2279,41 +2526,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ru", - "label": "ru()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr", + "label": "tr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "ru()", + "norm_label": "tr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr", - "label": "tr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua", + "label": "ua()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "tr()", + "norm_label": "ua()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ts", - "label": "ts()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue", + "label": "ue()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "ts()", + "norm_label": "ue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2331,15 +2578,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn", - "label": "yn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr", + "label": "Wr()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "yn()", + "norm_label": "wr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr", + "label": "xr()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "xr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye", + "label": "ye()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "ye()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2356,6 +2629,32 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr", + "label": "zr()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "zr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn", + "label": "gn()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 51, + "community_name": ".reset", + "file_type": "code", + "norm_label": "gn()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi", "label": "vi()", @@ -2395,19 +2694,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa", - "label": "xa", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 55, - "community_name": "fa", - "file_type": "code", - "norm_label": "xa", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea", "label": "ea()", @@ -2473,19 +2759,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt", - "label": "jt()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": "jt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r", "label": "r()", @@ -2499,19 +2772,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st", - "label": "St()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": "st()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un", "label": "Un()", @@ -2525,32 +2785,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve", - "label": "ve()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": "ve()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn", - "label": "Tn()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": "tn()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr", "label": "vr()", @@ -2558,25 +2792,12 @@ "_callable_class": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": "vr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr", - "label": "yr()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": "yr()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "examples_mcp_server_refused", "label": "Refused", @@ -2584,7 +2805,7 @@ "_callable_class": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "refused", "source_file": "examples/mcp/server.py", @@ -2597,7 +2818,7 @@ "_callable_class": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "session", "source_file": "examples/mcp/server.py", @@ -2610,167 +2831,167 @@ "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", "norm_label": "an()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be", - "label": "Be()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn", + "label": "hn()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "be()", + "norm_label": "hn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er", - "label": "er()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln", + "label": "ln()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "er()", + "norm_label": "ln()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he", - "label": "he()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn", + "label": "nn()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "he()", + "norm_label": "nn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n", - "label": "N()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn", + "label": "sn()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "n()", + "norm_label": "sn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn", - "label": "nn()", + "id": "src_cellpy_simple_gui_core_library_library", + "label": "Library", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 6, - "community_name": "N", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "nn()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "library", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L118" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe", - "label": "qe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri", + "label": "ri()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 6, - "community_name": "N", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "qe()", + "norm_label": "ri()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn", - "label": "rn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti", + "label": "ti()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 6, - "community_name": "N", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "rn()", + "norm_label": "ti()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn", - "label": "sn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt", + "label": "jt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 6, - "community_name": "N", + "community": 64, + "community_name": ".concat", "file_type": "code", - "norm_label": "sn()", + "norm_label": "jt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se", - "label": "se()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt", + "label": "qt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 64, + "community_name": ".concat", "file_type": "code", - "norm_label": "se()", + "norm_label": "qt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr", - "label": "mr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn", + "label": "rn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 64, + "community_name": ".concat", "file_type": "code", - "norm_label": "mr()", + "norm_label": "rn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti", - "label": "ti()", + "id": "src_cellpy_simple_gui_core_projects_cellentry", + "label": "CellEntry", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "ti()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cellentry", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L50" }, { - "id": "src_cellpy_simple_gui_core_projects_cellentry", - "label": "CellEntry", + "id": "src_cellpy_simple_gui_core_projects_groupentry", + "label": "GroupEntry", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 65, "community_name": "core/projects.py", "file_type": "code", - "norm_label": "cellentry", + "norm_label": "groupentry", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L50" + "source_location": "L64" }, { "id": "src_cellpy_simple_gui_core_projects_projectmanifest", @@ -2783,7 +3004,7 @@ "file_type": "code", "norm_label": "projectmanifest", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L64" + "source_location": "L71" }, { "id": "src_cellpy_simple_gui_core_projects_projectsummary", @@ -2796,161 +3017,31 @@ "file_type": "code", "norm_label": "projectsummary", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L75" + "source_location": "L84" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_no", - "label": "no()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n", + "label": "N()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 66, - "community_name": "Ra", + "community_name": "N", "file_type": "code", - "norm_label": "no()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra", - "label": "Ra()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn", + "label": "yn()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 66, - "community_name": "Ra", - "file_type": "code", - "norm_label": "ra()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae", - "label": "ae()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "g", - "file_type": "code", - "norm_label": "ae()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce", - "label": "ce()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "g", - "file_type": "code", - "norm_label": "ce()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe", - "label": "fe()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "g", - "file_type": "code", - "norm_label": "fe()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr", - "label": "kr()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "g", - "file_type": "code", - "norm_label": "kr()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le", - "label": "Le()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "g", - "file_type": "code", - "norm_label": "le()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe", - "label": "oe()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "g", - "file_type": "code", - "norm_label": "oe()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re", - "label": "re()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "g", - "file_type": "code", - "norm_label": "re()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua", - "label": "ua()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "g", - "file_type": "code", - "norm_label": "ua()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue", - "label": "ue()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "g", - "file_type": "code", - "norm_label": "ue()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye", - "label": "ye()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 68, - "community_name": "g", + "community_name": "N", "file_type": "code", - "norm_label": "ye()", + "norm_label": "yn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2965,33 +3056,7 @@ "file_type": "code", "norm_label": "icaplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L235" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de", - "label": "de()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 72, - "community_name": "de", - "file_type": "code", - "norm_label": "de()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa", - "label": "aa()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 76, - "community_name": "ah", - "file_type": "code", - "norm_label": "aa()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "source_location": "L243" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah", @@ -3000,7 +3065,7 @@ "_callable_class": true, "_origin": "ast", "community": 76, - "community_name": "ah", + "community_name": ".populate", "file_type": "code", "norm_label": "ah", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -3013,7 +3078,7 @@ "_callable_class": true, "_origin": "ast", "community": 76, - "community_name": "ah", + "community_name": ".populate", "file_type": "code", "norm_label": "ih", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -3026,7 +3091,7 @@ "_callable_class": true, "_origin": "ast", "community": 76, - "community_name": "ah", + "community_name": ".populate", "file_type": "code", "norm_label": "nh", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -3046,67 +3111,67 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha", - "label": "ha()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn", + "label": "Tn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "ha()", + "norm_label": "tn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la", - "label": "la()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de", + "label": "de()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "la()", + "norm_label": "de()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa", - "label": "qa", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min", + "label": "$", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "qa", + "norm_label": "$", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min", - "label": "$", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kh", + "label": "kh", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "$", + "norm_label": "kh", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kh", - "label": "kh", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu", + "label": "nu()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "kh", + "norm_label": "nu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -3175,6 +3240,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi", + "label": "bi()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": "bi()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju", "label": "ju()", @@ -3182,7 +3260,7 @@ "_callable_class": true, "_origin": "ast", "community": 89, - "community_name": "ju", + "community_name": ".render", "file_type": "code", "norm_label": "ju()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -3199,46 +3277,7 @@ "file_type": "code", "norm_label": "summaryplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L89" - }, - { - "id": "src_cellpy_simple_gui_core_export_figureexporterror", - "label": "FigureExportError", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 90, - "community_name": "core/export.py", - "file_type": "code", - "norm_label": "figureexporterror", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L51" - }, - { - "id": "src_cellpy_simple_gui_core_models_dvaplotspec", - "label": "DvaPlotSpec", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 90, - "community_name": "core/export.py", - "file_type": "code", - "norm_label": "dvaplotspec", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L255" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi", - "label": "gi()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": "gi()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "source_location": "L97" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si", @@ -3254,17 +3293,16 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi", - "label": "yi()", + "id": "src_cellpy_simple_gui_api_app_asset_version", + "label": "_asset_version()", "_callable": true, - "_callable_class": true, "_origin": "ast", - "community": 94, - "community_name": "Si", + "community": 0, + "community_name": "get_library", "file_type": "code", - "norm_label": "yi()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_asset_version()", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L22" }, { "id": "src_cellpy_simple_gui_api_deps_guard_path", @@ -3324,7 +3362,7 @@ "file_type": "code", "norm_label": "clear()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L161" + "source_location": "L172" }, { "id": "src_cellpy_simple_gui_api_routers_cells_delete_cell", @@ -3336,7 +3374,7 @@ "file_type": "code", "norm_label": "delete_cell()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L155" + "source_location": "L166" }, { "id": "src_cellpy_simple_gui_api_routers_cells_get_state", @@ -3348,7 +3386,7 @@ "file_type": "code", "norm_label": "get_state()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L45" + "source_location": "L47" }, { "id": "src_cellpy_simple_gui_api_routers_cells_list_examples", @@ -3360,7 +3398,7 @@ "file_type": "code", "norm_label": "list_examples()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L37" + "source_location": "L39" }, { "id": "src_cellpy_simple_gui_api_routers_cells_load_example", @@ -3372,7 +3410,7 @@ "file_type": "code", "norm_label": "load_example()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L89" + "source_location": "L91" }, { "id": "src_cellpy_simple_gui_api_routers_cells_load_examples_job", @@ -3384,7 +3422,7 @@ "file_type": "code", "norm_label": "_load_examples_job()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L52" + "source_location": "L54" }, { "id": "src_cellpy_simple_gui_api_routers_cells_load_files", @@ -3396,7 +3434,7 @@ "file_type": "code", "norm_label": "load_files()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L117" + "source_location": "L119" }, { "id": "src_cellpy_simple_gui_api_routers_cells_load_files_job", @@ -3408,7 +3446,7 @@ "file_type": "code", "norm_label": "_load_files_job()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L69" + "source_location": "L71" }, { "id": "src_cellpy_simple_gui_api_routers_cells_preview_files", @@ -3420,7 +3458,19 @@ "file_type": "code", "norm_label": "preview_files()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L96" + "source_location": "L98" + }, + { + "id": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "label": "rename_group()", + "_callable": true, + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "rename_group()", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L151" }, { "id": "src_cellpy_simple_gui_api_routers_cells_select_all", @@ -3432,7 +3482,7 @@ "file_type": "code", "norm_label": "select_all()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L149" + "source_location": "L160" }, { "id": "src_cellpy_simple_gui_api_routers_cells_state", @@ -3444,7 +3494,7 @@ "file_type": "code", "norm_label": "_state()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L24" + "source_location": "L25" }, { "id": "src_cellpy_simple_gui_api_routers_cells_update_cell", @@ -3456,7 +3506,7 @@ "file_type": "code", "norm_label": "update_cell()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L129" + "source_location": "L131" }, { "id": "src_cellpy_simple_gui_api_routers_ingest_ingest", @@ -3506,18 +3556,6 @@ "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", "source_location": "L28" }, - { - "id": "src_cellpy_simple_gui_api_routers_ingest_list_instruments", - "label": "list_instruments()", - "_callable": true, - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "list_instruments()", - "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", - "source_location": "L19" - }, { "id": "src_cellpy_simple_gui_api_routers_jobs_job_cancel", "label": "job_cancel()", @@ -3612,7 +3650,7 @@ "file_type": "code", "norm_label": "load_journal()", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L181" + "source_location": "L184" }, { "id": "src_cellpy_simple_gui_api_routers_projects_load_journal_job", @@ -3711,674 +3749,674 @@ "source_location": "L23" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_explain_load_error", - "label": "explain_load_error()", + "id": "src_cellpy_simple_gui_core_files_effective_max_files", + "label": "effective_max_files()", "_callable": true, "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "code", - "norm_label": "explain_load_error()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L205" + "norm_label": "effective_max_files()", + "source_file": "src/cellpy_simple_gui/core/files.py", + "source_location": "L20" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", - "label": "load_journal_cells()", + "id": "src_cellpy_simple_gui_core_library_get_library", + "label": "get_library()", "_callable": true, "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "code", - "norm_label": "load_journal_cells()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L569" + "norm_label": "get_library()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L360" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells_progress", - "label": "_progress()", + "id": "tests_test_core_test_regular_mode_clamps_file_request", + "label": "test_regular_mode_clamps_file_request()", "_callable": true, "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "code", - "norm_label": "_progress()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L591" + "norm_label": "test_regular_mode_clamps_file_request()", + "source_file": "tests/test_core.py", + "source_location": "L1665" }, { - "id": "src_cellpy_simple_gui_core_files_effective_max_files", - "label": "effective_max_files()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_aborttile", + "label": ".abortTile()", "_callable": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": "effective_max_files()", - "source_file": "src/cellpy_simple_gui/core/files.py", - "source_location": "L20" + "norm_label": ".aborttile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_get_library", - "label": "get_library()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_c", + "label": "c()", "_callable": true, "_origin": "ast", - "community": 0, - "community_name": "get_library", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": "get_library()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L299" + "norm_label": "c()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at", - "label": "at()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "at()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_setvalue", - "label": ".setValue()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_flip", + "label": ".flip()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".setvalue()", + "norm_label": ".flip()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_addeventlistener", - "label": ".addEventListener()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".addeventlistener()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_j", - "label": "j()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_removetile", + "label": ".removeTile()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "j()", + "norm_label": ".removetile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_remove", - "label": ".remove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loadvectortile", + "label": ".loadVectorTile()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".remove()", + "norm_label": ".loadvectortile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_testprop", - "label": ".testProp()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_finish", + "label": "finish()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".testprop()", + "norm_label": "finish()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_b", - "label": "b()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setexpirydata", + "label": ".setExpiryData()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "b()", + "norm_label": ".setexpirydata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_substring", - "label": ".substring()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aborttile", + "label": ".abortTile()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".substring()", + "norm_label": ".aborttile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_trim", - "label": ".trim()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aftertileloadworkerresponse", + "label": "._afterTileLoadWorkerResponse()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".trim()", + "norm_label": "._aftertileloadworkerresponse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_a", - "label": "A()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_c", + "label": "c()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "a()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_b", - "label": "b()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "b()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_c", - "label": "C()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastile", + "label": ".hasTile()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "c()", + "norm_label": ".hastile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_e", - "label": "E()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "e()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loaded", + "label": ".loaded()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "g()", + "norm_label": ".loaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_i", - "label": "I()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "i()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_k", - "label": "k()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "k()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_m", - "label": "M()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "m()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_meterinmercatorcoordinateunits", - "label": ".meterInMercatorCoordinateUnits()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".meterinmercatorcoordinateunits()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_o", - "label": "O()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "o()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_v", + "label": "v()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "r()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_w", - "label": "w()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_from", + "label": ".from()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "w()", + "norm_label": ".from()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_z", - "label": "z()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_url", + "label": ".url()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": "z()", + "norm_label": ".url()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".bind()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_issizepoweroftwo", - "label": ".isSizePowerOfTwo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_addeventlistener", + "label": ".addEventListener()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".issizepoweroftwo()", + "norm_label": ".addeventlistener()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 10, - "community_name": "u", + "community_name": "o", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_createns", + "label": ".createNS()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".createns()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_j", + "label": "j()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "j()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_populatepaintarray", - "label": ".populatePaintArray()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": ".populatepaintarray()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_setpaintvalue", - "label": "._setPaintValue()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": "._setpaintvalue()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_setuniform", - "label": ".setUniform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_testprop", + "label": ".testProp()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": ".setuniform()", + "norm_label": ".testprop()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_updatepaintarray", - "label": ".updatePaintArray()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": ".updatepaintarray()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_upload", - "label": ".upload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_dispose", + "label": ".dispose()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": ".upload()", + "norm_label": ".dispose()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_prepare", - "label": ".prepare()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sendasync", + "label": "sendAsync()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": ".prepare()", + "norm_label": "sendasync()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_substring", + "label": ".substring()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": ".uploadpending()", + "norm_label": ".substring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", - "community": 100, - "community_name": "fo", + "community": 10, + "community_name": "o", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_defines", - "label": ".defines()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", - "norm_label": ".defines()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getbinderattributes", - "label": ".getBinderAttributes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", - "norm_label": ".getbinderattributes()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getbinderuniforms", - "label": ".getBinderUniforms()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_populatepaintarray", + "label": ".populatePaintArray()", "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", - "norm_label": ".getbinderuniforms()", + "norm_label": ".populatepaintarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getmaxvalue", - "label": ".getMaxValue()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_setpaintvalue", + "label": "._setPaintValue()", "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", - "norm_label": ".getmaxvalue()", + "norm_label": "._setpaintvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getuniforms", - "label": ".getUniforms()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_setuniform", + "label": ".setUniform()", "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", - "norm_label": ".getuniforms()", + "norm_label": ".setuniform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_setconstantpatternpositions", - "label": ".setConstantPatternPositions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_updatepaintarray", + "label": ".updatePaintArray()", "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", - "norm_label": ".setconstantpatternpositions()", + "norm_label": ".updatepaintarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_upload", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_upload", "label": ".upload()", "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_upload", - "label": ".upload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", - "norm_label": ".upload()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -4388,7 +4426,7 @@ "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", "norm_label": "jo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -4400,7 +4438,7 @@ "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -4412,7 +4450,7 @@ "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -4424,7 +4462,7 @@ "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", "norm_label": ".populatepaintarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -4436,7 +4474,7 @@ "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", "norm_label": "._setpaintvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -4448,7 +4486,7 @@ "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", "norm_label": ".updatepaintarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -4460,36 +4498,12 @@ "_callable": true, "_origin": "ast", "community": 100, - "community_name": "fo", + "community_name": "Do", "file_type": "code", "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "fo", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_setuniform", - "label": ".setUniform()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "fo", - "file_type": "code", - "norm_label": ".setuniform()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_app_api", "label": "api()", @@ -4610,6 +4624,18 @@ "source_file": "tests/test_gui_playwright.py", "source_location": "L230" }, + { + "id": "tests_test_gui_playwright_test_cells_modal_names_groups", + "label": "test_cells_modal_names_groups()", + "_callable": true, + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "code", + "norm_label": "test_cells_modal_names_groups()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L286" + }, { "id": "tests_test_gui_playwright_test_data_panel_collapses_after_load", "label": "test_data_panel_collapses_after_load()", @@ -4647,28 +4673,76 @@ "source_location": "L84" }, { - "id": "src_cellpy_simple_gui_core_collect_tidy_facet_annotations", - "label": "_tidy_facet_annotations()", + "id": "src_cellpy_simple_gui_core_collect_export_bytes", + "label": "export_bytes()", "_callable": true, "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": "_tidy_facet_annotations()", + "norm_label": "export_bytes()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1185" + "source_location": "L1481" }, { - "id": "tests_test_core_dev_mode", - "label": "dev_mode()", + "id": "src_cellpy_simple_gui_core_collect_export_frame_bytes", + "label": "export_frame_bytes()", "_callable": true, "_origin": "ast", - "community": 103, - "community_name": "test_core.py", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": "dev_mode()", - "source_file": "tests/test_core.py", - "source_location": "L1549" + "norm_label": "export_frame_bytes()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1464" + }, + { + "id": "src_cellpy_simple_gui_core_collect_select_ica_direction", + "label": "select_ica_direction()", + "_callable": true, + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "code", + "norm_label": "select_ica_direction()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L570" + }, + { + "id": "src_cellpy_simple_gui_core_collect_summary_collection", + "label": "summary_collection()", + "_callable": true, + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "code", + "norm_label": "summary_collection()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L484" + }, + { + "id": "src_cellpy_simple_gui_core_export_cycles_export", + "label": "cycles_export()", + "_callable": true, + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "code", + "norm_label": "cycles_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L80" + }, + { + "id": "src_cellpy_simple_gui_core_export_summary_export", + "label": "summary_export()", + "_callable": true, + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "code", + "norm_label": "summary_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L59" }, { "id": "tests_test_core_hover_variable", @@ -4704,7 +4778,7 @@ "file_type": "code", "norm_label": "_kaleido_available()", "source_file": "tests/test_core.py", - "source_location": "L1367" + "source_location": "L1449" }, { "id": "tests_test_core_numeric_y_values", @@ -4728,7 +4802,19 @@ "file_type": "code", "norm_label": "_rate_library()", "source_file": "tests/test_core.py", - "source_location": "L1419" + "source_location": "L1501" + }, + { + "id": "tests_test_core_spread_library", + "label": "_spread_library()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "_spread_library()", + "source_file": "tests/test_core.py", + "source_location": "L1151" }, { "id": "tests_test_core_summary_facet_titles_top_to_bottom", @@ -4740,7 +4826,7 @@ "file_type": "code", "norm_label": "_summary_facet_titles_top_to_bottom()", "source_file": "tests/test_core.py", - "source_location": "L1249" + "source_location": "L1331" }, { "id": "tests_test_core_test_apply_physical_meta_updates_and_summary", @@ -4776,7 +4862,7 @@ "file_type": "code", "norm_label": "test_cells_export_cellpy_and_xlsx()", "source_file": "tests/test_core.py", - "source_location": "L1432" + "source_location": "L1514" }, { "id": "tests_test_core_test_cells_export_csv_is_zip", @@ -4788,7 +4874,7 @@ "file_type": "code", "norm_label": "test_cells_export_csv_is_zip()", "source_file": "tests/test_core.py", - "source_location": "L1463" + "source_location": "L1545" }, { "id": "tests_test_core_test_cells_export_two_cells_zip", @@ -4800,7 +4886,7 @@ "file_type": "code", "norm_label": "test_cells_export_two_cells_zip()", "source_file": "tests/test_core.py", - "source_location": "L1444" + "source_location": "L1526" }, { "id": "tests_test_core_test_compress_ranges", @@ -4824,7 +4910,7 @@ "file_type": "code", "norm_label": "test_config_diagnostics_masks_credentialish_values()", "source_file": "tests/test_core.py", - "source_location": "L1495" + "source_location": "L1577" }, { "id": "tests_test_core_test_config_diagnostics_shape", @@ -4836,7 +4922,7 @@ "file_type": "code", "norm_label": "test_config_diagnostics_shape()", "source_file": "tests/test_core.py", - "source_location": "L1479" + "source_location": "L1561" }, { "id": "tests_test_core_test_config_diagnostics_survives_broken_provenance", @@ -4848,7 +4934,7 @@ "file_type": "code", "norm_label": "test_config_diagnostics_survives_broken_provenance()", "source_file": "tests/test_core.py", - "source_location": "L1532" + "source_location": "L1614" }, { "id": "tests_test_core_test_config_diagnostics_warns_on_legacy_fallback", @@ -4860,7 +4946,7 @@ "file_type": "code", "norm_label": "test_config_diagnostics_warns_on_legacy_fallback()", "source_file": "tests/test_core.py", - "source_location": "L1513" + "source_location": "L1595" }, { "id": "tests_test_core_test_curated_plot_types_unaffected", @@ -4872,19 +4958,19 @@ "file_type": "code", "norm_label": "test_curated_plot_types_unaffected()", "source_file": "tests/test_core.py", - "source_location": "L1685" + "source_location": "L1767" }, { - "id": "tests_test_core_test_cycle_info_figure", - "label": "test_cycle_info_figure()", + "id": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", + "label": "test_cv_split_and_fullcell_families_are_plottable()", "_callable": true, "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "code", - "norm_label": "test_cycle_info_figure()", + "norm_label": "test_cv_split_and_fullcell_families_are_plottable()", "source_file": "tests/test_core.py", - "source_location": "L1845" + "source_location": "L1730" }, { "id": "tests_test_core_test_cycle_info_needs_cycles", @@ -4896,7 +4982,7 @@ "file_type": "code", "norm_label": "test_cycle_info_needs_cycles()", "source_file": "tests/test_core.py", - "source_location": "L1856" + "source_location": "L1938" }, { "id": "tests_test_core_test_cycles_collector_layouts", @@ -4932,7 +5018,7 @@ "file_type": "code", "norm_label": "test_cycles_export_csv()", "source_file": "tests/test_core.py", - "source_location": "L1360" + "source_location": "L1442" }, { "id": "tests_test_core_test_cycles_export_follows_curve_kind", @@ -5040,7 +5126,7 @@ "file_type": "code", "norm_label": "test_dev_mode_off_by_default()", "source_file": "tests/test_core.py", - "source_location": "L1559" + "source_location": "L1641" }, { "id": "tests_test_core_test_dev_mode_raises_file_ceiling", @@ -5052,7 +5138,7 @@ "file_type": "code", "norm_label": "test_dev_mode_raises_file_ceiling()", "source_file": "tests/test_core.py", - "source_location": "L1572" + "source_location": "L1654" }, { "id": "tests_test_core_test_dva_both_distinguishes_half_cycles", @@ -5064,7 +5150,7 @@ "file_type": "code", "norm_label": "test_dva_both_distinguishes_half_cycles()", "source_file": "tests/test_core.py", - "source_location": "L1712" + "source_location": "L1794" }, { "id": "tests_test_core_test_dva_collection_spans_cells", @@ -5076,7 +5162,7 @@ "file_type": "code", "norm_label": "test_dva_collection_spans_cells()", "source_file": "tests/test_core.py", - "source_location": "L1729" + "source_location": "L1811" }, { "id": "tests_test_core_test_dva_export_matches_chart", @@ -5088,7 +5174,7 @@ "file_type": "code", "norm_label": "test_dva_export_matches_chart()", "source_file": "tests/test_core.py", - "source_location": "L1751" + "source_location": "L1833" }, { "id": "tests_test_core_test_dva_figure_directions", @@ -5100,7 +5186,7 @@ "file_type": "code", "norm_label": "test_dva_figure_directions()", "source_file": "tests/test_core.py", - "source_location": "L1697" + "source_location": "L1779" }, { "id": "tests_test_core_test_dva_figure_needs_cycles", @@ -5112,7 +5198,7 @@ "file_type": "code", "norm_label": "test_dva_figure_needs_cycles()", "source_file": "tests/test_core.py", - "source_location": "L1742" + "source_location": "L1824" }, { "id": "tests_test_core_test_family_options_carry_cv_split", @@ -5124,7 +5210,7 @@ "file_type": "code", "norm_label": "test_family_options_carry_cv_split()", "source_file": "tests/test_core.py", - "source_location": "L1675" + "source_location": "L1757" }, { "id": "tests_test_core_test_family_plot_type_renders", @@ -5136,7 +5222,7 @@ "file_type": "code", "norm_label": "test_family_plot_type_renders()", "source_file": "tests/test_core.py", - "source_location": "L1614" + "source_location": "L1696" }, { "id": "tests_test_core_test_figure_export_names_the_actual_missing_piece", @@ -5148,7 +5234,7 @@ "file_type": "code", "norm_label": "test_figure_export_names_the_actual_missing_piece()", "source_file": "tests/test_core.py", - "source_location": "L1401" + "source_location": "L1483" }, { "id": "tests_test_core_test_figure_export_names_the_actual_missing_piece_boom", @@ -5160,7 +5246,7 @@ "file_type": "code", "norm_label": "boom()", "source_file": "tests/test_core.py", - "source_location": "L1406" + "source_location": "L1488" }, { "id": "tests_test_core_test_figure_export_unknown_format_raises", @@ -5172,7 +5258,43 @@ "file_type": "code", "norm_label": "test_figure_export_unknown_format_raises()", "source_file": "tests/test_core.py", - "source_location": "L1384" + "source_location": "L1466" + }, + { + "id": "tests_test_core_test_group_average_singleton_traces_on_correct_facet", + "label": "test_group_average_singleton_traces_on_correct_facet()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_group_average_singleton_traces_on_correct_facet()", + "source_file": "tests/test_core.py", + "source_location": "L648" + }, + { + "id": "tests_test_core_test_group_names_caption_ungrouped_legend", + "label": "test_group_names_caption_ungrouped_legend()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_group_names_caption_ungrouped_legend()", + "source_file": "tests/test_core.py", + "source_location": "L1294" + }, + { + "id": "tests_test_core_test_group_names_reach_grouped_legend", + "label": "test_group_names_reach_grouped_legend()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_group_names_reach_grouped_legend()", + "source_file": "tests/test_core.py", + "source_location": "L1278" }, { "id": "tests_test_core_test_ica_figure_charge_differs_from_discharge", @@ -5234,6 +5356,18 @@ "source_file": "tests/test_core.py", "source_location": "L73" }, + { + "id": "tests_test_core_test_library_group_names", + "label": "test_library_group_names()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_library_group_names()", + "source_file": "tests/test_core.py", + "source_location": "L1243" + }, { "id": "tests_test_core_test_list_instruments_dynamic", "label": "test_list_instruments_dynamic()", @@ -5256,7 +5390,7 @@ "file_type": "code", "norm_label": "test_meta_edit_falls_back_without_refresh_after()", "source_file": "tests/test_core.py", - "source_location": "L1900" + "source_location": "L1982" }, { "id": "tests_test_core_test_meta_edit_uses_selective_refresh", @@ -5268,7 +5402,19 @@ "file_type": "code", "norm_label": "test_meta_edit_uses_selective_refresh()", "source_file": "tests/test_core.py", - "source_location": "L1875" + "source_location": "L1957" + }, + { + "id": "tests_test_core_test_non_spread_hover_is_left_to_cellpy", + "label": "test_non_spread_hover_is_left_to_cellpy()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_non_spread_hover_is_left_to_cellpy()", + "source_file": "tests/test_core.py", + "source_location": "L918" }, { "id": "tests_test_core_test_plot_type_renders_end_voltages", @@ -5292,7 +5438,7 @@ "file_type": "code", "norm_label": "test_raw_figure_plot_types()", "source_file": "tests/test_core.py", - "source_location": "L1834" + "source_location": "L1916" }, { "id": "tests_test_core_test_read_meta", @@ -5316,7 +5462,7 @@ "file_type": "code", "norm_label": "test_registry_menu_holds_only_summary_families()", "source_file": "tests/test_core.py", - "source_location": "L1641" + "source_location": "L1723" }, { "id": "tests_test_core_test_registry_plot_types_mark_availability", @@ -5328,7 +5474,7 @@ "file_type": "code", "norm_label": "test_registry_plot_types_mark_availability()", "source_file": "tests/test_core.py", - "source_location": "L1597" + "source_location": "L1679" }, { "id": "tests_test_core_test_registry_plot_types_without_cells_says_so", @@ -5340,19 +5486,7 @@ "file_type": "code", "norm_label": "test_registry_plot_types_without_cells_says_so()", "source_file": "tests/test_core.py", - "source_location": "L1772" - }, - { - "id": "tests_test_core_test_regular_mode_clamps_file_request", - "label": "test_regular_mode_clamps_file_request()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_regular_mode_clamps_file_request()", - "source_file": "tests/test_core.py", - "source_location": "L1583" + "source_location": "L1854" }, { "id": "tests_test_core_test_select_ica_direction_for_export", @@ -5426,6 +5560,18 @@ "source_file": "tests/test_core.py", "source_location": "L839" }, + { + "id": "tests_test_core_test_spread_traces_keep_useful_hover", + "label": "test_spread_traces_keep_useful_hover()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_spread_traces_keep_useful_hover()", + "source_file": "tests/test_core.py", + "source_location": "L876" + }, { "id": "tests_test_core_test_summary_capacity_ce_facet_order_stable", "label": "test_summary_capacity_ce_facet_order_stable()", @@ -5436,7 +5582,7 @@ "file_type": "code", "norm_label": "test_summary_capacity_ce_facet_order_stable()", "source_file": "tests/test_core.py", - "source_location": "L1264" + "source_location": "L1346" }, { "id": "tests_test_core_test_summary_columns_for_types", @@ -5472,7 +5618,7 @@ "file_type": "code", "norm_label": "test_summary_export_all_formats()", "source_file": "tests/test_core.py", - "source_location": "L1351" + "source_location": "L1433" }, { "id": "tests_test_core_test_summary_figure_ce_outlier_does_not_crush_capacity", @@ -5484,7 +5630,19 @@ "file_type": "code", "norm_label": "test_summary_figure_ce_outlier_does_not_crush_capacity()", "source_file": "tests/test_core.py", - "source_location": "L1317" + "source_location": "L1399" + }, + { + "id": "tests_test_core_test_summary_figure_dark_theme", + "label": "test_summary_figure_dark_theme()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_summary_figure_dark_theme()", + "source_file": "tests/test_core.py", + "source_location": "L804" }, { "id": "tests_test_core_test_summary_figure_empty", @@ -5511,16 +5669,28 @@ "source_location": "L972" }, { - "id": "tests_test_core_test_summary_figure_pretty_axis_labels", - "label": "test_summary_figure_pretty_axis_labels()", + "id": "tests_test_core_test_summary_figure_long_cell_names_shorten_legend", + "label": "test_summary_figure_long_cell_names_shorten_legend()", "_callable": true, "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "code", - "norm_label": "test_summary_figure_pretty_axis_labels()", + "norm_label": "test_summary_figure_long_cell_names_shorten_legend()", "source_file": "tests/test_core.py", - "source_location": "L707" + "source_location": "L734" + }, + { + "id": "tests_test_core_test_summary_figure_safe_color_scheme", + "label": "test_summary_figure_safe_color_scheme()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_summary_figure_safe_color_scheme()", + "source_file": "tests/test_core.py", + "source_location": "L817" }, { "id": "tests_test_core_test_summary_figure_share_y_matches_axes", @@ -5544,7 +5714,19 @@ "file_type": "code", "norm_label": "test_summary_figure_share_y_with_group_avg_and_spread()", "source_file": "tests/test_core.py", - "source_location": "L1290" + "source_location": "L1372" + }, + { + "id": "tests_test_core_test_summary_figure_short_names_unchanged", + "label": "test_summary_figure_short_names_unchanged()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_summary_figure_short_names_unchanged()", + "source_file": "tests/test_core.py", + "source_location": "L764" }, { "id": "tests_test_core_test_summary_figure_via_plotting", @@ -5558,6 +5740,18 @@ "source_file": "tests/test_core.py", "source_location": "L138" }, + { + "id": "tests_test_core_test_summary_figure_y_ranges_apply_with_group_avg_and_spread", + "label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", + "source_file": "tests/test_core.py", + "source_location": "L1180" + }, { "id": "tests_test_core_test_summary_figure_y_ranges_charge_on_multipart_group_avg", "label": "test_summary_figure_y_ranges_charge_on_multipart_group_avg()", @@ -5594,6 +5788,18 @@ "source_file": "tests/test_core.py", "source_location": "L1063" }, + { + "id": "tests_test_core_test_summary_figure_y_ranges_one_sided_with_spread", + "label": "test_summary_figure_y_ranges_one_sided_with_spread()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_summary_figure_y_ranges_one_sided_with_spread()", + "source_file": "tests/test_core.py", + "source_location": "L1217" + }, { "id": "tests_test_core_test_summary_figure_y_ranges_sets_panel_limits", "label": "test_summary_figure_y_ranges_sets_panel_limits()", @@ -5640,7 +5846,7 @@ "file_type": "code", "norm_label": "test_summary_schema_unions_across_cells()", "source_file": "tests/test_core.py", - "source_location": "L1786" + "source_location": "L1868" }, { "id": "tests_test_core_test_summary_schema_unions_across_cells_schema", @@ -5652,7 +5858,19 @@ "file_type": "code", "norm_label": "schema()", "source_file": "tests/test_core.py", - "source_location": "L1794" + "source_location": "L1876" + }, + { + "id": "tests_test_core_test_unavailable_family_explains_itself", + "label": "test_unavailable_family_explains_itself()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_unavailable_family_explains_itself()", + "source_file": "tests/test_core.py", + "source_location": "L1707" }, { "id": "tests_test_core_xaxis_title", @@ -5679,40 +5897,40 @@ "source_location": "L1008" }, { - "id": "tests_test_core_yaxis_for_variable", - "label": "_yaxis_for_variable()", + "id": "tests_test_core_yaxis_for_title_text", + "label": "_yaxis_for_title_text()", "_callable": true, "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "code", - "norm_label": "_yaxis_for_variable()", + "norm_label": "_yaxis_for_title_text()", "source_file": "tests/test_core.py", - "source_location": "L998" + "source_location": "L1167" }, { - "id": "tests_test_core_yaxis_matches", - "label": "_yaxis_matches()", + "id": "tests_test_core_yaxis_for_variable", + "label": "_yaxis_for_variable()", "_callable": true, "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "code", - "norm_label": "_yaxis_matches()", + "norm_label": "_yaxis_for_variable()", "source_file": "tests/test_core.py", - "source_location": "L931" + "source_location": "L998" }, { - "id": "tests_test_core_yaxis_titles", - "label": "_yaxis_titles()", + "id": "tests_test_core_yaxis_matches", + "label": "_yaxis_matches()", "_callable": true, "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "code", - "norm_label": "_yaxis_titles()", + "norm_label": "_yaxis_matches()", "source_file": "tests/test_core.py", - "source_location": "L694" + "source_location": "L931" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_enableattributes", @@ -5888,7 +6106,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "_clean_axis_range()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -5900,7 +6118,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "_one()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -5912,11 +6130,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "._unique_sorted()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L176" + "source_location": "L184" }, { "id": "src_cellpy_simple_gui_core_models_compareplotspec_bounded_curves", @@ -5924,11 +6142,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "._bounded_curves()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L212" + "source_location": "L220" }, { "id": "src_cellpy_simple_gui_core_models_compareplotspec_clean_xy_range", @@ -5936,11 +6154,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L207" + "source_location": "L215" }, { "id": "src_cellpy_simple_gui_core_models_cyclesplotspec_clean_xy_range", @@ -5948,11 +6166,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L154" + "source_location": "L162" }, { "id": "src_cellpy_simple_gui_core_models_icaplotspec_clean_xy_range", @@ -5960,11 +6178,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L251" + "source_location": "L259" }, { "id": "src_cellpy_simple_gui_core_models_rawplotspec_clean_xy_range", @@ -5972,11 +6190,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L285" + "source_location": "L293" }, { "id": "src_cellpy_simple_gui_core_models_summaryplotspec_clean_y_ranges", @@ -5984,11 +6202,23 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "._clean_y_ranges()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L113" + "source_location": "L121" + }, + { + "id": "tests_test_core_test_cycle_info_figure", + "label": "test_cycle_info_figure()", + "_callable": true, + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "code", + "norm_label": "test_cycle_info_figure()", + "source_file": "tests/test_core.py", + "source_location": "L1927" }, { "id": "tests_test_core_test_raw_figure_is_downsampled_for_transport", @@ -5996,93 +6226,129 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "test_raw_figure_is_downsampled_for_transport()", "source_file": "tests/test_core.py", - "source_location": "L1811" + "source_location": "L1893" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_backfillborder", - "label": ".backfillBorder()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 106, - "community_name": "rh", + "community_name": "fo", "file_type": "code", - "norm_label": ".backfillborder()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_prepare", + "label": ".prepare()", "_callable": true, "_origin": "ast", "community": 106, - "community_name": "rh", + "community_name": "fo", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".prepare()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_uploadpending", + "label": ".uploadPending()", "_callable": true, "_origin": "ast", "community": 106, - "community_name": "rh", + "community_name": "fo", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".uploadpending()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getpixels", - "label": ".getPixels()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_defines", + "label": ".defines()", "_callable": true, "_origin": "ast", "community": 106, - "community_name": "rh", + "community_name": "fo", "file_type": "code", - "norm_label": ".getpixels()", + "norm_label": ".defines()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getunpackvector", - "label": ".getUnpackVector()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getbinderattributes", + "label": ".getBinderAttributes()", "_callable": true, "_origin": "ast", "community": 106, - "community_name": "rh", + "community_name": "fo", "file_type": "code", - "norm_label": ".getunpackvector()", + "norm_label": ".getbinderattributes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_idx", - "label": "._idx()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getbinderuniforms", + "label": ".getBinderUniforms()", "_callable": true, "_origin": "ast", "community": 106, - "community_name": "rh", + "community_name": "fo", "file_type": "code", - "norm_label": "._idx()", + "norm_label": ".getbinderuniforms()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_unpack", - "label": ".unpack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getuniforms", + "label": ".getUniforms()", "_callable": true, "_origin": "ast", "community": 106, - "community_name": "rh", + "community_name": "fo", "file_type": "code", - "norm_label": ".unpack()", + "norm_label": ".getuniforms()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_setconstantpatternpositions", + "label": ".setConstantPatternPositions()", + "_callable": true, + "_origin": "ast", + "community": 106, + "community_name": "fo", + "file_type": "code", + "norm_label": ".setconstantpatternpositions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_upload", + "label": ".upload()", + "_callable": true, + "_origin": "ast", + "community": 106, + "community_name": "fo", + "file_type": "code", + "norm_label": ".upload()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_upload", + "label": ".upload()", + "_callable": true, + "_origin": "ast", + "community": 106, + "community_name": "fo", + "file_type": "code", + "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -6092,107 +6358,119 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "cycle_numbers()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L545" }, { - "id": "src_cellpy_simple_gui_core_collect_cycle_info_figure_json", - "label": "cycle_info_figure_json()", + "id": "src_cellpy_simple_gui_core_collect_batch", + "label": "_batch()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", - "norm_label": "cycle_info_figure_json()", + "norm_label": "_batch()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L947" + "source_location": "L85" }, { - "id": "src_cellpy_simple_gui_core_collect_empty_figure_json", - "label": "_empty_figure_json()", + "id": "src_cellpy_simple_gui_core_collect_batch_keys", + "label": "batch_keys()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", - "norm_label": "_empty_figure_json()", + "norm_label": "batch_keys()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1101" + "source_location": "L65" }, { - "id": "src_cellpy_simple_gui_core_collect_figure_json", - "label": "figure_json()", + "id": "src_cellpy_simple_gui_core_collect_cycle_info_figure_json", + "label": "cycle_info_figure_json()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", - "norm_label": "figure_json()", + "norm_label": "cycle_info_figure_json()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L851" + "source_location": "L971" }, { - "id": "src_cellpy_simple_gui_core_collect_overlay_facets", - "label": "_overlay_facets()", + "id": "src_cellpy_simple_gui_core_collect_cycles_collection", + "label": "cycles_collection()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", - "norm_label": "_overlay_facets()", + "norm_label": "cycles_collection()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1264" + "source_location": "L517" }, { - "id": "src_cellpy_simple_gui_core_collect_present_cycle_pairs", - "label": "present_cycle_pairs()", + "id": "src_cellpy_simple_gui_core_collect_dva_collection", + "label": "dva_collection()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", - "norm_label": "present_cycle_pairs()", + "norm_label": "dva_collection()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L613" + "source_location": "L551" }, { - "id": "src_cellpy_simple_gui_core_collect_restrict_to_cycle_pairs", - "label": "restrict_to_cycle_pairs()", + "id": "src_cellpy_simple_gui_core_collect_empty_figure_json", + "label": "_empty_figure_json()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", - "norm_label": "restrict_to_cycle_pairs()", + "norm_label": "_empty_figure_json()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L578" + "source_location": "L1125" }, { - "id": "src_cellpy_simple_gui_core_collect_stamp_warnings", - "label": "_stamp_warnings()", + "id": "src_cellpy_simple_gui_core_collect_group_titles", + "label": "group_titles()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", - "norm_label": "_stamp_warnings()", + "norm_label": "group_titles()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L901" + "source_location": "L100" }, { - "id": "src_cellpy_simple_gui_core_collect_trace_cell_label", - "label": "_trace_cell_label()", + "id": "src_cellpy_simple_gui_core_collect_present_cycle_pairs", + "label": "present_cycle_pairs()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", - "norm_label": "_trace_cell_label()", + "norm_label": "present_cycle_pairs()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L634" + }, + { + "id": "src_cellpy_simple_gui_core_collect_restrict_to_cycle_pairs", + "label": "restrict_to_cycle_pairs()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": "restrict_to_cycle_pairs()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1205" + "source_location": "L599" }, { "id": "src_cellpy_simple_gui_core_cycle_report_build_reports", @@ -6200,7 +6478,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "build_reports()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -6212,7 +6490,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "compress_ranges()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -6224,7 +6502,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": ".__bool__()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -6236,7 +6514,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": ".dropped()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -6248,7 +6526,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": ".message()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -6260,7 +6538,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "messages()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -6272,7 +6550,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "_plural()", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -6284,7 +6562,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "compare_export()", "source_file": "src/cellpy_simple_gui/core/export.py", @@ -6296,23 +6574,71 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "compare_figure_export()", "source_file": "src/cellpy_simple_gui/core/export.py", "source_location": "L128" }, + { + "id": "src_cellpy_simple_gui_core_library_cellrecord_color", + "label": ".color()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": ".color()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L83" + }, + { + "id": "src_cellpy_simple_gui_core_library_cellrecord_group_name", + "label": ".group_name()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": ".group_name()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L86" + }, + { + "id": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", + "label": ".to_meta()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": ".to_meta()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L90" + }, + { + "id": "src_cellpy_simple_gui_core_library_default_group_label", + "label": "default_group_label()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": "default_group_label()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L30" + }, { "id": "src_cellpy_simple_gui_core_models_compareplotspec_pairs", "label": ".pairs()", "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": ".pairs()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L230" + "source_location": "L238" }, { "id": "src_cellpy_simple_gui_core_plotting_compare_collection", @@ -6320,11 +6646,11 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "compare_collection()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L219" + "source_location": "L222" }, { "id": "src_cellpy_simple_gui_core_plotting_compare_figure", @@ -6332,11 +6658,11 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "compare_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L264" + "source_location": "L267" }, { "id": "src_cellpy_simple_gui_core_plotting_cycle_availability", @@ -6344,11 +6670,11 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "_cycle_availability()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L97" + "source_location": "L99" }, { "id": "src_cellpy_simple_gui_core_plotting_cycle_info_figure", @@ -6356,11 +6682,11 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "cycle_info_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L308" + "source_location": "L311" }, { "id": "src_cellpy_simple_gui_core_plotting_cycles_figure", @@ -6368,11 +6694,11 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "cycles_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L162" + "source_location": "L164" }, { "id": "src_cellpy_simple_gui_core_plotting_dva_figure", @@ -6380,11 +6706,11 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "dva_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L324" + "source_location": "L327" }, { "id": "src_cellpy_simple_gui_core_plotting_guard_no_cycles", @@ -6392,11 +6718,11 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "_guard_no_cycles()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L136" + "source_location": "L138" }, { "id": "src_cellpy_simple_gui_core_plotting_ica_figure", @@ -6404,11 +6730,11 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "ica_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L352" + "source_location": "L355" }, { "id": "src_cellpy_simple_gui_core_plotting_nothing_to_draw_json", @@ -6416,11 +6742,23 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "_nothing_to_draw_json()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L109" + "source_location": "L111" + }, + { + "id": "src_cellpy_simple_gui_core_plotting_raw_figure", + "label": "raw_figure()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": "raw_figure()", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L298" }, { "id": "src_cellpy_simple_gui_core_plotting_single_cell_reports", @@ -6428,11 +6766,11 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "_single_cell_reports()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L118" + "source_location": "L120" }, { "id": "tests_test_core_test_build_reports_splits_missing_from_unreadable", @@ -6440,7 +6778,7 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "test_build_reports_splits_missing_from_unreadable()", "source_file": "tests/test_core.py", @@ -6452,57 +6790,57 @@ "_callable": true, "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "data()", "source_file": "tests/test_core.py", - "source_location": "L1790" + "source_location": "L1872" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_populatepaintarrays", + "label": ".populatePaintArrays()", "_callable": true, "_origin": "ast", "community": 108, "community_name": "ro", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".populatepaintarrays()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 108, "community_name": "ro", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 108, "community_name": "ro", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_populatepaintarrays", - "label": ".populatePaintArrays()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", "community": 108, "community_name": "ro", "file_type": "code", - "norm_label": ".populatepaintarrays()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -6807,134 +7145,134 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_updatedata", + "label": ".updateData()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": "a()", + "norm_label": ".updatedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_transform", + "label": ".transform()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".transform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_createobject", - "label": "._createObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": "._createobject()", + "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeallobjects", - "label": ".freeAllObjects()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": ".freeallobjects()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeobject", - "label": ".freeObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": ".freeobject()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getobjectforid", - "label": ".getObjectForId()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": ".getobjectforid()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getorcreatefreeobject", - "label": ".getOrCreateFreeObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": ".getorcreatefreeobject()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_isfull", - "label": ".isFull()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_register", + "label": ".register()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": ".isfull()", + "norm_label": ".register()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": "r()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_stampobject", - "label": ".stampObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", "community": 110, - "community_name": "ri", + "community_name": "qr", "file_type": "code", - "norm_label": ".stampobject()", + "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_useobject", - "label": ".useObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_constructor", + "label": "constructor()", "_callable": true, "_origin": "ast", - "community": 110, - "community_name": "ri", + "community": 112, + "community_name": ".fire", "file_type": "code", - "norm_label": ".useobject()", + "norm_label": "constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -6944,21 +7282,57 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": "_createbutton()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousemovewindow", - "label": ".mousemoveWindow()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_fire", + "label": ".fire()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", - "norm_label": ".mousemovewindow()", + "norm_label": ".fire()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_listens", + "label": ".listens()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".listens()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_enable", + "label": ".enable()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".enable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -6968,7 +7342,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -6980,7 +7354,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -6992,7 +7366,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": "._setupui()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7004,7 +7378,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".create()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7016,19 +7390,67 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".settransform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_addclassname", + "label": ".addClassName()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".addclassname()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_addto", + "label": ".addTo()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".addto()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_add", + "label": ".add()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".add()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_clearwatch", "label": "._clearWatch()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": "._clearwatch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7040,7 +7462,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7052,7 +7474,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".interpolate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7064,7 +7486,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7076,7 +7498,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7088,7 +7510,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": "._seterrorstate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7100,7 +7522,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".trigger()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7112,83 +7534,227 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": "._updatecircleradius()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_convert", + "label": ".convert()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".convert()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_distanceto", "label": ".distanceTo()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".distanceto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_toarray", + "label": ".toArray()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".toarray()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_tostring", + "label": ".toString()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".tostring()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_h", "label": "h()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmaxbounds", + "label": "setMaxBounds()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": "setmaxbounds()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_setupui", + "label": "._setupUI()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": "._setupui()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getnortheast", "label": ".getNorthEast()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".create", + "community_name": ".fire", "file_type": "code", "norm_label": ".getnortheast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_prototype", - "label": "prototype()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_addclassname", + "label": ".addClassName()", + "_callable": true, + "_origin": "ast", + "community": 112, + "community_name": ".fire", + "file_type": "code", + "norm_label": ".addclassname()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 114, - "community_name": "test_mcp_prototype.py", + "community_name": "la", "file_type": "code", - "norm_label": "prototype()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L32" + "norm_label": ".get()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy", - "label": "test_describe_api_will_not_import_outside_cellpy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 114, - "community_name": "test_mcp_prototype.py", + "community_name": "la", "file_type": "code", - "norm_label": "test_describe_api_will_not_import_outside_cellpy()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L275" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 114, - "community_name": "test_mcp_prototype.py", + "community_name": "la", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L283" + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplaceback", + "label": ".emplaceBack()", + "_callable": true, + "_origin": "ast", + "community": 114, + "community_name": "la", + "file_type": "code", + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_refreshviews", + "label": "._refreshViews()", + "_callable": true, + "_origin": "ast", + "community": 114, + "community_name": "la", + "file_type": "code", + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textanchor", + "label": ".textAnchor()", + "_callable": true, + "_origin": "ast", + "community": 114, + "community_name": "la", + "file_type": "code", + "norm_label": ".textanchor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset0", + "label": ".textOffset0()", + "_callable": true, + "_origin": "ast", + "community": 114, + "community_name": "la", + "file_type": "code", + "norm_label": ".textoffset0()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset1", + "label": ".textOffset1()", + "_callable": true, + "_origin": "ast", + "community": 114, + "community_name": "la", + "file_type": "code", + "norm_label": ".textoffset1()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "tools_gen_llms_txt_describe_guide", @@ -7274,6 +7840,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coveringzoomlevel", + "label": ".coveringZoomLevel()", + "_callable": true, + "_origin": "ast", + "community": 119, + "community_name": "Mn", + "file_type": "code", + "norm_label": ".coveringzoomlevel()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_clone", "label": ".clone()", @@ -7358,162 +7936,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmaxbounds", - "label": "setMaxBounds()", - "_callable": true, - "_origin": "ast", - "community": 119, - "community_name": "Mn", - "file_type": "code", - "norm_label": "setmaxbounds()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "tests_test_api_add_cells_modal_html", - "label": "_add_cells_modal_html()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "_add_cells_modal_html()", - "source_file": "tests/test_api.py", - "source_location": "L585" - }, - { - "id": "tests_test_api_component_names", - "label": "_component_names()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "_component_names()", - "source_file": "tests/test_api.py", - "source_location": "L523" - }, - { - "id": "tests_test_api_default_visible_hints", - "label": "_default_visible_hints()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "_default_visible_hints()", - "source_file": "tests/test_api.py", - "source_location": "L604" - }, - { - "id": "tests_test_api_default_visible_hints_handle_endtag", - "label": "handle_endtag()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "handle_endtag()", - "source_file": "tests/test_api.py", - "source_location": "L636" - }, - { - "id": "tests_test_api_default_visible_hints_handle_starttag", - "label": "handle_starttag()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "handle_starttag()", - "source_file": "tests/test_api.py", - "source_location": "L622" - }, - { - "id": "tests_test_api_default_visible_hints_init", - "label": "__init__()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "__init__()", - "source_file": "tests/test_api.py", - "source_location": "L616" - }, - { - "id": "tests_test_api_dva_spec", - "label": "_dva_spec()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "_dva_spec()", - "source_file": "tests/test_api.py", - "source_location": "L297" - }, - { - "id": "tests_test_api_free_identifiers", - "label": "_free_identifiers()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "_free_identifiers()", - "source_file": "tests/test_api.py", - "source_location": "L539" - }, - { - "id": "tests_test_api_template_html", - "label": "_template_html()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "_template_html()", - "source_file": "tests/test_api.py", - "source_location": "L517" - }, - { - "id": "tests_test_api_test_add_cells_modal_has_one_primary_action", - "label": "test_add_cells_modal_has_one_primary_action()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_add_cells_modal_has_one_primary_action()", - "source_file": "tests/test_api.py", - "source_location": "L592" - }, - { - "id": "tests_test_api_test_api_works_without_pywebview", - "label": "test_api_works_without_pywebview()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_api_works_without_pywebview()", - "source_file": "tests/test_api.py", - "source_location": "L680" - }, - { - "id": "tests_test_api_test_app_js_parses", - "label": "test_app_js_parses()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_app_js_parses()", - "source_file": "tests/test_api.py", - "source_location": "L453" - }, { "id": "tests_test_api_test_branding_static_assets", "label": "test_branding_static_assets()", @@ -7526,42 +7948,6 @@ "source_file": "tests/test_api.py", "source_location": "L40" }, - { - "id": "tests_test_api_test_cellpy_config_diagnostics_endpoint", - "label": "test_cellpy_config_diagnostics_endpoint()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_cellpy_config_diagnostics_endpoint()", - "source_file": "tests/test_api.py", - "source_location": "L73" - }, - { - "id": "tests_test_api_test_default_visible_hint_budget", - "label": "test_default_visible_hint_budget()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_default_visible_hint_budget()", - "source_file": "tests/test_api.py", - "source_location": "L646" - }, - { - "id": "tests_test_api_test_desktop_import_failure_names_the_extra", - "label": "test_desktop_import_failure_names_the_extra()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_desktop_import_failure_names_the_extra()", - "source_file": "tests/test_api.py", - "source_location": "L711" - }, { "id": "tests_test_api_test_diagnostics_are_dev_only", "label": "test_diagnostics_are_dev_only()", @@ -7572,55 +7958,7 @@ "file_type": "code", "norm_label": "test_diagnostics_are_dev_only()", "source_file": "tests/test_api.py", - "source_location": "L388" - }, - { - "id": "tests_test_api_test_dva_endpoints_need_no_dev_mode", - "label": "test_dva_endpoints_need_no_dev_mode()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_dva_endpoints_need_no_dev_mode()", - "source_file": "tests/test_api.py", - "source_location": "L308" - }, - { - "id": "tests_test_api_test_dva_missing_cell_is_404_not_403", - "label": "test_dva_missing_cell_is_404_not_403()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_dva_missing_cell_is_404_not_403()", - "source_file": "tests/test_api.py", - "source_location": "L328" - }, - { - "id": "tests_test_api_test_examples", - "label": "test_examples()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_examples()", - "source_file": "tests/test_api.py", - "source_location": "L143" - }, - { - "id": "tests_test_api_test_export_cells_cellpy", - "label": "test_export_cells_cellpy()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_export_cells_cellpy()", - "source_file": "tests/test_api.py", - "source_location": "L247" + "source_location": "L415" }, { "id": "tests_test_api_test_export_cells_requires_selection", @@ -7632,19 +7970,7 @@ "file_type": "code", "norm_label": "test_export_cells_requires_selection()", "source_file": "tests/test_api.py", - "source_location": "L241" - }, - { - "id": "tests_test_api_test_files_preview_honours_served_sandbox", - "label": "test_files_preview_honours_served_sandbox()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_files_preview_honours_served_sandbox()", - "source_file": "tests/test_api.py", - "source_location": "L826" + "source_location": "L268" }, { "id": "tests_test_api_test_files_preview_literal_missing_and_glob", @@ -7656,7 +7982,7 @@ "file_type": "code", "norm_label": "test_files_preview_literal_missing_and_glob()", "source_file": "tests/test_api.py", - "source_location": "L796" + "source_location": "L823" }, { "id": "tests_test_api_test_files_preview_rejects_empty", @@ -7668,43 +7994,7 @@ "file_type": "code", "norm_label": "test_files_preview_rejects_empty()", "source_file": "tests/test_api.py", - "source_location": "L821" - }, - { - "id": "tests_test_api_test_healthz", - "label": "test_healthz()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_healthz()", - "source_file": "tests/test_api.py", - "source_location": "L36" - }, - { - "id": "tests_test_api_test_index_alpine_state_is_defined", - "label": "test_index_alpine_state_is_defined()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_index_alpine_state_is_defined()", - "source_file": "tests/test_api.py", - "source_location": "L474" - }, - { - "id": "tests_test_api_test_index_click_and_show_targets_exist", - "label": "test_index_click_and_show_targets_exist()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_index_click_and_show_targets_exist()", - "source_file": "tests/test_api.py", - "source_location": "L561" + "source_location": "L848" }, { "id": "tests_test_api_test_index_uses_cellpy_logo", @@ -7718,18 +8008,6 @@ "source_file": "tests/test_api.py", "source_location": "L52" }, - { - "id": "tests_test_api_test_job_cancel_running_load", - "label": "test_job_cancel_running_load()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_job_cancel_running_load()", - "source_file": "tests/test_api.py", - "source_location": "L132" - }, { "id": "tests_test_api_test_job_cancel_unknown", "label": "test_job_cancel_unknown()", @@ -7742,30 +8020,6 @@ "source_file": "tests/test_api.py", "source_location": "L127" }, - { - "id": "tests_test_api_test_local_instance_keeps_its_freedom", - "label": "test_local_instance_keeps_its_freedom()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_local_instance_keeps_its_freedom()", - "source_file": "tests/test_api.py", - "source_location": "L839" - }, - { - "id": "tests_test_api_test_native_dialogs_refuse_without_pywebview", - "label": "test_native_dialogs_refuse_without_pywebview()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_native_dialogs_refuse_without_pywebview()", - "source_file": "tests/test_api.py", - "source_location": "L699" - }, { "id": "tests_test_api_test_pin_config_requires_a_project", "label": "test_pin_config_requires_a_project()", @@ -7776,7 +8030,7 @@ "file_type": "code", "norm_label": "test_pin_config_requires_a_project()", "source_file": "tests/test_api.py", - "source_location": "L258" + "source_location": "L285" }, { "id": "tests_test_api_test_plot_types_curated_by_default", @@ -7788,7 +8042,7 @@ "file_type": "code", "norm_label": "test_plot_types_curated_by_default()", "source_file": "tests/test_api.py", - "source_location": "L265" + "source_location": "L292" }, { "id": "tests_test_api_test_plot_types_include_registry_in_dev_mode", @@ -7800,31 +8054,7 @@ "file_type": "code", "norm_label": "test_plot_types_include_registry_in_dev_mode()", "source_file": "tests/test_api.py", - "source_location": "L280" - }, - { - "id": "tests_test_api_test_raw_and_cycle_info_are_dev_only", - "label": "test_raw_and_cycle_info_are_dev_only()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_raw_and_cycle_info_are_dev_only()", - "source_file": "tests/test_api.py", - "source_location": "L344" - }, - { - "id": "tests_test_api_test_raw_and_cycle_info_in_dev_mode", - "label": "test_raw_and_cycle_info_in_dev_mode()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_raw_and_cycle_info_in_dev_mode()", - "source_file": "tests/test_api.py", - "source_location": "L363" + "source_location": "L307" }, { "id": "tests_test_api_test_served_instance_refuses_host_globs", @@ -7836,31 +8066,7 @@ "file_type": "code", "norm_label": "test_served_instance_refuses_host_globs()", "source_file": "tests/test_api.py", - "source_location": "L778" - }, - { - "id": "tests_test_api_test_served_instance_refuses_paths_outside_its_data_dir", - "label": "test_served_instance_refuses_paths_outside_its_data_dir()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_served_instance_refuses_paths_outside_its_data_dir()", - "source_file": "tests/test_api.py", - "source_location": "L745" - }, - { - "id": "tests_test_api_test_served_instance_will_not_load_files_from_the_host", - "label": "test_served_instance_will_not_load_files_from_the_host()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_served_instance_will_not_load_files_from_the_host()", - "source_file": "tests/test_api.py", - "source_location": "L761" + "source_location": "L805" }, { "id": "tests_test_api_test_system_capabilities_no_file_picker", @@ -7886,30 +8092,6 @@ "source_file": "tests/test_api.py", "source_location": "L66" }, - { - "id": "tests_test_api_test_system_save_rejected_without_webview", - "label": "test_system_save_rejected_without_webview()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_system_save_rejected_without_webview()", - "source_file": "tests/test_api.py", - "source_location": "L111" - }, - { - "id": "tests_test_api_test_token_required", - "label": "test_token_required()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "test_token_required()", - "source_file": "tests/test_api.py", - "source_location": "L122" - }, { "id": "tests_test_api_test_webview_file_type_filters_are_valid", "label": "test_webview_file_type_filters_are_valid()", @@ -7922,30 +8104,6 @@ "source_file": "tests/test_api.py", "source_location": "L91" }, - { - "id": "tests_test_api_wait_for_job", - "label": "_wait_for_job()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "_wait_for_job()", - "source_file": "tests/test_api.py", - "source_location": "L25" - }, - { - "id": "tests_test_api_without_webview", - "label": "_without_webview()", - "_callable": true, - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "_without_webview()", - "source_file": "tests/test_api.py", - "source_location": "L670" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fh", "label": "fh()", @@ -8055,122 +8213,110 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_al", - "label": "al()", - "_callable": true, - "_origin": "ast", - "community": 124, - "community_name": "nl", - "file_type": "code", - "norm_label": "al()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il", - "label": "il()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", "community": 124, - "community_name": "nl", + "community_name": "ca", "file_type": "code", - "norm_label": "il()", + "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il_feature", - "label": ".feature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_deserialize", + "label": ".deserialize()", "_callable": true, "_origin": "ast", "community": 124, - "community_name": "nl", + "community_name": "ca", "file_type": "code", - "norm_label": ".feature()", + "norm_label": ".deserialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jl", - "label": "jl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 124, - "community_name": "nl", + "community_name": "ca", "file_type": "code", - "norm_label": "jl()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_addfeature", - "label": ".addFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 124, - "community_name": "nl", + "community_name": "ca", "file_type": "code", - "norm_label": ".addfeature()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_reserve", + "label": ".reserve()", "_callable": true, "_origin": "ast", "community": 124, - "community_name": "nl", + "community_name": "ca", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".reserve()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_resize", + "label": ".resize()", "_callable": true, "_origin": "ast", "community": 124, - "community_name": "nl", + "community_name": "ca", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 124, - "community_name": "nl", + "community_name": "ca", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_trim", + "label": "._trim()", "_callable": true, "_origin": "ast", "community": 124, - "community_name": "nl", + "community_name": "ca", "file_type": "code", - "norm_label": ".uploadpending()", + "norm_label": "._trim()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ul", - "label": "Ul()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 124, - "community_name": "nl", + "community_name": "ca", "file_type": "code", - "norm_label": "ul()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -8462,6 +8608,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 13, + "community_name": "wo", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_getbinding", "label": ".getBinding()", @@ -8474,6 +8632,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_setuniform", + "label": ".setUniform()", + "_callable": true, + "_origin": "ast", + "community": 13, + "community_name": "wo", + "file_type": "code", + "norm_label": ".setuniform()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qo", + "label": "qo()", + "_callable": true, + "_origin": "ast", + "community": 13, + "community_name": "wo", + "file_type": "code", + "norm_label": "qo()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_so_constructor", "label": ".constructor()", @@ -8595,7 +8777,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -8607,50 +8789,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_displaysize", - "label": ".displaySize()", - "_callable": true, - "_origin": "ast", - "community": 13, - "community_name": "wo", - "file_type": "code", - "norm_label": ".displaysize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tl", - "label": ".tl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_getbinding", + "label": ".getBinding()", "_callable": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": ".tl()", + "norm_label": ".getbinding()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tlbr", - "label": ".tlbr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setconstantpatternpositions", + "label": ".setConstantPatternPositions()", "_callable": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": ".tlbr()", + "norm_label": ".setconstantpatternpositions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_getbinding", - "label": ".getBinding()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setuniform", + "label": ".setUniform()", "_callable": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": ".getbinding()", + "norm_label": ".setuniform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -8799,38 +8969,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_addto", - "label": ".addTo()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".addto()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_gethashstring", - "label": ".getHashString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ne", + "label": "ne()", "_callable": true, "_origin": "ast", "community": 130, "community_name": "wn", "file_type": "code", - "norm_label": ".gethashstring()", + "norm_label": "ne()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -8979,122 +9125,86 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addcurrentvertex", - "label": ".addCurrentVertex()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": "Ic", - "file_type": "code", - "norm_label": ".addcurrentvertex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addhalfvertex", - "label": ".addHalfVertex()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": "Ic", - "file_type": "code", - "norm_label": ".addhalfvertex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addline", - "label": ".addLine()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": "Ic", - "file_type": "code", - "norm_label": ".addline()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": "Ic", + "community_name": "va", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": "Ic", + "community_name": "va", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_linefeatureclips", - "label": ".lineFeatureClips()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": "Ic", + "community_name": "va", "file_type": "code", - "norm_label": ".linefeatureclips()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": "Ic", + "community_name": "va", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatedistance", - "label": ".updateDistance()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": "Ic", + "community_name": "va", "file_type": "code", - "norm_label": ".updatedistance()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatescaleddistance", - "label": ".updateScaledDistance()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_gettileunitdistancefromanchor", + "label": ".gettileUnitDistanceFromAnchor()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": "Ic", + "community_name": "va", "file_type": "code", - "norm_label": ".updatescaleddistance()", + "norm_label": ".gettileunitdistancefromanchor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 133, - "community_name": "Ic", + "community_name": "va", "file_type": "code", - "norm_label": ".uploadpending()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -9110,18 +9220,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cancelrenderframe", - "label": "_cancelRenderFrame()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": "_cancelrenderframe()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_afterease", "label": "._afterEase()", @@ -9146,30 +9244,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_cameraforbounds", - "label": ".cameraForBounds()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".cameraforbounds()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_cameraforboxandbearing", - "label": "._cameraForBoxAndBearing()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": "._cameraforboxandbearing()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_constructor", "label": ".constructor()", @@ -9434,18 +9508,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_queryterrainelevation", - "label": ".queryTerrainElevation()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".queryterrainelevation()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_resetnorth", "label": ".resetNorth()", @@ -9603,62 +9665,62 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_ispaddingequal", - "label": ".isPaddingEqual()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_interpolatepadding", + "label": ".interpolatePadding()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": ".ispaddingequal()", + "norm_label": ".interpolatepadding()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_scalezoom", - "label": ".scaleZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_ispaddingequal", + "label": ".isPaddingEqual()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": ".scalezoom()", + "norm_label": ".ispaddingequal()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_zoomscale", - "label": ".zoomScale()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_scalezoom", + "label": ".scaleZoom()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": ".zoomscale()", + "norm_label": ".scalezoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_unproject", - "label": ".unproject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_setlocationatpoint", + "label": ".setLocationAtPoint()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": ".unproject()", + "norm_label": ".setlocationatpoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_zoomscale", + "label": ".zoomScale()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": "i()", + "norm_label": ".zoomscale()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -9722,114 +9784,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_unproject", - "label": "unproject()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": "unproject()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_contains", - "label": ".contains()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".contains()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_convert", - "label": ".convert()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".convert()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getsouthwest", - "label": ".getSouthWest()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".getsouthwest()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_setnortheast", - "label": ".setNorthEast()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".setnortheast()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_setsouthwest", - "label": ".setSouthWest()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".setsouthwest()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_touchend", - "label": ".touchend()", - "_callable": true, - "_origin": "ast", - "community": 135, - "community_name": "Ei", - "file_type": "code", - "norm_label": ".touchend()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_query", - "label": ".query()", - "_callable": true, - "_origin": "ast", - "community": 14, - "community_name": "Uc", - "file_type": "code", - "norm_label": ".query()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_recalculate", "label": ".recalculate()", @@ -9866,18 +9820,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lh", - "label": "lh()", - "_callable": true, - "_origin": "ast", - "community": 14, - "community_name": "Uc", - "file_type": "code", - "norm_label": "lh()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setpaintproperty", "label": ".setPaintProperty()", @@ -9902,18 +9844,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sh", - "label": "sh()", - "_callable": true, - "_origin": "ast", - "community": 14, - "community_name": "Uc", - "file_type": "code", - "norm_label": "sh()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uc_constructor", "label": ".constructor()", @@ -10130,30 +10060,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_haspaintoverride", - "label": ".hasPaintOverride()", - "_callable": true, - "_origin": "ast", - "community": 14, - "community_name": "Uc", - "file_type": "code", - "norm_label": ".haspaintoverride()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_queryintersectsfeature", - "label": ".queryIntersectsFeature()", - "_callable": true, - "_origin": "ast", - "community": 14, - "community_name": "Uc", - "file_type": "code", - "norm_label": ".queryintersectsfeature()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_recalculate", "label": ".recalculate()", @@ -10418,18 +10324,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getelevationforlnglatzoom", - "label": ".getElevationForLngLatZoom()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".getelevationforlnglatzoom()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getframebuffer", "label": ".getFramebuffer()", @@ -10478,18 +10372,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getoverscaledtileidfromlnglatzoom", - "label": "._getOverscaledTileIDFromLngLatZoom()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": "._getoverscaledtileidfromlnglatzoom()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getterraindata", "label": ".getTerrainData()", @@ -10503,14 +10385,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatefogmatrix", - "label": ".calculateFogMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_pointcoordinate", + "label": ".pointCoordinate()", "_callable": true, "_origin": "ast", "community": 148, "community_name": "bn", "file_type": "code", - "norm_label": ".calculatefogmatrix()", + "norm_label": ".pointcoordinate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10527,158 +10409,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatetilematrix", - "label": ".calculateTileMatrix()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".calculatetilematrix()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_transform", - "label": ".transform()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".transform()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_tilesaftertime", - "label": ".tilesAfterTime()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".tilesaftertime()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_clear", - "label": ".clear()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".clear()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_eachchild", - "label": ".eachChild()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".eachchild()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_evaluate", - "label": ".evaluate()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_outputdefined", - "label": ".outputDefined()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".outputdefined()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_register", - "label": ".register()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".register()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_convert", - "label": ".convert()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".convert()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_toarray", - "label": ".toArray()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".toarray()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getvisibleunwrappedcoordinates", + "label": ".getVisibleUnwrappedCoordinates()", "_callable": true, "_origin": "ast", "community": 148, "community_name": "bn", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".getvisibleunwrappedcoordinates()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pointcoordinate", + "label": ".pointCoordinate()", "_callable": true, "_origin": "ast", "community": 148, "community_name": "bn", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".pointcoordinate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10706,18 +10456,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_clear", - "label": ".clear()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".clear()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createrenderbuffer", "label": ".createRenderbuffer()", @@ -10743,86 +10481,86 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_addimages", - "label": ".addImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".addimages()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "c()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_addimages", + "label": ".addImages()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".addimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_d", - "label": "d()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_c", + "label": "c()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "d()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_e", - "label": "E()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "e()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_d", + "label": "d()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "f()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_f", + "label": "f()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "h()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10887,31 +10625,19 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_backfilldem_r", - "label": "r()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_r", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_backfilldem_r", "label": "r()", "_callable": true, "_origin": "ast", @@ -10923,14 +10649,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_apply", + "label": ".apply()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".apply()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10946,18 +10672,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et_e", - "label": "e()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_i", "label": "i()", @@ -10971,14 +10685,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi", - "label": "fi()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "fi()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10995,55 +10709,55 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_c", + "label": "c()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "e()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_in", + "label": "In()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".update()", + "norm_label": "in()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jc", + "label": "jc()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "jc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_evaluate", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_evaluate", "label": ".evaluate()", "_callable": true, "_origin": "ast", @@ -11055,98 +10769,74 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_outputdefined", - "label": ".outputDefined()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": ".outputdefined()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_x", - "label": "x()", - "_callable": true, - "_origin": "ast", - "community": 15, - "community_name": "e", - "file_type": "code", - "norm_label": "x()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "n()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jc", - "label": "jc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "jc()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_c", + "label": "c()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "l()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "c()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11175,14 +10865,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_k", + "label": "k()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "l()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11222,6 +10912,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_t", + "label": "T()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "t()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_u", "label": "u()", @@ -11319,7 +11021,19 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_a", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn", + "label": "pn()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "pn()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn_a", "label": "a()", "_callable": true, "_origin": "ast", @@ -11331,26 +11045,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "r()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_validate", - "label": "._validate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_a", + "label": "A()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "._validate()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11379,14 +11093,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_t", - "label": "t()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "t()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11403,50 +11117,50 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "e()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o_t", - "label": "t()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "t()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_e", - "label": "E()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o_t", + "label": "t()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "e()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_e", + "label": "E()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "i()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11475,14 +11189,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "s()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11510,6 +11224,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_u", + "label": "u()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_h", "label": "h()", @@ -11582,6 +11308,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_i", + "label": "i()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "i()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_eachchild", "label": ".eachChild()", @@ -11600,59 +11338,107 @@ "_callable": true, "_origin": "ast", "community": 153, - "community_name": "The prompts", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "analyse_cell()", "source_file": "examples/mcp/server.py", "source_location": "L946" }, + { + "id": "examples_mcp_server_client_config_path", + "label": "_client_config_path()", + "_callable": true, + "_origin": "ast", + "community": 153, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "_client_config_path()", + "source_file": "examples/mcp/server.py", + "source_location": "L1015" + }, { "id": "examples_mcp_server_explain_call", "label": "explain_call()", "_callable": true, "_origin": "ast", "community": 153, - "community_name": "The prompts", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "explain_call()", "source_file": "examples/mcp/server.py", "source_location": "L987" }, + { + "id": "examples_mcp_server_install", + "label": "_install()", + "_callable": true, + "_origin": "ast", + "community": 153, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "_install()", + "source_file": "examples/mcp/server.py", + "source_location": "L1025" + }, { "id": "examples_mcp_server_start_batch_project", "label": "start_batch_project()", "_callable": true, "_origin": "ast", "community": 153, - "community_name": "The prompts", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "start_batch_project()", "source_file": "examples/mcp/server.py", "source_location": "L970" }, { - "id": "examples_mcp_server_client_config_path", - "label": "_client_config_path()", + "id": "src_cellpy_simple_gui_api_routers_ingest_list_instruments", + "label": "list_instruments()", "_callable": true, "_origin": "ast", "community": 157, - "community_name": "_client_config_path", + "community_name": "list_instruments", "file_type": "code", - "norm_label": "_client_config_path()", - "source_file": "examples/mcp/server.py", - "source_location": "L1015" + "norm_label": "list_instruments()", + "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", + "source_location": "L19" }, { - "id": "examples_mcp_server_install", - "label": "_install()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_arbin_res_reader_available", + "label": "arbin_res_reader_available()", "_callable": true, "_origin": "ast", "community": 157, - "community_name": "_client_config_path", + "community_name": "list_instruments", "file_type": "code", - "norm_label": "_install()", - "source_file": "examples/mcp/server.py", - "source_location": "L1025" + "norm_label": "arbin_res_reader_available()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L178" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_ids", + "label": "instrument_ids()", + "_callable": true, + "_origin": "ast", + "community": 157, + "community_name": "list_instruments", + "file_type": "code", + "norm_label": "instrument_ids()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L132" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_list_instruments", + "label": "list_instruments()", + "_callable": true, + "_origin": "ast", + "community": 157, + "community_name": "list_instruments", + "file_type": "code", + "norm_label": "list_instruments()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L84" }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ct", @@ -12062,18 +11848,6 @@ "source_file": "tests/test_remote_find.py", "source_location": "L166" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_destruct", "label": ".destruct()", @@ -12086,78 +11860,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_disable", - "label": ".disable()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".disable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_enable", - "label": ".enable()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".enable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_gettexture", - "label": ".getTexture()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".gettexture()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_isactive", - "label": ".isActive()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".isactive()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_isenabled", - "label": ".isEnabled()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".isenabled()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_prepareforrender", - "label": ".prepareForRender()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".prepareforrender()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ch", "label": "ch()", @@ -12171,62 +11873,62 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_querysourcefeatures", - "label": ".querySourceFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_doescharsupportlocalglyph", + "label": "._doesCharSupportLocalGlyph()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".querysourcefeatures()", + "norm_label": "._doescharsupportlocalglyph()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateplacement", - "label": "._updatePlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getandcacheglyphspromise", + "label": "._getAndCacheGlyphsPromise()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": "._updateplacement()", + "norm_label": "._getandcacheglyphspromise()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_backfilldem", - "label": "._backfillDEM()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getglyphs", + "label": ".getGlyphs()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": "._backfilldem()", + "norm_label": ".getglyphs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getrenderableids", - "label": ".getRenderableIds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_tinysdf", + "label": "._tinySDF()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".getrenderableids()", + "norm_label": "._tinysdf()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getvisiblecoordinates", - "label": ".getVisibleCoordinates()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_clone", + "label": ".clone()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": ".getvisiblecoordinates()", + "norm_label": ".clone()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -12290,18 +11992,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_getrenderabletiles", - "label": ".getRenderableTiles()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".getrenderabletiles()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_getterraincoords", "label": ".getTerrainCoords()", @@ -12314,18 +12004,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_gettilebyid", - "label": ".getTileByID()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".gettilebyid()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_i", "label": "i()", @@ -12375,14 +12053,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_querysourcefeatures", - "label": "querySourceFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_tilesaftertime", + "label": ".tilesAfterTime()", "_callable": true, "_origin": "ast", "community": 160, "community_name": "oi", "file_type": "code", - "norm_label": "querysourcefeatures()", + "norm_label": ".tilesaftertime()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -12411,40 +12089,16 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_ischildof", - "label": ".isChildOf()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".ischildof()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_islessthan", - "label": ".isLessThan()", - "_callable": true, - "_origin": "ast", - "community": 160, - "community_name": "oi", - "file_type": "code", - "norm_label": ".islessthan()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setstale", - "label": ".setStale()", + "id": "src_cellpy_simple_gui_api_jobs_jobmanager_cancel", + "label": ".cancel()", "_callable": true, "_origin": "ast", - "community": 160, - "community_name": "oi", + "community": 161, + "community_name": "Development information", "file_type": "code", - "norm_label": ".setstale()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".cancel()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L250" }, { "id": "tests_test_guides_test_the_upstream_bugs_the_guides_describe_are_still_bugs", @@ -12552,7 +12206,7 @@ "file_type": "code", "norm_label": "test_summary_panels_for_capacity_ce()", "source_file": "tests/test_core.py", - "source_location": "L1238" + "source_location": "L1320" }, { "id": "packaging_entry_log_dir", @@ -12560,7 +12214,7 @@ "_callable": true, "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "file_type": "code", "norm_label": "_log_dir()", "source_file": "packaging/entry.py", @@ -12572,7 +12226,7 @@ "_callable": true, "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "file_type": "code", "norm_label": "main()", "source_file": "packaging/entry.py", @@ -12584,7 +12238,7 @@ "_callable": true, "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "file_type": "code", "norm_label": "_report_crash()", "source_file": "packaging/entry.py", @@ -12596,67 +12250,55 @@ "_callable": true, "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "file_type": "code", "norm_label": "_show_dialog()", "source_file": "packaging/entry.py", "source_location": "L40" }, { - "id": "packaging_smoke_test_client_call", - "label": ".call()", - "_callable": true, - "_origin": "ast", - "community": 168, - "community_name": "Client", - "file_type": "code", - "norm_label": ".call()", - "source_file": "packaging/smoke_test.py", - "source_location": "L98" - }, - { - "id": "packaging_smoke_test_client_close", + "id": "packaging_smoke_test_launchedapp_close", "label": ".close()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 166, + "community_name": "smoke_test.py", "file_type": "code", "norm_label": ".close()", "source_file": "packaging/smoke_test.py", - "source_location": "L136" + "source_location": "L172" }, { - "id": "packaging_smoke_test_client_init", + "id": "packaging_smoke_test_launchedapp_init", "label": ".__init__()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 166, + "community_name": "smoke_test.py", "file_type": "code", "norm_label": ".__init__()", "source_file": "packaging/smoke_test.py", - "source_location": "L94" + "source_location": "L143" }, { - "id": "packaging_smoke_test_client_job", - "label": ".job()", + "id": "packaging_smoke_test_launchedapp_wait_for_url", + "label": ".wait_for_url()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 166, + "community_name": "smoke_test.py", "file_type": "code", - "norm_label": ".job()", + "norm_label": ".wait_for_url()", "source_file": "packaging/smoke_test.py", - "source_location": "L126" + "source_location": "L152" }, { "id": "packaging_smoke_test_main", "label": "main()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 166, + "community_name": "smoke_test.py", "file_type": "code", "norm_label": "main()", "source_file": "packaging/smoke_test.py", @@ -12667,8 +12309,8 @@ "label": "run_checks()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 166, + "community_name": "smoke_test.py", "file_type": "code", "norm_label": "run_checks()", "source_file": "packaging/smoke_test.py", @@ -12679,36 +12321,36 @@ "label": "skip()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 166, + "community_name": "smoke_test.py", "file_type": "code", "norm_label": "skip()", "source_file": "packaging/smoke_test.py", "source_location": "L54" }, { - "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented", - "label": "test_the_tool_surface_is_small_and_named_as_documented()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_cameraforbounds", + "label": ".cameraForBounds()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 169, + "community_name": "._cameraForBoxAndBearing", "file_type": "code", - "norm_label": "test_the_tool_surface_is_small_and_named_as_documented()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L209" + "norm_label": ".cameraforbounds()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented_main", - "label": "main()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_cameraforboxandbearing", + "label": "._cameraForBoxAndBearing()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 169, + "community_name": "._cameraForBoxAndBearing", "file_type": "code", - "norm_label": "main()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L214" + "norm_label": "._cameraforboxandbearing()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_setmaxbounds", @@ -12716,7 +12358,7 @@ "_callable": true, "_origin": "ast", "community": 169, - "community_name": ".getSouthEast", + "community_name": "._cameraForBoxAndBearing", "file_type": "code", "norm_label": ".setmaxbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -12728,7 +12370,7 @@ "_callable": true, "_origin": "ast", "community": 169, - "community_name": ".getSouthEast", + "community_name": "._cameraForBoxAndBearing", "file_type": "code", "norm_label": "._isoutofmapmaxbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -12740,7 +12382,7 @@ "_callable": true, "_origin": "ast", "community": 169, - "community_name": ".getSouthEast", + "community_name": "._cameraForBoxAndBearing", "file_type": "code", "norm_label": ".geteast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -12752,7 +12394,7 @@ "_callable": true, "_origin": "ast", "community": 169, - "community_name": ".getSouthEast", + "community_name": "._cameraForBoxAndBearing", "file_type": "code", "norm_label": ".getnorth()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -12764,7 +12406,7 @@ "_callable": true, "_origin": "ast", "community": 169, - "community_name": ".getSouthEast", + "community_name": "._cameraForBoxAndBearing", "file_type": "code", "norm_label": ".getnorthwest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -12776,7 +12418,7 @@ "_callable": true, "_origin": "ast", "community": 169, - "community_name": ".getSouthEast", + "community_name": "._cameraForBoxAndBearing", "file_type": "code", "norm_label": ".getsouth()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -12788,47 +12430,35 @@ "_callable": true, "_origin": "ast", "community": 169, - "community_name": ".getSouthEast", + "community_name": "._cameraForBoxAndBearing", "file_type": "code", "norm_label": ".getsoutheast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getwest", - "label": ".getWest()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getsouthwest", + "label": ".getSouthWest()", "_callable": true, "_origin": "ast", "community": 169, - "community_name": ".getSouthEast", + "community_name": "._cameraForBoxAndBearing", "file_type": "code", - "norm_label": ".getwest()", + "norm_label": ".getsouthwest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_apply_physical_meta", - "label": "apply_physical_meta()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "apply_physical_meta()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L760" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_arbin_res_reader_available", - "label": "arbin_res_reader_available()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getwest", + "label": ".getWest()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 169, + "community_name": "._cameraForBoxAndBearing", "file_type": "code", - "norm_label": "arbin_res_reader_available()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L178" + "norm_label": ".getwest()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_capacity_curve", @@ -12852,7 +12482,7 @@ "file_type": "code", "norm_label": "cellpy_version()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L822" + "source_location": "L846" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_example_raw_path", @@ -12866,18 +12496,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L303" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_csv", - "label": "export_cell_csv()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "export_cell_csv()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L731" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_excel", "label": "export_cell_excel()", @@ -12888,7 +12506,7 @@ "file_type": "code", "norm_label": "export_cell_excel()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L724" + "source_location": "L748" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_filename_for_get", @@ -12950,42 +12568,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L349" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_ids", - "label": "instrument_ids()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "instrument_ids()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L132" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_meta_schema", - "label": "instrument_meta_schema()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "instrument_meta_schema()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L220" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_list_instruments", - "label": "list_instruments()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "list_instruments()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L84" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_example", "label": "load_example()", @@ -13011,64 +12593,64 @@ "source_location": "L340" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_raw", - "label": "load_raw()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "label": "load_journal()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "load_raw()", + "norm_label": "load_journal()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L242" + "source_location": "L581" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_file_meta", - "label": "read_file_meta()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "label": "load_journal_cells()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "read_file_meta()", + "norm_label": "load_journal_cells()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L227" + "source_location": "L569" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta", - "label": "read_meta()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_progress", + "label": "_progress()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "read_meta()", + "norm_label": "_progress()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L493" + "source_location": "L608" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta_num", - "label": "_num()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_raw", + "label": "load_raw()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "_num()", + "norm_label": "load_raw()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L502" + "source_location": "L242" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta_safe", - "label": "_safe()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_file_meta", + "label": "read_file_meta()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "_safe()", + "norm_label": "read_file_meta()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L496" + "source_location": "L227" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_remake_summary", @@ -13080,7 +12662,7 @@ "file_type": "code", "norm_label": "_remake_summary()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L741" + "source_location": "L765" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rewrite_loader_error", @@ -13094,54 +12676,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L291" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_save_cell", - "label": "save_cell()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "save_cell()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L717" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_area", - "label": "set_area()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "set_area()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L802" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_cycle_mode", - "label": "set_cycle_mode()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "set_cycle_mode()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L817" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_mass", - "label": "set_mass()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "set_mass()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L797" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_nom_cap_specifics", "label": "set_nom_cap_specifics()", @@ -13152,7 +12686,7 @@ "file_type": "code", "norm_label": "set_nom_cap_specifics()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L812" + "source_location": "L836" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_nominal_capacity", @@ -13164,7 +12698,7 @@ "file_type": "code", "norm_label": "set_nominal_capacity()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L807" + "source_location": "L831" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_summary_frame", @@ -13178,114 +12712,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L529" }, - { - "id": "src_cellpy_simple_gui_core_collect_inject_app_chrome", - "label": "_inject_app_chrome()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "_inject_app_chrome()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L653" - }, - { - "id": "src_cellpy_simple_gui_core_export_cells_export", - "label": "cells_export()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "cells_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L255" - }, - { - "id": "src_cellpy_simple_gui_core_export_export_one_cell", - "label": "_export_one_cell()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "_export_one_cell()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L233" - }, - { - "id": "src_cellpy_simple_gui_core_export_figure_bytes", - "label": "figure_bytes()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "figure_bytes()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L168" - }, - { - "id": "src_cellpy_simple_gui_core_export_zip_members", - "label": "_zip_members()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "_zip_members()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L225" - }, - { - "id": "src_cellpy_simple_gui_core_library_cellrecord_apply_physical_meta", - "label": "._apply_physical_meta()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "._apply_physical_meta()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L93" - }, - { - "id": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", - "label": ".to_meta()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": ".to_meta()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L76" - }, - { - "id": "src_cellpy_simple_gui_core_library_library_update", - "label": ".update()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": ".update()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L183" - }, - { - "id": "src_cellpy_simple_gui_core_paths_is_remote_uri", - "label": "is_remote_uri()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "is_remote_uri()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L43" - }, { "id": "src_cellpy_simple_gui_core_paths_remote_paths_allowed", "label": "remote_paths_allowed()", @@ -13298,18 +12724,6 @@ "source_file": "src/cellpy_simple_gui/core/paths.py", "source_location": "L49" }, - { - "id": "tests_test_api_test_edit_cell", - "label": "test_edit_cell()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "test_edit_cell()", - "source_file": "tests/test_api.py", - "source_location": "L210" - }, { "id": "src_cellpy_simple_gui_api_jobs_daemonpool_init", "label": ".__init__()", @@ -13334,6 +12748,18 @@ "source_file": "src/cellpy_simple_gui/api/jobs.py", "source_location": "L164" }, + { + "id": "src_cellpy_simple_gui_api_jobs_daemonpool_submit", + "label": ".submit()", + "_callable": true, + "_origin": "ast", + "community": 172, + "community_name": "6. Process state and threading", + "file_type": "code", + "norm_label": ".submit()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L150" + }, { "id": "src_cellpy_simple_gui_api_jobs_daemonpool_worker", "label": "._worker()", @@ -13364,273 +12790,261 @@ "_callable": true, "_origin": "ast", "community": 176, - "community_name": "te", + "community_name": "ee", "file_type": "code", "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 176, - "community_name": "te", + "community_name": "ee", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 176, - "community_name": "te", + "community_name": "ee", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 176, - "community_name": "te", + "community_name": "ee", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", "community": 176, - "community_name": "te", - "file_type": "code", - "norm_label": ".outputdefined()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_aborttile", - "label": ".abortTile()", - "_callable": true, - "_origin": "ast", - "community": 18, - "community_name": "m", + "community_name": "ee", "file_type": "code", - "norm_label": ".aborttile()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "m", + "community": 176, + "community_name": "ee", "file_type": "code", - "norm_label": "c()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "m", + "community": 176, + "community_name": "ee", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "m", + "community": 176, + "community_name": "ee", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_flip", - "label": ".flip()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "m", + "community": 176, + "community_name": "ee", "file_type": "code", - "norm_label": ".flip()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "m", + "community": 176, + "community_name": "ee", "file_type": "code", - "norm_label": "l()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "f()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "u()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dc", + "label": "Dc()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": "dc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_m", + "label": "M()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "n()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_x", + "label": "x()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "o()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "r()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_removetile", - "label": ".removeTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_rt", + "label": "Rt()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".removetile()", + "norm_label": "rt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fc", + "label": "fc()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "s()", + "norm_label": "fc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loadvectortile", - "label": ".loadVectorTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frameasync", + "label": "frameAsync()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".loadvectortile()", + "norm_label": "frameasync()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fs", + "label": "fs()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "g()", + "norm_label": "fs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "c()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -13640,7 +13054,7 @@ "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -13652,45 +13066,45 @@ "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", "norm_label": ".feature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "l()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_off", - "label": ".off()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".off()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_on", - "label": ".on()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_off", + "label": ".off()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".on()", + "norm_label": ".off()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -13700,7 +13114,7 @@ "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -13712,93 +13126,93 @@ "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_from", - "label": ".from()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_p", + "label": "p()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".from()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_x", + "label": "x()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ke", + "label": "ke()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "ke()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_p", + "label": "P()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_tojson", + "label": ".toJSON()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "p()", + "norm_label": ".tojson()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -13808,885 +13222,1377 @@ "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", "norm_label": ".copy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nc", - "label": "nc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m", + "label": "m()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "nc()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "m()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_b", + "label": "b()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "e()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_d", + "label": "d()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "o()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_e", + "label": "E()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "l()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_f", + "label": "f()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "s()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_d", - "label": "d()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "d()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_dispose", - "label": ".dispose()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".dispose()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_k", + "label": "k()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "f()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_l", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_l", "label": "l()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_m", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_m", "label": "m()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_o", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_o", "label": "o()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_p", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_p", "label": "p()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "s()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v", - "label": "v()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "v()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_y", - "label": "y()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_t", + "label": "T()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "y()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_d", - "label": "d()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "d()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createframebuffer", - "label": ".createFramebuffer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_w", + "label": "w()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": ".createframebuffer()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_x", + "label": "x()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "c()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "h()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_b", + "label": "b()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "m", + "community_name": "a", "file_type": "code", - "norm_label": "u()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".get()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nc", + "label": "nc()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "nc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_h_t", + "label": "T()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_f", + "label": "f()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oc", + "label": "Oc()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": "oc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_os", + "label": "Os()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "os()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_isstatedependent", - "label": ".isStateDependent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".isstatedependent()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_addfeatures", - "label": ".addFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_m", + "label": "m()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".addfeatures()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pc", + "label": "Pc()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "pc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_x_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".update()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".uploadpending()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qo", - "label": "qo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": "qo()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".bind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setconstantpatternpositions", - "label": ".setConstantPatternPositions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_p", + "label": "p()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".setconstantpatternpositions()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setuniform", - "label": ".setUniform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 187, - "community_name": "ho", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".setuniform()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "examples_starter_app_instruments", - "label": "instruments()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 192, - "community_name": "cellpy API surface", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": "instruments()", - "source_file": "examples/starter/app.py", - "source_location": "L122" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_fake_cellpy_config_get_config", - "label": "get_config()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rc", + "label": "Rc()", "_callable": true, "_origin": "ast", - "community": 192, - "community_name": "cellpy API surface", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": "get_config()", - "source_file": "tests/test_packaging.py", - "source_location": "L116" + "norm_label": "rc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ru_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 194, - "community_name": ".outputDefined", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 194, - "community_name": ".outputDefined", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 194, - "community_name": ".outputDefined", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_c", + "label": "c()", "_callable": true, "_origin": "ast", - "community": 194, - "community_name": ".outputDefined", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 194, - "community_name": ".outputDefined", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_e", + "label": "e()", "_callable": true, "_origin": "ast", - "community": 194, - "community_name": ".outputDefined", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_f", + "label": "f()", "_callable": true, "_origin": "ast", - "community": 194, - "community_name": ".outputDefined", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_l", + "label": "l()", "_callable": true, "_origin": "ast", - "community": 194, - "community_name": ".outputDefined", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_m", + "label": "m()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".set()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_canonicalid", - "label": ".canonicalID()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_p", + "label": "p()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".canonicalid()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_geometrytype", - "label": ".geometryType()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".geometrytype()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v", + "label": "v()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_y", + "label": "y()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_s", + "label": "S()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui", + "label": "ui()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".set()", + "norm_label": "ui()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_f", + "label": "f()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".set()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fr_setdirty", - "label": ".setDirty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_c", + "label": "c()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".setdirty()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_geometry", - "label": ".geometry()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".geometry()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_je", - "label": "Je()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": "je()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_je_generate", - "label": ".generate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_s", + "label": "S()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".generate()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wc", + "label": "wc()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "wc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_f", + "label": "f()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 18, + "community_name": "a", "file_type": "code", - "norm_label": ".set()", + "norm_label": "h()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xo", + "label": "xo()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "a", + "file_type": "code", + "norm_label": "xo()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y", + "label": "y()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "a", + "file_type": "code", + "norm_label": "y()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_a", + "label": "a()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "a", + "file_type": "code", + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_o", + "label": "o()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "a", + "file_type": "code", + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yo", + "label": "yo()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "a", + "file_type": "code", + "norm_label": "yo()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zc", + "label": "zc()", + "_callable": true, + "_origin": "ast", + "community": 18, + "community_name": "a", + "file_type": "code", + "norm_label": "zc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_insert", + "label": ".insert()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".insert()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_al", + "label": "al()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": "al()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisionbox", + "label": ".insertCollisionBox()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".insertcollisionbox()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_go", + "label": "Go()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": "go()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_get", + "label": ".get()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".get()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addcurrentvertex", + "label": ".addCurrentVertex()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".addcurrentvertex()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeature", + "label": ".addFeature()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".addfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addhalfvertex", + "label": ".addHalfVertex()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".addhalfvertex()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addline", + "label": ".addLine()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".addline()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_destroy", + "label": ".destroy()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_isempty", + "label": ".isEmpty()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".isempty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_linefeatureclips", + "label": ".lineFeatureClips()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".linefeatureclips()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_populate", + "label": ".populate()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".populate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_update", + "label": ".update()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatedistance", + "label": ".updateDistance()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".updatedistance()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatescaleddistance", + "label": ".updateScaledDistance()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".updatescaleddistance()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_uploadpending", + "label": ".uploadPending()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".uploadpending()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il", + "label": "il()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": "il()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il_feature", + "label": ".feature()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".feature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_isconstant", + "label": ".isConstant()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".isconstant()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jl", + "label": "jl()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": "jl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_addfeature", + "label": ".addFeature()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".addfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_addfeatures", + "label": ".addFeatures()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".addfeatures()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_destroy", + "label": ".destroy()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_isempty", + "label": ".isEmpty()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".isempty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_populate", + "label": ".populate()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".populate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_update", + "label": ".update()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_uploadpending", + "label": ".uploadPending()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".uploadpending()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ns", + "label": "Ns()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": "ns()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_isstatedependent", + "label": ".isStateDependent()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".isstatedependent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -14695,159 +14601,435 @@ "label": ".addFeature()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", "norm_label": ".addfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_addfeatures", + "label": ".addFeatures()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".addfeatures()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_distance", - "label": ".distance()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".distance()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_pointonline", - "label": ".pointOnLine()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_populate", + "label": ".populate()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".pointonline()", + "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_wrap", - "label": ".wrap()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_uploadpending", + "label": ".uploadPending()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".wrap()", + "norm_label": ".uploadpending()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_compare", - "label": ".compare()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ul", + "label": "Ul()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".compare()", + "norm_label": "ul()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_populate", + "label": ".populate()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_br", + "label": ".br()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "o()", + "norm_label": ".br()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_displaysize", + "label": ".displaySize()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".displaysize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tl", + "label": ".tl()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".tl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tlbr", + "label": ".tlbr()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".tlbr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insert", + "label": ".insert()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".insert()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xu", + "label": "xu()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": "xu()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "packaging_smoke_test_check", + "label": "check()", + "_callable": true, + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "code", + "norm_label": "check()", + "source_file": "packaging/smoke_test.py", + "source_location": "L48" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gh", + "label": "gh()", + "_callable": true, + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "code", + "norm_label": "gh()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 199, - "community_name": "ur", + "community": 190, + "community_name": "Hl", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_getdefault", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_createbucket", + "label": ".createBucket()", + "_callable": true, + "_origin": "ast", + "community": 190, + "community_name": "Hl", + "file_type": "code", + "norm_label": ".createbucket()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_is3d", + "label": ".is3D()", + "_callable": true, + "_origin": "ast", + "community": 190, + "community_name": "Hl", + "file_type": "code", + "norm_label": ".is3d()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryintersectsfeature", + "label": ".queryIntersectsFeature()", + "_callable": true, + "_origin": "ast", + "community": 190, + "community_name": "Hl", + "file_type": "code", + "norm_label": ".queryintersectsfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryradius", + "label": ".queryRadius()", + "_callable": true, + "_origin": "ast", + "community": 190, + "community_name": "Hl", + "file_type": "code", + "norm_label": ".queryradius()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ql", + "label": "ql()", + "_callable": true, + "_origin": "ast", + "community": 190, + "community_name": "Hl", + "file_type": "code", + "norm_label": "ql()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tc", + "label": "tc()", + "_callable": true, + "_origin": "ast", + "community": 190, + "community_name": "Hl", + "file_type": "code", + "norm_label": "tc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "examples_starter_app_instruments", + "label": "instruments()", + "_callable": true, + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "code", + "norm_label": "instruments()", + "source_file": "examples/starter/app.py", + "source_location": "L122" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_outputdefined", + "label": ".outputDefined()", + "_callable": true, + "_origin": "ast", + "community": 194, + "community_name": ".outputDefined", + "file_type": "code", + "norm_label": ".outputdefined()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_outputdefined", + "label": ".outputDefined()", + "_callable": true, + "_origin": "ast", + "community": 194, + "community_name": ".outputDefined", + "file_type": "code", + "norm_label": ".outputdefined()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_outputdefined", + "label": ".outputDefined()", + "_callable": true, + "_origin": "ast", + "community": 194, + "community_name": ".outputDefined", + "file_type": "code", + "norm_label": ".outputdefined()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_outputdefined", + "label": ".outputDefined()", + "_callable": true, + "_origin": "ast", + "community": 194, + "community_name": ".outputDefined", + "file_type": "code", + "norm_label": ".outputdefined()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_outputdefined", + "label": ".outputDefined()", + "_callable": true, + "_origin": "ast", + "community": 194, + "community_name": ".outputDefined", + "file_type": "code", + "norm_label": ".outputdefined()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_outputdefined", + "label": ".outputDefined()", + "_callable": true, + "_origin": "ast", + "community": 194, + "community_name": ".outputDefined", + "file_type": "code", + "norm_label": ".outputdefined()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_outputdefined", + "label": ".outputDefined()", + "_callable": true, + "_origin": "ast", + "community": 194, + "community_name": ".outputDefined", + "file_type": "code", + "norm_label": ".outputdefined()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_outputdefined", + "label": ".outputDefined()", + "_callable": true, + "_origin": "ast", + "community": 194, + "community_name": ".outputDefined", + "file_type": "code", + "norm_label": ".outputdefined()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cr_getdefault", "label": ".getDefault()", "_callable": true, "_origin": "ast", @@ -14859,7 +15041,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_set", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cr_set", "label": ".set()", "_callable": true, "_origin": "ast", @@ -14871,55 +15053,67 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_br", - "label": ".br()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_canonicalid", + "label": ".canonicalID()", "_callable": true, "_origin": "ast", "community": 199, "community_name": "ur", "file_type": "code", - "norm_label": ".br()", + "norm_label": ".canonicalid()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_geometrytype", + "label": ".geometryType()", "_callable": true, "_origin": "ast", "community": 199, "community_name": "ur", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".geometrytype()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 199, "community_name": "ur", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 199, "community_name": "ur", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_getdefault", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_evaluate", + "label": ".evaluate()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_getdefault", "label": ".getDefault()", "_callable": true, "_origin": "ast", @@ -14931,7 +15125,31 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_set", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_outputdefined", + "label": ".outputDefined()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".outputdefined()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_parse", + "label": ".parse()", + "_callable": true, + "_origin": "ast", + "community": 199, + "community_name": "ur", + "file_type": "code", + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_set", "label": ".set()", "_callable": true, "_origin": "ast", @@ -14943,163 +15161,163 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_shouldbeprevented", - "label": "._shouldBePrevented()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": "._shouldbeprevented()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_wheel", - "label": ".wheel()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": ".wheel()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fr_setdirty", + "label": ".setDirty()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": ".disable()", + "norm_label": ".setdirty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_geometry", + "label": ".geometry()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": ".enable()", + "norm_label": ".geometry()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_fireevent", - "label": "._fireEvent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": "._fireevent()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_keydown", - "label": ".keydown()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_distance", + "label": ".distance()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": ".keydown()", + "norm_label": ".distance()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousedown", - "label": ".mousedown()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": ".mousedown()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": ".reset()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragstart", - "label": ".dragStart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": ".dragstart()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_calculatetransform", - "label": "._calculateTransform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 2, - "community_name": "ni", + "community": 199, + "community_name": "ur", "file_type": "code", - "norm_label": "._calculatetransform()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_hi", + "label": "Hi()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "hi()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_disable", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_disable", "label": ".disable()", "_callable": true, "_origin": "ast", @@ -15111,7 +15329,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_enable", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_enable", "label": ".enable()", "_callable": true, "_origin": "ast", @@ -15123,7 +15341,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_isactive", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_isactive", "label": ".isActive()", "_callable": true, "_origin": "ast", @@ -15135,7 +15353,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_isenabled", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_isenabled", "label": ".isEnabled()", "_callable": true, "_origin": "ast", @@ -15147,386 +15365,386 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_iszooming", + "label": ".isZooming()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".reset()", + "norm_label": ".iszooming()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_shouldbeprevented", - "label": "._shouldBePrevented()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": "._shouldbeprevented()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_touchcancel", - "label": ".touchcancel()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_renderframe", + "label": ".renderFrame()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".touchcancel()", + "norm_label": ".renderframe()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_touchend", - "label": ".touchend()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".touchend()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_touchmove", - "label": ".touchmove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_setwheelzoomrate", + "label": ".setWheelZoomRate()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".touchmove()", + "norm_label": ".setwheelzoomrate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_touchstart", - "label": ".touchstart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_setzoomrate", + "label": ".setZoomRate()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".touchstart()", + "norm_label": ".setzoomrate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_enabledrag", - "label": ".enableDrag()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_shouldbeprevented", + "label": "._shouldBePrevented()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".enabledrag()", + "norm_label": "._shouldbeprevented()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isbypassed", - "label": ".isBypassed()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_smoothouteasing", + "label": "._smoothOutEasing()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".isbypassed()", + "norm_label": "._smoothouteasing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_wheel", + "label": ".wheel()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": ".wheel()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_notifygestureblocked", - "label": ".notifyGestureBlocked()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragstart", + "label": ".dragStart()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".notifygestureblocked()", + "norm_label": ".dragstart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_createtree", - "label": "._createTree()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_calculatetransform", + "label": "._calculateTransform()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": "._createtree()", + "norm_label": "._calculatetransform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_completetask", - "label": "completeTask()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": "completetask()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_constructor", - "label": "constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": "constructor()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createcanvas", - "label": "_createCanvas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": "_createcanvas()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_finish", - "label": "finish()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": "finish()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_gesturebeginsvertically", - "label": ".gestureBeginsVertically()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": ".gesturebeginsvertically()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_move", - "label": "._move()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": "._move()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_shouldbeprevented", + "label": "._shouldBePrevented()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": ".enable()", + "norm_label": "._shouldbeprevented()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchmove", - "label": ".touchmove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_touchcancel", + "label": ".touchcancel()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": ".touchmove()", + "norm_label": ".touchcancel()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ismoving", - "label": "isMoving()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_touchend", + "label": ".touchend()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": "ismoving()", + "norm_label": ".touchend()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_touchmove", + "label": ".touchmove()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".touchmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_touchstart", + "label": ".touchstart()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".touchstart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_getdefaultposition", - "label": ".getDefaultPosition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isbypassed", + "label": ".isBypassed()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": ".getdefaultposition()", + "norm_label": ".isbypassed()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_notifygestureblocked", + "label": ".notifyGestureBlocked()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 2, + "community_name": "ni", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".notifygestureblocked()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_setelementtitle", - "label": "._setElementTitle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_contains", + "label": ".contains()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", - "norm_label": "._setelementtitle()", + "norm_label": ".contains()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_updateattributions", - "label": "._updateAttributions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", - "norm_label": "._updateattributions()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mark", - "label": "mark()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_getdefaultposition", + "label": ".getDefaultPosition()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", - "norm_label": "mark()", + "norm_label": ".getdefaultposition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragmove", - "label": ".dragMove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", - "norm_label": ".dragmove()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_addclassname", - "label": ".addClassName()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", - "norm_label": ".addclassname()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_trackpointer", - "label": ".trackPointer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_setelementtitle", + "label": "._setElementTitle()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", - "norm_label": ".trackpointer()", + "norm_label": "._setelementtitle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_add", - "label": ".add()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_updateattributions", + "label": "._updateAttributions()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", - "norm_label": ".add()", + "norm_label": "._updateattributions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -15536,7 +15754,7 @@ "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -15548,7 +15766,7 @@ "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -15560,7 +15778,7 @@ "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", "norm_label": ".disablerotation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -15572,7 +15790,7 @@ "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -15584,7 +15802,7 @@ "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", "norm_label": ".enablerotation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -15596,7 +15814,7 @@ "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -15608,31 +15826,19 @@ "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_keydown", - "label": ".keydown()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": ".add", - "file_type": "code", - "norm_label": ".keydown()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_remove", "label": ".remove()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -15644,7 +15850,7 @@ "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -15656,129 +15862,81 @@ "_callable": true, "_origin": "ast", "community": 20, - "community_name": ".add", + "community_name": "pi", "file_type": "code", "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_process", - "label": "process()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": ".add", - "file_type": "code", - "norm_label": "process()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_processtask", - "label": "processTask()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": ".add", - "file_type": "code", - "norm_label": "processtask()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_contextmenu", - "label": ".contextmenu()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": ".add", - "file_type": "code", - "norm_label": ".contextmenu()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_receive", - "label": "receive()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": ".add", - "file_type": "code", - "norm_label": "receive()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setuppainter", - "label": "_setupPainter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 202, + "community_name": "ya", "file_type": "code", - "norm_label": "_setuppainter()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_preventdefault", - "label": ".preventDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 202, + "community_name": "ya", "file_type": "code", - "norm_label": ".preventdefault()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_validatebounds", - "label": ".validateBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 202, + "community_name": "ya", "file_type": "code", - "norm_label": ".validatebounds()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_dblclick", - "label": ".dblclick()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 202, + "community_name": "ya", "file_type": "code", - "norm_label": ".dblclick()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_addclassname", - "label": ".addClassName()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 202, + "community_name": "ya", "file_type": "code", - "norm_label": ".addclassname()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchmove", - "label": ".touchmove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 20, - "community_name": ".add", + "community": 202, + "community_name": "ya", "file_type": "code", - "norm_label": ".touchmove()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -15867,256 +16025,556 @@ "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ir", - "label": "Ir()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ir", + "label": "Ir()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "ir()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_je", + "label": "je()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "je()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_jr", + "label": "jr()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "jr()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_lr", + "label": "lr()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "lr()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_m", + "label": "m()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "m()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_no", + "label": "no()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "no()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_rt", + "label": "Rt()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "rt()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_sr", + "label": "Sr()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "sr()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_to", + "label": "to()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "to()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ue", + "label": "ue()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "ue()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_vn", + "label": "Vn()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "vn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_xn", + "label": "Xn()", + "_callable": true, + "_origin": "ast", + "community": 203, + "community_name": "m", + "file_type": "code", + "norm_label": "xn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "packaging_smoke_test_client_call", + "label": ".call()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": ".call()", + "source_file": "packaging/smoke_test.py", + "source_location": "L98" + }, + { + "id": "packaging_smoke_test_client_close", + "label": ".close()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": ".close()", + "source_file": "packaging/smoke_test.py", + "source_location": "L136" + }, + { + "id": "packaging_smoke_test_client_init", + "label": ".__init__()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": ".__init__()", + "source_file": "packaging/smoke_test.py", + "source_location": "L94" + }, + { + "id": "packaging_smoke_test_client_job", + "label": ".job()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": ".job()", + "source_file": "packaging/smoke_test.py", + "source_location": "L126" + }, + { + "id": "tests_test_mcp_prototype_drive", + "label": "drive()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "drive()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L55" + }, + { + "id": "tests_test_mcp_prototype_drive_main", + "label": "main()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "main()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L60" + }, + { + "id": "tests_test_mcp_prototype_drive_main_call", + "label": "call()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "call()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L65" + }, + { + "id": "tests_test_mcp_prototype_prototype", + "label": "prototype()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "prototype()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L32" + }, + { + "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less", + "label": "test_a_default_direction_plot_says_it_drew_less()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_a_default_direction_plot_says_it_drew_less()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L109" + }, + { + "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L112" + }, + { + "id": "tests_test_mcp_prototype_test_availability_is_answered_rather_than_discovered_by_drawing", + "label": "test_availability_is_answered_rather_than_discovered_by_drawing()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_availability_is_answered_rather_than_discovered_by_drawing()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L140" + }, + { + "id": "tests_test_mcp_prototype_test_availability_is_answered_rather_than_discovered_by_drawing_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L141" + }, + { + "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at", + "label": "test_describe_api_follows_the_reference_the_docstring_points_at()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "ir()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "test_describe_api_follows_the_reference_the_docstring_points_at()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L242" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_je", - "label": "je()", + "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "je()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L251" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_jr", - "label": "jr()", + "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it", + "label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "jr()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L263" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_lr", - "label": "lr()", + "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "lr()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L266" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_m", - "label": "m()", + "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy", + "label": "test_describe_api_will_not_import_outside_cellpy()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "m()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": "test_describe_api_will_not_import_outside_cellpy()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L275" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_no", - "label": "no()", + "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "no()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L283" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_rt", - "label": "Rt()", + "id": "tests_test_mcp_prototype_test_new_project_refuses_before_it_writes_anything", + "label": "test_new_project_refuses_before_it_writes_anything()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "rt()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "test_new_project_refuses_before_it_writes_anything()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L310" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_sr", - "label": "Sr()", + "id": "tests_test_mcp_prototype_test_new_project_refuses_before_it_writes_anything_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "sr()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L316" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_to", - "label": "to()", + "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame", + "label": "test_no_tool_returns_a_frame()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "to()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "test_no_tool_returns_a_frame()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L121" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ue", - "label": "ue()", + "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "ue()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L124" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_vn", - "label": "Vn()", + "id": "tests_test_mcp_prototype_test_paths_outside_the_sandbox_are_refused", + "label": "test_paths_outside_the_sandbox_are_refused()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "vn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "test_paths_outside_the_sandbox_are_refused()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L166" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_xn", - "label": "Xn()", + "id": "tests_test_mcp_prototype_test_paths_outside_the_sandbox_are_refused_steps", + "label": "steps()", "_callable": true, "_origin": "ast", - "community": 203, - "community_name": "m", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "xn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L169" }, { - "id": "tests_test_mcp_prototype_drive_main", - "label": "main()", + "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call", + "label": "test_search_api_points_at_the_module_that_defines_the_call()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "main()", + "norm_label": "test_search_api_points_at_the_module_that_defines_the_call()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L60" + "source_location": "L296" }, { - "id": "tests_test_mcp_prototype_drive_main_call", - "label": "call()", + "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call_steps", + "label": "steps()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "call()", + "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L65" + "source_location": "L300" }, { - "id": "tests_test_mcp_prototype_test_availability_is_answered_rather_than_discovered_by_drawing", - "label": "test_availability_is_answered_rather_than_discovered_by_drawing()", + "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented", + "label": "test_the_tool_surface_is_small_and_named_as_documented()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "test_availability_is_answered_rather_than_discovered_by_drawing()", + "norm_label": "test_the_tool_surface_is_small_and_named_as_documented()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L140" + "source_location": "L209" }, { - "id": "tests_test_mcp_prototype_test_availability_is_answered_rather_than_discovered_by_drawing_steps", - "label": "steps()", + "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented_main", + "label": "main()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "steps()", + "norm_label": "main()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L141" + "source_location": "L214" }, { - "id": "tests_test_mcp_prototype_test_new_project_refuses_before_it_writes_anything", - "label": "test_new_project_refuses_before_it_writes_anything()", + "id": "tests_test_mcp_prototype_test_the_whole_arc_over_the_protocol", + "label": "test_the_whole_arc_over_the_protocol()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "test_new_project_refuses_before_it_writes_anything()", + "norm_label": "test_the_whole_arc_over_the_protocol()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L310" + "source_location": "L77" }, { - "id": "tests_test_mcp_prototype_test_new_project_refuses_before_it_writes_anything_steps", + "id": "tests_test_mcp_prototype_test_the_whole_arc_over_the_protocol_steps", "label": "steps()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L316" + "source_location": "L81" }, { - "id": "tests_test_mcp_prototype_test_paths_outside_the_sandbox_are_refused", - "label": "test_paths_outside_the_sandbox_are_refused()", + "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do", + "label": "test_unknown_handles_and_kinds_are_told_what_to_do()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "test_paths_outside_the_sandbox_are_refused()", + "norm_label": "test_unknown_handles_and_kinds_are_told_what_to_do()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L166" + "source_location": "L195" }, { - "id": "tests_test_mcp_prototype_test_paths_outside_the_sandbox_are_refused_steps", + "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do_steps", "label": "steps()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L169" + "source_location": "L198" }, { - "id": "tests_test_mcp_prototype_test_the_whole_arc_over_the_protocol_steps", + "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too", + "label": "test_writes_are_sandboxed_too()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_writes_are_sandboxed_too()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L177" + }, + { + "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too_steps", "label": "steps()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", - "source_location": "L81" + "source_location": "L180" }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_it", @@ -16371,148 +16829,64 @@ "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addcontrol", - "label": "addControl()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "addcontrol()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addimage", - "label": "addImage()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "addimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_draw", - "label": "draw()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "draw()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcanvascontainer", - "label": "getCanvasContainer()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "getcanvascontainer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcontainer", - "label": "getContainer()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "getcontainer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getdefaultposition", - "label": "getDefaultPosition()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "getdefaultposition()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimagecanvascontext", - "label": "getImageCanvasContext()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "getImageData", - "file_type": "code", - "norm_label": "getimagecanvascontext()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimagedata", - "label": "getImageData()", + "id": "tests_test_api_test_cellpy_config_diagnostics_endpoint", + "label": "test_cellpy_config_diagnostics_endpoint()", "_callable": true, "_origin": "ast", "community": 209, - "community_name": "getImageData", + "community_name": "essential", "file_type": "code", - "norm_label": "getimagedata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_cellpy_config_diagnostics_endpoint()", + "source_file": "tests/test_api.py", + "source_location": "L73" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_constructor", - "label": ".constructor()", + "id": "tests_test_api_test_examples", + "label": "test_examples()", "_callable": true, "_origin": "ast", "community": 209, - "community_name": "getImageData", + "community_name": "essential", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_examples()", + "source_file": "tests/test_api.py", + "source_location": "L143" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jn_constructor", - "label": ".constructor()", + "id": "tests_test_api_test_healthz", + "label": "test_healthz()", "_callable": true, "_origin": "ast", "community": 209, - "community_name": "getImageData", + "community_name": "essential", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_healthz()", + "source_file": "tests/test_api.py", + "source_location": "L36" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimage", - "label": ".getImage()", + "id": "tests_test_api_test_served_instance_refuses_paths_outside_its_data_dir", + "label": "test_served_instance_refuses_paths_outside_its_data_dir()", "_callable": true, "_origin": "ast", "community": 209, - "community_name": "getImageData", + "community_name": "essential", "file_type": "code", - "norm_label": ".getimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_served_instance_refuses_paths_outside_its_data_dir()", + "source_file": "tests/test_api.py", + "source_location": "L772" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_onadd", - "label": "onAdd()", + "id": "tests_test_api_test_token_required", + "label": "test_token_required()", "_callable": true, "_origin": "ast", "community": 209, - "community_name": "getImageData", + "community_name": "essential", "file_type": "code", - "norm_label": "onadd()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_token_required()", + "source_file": "tests/test_api.py", + "source_location": "L122" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_anchorx", @@ -16839,1538 +17213,890 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_textboxstartindex", - "label": ".textBoxStartIndex()", - "_callable": true, - "_origin": "ast", - "community": 21, - "community_name": "na", - "file_type": "code", - "norm_label": ".textboxstartindex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_togglepseudofullscreen", - "label": "._togglePseudoFullScreen()", - "_callable": true, - "_origin": "ast", - "community": 21, - "community_name": "na", - "file_type": "code", - "norm_label": "._togglepseudofullscreen()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_updatetitle", - "label": "._updateTitle()", - "_callable": true, - "_origin": "ast", - "community": 21, - "community_name": "na", - "file_type": "code", - "norm_label": "._updatetitle()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_useruntimecollisioncircles", - "label": ".useRuntimeCollisionCircles()", - "_callable": true, - "_origin": "ast", - "community": 21, - "community_name": "na", - "file_type": "code", - "norm_label": ".useruntimecollisioncircles()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticaliconboxendindex", - "label": ".verticalIconBoxEndIndex()", - "_callable": true, - "_origin": "ast", - "community": 21, - "community_name": "na", - "file_type": "code", - "norm_label": ".verticaliconboxendindex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticaliconboxstartindex", - "label": ".verticalIconBoxStartIndex()", - "_callable": true, - "_origin": "ast", - "community": 21, - "community_name": "na", - "file_type": "code", - "norm_label": ".verticaliconboxstartindex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticalplacediconsymbolindex", - "label": ".verticalPlacedIconSymbolIndex()", - "_callable": true, - "_origin": "ast", - "community": 21, - "community_name": "na", - "file_type": "code", - "norm_label": ".verticalplacediconsymbolindex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticalplacedtextsymbolindex", - "label": ".verticalPlacedTextSymbolIndex()", - "_callable": true, - "_origin": "ast", - "community": 21, - "community_name": "na", - "file_type": "code", - "norm_label": ".verticalplacedtextsymbolindex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticaltextboxendindex", - "label": ".verticalTextBoxEndIndex()", - "_callable": true, - "_origin": "ast", - "community": 21, - "community_name": "na", - "file_type": "code", - "norm_label": ".verticaltextboxendindex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticaltextboxstartindex", - "label": ".verticalTextBoxStartIndex()", - "_callable": true, - "_origin": "ast", - "community": 21, - "community_name": "na", - "file_type": "code", - "norm_label": ".verticaltextboxstartindex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_createlayers", - "label": "._createLayers()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": "._createlayers()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_remove", - "label": "._remove()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": "._remove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removelayer", - "label": ".removeLayer()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".removelayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removesource", - "label": ".removeSource()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".removesource()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_parse", - "label": ".parse()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".parse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_add", - "label": ".add()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".add()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_get", - "label": ".get()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_getandremove", - "label": ".getAndRemove()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".getandremove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_getandremovebykey", - "label": "._getAndRemoveByKey()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": "._getandremovebykey()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_getbykey", - "label": ".getByKey()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".getbykey()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_has", - "label": ".has()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".has()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_remove", - "label": ".remove()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_reset", - "label": ".reset()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".reset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_setmaxsize", - "label": ".setMaxSize()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".setmaxsize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_seteventedparent", - "label": ".setEventedParent()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".seteventedparent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_removeimage", - "label": ".removeImage()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".removeimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_off", - "label": "off()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": "off()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_onremove", - "label": "onRemove()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": "onremove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removecontrol", - "label": "removeControl()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": "removecontrol()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_wrapped", - "label": ".wrapped()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": ".wrapped()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_patchupdatedimage", - "label": ".patchUpdatedImage()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".patchupdatedimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_patchupdatedimages", - "label": ".patchUpdatedImages()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".patchupdatedimages()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_transformrequest", - "label": ".transformRequest()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".transformrequest()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_load", - "label": "._load()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": "._load()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadempty", - "label": ".loadEmpty()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".loadempty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadjson", - "label": ".loadJSON()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".loadjson()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadsprite", - "label": "._loadSprite()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": "._loadsprite()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadurl", - "label": ".loadURL()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".loadurl()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_a", - "label": "A()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_dt", - "label": "Dt()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": "dt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimage", - "label": "getImage()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": "getimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setexpirydata", - "label": ".setExpiryData()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".setexpirydata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_load", - "label": ".load()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".load()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_onadd", - "label": ".onAdd()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".onadd()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastile", - "label": ".hasTile()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".hastile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastransition", - "label": ".hasTransition()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".hastransition()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_l", - "label": "l()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_load", - "label": ".load()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".load()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loaded", - "label": ".loaded()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".loaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_o", - "label": "o()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onadd", - "label": ".onAdd()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".onadd()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_textboxstartindex", + "label": ".textBoxStartIndex()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 21, + "community_name": "na", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".textboxstartindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_togglepseudofullscreen", + "label": "._togglePseudoFullScreen()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 21, + "community_name": "na", "file_type": "code", - "norm_label": "s()", + "norm_label": "._togglepseudofullscreen()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_updatetitle", + "label": "._updateTitle()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 21, + "community_name": "na", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "._updatetitle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_setsourceproperty", - "label": ".setSourceProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_useruntimecollisioncircles", + "label": ".useRuntimeCollisionCircles()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 21, + "community_name": "na", "file_type": "code", - "norm_label": ".setsourceproperty()", + "norm_label": ".useruntimecollisioncircles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_settiles", - "label": ".setTiles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticaliconboxendindex", + "label": ".verticalIconBoxEndIndex()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 21, + "community_name": "na", "file_type": "code", - "norm_label": ".settiles()", + "norm_label": ".verticaliconboxendindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_seturl", - "label": ".setUrl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticaliconboxstartindex", + "label": ".verticalIconBoxStartIndex()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 21, + "community_name": "na", "file_type": "code", - "norm_label": ".seturl()", + "norm_label": ".verticaliconboxstartindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_v", - "label": "v()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticalplacediconsymbolindex", + "label": ".verticalPlacedIconSymbolIndex()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 21, + "community_name": "na", "file_type": "code", - "norm_label": "v()", + "norm_label": ".verticalplacediconsymbolindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_aborttile", - "label": ".abortTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticalplacedtextsymbolindex", + "label": ".verticalPlacedTextSymbolIndex()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 21, + "community_name": "na", "file_type": "code", - "norm_label": ".aborttile()", + "norm_label": ".verticalplacedtextsymbolindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_beginframe", - "label": ".beginFrame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticaltextboxendindex", + "label": ".verticalTextBoxEndIndex()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 21, + "community_name": "na", "file_type": "code", - "norm_label": ".beginframe()", + "norm_label": ".verticaltextboxendindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_verticaltextboxstartindex", + "label": ".verticalTextBoxStartIndex()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 21, + "community_name": "na", "file_type": "code", - "norm_label": ".bind()", + "norm_label": ".verticaltextboxstartindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_remove", + "label": "._remove()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "._remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_dispatchrendercallbacks", - "label": ".dispatchRenderCallbacks()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removelayer", + "label": ".removeLayer()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".dispatchrendercallbacks()", + "norm_label": ".removelayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimages", - "label": ".getImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removesource", + "label": ".removeSource()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".getimages()", + "norm_label": ".removesource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimagesforids", - "label": "._getImagesForIds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_add", + "label": ".add()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": "._getimagesforids()", + "norm_label": ".add()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpattern", - "label": ".getPattern()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".getpattern()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpixelsize", - "label": ".getPixelSize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".getpixelsize()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastile", - "label": ".hasTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_getandremove", + "label": ".getAndRemove()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".hastile()", + "norm_label": ".getandremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_getandremovebykey", + "label": "._getAndRemoveByKey()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": "._getandremovebykey()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_isloaded", - "label": ".isLoaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_getbykey", + "label": ".getByKey()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".isloaded()", + "norm_label": ".getbykey()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_listimages", - "label": ".listImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_has", + "label": ".has()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".listimages()", + "norm_label": ".has()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".load()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".loaded()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_setmaxsize", + "label": ".setMaxSize()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": ".setmaxsize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_seteventedparent", + "label": ".setEventedParent()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": "o()", + "norm_label": ".seteventedparent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_removeimage", + "label": ".removeImage()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".removeimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_off", + "label": "off()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": "off()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_onremove", + "label": "onRemove()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": "s()", + "norm_label": "onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removecontrol", + "label": "removeControl()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "removecontrol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setloaded", - "label": ".setLoaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".setloaded()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setsourceproperty", - "label": ".setSourceProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_wrapped", + "label": ".wrapped()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 210, + "community_name": "ft", "file_type": "code", - "norm_label": ".setsourceproperty()", + "norm_label": ".wrapped()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_settiles", - "label": ".setTiles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".settiles()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_seturl", - "label": ".setUrl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_f", + "label": "f()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".seturl()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updateimage", - "label": ".updateImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".updateimage()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updatepatternatlas", - "label": "._updatePatternAtlas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_patchupdatedimage", + "label": ".patchUpdatedImage()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "._updatepatternatlas()", + "norm_label": ".patchupdatedimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_url", - "label": ".url()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_patchupdatedimages", + "label": ".patchUpdatedImages()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".url()", + "norm_label": ".patchupdatedimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loadimage", - "label": "loadImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_calculatefogblendopacity", + "label": ".calculateFogBlendOpacity()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "loadimage()", + "norm_label": ".calculatefogblendopacity()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_d", + "label": "d()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".load()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_play", - "label": ".play()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_getsky", + "label": ".getSky()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".play()", + "norm_label": ".getsky()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_j", - "label": "j()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_settransformrequest", + "label": ".setTransformRequest()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "j()", + "norm_label": ".settransformrequest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k", - "label": "k()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_validate", + "label": "._validate()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "k()", + "norm_label": "._validate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "r()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_on", + "label": ".on()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": ".on()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_p", + "label": "P()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "o()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_finishloading", - "label": "._finishLoading()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimage", + "label": "getImage()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "._finishloading()", + "norm_label": "getimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_aborttile", + "label": ".abortTile()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".aborttile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_beginframe", + "label": ".beginFrame()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".load()", + "norm_label": ".beginframe()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".loaded()", + "norm_label": ".bind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_dispatchrendercallbacks", + "label": ".dispatchRenderCallbacks()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".dispatchrendercallbacks()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimages", + "label": ".getImages()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".getimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimagesforids", + "label": "._getImagesForIds()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "r()", + "norm_label": "._getimagesforids()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpattern", + "label": ".getPattern()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".getpattern()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_setcoordinates", - "label": ".setCoordinates()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpixelsize", + "label": ".getPixelSize()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".setcoordinates()", + "norm_label": ".getpixelsize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastile", + "label": ".hasTile()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "u()", + "norm_label": ".hastile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_updateimage", - "label": ".updateImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".updateimage()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_gettiletexture", - "label": ".getTileTexture()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_isloaded", + "label": ".isLoaded()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".gettiletexture()", + "norm_label": ".isloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_aborttile", - "label": ".abortTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_listimages", + "label": ".listImages()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".aborttile()", + "norm_label": ".listimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterchildren", - "label": ".getClusterChildren()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loaded", + "label": ".loaded()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".getclusterchildren()", + "norm_label": ".loaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterexpansionzoom", - "label": ".getClusterExpansionZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".getclusterexpansionzoom()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterleaves", - "label": ".getClusterLeaves()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".getclusterleaves()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getdata", - "label": ".getData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".getdata()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setloaded", + "label": ".setLoaded()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".setloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updateimage", + "label": ".updateImage()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".load()", + "norm_label": ".updateimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updatepatternatlas", + "label": "._updatePatternAtlas()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".loaded()", + "norm_label": "._updatepatternatlas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validate", + "label": "._validate()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": "._validate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validatecontent", + "label": "._validateContent()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": "._validatecontent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validatestretch", + "label": "._validateStretch()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "._validatestretch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setclusteroptions", - "label": ".setClusterOptions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_update", + "label": ".update()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".setclusteroptions()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setdata", - "label": ".setData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t", + "label": "T()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".setdata()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updatedata", - "label": ".updateData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_w", + "label": "w()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".updatedata()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updateworkerdata", - "label": "._updateWorkerData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "._updateworkerdata()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_updateimage", - "label": "updateImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_rgb", + "label": ".rgb()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "updateimage()", + "norm_label": ".rgb()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zt", + "label": "zt()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "zt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -18399,52 +18125,52 @@ "source_location": "L14" }, { - "id": "tests_test_mcp_prototype_drive", - "label": "drive()", + "id": "tests_test_api_test_api_works_without_pywebview", + "label": "test_api_works_without_pywebview()", "_callable": true, "_origin": "ast", "community": 213, - "community_name": "drive", + "community_name": "_without_webview", "file_type": "code", - "norm_label": "drive()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L55" + "norm_label": "test_api_works_without_pywebview()", + "source_file": "tests/test_api.py", + "source_location": "L707" }, { - "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame", - "label": "test_no_tool_returns_a_frame()", + "id": "tests_test_api_test_desktop_import_failure_names_the_extra", + "label": "test_desktop_import_failure_names_the_extra()", "_callable": true, "_origin": "ast", "community": 213, - "community_name": "drive", + "community_name": "_without_webview", "file_type": "code", - "norm_label": "test_no_tool_returns_a_frame()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L121" + "norm_label": "test_desktop_import_failure_names_the_extra()", + "source_file": "tests/test_api.py", + "source_location": "L738" }, { - "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame_steps", - "label": "steps()", + "id": "tests_test_api_test_native_dialogs_refuse_without_pywebview", + "label": "test_native_dialogs_refuse_without_pywebview()", "_callable": true, "_origin": "ast", "community": 213, - "community_name": "drive", + "community_name": "_without_webview", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L124" + "norm_label": "test_native_dialogs_refuse_without_pywebview()", + "source_file": "tests/test_api.py", + "source_location": "L726" }, { - "id": "tests_test_mcp_prototype_test_the_whole_arc_over_the_protocol", - "label": "test_the_whole_arc_over_the_protocol()", + "id": "tests_test_api_without_webview", + "label": "_without_webview()", "_callable": true, "_origin": "ast", "community": 213, - "community_name": "drive", + "community_name": "_without_webview", "file_type": "code", - "norm_label": "test_the_whole_arc_over_the_protocol()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L77" + "norm_label": "_without_webview()", + "source_file": "tests/test_api.py", + "source_location": "L697" }, { "id": "examples_starter_app_add_cells", @@ -18603,14 +18329,50 @@ "source_location": "L221" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfeaturestate", - "label": ".setFeatureState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_run", + "label": ".run()", + "_callable": true, + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "code", + "norm_label": ".run()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_reloadtile", + "label": ".reloadTile()", "_callable": true, "_origin": "ast", "community": 219, - "community_name": "Pt", + "community_name": ".constructor", "file_type": "code", - "norm_label": ".setfeaturestate()", + "norm_label": ".reloadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isparsed", + "label": "isParsed()", + "_callable": true, + "_origin": "ast", + "community": 219, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "isparsed()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_removetile", + "label": ".removeTile()", + "_callable": true, + "_origin": "ast", + "community": 219, + "community_name": ".constructor", + "file_type": "code", + "norm_label": ".removetile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -18620,7 +18382,7 @@ "_callable": true, "_origin": "ast", "community": 219, - "community_name": "Pt", + "community_name": ".constructor", "file_type": "code", "norm_label": ".coalescechanges()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -18632,19 +18394,31 @@ "_callable": true, "_origin": "ast", "community": 219, - "community_name": "Pt", + "community_name": ".constructor", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_getstate", + "label": ".getState()", + "_callable": true, + "_origin": "ast", + "community": 219, + "community_name": ".constructor", + "file_type": "code", + "norm_label": ".getstate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_initializetilestate", "label": ".initializeTileState()", "_callable": true, "_origin": "ast", "community": 219, - "community_name": "Pt", + "community_name": ".constructor", "file_type": "code", "norm_label": ".initializetilestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -18656,7 +18430,7 @@ "_callable": true, "_origin": "ast", "community": 219, - "community_name": "Pt", + "community_name": ".constructor", "file_type": "code", "norm_label": ".removefeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -18668,429 +18442,489 @@ "_callable": true, "_origin": "ast", "community": 219, - "community_name": "Pt", + "community_name": ".constructor", "file_type": "code", "norm_label": ".updatestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesource", + "label": "removeSource()", + "_callable": true, + "_origin": "ast", + "community": 219, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "removesource()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loadtile", + "label": ".loadTile()", + "_callable": true, + "_origin": "ast", + "community": 219, + "community_name": ".constructor", + "file_type": "code", + "norm_label": ".loadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setfeaturestate", "label": "setFeatureState()", "_callable": true, "_origin": "ast", "community": 219, - "community_name": "Pt", + "community_name": ".constructor", "file_type": "code", "norm_label": "setfeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_continueplacement", - "label": ".continuePlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmethods", + "label": "setMethods()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": "wt", + "community": 219, + "community_name": ".constructor", "file_type": "code", - "norm_label": ".continueplacement()", + "norm_label": "setmethods()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_au", - "label": "au()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_aborttile", + "label": ".abortTile()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": "wt", + "community": 219, + "community_name": ".constructor", "file_type": "code", - "norm_label": "au()", + "norm_label": ".aborttile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_reloadtile", - "label": ".reloadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterchildren", + "label": ".getClusterChildren()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": "wt", + "community": 219, + "community_name": ".constructor", "file_type": "code", - "norm_label": ".reloadtile()", + "norm_label": ".getclusterchildren()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxes", - "label": ".deserializeCollisionBoxes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterexpansionzoom", + "label": ".getClusterExpansionZoom()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": "wt", + "community": 219, + "community_name": ".constructor", "file_type": "code", - "norm_label": ".deserializecollisionboxes()", + "norm_label": ".getclusterexpansionzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxesforsymbol", - "label": "._deserializeCollisionBoxesForSymbol()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterleaves", + "label": ".getClusterLeaves()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": "wt", + "community": 219, + "community_name": ".constructor", "file_type": "code", - "norm_label": "._deserializecollisionboxesforsymbol()", + "norm_label": ".getclusterleaves()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasicondata", - "label": ".hasIconData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getdata", + "label": ".getData()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": "wt", + "community": 219, + "community_name": ".constructor", "file_type": "code", - "norm_label": ".hasicondata()", + "norm_label": ".getdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextdata", - "label": ".hasTextData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": "wt", + "community": 219, + "community_name": ".constructor", "file_type": "code", - "norm_label": ".hastextdata()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isparsed", - "label": "isParsed()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getdemworkersource", + "label": "._getDEMWorkerSource()", + "_callable": true, + "_origin": "ast", + "community": 219, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "._getdemworkersource()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setimages", + "label": "._setImages()", + "_callable": true, + "_origin": "ast", + "community": 219, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "._setimages()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_syncrtlpluginstate", + "label": "._syncRTLPluginState()", + "_callable": true, + "_origin": "ast", + "community": 219, + "community_name": ".constructor", + "file_type": "code", + "norm_label": "._syncrtlpluginstate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_continueplacement", + "label": ".continuePlacement()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "isparsed()", + "norm_label": ".continueplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_removetile", - "label": ".removeTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".removetile()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_getstate", - "label": ".getState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".getstate()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_continueplacement", - "label": ".continuePlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".continueplacement()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmethods", - "label": "setMethods()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oh", + "label": "oh()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "setmethods()", + "norm_label": "oh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_stream", - "label": "stream()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_continueplacement", + "label": ".continuePlacement()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "stream()", + "norm_label": ".continueplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_attemptanchorplacement", - "label": ".attemptAnchorPlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_stream", + "label": "stream()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".attemptanchorplacement()", + "norm_label": "stream()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getavailableimages", - "label": "._getAvailableImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "._getavailableimages()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getbucketparts", - "label": ".getBucketParts()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".getbucketparts()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getdemworkersource", - "label": "._getDEMWorkerSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "._getdemworkersource()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getlayerindex", - "label": "._getLayerIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "._getlayerindex()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getworkersource", - "label": "._getWorkerSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_ishidden", + "label": ".isHidden()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "._getworkersource()", + "norm_label": ".ishidden()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "h()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_hastransitions", - "label": ".hasTransitions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_attemptanchorplacement", + "label": ".attemptAnchorPlacement()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".hastransitions()", + "norm_label": ".attemptanchorplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedjustification", - "label": ".markUsedJustification()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getavailableimages", + "label": "._getAvailableImages()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".markusedjustification()", + "norm_label": "._getavailableimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedorientation", - "label": ".markUsedOrientation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getbucketparts", + "label": ".getBucketParts()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".markusedorientation()", + "norm_label": ".getbucketparts()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_placelayerbucketpart", - "label": ".placeLayerBucketPart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getlayerindex", + "label": "._getLayerIndex()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".placelayerbucketpart()", + "norm_label": "._getlayerindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setimages", - "label": "._setImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getworkersource", + "label": "._getWorkerSource()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "._setimages()", + "norm_label": "._getworkersource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_stillrecent", - "label": ".stillRecent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".stillrecent()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_storecollisiondata", - "label": ".storeCollisionData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_hastransitions", + "label": ".hasTransitions()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".storecollisiondata()", + "norm_label": ".hastransitions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_syncrtlpluginstate", - "label": "._syncRTLPluginState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedjustification", + "label": ".markUsedJustification()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "._syncrtlpluginstate()", + "norm_label": ".markusedjustification()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedorientation", + "label": ".markUsedOrientation()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": "u()", + "norm_label": ".markusedorientation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatebucketopacities", - "label": ".updateBucketOpacities()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_placelayerbucketpart", + "label": ".placeLayerBucketPart()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".updatebucketopacities()", + "norm_label": ".placelayerbucketpart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatelayeropacities", - "label": ".updateLayerOpacities()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_storecollisiondata", + "label": ".storeCollisionData()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".updatelayeropacities()", + "norm_label": ".storecollisiondata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_zoomadjustment", - "label": ".zoomAdjustment()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_haspaintoverride", + "label": ".hasPaintOverride()", "_callable": true, "_origin": "ast", "community": 22, - "community_name": "wt", + "community_name": ".get", "file_type": "code", - "norm_label": ".zoomadjustment()", + "norm_label": ".haspaintoverride()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -19190,6 +19024,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_meta_schema", + "label": "instrument_meta_schema()", + "_callable": true, + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "code", + "norm_label": "instrument_meta_schema()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L220" + }, + { + "id": "src_cellpy_simple_gui_core_collect_apply_colorway", + "label": "_apply_colorway()", + "_callable": true, + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "code", + "norm_label": "_apply_colorway()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1369" + }, { "id": "src_cellpy_simple_gui_core_collect_has_right_facet_strips", "label": "_has_right_facet_strips()", @@ -19200,7 +19058,31 @@ "file_type": "code", "norm_label": "_has_right_facet_strips()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1173" + "source_location": "L1197" + }, + { + "id": "src_cellpy_simple_gui_core_collect_hex_to_rgba", + "label": "_hex_to_rgba()", + "_callable": true, + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "code", + "norm_label": "_hex_to_rgba()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1356" + }, + { + "id": "src_cellpy_simple_gui_core_collect_preserve_full_name_on_hover", + "label": "_preserve_full_name_on_hover()", + "_callable": true, + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "code", + "norm_label": "_preserve_full_name_on_hover()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1153" }, { "id": "src_cellpy_simple_gui_core_collect_restyle", @@ -19212,7 +19094,7 @@ "file_type": "code", "norm_label": "_restyle()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1371" + "source_location": "L1395" }, { "id": "src_cellpy_simple_gui_core_collect_shorten_legend", @@ -19224,19 +19106,19 @@ "file_type": "code", "norm_label": "_shorten_legend()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1145" + "source_location": "L1169" }, { - "id": "src_cellpy_simple_gui_core_library_cellrecord_color", - "label": ".color()", + "id": "src_cellpy_simple_gui_core_collect_tidy_facet_annotations", + "label": "_tidy_facet_annotations()", "_callable": true, "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "code", - "norm_label": ".color()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L73" + "norm_label": "_tidy_facet_annotations()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1209" }, { "id": "tests_test_core_test_grouped_summary_renders", @@ -19263,292 +19145,232 @@ "source_location": "L128" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validate", - "label": "._validate()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": "._validate", - "file_type": "code", - "norm_label": "._validate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validatecontent", - "label": "._validateContent()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": "._validate", - "file_type": "code", - "norm_label": "._validatecontent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validatestretch", - "label": "._validateStretch()", - "_callable": true, - "_origin": "ast", - "community": 223, - "community_name": "._validate", - "file_type": "code", - "norm_label": "._validatestretch()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "packaging_smoke_test_launchedapp_close", - "label": ".close()", - "_callable": true, - "_origin": "ast", - "community": 227, - "community_name": "LaunchedApp", - "file_type": "code", - "norm_label": ".close()", - "source_file": "packaging/smoke_test.py", - "source_location": "L172" - }, - { - "id": "packaging_smoke_test_launchedapp_init", - "label": ".__init__()", - "_callable": true, - "_origin": "ast", - "community": 227, - "community_name": "LaunchedApp", - "file_type": "code", - "norm_label": ".__init__()", - "source_file": "packaging/smoke_test.py", - "source_location": "L143" - }, - { - "id": "packaging_smoke_test_launchedapp_wait_for_url", - "label": ".wait_for_url()", + "id": "examples_mcp_server_collect", + "label": "collect()", "_callable": true, "_origin": "ast", - "community": 227, - "community_name": "LaunchedApp", + "community": 225, + "community_name": "collect", "file_type": "code", - "norm_label": ".wait_for_url()", - "source_file": "packaging/smoke_test.py", - "source_location": "L152" + "norm_label": "collect()", + "source_file": "examples/mcp/server.py", + "source_location": "L296" }, { - "id": "src_cellpy_simple_gui_config_settings_absolute_data_dir", - "label": "._absolute_data_dir()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_apply_physical_meta", + "label": "apply_physical_meta()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "._absolute_data_dir()", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L60" + "norm_label": "apply_physical_meta()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L784" }, { - "id": "src_cellpy_simple_gui_core_library_file_stat", - "label": "file_stat()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta", + "label": "read_meta()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "file_stat()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L30" + "norm_label": "read_meta()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L493" }, { - "id": "src_cellpy_simple_gui_core_library_library_add_cell", - "label": ".add_cell()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta_num", + "label": "_num()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".add_cell()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L115" + "norm_label": "_num()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L502" }, { - "id": "src_cellpy_simple_gui_core_library_library_all", - "label": ".all()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta_safe", + "label": "_safe()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".all()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L275" + "norm_label": "_safe()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L496" }, { - "id": "src_cellpy_simple_gui_core_library_library_clear", - "label": ".clear()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_area", + "label": "set_area()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".clear()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L259" + "norm_label": "set_area()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L826" }, { - "id": "src_cellpy_simple_gui_core_library_library_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_cycle_mode", + "label": "set_cycle_mode()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L271" + "norm_label": "set_cycle_mode()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L841" }, { - "id": "src_cellpy_simple_gui_core_library_library_init", - "label": ".__init__()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_mass", + "label": "set_mass()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".__init__()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L106" + "norm_label": "set_mass()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L821" }, { - "id": "src_cellpy_simple_gui_core_library_library_is_empty", - "label": ".is_empty()", + "id": "src_cellpy_simple_gui_core_library_cellrecord_apply_physical_meta", + "label": "._apply_physical_meta()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".is_empty()", + "norm_label": "._apply_physical_meta()", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L286" + "source_location": "L108" }, { - "id": "src_cellpy_simple_gui_core_library_library_len", - "label": ".__len__()", + "id": "src_cellpy_simple_gui_core_library_library_metas", + "label": ".metas()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".__len__()", + "norm_label": ".metas()", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L283" + "source_location": "L350" }, { - "id": "src_cellpy_simple_gui_core_library_library_mark_clean", - "label": "._mark_clean()", + "id": "src_cellpy_simple_gui_core_library_library_selected", + "label": ".selected()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "._mark_clean()", + "norm_label": ".selected()", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L223" + "source_location": "L341" }, { - "id": "src_cellpy_simple_gui_core_library_library_mark_saved", - "label": ".mark_saved()", + "id": "src_cellpy_simple_gui_core_library_library_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".mark_saved()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L229" + "source_location": "L202" }, { - "id": "src_cellpy_simple_gui_core_library_library_metas", - "label": ".metas()", + "id": "tests_test_api_test_edit_cell", + "label": "test_edit_cell()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".metas()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L289" + "norm_label": "test_edit_cell()", + "source_file": "tests/test_api.py", + "source_location": "L210" }, { - "id": "src_cellpy_simple_gui_core_library_library_n_groups", - "label": ".n_groups()", + "id": "tests_test_api_test_export_cells_cellpy", + "label": "test_export_cells_cellpy()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 227, + "community_name": "_wait_for_job", "file_type": "code", - "norm_label": ".n_groups()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L292" + "norm_label": "test_export_cells_cellpy()", + "source_file": "tests/test_api.py", + "source_location": "L274" }, { - "id": "src_cellpy_simple_gui_core_library_library_remove", - "label": ".remove()", + "id": "tests_test_api_test_job_cancel_running_load", + "label": "test_job_cancel_running_load()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 227, + "community_name": "_wait_for_job", "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L255" + "norm_label": "test_job_cancel_running_load()", + "source_file": "tests/test_api.py", + "source_location": "L132" }, { - "id": "src_cellpy_simple_gui_core_library_library_restore_cell", - "label": ".restore_cell()", + "id": "tests_test_api_test_rename_group", + "label": "test_rename_group()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 227, + "community_name": "_wait_for_job", "file_type": "code", - "norm_label": ".restore_cell()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L138" + "norm_label": "test_rename_group()", + "source_file": "tests/test_api.py", + "source_location": "L241" }, { - "id": "src_cellpy_simple_gui_core_library_library_reusable_data_file", - "label": ".reusable_data_file()", + "id": "tests_test_api_test_served_instance_will_not_load_files_from_the_host", + "label": "test_served_instance_will_not_load_files_from_the_host()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 227, + "community_name": "_wait_for_job", "file_type": "code", - "norm_label": ".reusable_data_file()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L236" + "norm_label": "test_served_instance_will_not_load_files_from_the_host()", + "source_file": "tests/test_api.py", + "source_location": "L788" }, { - "id": "src_cellpy_simple_gui_core_library_library_selected", - "label": ".selected()", + "id": "tests_test_api_wait_for_job", + "label": "_wait_for_job()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "Library", + "community": 227, + "community_name": "_wait_for_job", "file_type": "code", - "norm_label": ".selected()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L279" + "norm_label": "_wait_for_job()", + "source_file": "tests/test_api.py", + "source_location": "L25" }, { - "id": "src_cellpy_simple_gui_core_library_library_set_selection", - "label": ".set_selection()", + "id": "src_cellpy_simple_gui_config_settings_absolute_data_dir", + "label": "._absolute_data_dir()", "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".set_selection()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L265" + "norm_label": "._absolute_data_dir()", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L60" }, { "id": "tests_test_projects_counting_save_cell", @@ -19556,11 +19378,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "_counting_save_cell()", "source_file": "tests/test_projects.py", - "source_location": "L96" + "source_location": "L135" }, { "id": "tests_test_projects_counting_save_cell_counted", @@ -19568,11 +19390,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "counted()", "source_file": "tests/test_projects.py", - "source_location": "L101" + "source_location": "L140" }, { "id": "tests_test_projects_make_project_dir", @@ -19580,11 +19402,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "_make_project_dir()", "source_file": "tests/test_projects.py", - "source_location": "L373" + "source_location": "L412" }, { "id": "tests_test_projects_test_api_save_and_open", @@ -19592,11 +19414,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_api_save_and_open()", "source_file": "tests/test_projects.py", - "source_location": "L313" + "source_location": "L352" }, { "id": "tests_test_projects_test_broken_project_config_does_not_block_open", @@ -19604,11 +19426,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_broken_project_config_does_not_block_open()", "source_file": "tests/test_projects.py", - "source_location": "L421" + "source_location": "L460" }, { "id": "tests_test_projects_test_classify_import_path", @@ -19616,11 +19438,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_classify_import_path()", "source_file": "tests/test_projects.py", - "source_location": "L254" + "source_location": "L293" }, { "id": "tests_test_projects_test_data_dir_defaults_to_home", @@ -19628,11 +19450,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_data_dir_defaults_to_home()", "source_file": "tests/test_projects.py", - "source_location": "L527" + "source_location": "L566" }, { "id": "tests_test_projects_test_data_dir_expands_user_and_relative", @@ -19640,11 +19462,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_data_dir_expands_user_and_relative()", "source_file": "tests/test_projects.py", - "source_location": "L543" + "source_location": "L582" }, { "id": "tests_test_projects_test_data_dir_follows_the_env", @@ -19652,11 +19474,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_data_dir_follows_the_env()", "source_file": "tests/test_projects.py", - "source_location": "L534" + "source_location": "L573" }, { "id": "tests_test_projects_test_diagnostics_reports_project_as_source", @@ -19664,11 +19486,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_diagnostics_reports_project_as_source()", "source_file": "tests/test_projects.py", - "source_location": "L436" + "source_location": "L475" }, { "id": "tests_test_projects_test_discovery_reports_shadowed_legacy", @@ -19676,11 +19498,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_discovery_reports_shadowed_legacy()", "source_file": "tests/test_projects.py", - "source_location": "L497" + "source_location": "L536" }, { "id": "tests_test_projects_test_failed_resave_keeps_previous_project", @@ -19688,11 +19510,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_failed_resave_keeps_previous_project()", "source_file": "tests/test_projects.py", - "source_location": "L64" + "source_location": "L103" }, { "id": "tests_test_projects_test_failed_resave_keeps_previous_project_boom", @@ -19700,11 +19522,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "boom()", "source_file": "tests/test_projects.py", - "source_location": "L73" + "source_location": "L112" }, { "id": "tests_test_projects_test_open_missing_raises", @@ -19712,35 +19534,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_open_missing_raises()", "source_file": "tests/test_projects.py", - "source_location": "L249" - }, - { - "id": "tests_test_projects_test_open_via_project_json_file_and_absolute_path", - "label": "test_open_via_project_json_file_and_absolute_path()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "code", - "norm_label": "test_open_via_project_json_file_and_absolute_path()", - "source_file": "tests/test_projects.py", - "source_location": "L277" - }, - { - "id": "tests_test_projects_test_opened_cells_start_clean_and_dirty_on_edit", - "label": "test_opened_cells_start_clean_and_dirty_on_edit()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "code", - "norm_label": "test_opened_cells_start_clean_and_dirty_on_edit()", - "source_file": "tests/test_projects.py", - "source_location": "L227" + "source_location": "L288" }, { "id": "tests_test_projects_test_pin_project_config_round_trips", @@ -19748,11 +19546,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_pin_project_config_round_trips()", "source_file": "tests/test_projects.py", - "source_location": "L476" + "source_location": "L515" }, { "id": "tests_test_projects_test_pin_project_config_writes_safe_sections", @@ -19760,11 +19558,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_pin_project_config_writes_safe_sections()", "source_file": "tests/test_projects.py", - "source_location": "L450" + "source_location": "L489" }, { "id": "tests_test_projects_test_project_config_activates_and_restores", @@ -19772,11 +19570,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_project_config_activates_and_restores()", "source_file": "tests/test_projects.py", - "source_location": "L382" + "source_location": "L421" }, { "id": "tests_test_projects_test_project_without_config_drops_previous", @@ -19784,11 +19582,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_project_without_config_drops_previous()", "source_file": "tests/test_projects.py", - "source_location": "L401" + "source_location": "L440" }, { "id": "tests_test_projects_test_projects_land_under_the_configured_data_dir", @@ -19796,11 +19594,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_projects_land_under_the_configured_data_dir()", "source_file": "tests/test_projects.py", - "source_location": "L567" + "source_location": "L606" }, { "id": "tests_test_projects_test_reading_settings_creates_nothing", @@ -19808,11 +19606,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_reading_settings_creates_nothing()", "source_file": "tests/test_projects.py", - "source_location": "L556" + "source_location": "L595" }, { "id": "tests_test_projects_test_resave_reuses_unchanged_cells", @@ -19820,11 +19618,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_resave_reuses_unchanged_cells()", "source_file": "tests/test_projects.py", - "source_location": "L110" + "source_location": "L149" }, { "id": "tests_test_projects_test_resave_rewrites_cells_whose_data_changed", @@ -19832,11 +19630,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_resave_rewrites_cells_whose_data_changed()", "source_file": "tests/test_projects.py", - "source_location": "L136" + "source_location": "L175" }, { "id": "tests_test_projects_test_reuse_declines_when_file_changed_on_disk", @@ -19844,11 +19642,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_reuse_declines_when_file_changed_on_disk()", "source_file": "tests/test_projects.py", - "source_location": "L152" + "source_location": "L191" }, { "id": "tests_test_projects_test_reuse_declines_when_file_is_missing", @@ -19856,11 +19654,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_reuse_declines_when_file_is_missing()", "source_file": "tests/test_projects.py", - "source_location": "L175" + "source_location": "L214" }, { "id": "tests_test_projects_test_reused_project_reopens_intact", @@ -19868,23 +19666,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_reused_project_reopens_intact()", "source_file": "tests/test_projects.py", - "source_location": "L210" - }, - { - "id": "tests_test_projects_test_save_as_new_project_still_copies_every_cell", - "label": "test_save_as_new_project_still_copies_every_cell()", - "_callable": true, - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "code", - "norm_label": "test_save_as_new_project_still_copies_every_cell()", - "source_file": "tests/test_projects.py", - "source_location": "L190" + "source_location": "L249" }, { "id": "tests_test_projects_test_save_open_roundtrip", @@ -19892,7 +19678,7 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_save_open_roundtrip()", "source_file": "tests/test_projects.py", @@ -19904,11 +19690,11 @@ "_callable": true, "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "_wait()", "source_file": "tests/test_projects.py", - "source_location": "L303" + "source_location": "L342" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_loadvectortile", @@ -20006,30 +19792,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisionbox", - "label": ".insertCollisionBox()", - "_callable": true, - "_origin": "ast", - "community": 230, - "community_name": "bt", - "file_type": "code", - "norm_label": ".insertcollisionbox()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisioncircles", - "label": ".insertCollisionCircles()", - "_callable": true, - "_origin": "ast", - "community": 230, - "community_name": "bt", - "file_type": "code", - "norm_label": ".insertcollisioncircles()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_isinsidegrid", "label": ".isInsideGrid()", @@ -20306,18 +20068,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insert", - "label": ".insert()", - "_callable": true, - "_origin": "ast", - "community": 233, - "community_name": "Ki", - "file_type": "code", - "norm_label": ".insert()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insertcell", "label": "._insertCell()", @@ -20342,18 +20092,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_query", - "label": ".query()", - "_callable": true, - "_origin": "ast", - "community": 233, - "community_name": "Ki", - "file_type": "code", - "norm_label": ".query()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_querycell", "label": "._queryCell()", @@ -20390,6 +20128,78 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_querysourcefeatures", + "label": ".querySourceFeatures()", + "_callable": true, + "_origin": "ast", + "community": 234, + "community_name": ".getRenderableIds", + "file_type": "code", + "norm_label": ".querysourcefeatures()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateplacement", + "label": "._updatePlacement()", + "_callable": true, + "_origin": "ast", + "community": 234, + "community_name": ".getRenderableIds", + "file_type": "code", + "norm_label": "._updateplacement()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getrenderableids", + "label": ".getRenderableIds()", + "_callable": true, + "_origin": "ast", + "community": 234, + "community_name": ".getRenderableIds", + "file_type": "code", + "norm_label": ".getrenderableids()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_querysourcefeatures", + "label": "querySourceFeatures()", + "_callable": true, + "_origin": "ast", + "community": 234, + "community_name": ".getRenderableIds", + "file_type": "code", + "norm_label": "querysourcefeatures()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_islessthan", + "label": ".isLessThan()", + "_callable": true, + "_origin": "ast", + "community": 234, + "community_name": ".getRenderableIds", + "file_type": "code", + "norm_label": ".islessthan()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setstale", + "label": ".setStale()", + "_callable": true, + "_origin": "ast", + "community": 234, + "community_name": ".getRenderableIds", + "file_type": "code", + "norm_label": ".setstale()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_bn", "label": "Bn()", @@ -20451,134 +20261,182 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_clone", - "label": ".clone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_createbucket", + "label": ".createBucket()", "_callable": true, "_origin": "ast", "community": 237, - "community_name": "ls", + "community_name": "ps", "file_type": "code", - "norm_label": ".clone()", + "norm_label": ".createbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_hasoffscreenpass", + "label": ".hasOffscreenPass()", "_callable": true, "_origin": "ast", "community": 237, - "community_name": "ls", + "community_name": "ps", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".hasoffscreenpass()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_replace", - "label": ".replace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_queryintersectsfeature", + "label": ".queryIntersectsFeature()", "_callable": true, "_origin": "ast", "community": 237, - "community_name": "ls", + "community_name": "ps", "file_type": "code", - "norm_label": ".replace()", + "norm_label": ".queryintersectsfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_resize", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_queryradius", + "label": ".queryRadius()", + "_callable": true, + "_origin": "ast", + "community": 237, + "community_name": "ps", + "file_type": "code", + "norm_label": ".queryradius()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_resize", "label": ".resize()", "_callable": true, "_origin": "ast", "community": 237, - "community_name": "ls", + "community_name": "ps", "file_type": "code", "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_run", - "label": ".run()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_csv", + "label": "export_cell_csv()", + "_callable": true, + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "code", + "norm_label": "export_cell_csv()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L755" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_save_cell", + "label": "save_cell()", + "_callable": true, + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "code", + "norm_label": "save_cell()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L741" + }, + { + "id": "src_cellpy_simple_gui_core_export_export_one_cell", + "label": "_export_one_cell()", + "_callable": true, + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "code", + "norm_label": "_export_one_cell()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L233" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community_name": "se", "file_type": "code", - "norm_label": ".run()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bu", - "label": "Bu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 239, + "community_name": "se", "file_type": "code", - "norm_label": "bu()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 239, + "community_name": "se", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_addto", - "label": ".addTo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 239, + "community_name": "se", "file_type": "code", - "norm_label": ".addto()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_createclosebutton", - "label": "._createCloseButton()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 239, + "community_name": "se", "file_type": "code", - "norm_label": "._createclosebutton()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_focusfirstelement", - "label": "._focusFirstElement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_createclosebutton", + "label": "._createCloseButton()", "_callable": true, "_origin": "ast", "community": 24, "community_name": "oa", "file_type": "code", - "norm_label": "._focusfirstelement()", + "norm_label": "._createclosebutton()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getcrossfadeparameters", - "label": ".getCrossfadeParameters()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_focusfirstelement", + "label": "._focusFirstElement()", "_callable": true, "_origin": "ast", "community": 24, "community_name": "oa", "file_type": "code", - "norm_label": ".getcrossfadeparameters()", + "norm_label": "._focusfirstelement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -20859,26 +20717,62 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": ".get", + "community": 240, + "community_name": "sr", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": ".get", + "community": 240, + "community_name": "sr", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_pointonline", + "label": ".pointOnLine()", + "_callable": true, + "_origin": "ast", + "community": 240, + "community_name": "sr", + "file_type": "code", + "norm_label": ".pointonline()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 240, + "community_name": "sr", + "file_type": "code", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_wrap", + "label": ".wrap()", + "_callable": true, + "_origin": "ast", + "community": 240, + "community_name": "sr", + "file_type": "code", + "norm_label": ".wrap()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -20888,7 +20782,7 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -20900,7 +20794,7 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -20912,45 +20806,45 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_calculateglyphdependencies", - "label": ".calculateGlyphDependencies()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".calculateglyphdependencies()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eh", + "label": "eh()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".populate()", + "norm_label": "eh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -20960,21 +20854,21 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", "norm_label": "fl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_go", - "label": "Go()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hu", + "label": "hu()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": "go()", + "norm_label": "hu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -20984,7 +20878,7 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", "norm_label": ".getvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -20996,69 +20890,69 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeature", - "label": ".addFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".addfeature()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeatures", - "label": ".addFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_equals", + "label": ".equals()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".addfeatures()", + "norm_label": ".equals()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_gettilepoint", + "label": ".getTilePoint()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".populate()", + "norm_label": ".gettilepoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_ischildof", + "label": ".isChildOf()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".ischildof()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_isconstant", - "label": ".isConstant()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".isconstant()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -21068,285 +20962,297 @@ "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ml", - "label": "Ml()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": "ml()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_addfeatures", - "label": ".addFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".addfeatures()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".populate()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ns", - "label": "Ns()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_calculate", + "label": "._calculate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": "ns()", + "norm_label": "._calculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".populate()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sl", - "label": "Sl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_interpolate", + "label": ".interpolate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": "sl()", + "norm_label": ".interpolate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_backfillborder", + "label": ".backfillBorder()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".populate()", + "norm_label": ".backfillborder()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insert", - "label": ".insert()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".insert()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xu", - "label": "xu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getpixels", + "label": ".getPixels()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": "xu()", + "norm_label": ".getpixels()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yc", - "label": "yc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getunpackvector", + "label": ".getUnpackVector()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": "yc()", + "norm_label": ".getunpackvector()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zh", - "label": "zh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_idx", + "label": "._idx()", "_callable": true, "_origin": "ast", "community": 241, - "community_name": ".get", + "community_name": ".evaluate", "file_type": "code", - "norm_label": "zh()", + "norm_label": "._idx()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_pn", - "label": "Pn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_unpack", + "label": ".unpack()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "pn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": ".unpack()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_distancex", - "label": ".distanceX()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_interpolationfactor", + "label": ".interpolationFactor()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".distancex()", + "norm_label": ".interpolationfactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_distancey", - "label": ".distanceY()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_calculatescaledkey", + "label": ".calculateScaledKey()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".distancey()", + "norm_label": ".calculatescaledkey()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_intersects", - "label": ".intersects()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".intersects()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_quadrant", - "label": ".quadrant()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".quadrant()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_pointcoordinate", - "label": ".pointCoordinate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".pointcoordinate()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_tilesin", - "label": ".tilesIn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zh", + "label": "zh()", + "_callable": true, + "_origin": "ast", + "community": 241, + "community_name": ".evaluate", + "file_type": "code", + "norm_label": "zh()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getelevationforlnglatzoom", + "label": ".getElevationForLngLatZoom()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".tilesin()", + "norm_label": ".getelevationforlnglatzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getglyphs", - "label": ".getGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getoverscaledtileidfromlnglatzoom", + "label": "._getOverscaledTileIDFromLngLatZoom()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".getglyphs()", + "norm_label": "._getoverscaledtileidfromlnglatzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -21387,110 +21293,98 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_center", - "label": ".center()", - "_callable": true, - "_origin": "ast", - "community": 244, - "community_name": "En", - "file_type": "code", - "norm_label": ".center()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_centeroffset", - "label": ".centerOffset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatefogmatrix", + "label": ".calculateFogMatrix()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".centeroffset()", + "norm_label": ".calculatefogmatrix()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_centerpoint", - "label": ".centerPoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatetilematrix", + "label": ".calculateTileMatrix()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".centerpoint()", + "norm_label": ".calculatetilematrix()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_clone", - "label": ".clone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_center", + "label": ".center()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".clone()", + "norm_label": ".center()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_constrain", - "label": "._constrain()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_centeroffset", + "label": ".centerOffset()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": "._constrain()", + "norm_label": ".centeroffset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coordinatelocation", - "label": ".coordinateLocation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_centerpoint", + "label": ".centerPoint()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".coordinatelocation()", + "norm_label": ".centerpoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coordinatepoint", - "label": ".coordinatePoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_constrain", + "label": "._constrain()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".coordinatepoint()", + "norm_label": "._constrain()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coveringtiles", - "label": ".coveringTiles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coordinatelocation", + "label": ".coordinateLocation()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".coveringtiles()", + "norm_label": ".coordinatelocation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coveringzoomlevel", - "label": ".coveringZoomLevel()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coordinatepoint", + "label": ".coordinatePoint()", "_callable": true, "_origin": "ast", "community": 244, "community_name": "En", "file_type": "code", - "norm_label": ".coveringzoomlevel()", + "norm_label": ".coordinatepoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -21566,18 +21460,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getcameraquerygeometry", - "label": ".getCameraQueryGeometry()", - "_callable": true, - "_origin": "ast", - "community": 244, - "community_name": "En", - "file_type": "code", - "norm_label": ".getcameraquerygeometry()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_gethorizon", "label": ".getHorizon()", @@ -21602,30 +21484,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getvisibleunwrappedcoordinates", - "label": ".getVisibleUnwrappedCoordinates()", - "_callable": true, - "_origin": "ast", - "community": 244, - "community_name": "En", - "file_type": "code", - "norm_label": ".getvisibleunwrappedcoordinates()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_interpolatepadding", - "label": ".interpolatePadding()", - "_callable": true, - "_origin": "ast", - "community": 244, - "community_name": "En", - "file_type": "code", - "norm_label": ".interpolatepadding()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_lnglattocameradepth", "label": ".lngLatToCameraDepth()", @@ -21734,18 +21592,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pointcoordinate", - "label": ".pointCoordinate()", - "_callable": true, - "_origin": "ast", - "community": 244, - "community_name": "En", - "file_type": "code", - "norm_label": ".pointcoordinate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pointlocation", "label": ".pointLocation()", @@ -21794,18 +21640,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_setlocationatpoint", - "label": ".setLocationAtPoint()", - "_callable": true, - "_origin": "ast", - "community": 244, - "community_name": "En", - "file_type": "code", - "norm_label": ".setlocationatpoint()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_unmodified", "label": ".unmodified()", @@ -21854,30 +21688,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_hasvalue", - "label": ".hasValue()", - "_callable": true, - "_origin": "ast", - "community": 244, - "community_name": "En", - "file_type": "code", - "norm_label": ".hasvalue()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_gettilepoint", - "label": ".getTilePoint()", - "_callable": true, - "_origin": "ast", - "community": 244, - "community_name": "En", - "file_type": "code", - "norm_label": ".gettilepoint()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_tolnglat", "label": ".toLngLat()", @@ -21903,148 +21713,196 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createdelegatedlistener", - "label": "_createDelegatedListener()", + "id": "tests_test_api_add_cells_modal_html", + "label": "_add_cells_modal_html()", "_callable": true, "_origin": "ast", "community": 245, - "community_name": "once", + "community_name": "test_default_visible_hint_budget", "file_type": "code", - "norm_label": "_createdelegatedlistener()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_add_cells_modal_html()", + "source_file": "tests/test_api.py", + "source_location": "L612" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_once", - "label": ".once()", + "id": "tests_test_api_template_html", + "label": "_template_html()", "_callable": true, "_origin": "ast", "community": 245, - "community_name": "once", + "community_name": "test_default_visible_hint_budget", "file_type": "code", - "norm_label": ".once()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_template_html()", + "source_file": "tests/test_api.py", + "source_location": "L544" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_once", - "label": "once()", + "id": "tests_test_api_test_add_cells_modal_has_one_primary_action", + "label": "test_add_cells_modal_has_one_primary_action()", "_callable": true, "_origin": "ast", "community": 245, - "community_name": "once", + "community_name": "test_default_visible_hint_budget", "file_type": "code", - "norm_label": "once()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_add_cells_modal_has_one_primary_action()", + "source_file": "tests/test_api.py", + "source_location": "L619" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_queryrenderedfeatures", - "label": "queryRenderedFeatures()", + "id": "tests_test_api_test_default_visible_hint_budget", + "label": "test_default_visible_hint_budget()", "_callable": true, "_origin": "ast", "community": 245, - "community_name": "once", + "community_name": "test_default_visible_hint_budget", "file_type": "code", - "norm_label": "queryrenderedfeatures()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_default_visible_hint_budget()", + "source_file": "tests/test_api.py", + "source_location": "L673" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hu", - "label": "hu()", + "id": "tests_test_api_component_names", + "label": "_component_names()", "_callable": true, "_origin": "ast", "community": 246, - "community_name": "pu", + "community_name": "test_index_click_and_show_targets_exist", "file_type": "code", - "norm_label": "hu()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_component_names()", + "source_file": "tests/test_api.py", + "source_location": "L550" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_constructor", - "label": ".constructor()", + "id": "tests_test_api_free_identifiers", + "label": "_free_identifiers()", "_callable": true, "_origin": "ast", "community": 246, - "community_name": "pu", + "community_name": "test_index_click_and_show_targets_exist", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_free_identifiers()", + "source_file": "tests/test_api.py", + "source_location": "L566" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_serialize", - "label": ".serialize()", + "id": "tests_test_api_test_index_click_and_show_targets_exist", + "label": "test_index_click_and_show_targets_exist()", "_callable": true, "_origin": "ast", "community": 246, - "community_name": "pu", + "community_name": "test_index_click_and_show_targets_exist", "file_type": "code", - "norm_label": ".serialize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_index_click_and_show_targets_exist()", + "source_file": "tests/test_api.py", + "source_location": "L588" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_constructor", - "label": ".constructor()", + "id": "tests_test_api_dva_spec", + "label": "_dva_spec()", "_callable": true, "_origin": "ast", "community": 248, - "community_name": ".constructor", + "community_name": "_dva_spec", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_dva_spec()", + "source_file": "tests/test_api.py", + "source_location": "L324" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplace", - "label": ".emplace()", + "id": "tests_test_api_test_dva_endpoints_need_no_dev_mode", + "label": "test_dva_endpoints_need_no_dev_mode()", "_callable": true, "_origin": "ast", "community": 248, - "community_name": ".constructor", + "community_name": "_dva_spec", "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_dva_endpoints_need_no_dev_mode()", + "source_file": "tests/test_api.py", + "source_location": "L335" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_refreshviews", - "label": "._refreshViews()", + "id": "tests_test_api_test_raw_and_cycle_info_are_dev_only", + "label": "test_raw_and_cycle_info_are_dev_only()", "_callable": true, "_origin": "ast", "community": 248, - "community_name": ".constructor", + "community_name": "_dva_spec", "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_raw_and_cycle_info_are_dev_only()", + "source_file": "tests/test_api.py", + "source_location": "L371" }, { - "id": "examples_mcp_server_list_instruments", - "label": "list_instruments()", + "id": "tests_test_api_test_raw_and_cycle_info_in_dev_mode", + "label": "test_raw_and_cycle_info_in_dev_mode()", + "_callable": true, + "_origin": "ast", + "community": 248, + "community_name": "_dva_spec", + "file_type": "code", + "norm_label": "test_raw_and_cycle_info_in_dev_mode()", + "source_file": "tests/test_api.py", + "source_location": "L390" + }, + { + "id": "tests_test_packaging_load_entry", + "label": "_load_entry()", "_callable": true, "_origin": "ast", "community": 249, - "community_name": "list_instruments", + "community_name": "_load_entry", "file_type": "code", - "norm_label": "list_instruments()", - "source_file": "examples/mcp/server.py", - "source_location": "L177" + "norm_label": "_load_entry()", + "source_file": "tests/test_packaging.py", + "source_location": "L29" }, { - "id": "examples_mcp_server_list_instruments_arbin_res_readable", - "label": "arbin_res_readable()", + "id": "tests_test_packaging_test_crash_goes_to_stderr_when_there_is_a_console", + "label": "test_crash_goes_to_stderr_when_there_is_a_console()", "_callable": true, "_origin": "ast", "community": 249, - "community_name": "list_instruments", + "community_name": "_load_entry", "file_type": "code", - "norm_label": "arbin_res_readable()", - "source_file": "examples/mcp/server.py", - "source_location": "L184" + "norm_label": "test_crash_goes_to_stderr_when_there_is_a_console()", + "source_file": "tests/test_packaging.py", + "source_location": "L100" + }, + { + "id": "tests_test_packaging_test_crash_report_is_written_and_the_dialog_names_it", + "label": "test_crash_report_is_written_and_the_dialog_names_it()", + "_callable": true, + "_origin": "ast", + "community": 249, + "community_name": "_load_entry", + "file_type": "code", + "norm_label": "test_crash_report_is_written_and_the_dialog_names_it()", + "source_file": "tests/test_packaging.py", + "source_location": "L80" + }, + { + "id": "tests_test_packaging_test_crash_reporter_agrees_with_the_app_on_where_logs_go", + "label": "test_crash_reporter_agrees_with_the_app_on_where_logs_go()", + "_callable": true, + "_origin": "ast", + "community": 249, + "community_name": "_load_entry", + "file_type": "code", + "norm_label": "test_crash_reporter_agrees_with_the_app_on_where_logs_go()", + "source_file": "tests/test_packaging.py", + "source_location": "L37" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_au", + "label": "au()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": "au()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bl", @@ -22178,6 +22036,42 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_createarrays", + "label": ".createArrays()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".createarrays()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxes", + "label": ".deserializeCollisionBoxes()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".deserializecollisionboxes()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxesforsymbol", + "label": "._deserializeCollisionBoxesForSymbol()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": "._deserializecollisionboxesforsymbol()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_destroy", "label": ".destroy()", @@ -22251,110 +22145,110 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextcollisionboxdata", - "label": ".hasTextCollisionBoxData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasicondata", + "label": ".hasIconData()", "_callable": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": ".hastextcollisionboxdata()", + "norm_label": ".hasicondata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextcollisionboxdata", + "label": ".hasTextCollisionBoxData()", "_callable": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": ".hastextcollisionboxdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_sortfeatures", - "label": ".sortFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextdata", + "label": ".hasTextData()", "_callable": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": ".sortfeatures()", + "norm_label": ".hastextdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_upload", - "label": ".upload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": ".upload()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_preparesegment", - "label": ".prepareSegment()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_sortfeatures", + "label": ".sortFeatures()", "_callable": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": ".preparesegment()", + "norm_label": ".sortfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_equals", - "label": ".equals()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_upload", + "label": ".upload()", "_callable": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": ".equals()", + "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_gettilepoint", - "label": ".getTilePoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_preparesegment", + "label": ".prepareSegment()", "_callable": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": ".gettilepoint()", + "norm_label": ".preparesegment()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_ischildof", - "label": ".isChildOf()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_hasvalue", + "label": ".hasValue()", "_callable": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": ".ischildof()", + "norm_label": ".hasvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -22430,6 +22324,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_destroy", + "label": ".destroy()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_addimagesection", "label": ".addImageSection()", @@ -22610,6 +22528,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatebucketopacities", + "label": ".updateBucketOpacities()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".updatebucketopacities()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatelayeropacities", + "label": ".updateLayerOpacities()", + "_callable": true, + "_origin": "ast", + "community": 25, + "community_name": "eu", + "file_type": "code", + "norm_label": ".updatelayeropacities()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_constructor", "label": ".constructor()", @@ -22766,30 +22708,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less", - "label": "test_a_default_direction_plot_says_it_drew_less()", - "_callable": true, - "_origin": "ast", - "community": 256, - "community_name": "test_a_default_direction_plot_says_it_drew_less", - "file_type": "code", - "norm_label": "test_a_default_direction_plot_says_it_drew_less()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L109" - }, - { - "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less_steps", - "label": "steps()", - "_callable": true, - "_origin": "ast", - "community": 256, - "community_name": "test_a_default_direction_plot_says_it_drew_less", - "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L112" - }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_gn", "label": "Gn()", @@ -22911,52 +22829,112 @@ "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too", - "label": "test_writes_are_sandboxed_too()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_ft", + "label": "Ft()", "_callable": true, "_origin": "ast", "community": 258, - "community_name": "test_writes_are_sandboxed_too", + "community_name": "Ft", "file_type": "code", - "norm_label": "test_writes_are_sandboxed_too()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L177" + "norm_label": "ft()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 258, - "community_name": "test_writes_are_sandboxed_too", + "community_name": "Ft", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L180" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do", - "label": "test_unknown_handles_and_kinds_are_told_what_to_do()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hcl", + "label": ".hcl()", + "_callable": true, + "_origin": "ast", + "community": 258, + "community_name": "Ft", + "file_type": "code", + "norm_label": ".hcl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_lab", + "label": ".lab()", + "_callable": true, + "_origin": "ast", + "community": 258, + "community_name": "Ft", + "file_type": "code", + "norm_label": ".lab()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_overwritegetter", + "label": ".overwriteGetter()", + "_callable": true, + "_origin": "ast", + "community": 258, + "community_name": "Ft", + "file_type": "code", + "norm_label": ".overwritegetter()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "tests_test_api_default_visible_hints", + "label": "_default_visible_hints()", "_callable": true, "_origin": "ast", "community": 259, - "community_name": "test_unknown_handles_and_kinds_are_told_what_to_do", + "community_name": "_default_visible_hints", "file_type": "code", - "norm_label": "test_unknown_handles_and_kinds_are_told_what_to_do()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L195" + "norm_label": "_default_visible_hints()", + "source_file": "tests/test_api.py", + "source_location": "L631" }, { - "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do_steps", - "label": "steps()", + "id": "tests_test_api_default_visible_hints_handle_endtag", + "label": "handle_endtag()", "_callable": true, "_origin": "ast", "community": 259, - "community_name": "test_unknown_handles_and_kinds_are_told_what_to_do", + "community_name": "_default_visible_hints", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L198" + "norm_label": "handle_endtag()", + "source_file": "tests/test_api.py", + "source_location": "L663" + }, + { + "id": "tests_test_api_default_visible_hints_handle_starttag", + "label": "handle_starttag()", + "_callable": true, + "_origin": "ast", + "community": 259, + "community_name": "_default_visible_hints", + "file_type": "code", + "norm_label": "handle_starttag()", + "source_file": "tests/test_api.py", + "source_location": "L649" + }, + { + "id": "tests_test_api_default_visible_hints_init", + "label": "__init__()", + "_callable": true, + "_origin": "ast", + "community": 259, + "community_name": "_default_visible_hints", + "file_type": "code", + "norm_label": "__init__()", + "source_file": "tests/test_api.py", + "source_location": "L643" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_a", @@ -22964,7 +22942,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -22976,31 +22954,19 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".pop()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_push", - "label": ".push()", - "_callable": true, - "_origin": "ast", - "community": 26, - "community_name": ".push", - "file_type": "code", - "norm_label": ".push()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_acquire", "label": ".acquire()", "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".acquire()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23012,7 +22978,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "._addtilefeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23024,7 +22990,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "._appendleaves()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23036,7 +23002,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "._cluster()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23048,19 +23014,31 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_createtree", + "label": "._createTree()", + "_callable": true, + "_origin": "ast", + "community": 26, + "community_name": "b", + "file_type": "code", + "norm_label": "._createtree()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getchildren", "label": ".getChildren()", "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".getchildren()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23072,7 +23050,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".getclusterexpansionzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23084,7 +23062,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".getclusters()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23096,7 +23074,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".getleaves()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23108,7 +23086,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "._getoriginid()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23120,7 +23098,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "._getoriginzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23132,7 +23110,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".gettile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23144,7 +23122,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".ispreloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23156,7 +23134,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "._limitzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23168,7 +23146,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23180,7 +23158,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "._map()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23192,7 +23170,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".numactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23204,7 +23182,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".release()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23216,7 +23194,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".queryrenderedsymbols()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23228,7 +23206,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "._flattenandsortrenderedfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23240,7 +23218,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".queryrenderedfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23252,105 +23230,45 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".maxpitchscalefactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfeaturestate", - "label": "getFeatureState()", - "_callable": true, - "_origin": "ast", - "community": 26, - "community_name": ".push", - "file_type": "code", - "norm_label": "getfeaturestate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 26, - "community_name": ".push", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 26, - "community_name": ".push", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_e", - "label": "e()", - "_callable": true, - "_origin": "ast", - "community": 26, - "community_name": ".push", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_get", - "label": ".get()", - "_callable": true, - "_origin": "ast", - "community": 26, - "community_name": ".push", - "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_gettile", - "label": ".getTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_size", + "label": ".size()", "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", - "norm_label": ".gettile()", + "norm_label": ".size()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_splittile", - "label": ".splitTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfeaturestate", + "label": "getFeatureState()", "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", - "norm_label": ".splittile()", + "norm_label": "getfeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", - "norm_label": "r()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -23360,105 +23278,69 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": ".within()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_e", - "label": "e()", - "_callable": true, - "_origin": "ast", - "community": 26, - "community_name": ".push", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_t", - "label": "T()", - "_callable": true, - "_origin": "ast", - "community": 26, - "community_name": ".push", - "file_type": "code", - "norm_label": "t()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_c", "label": "c()", "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_p", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p", "label": "P()", "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_s", - "label": "s()", - "_callable": true, - "_origin": "ast", - "community": 26, - "community_name": ".push", - "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_a", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_a", "label": "a()", "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_querycell", - "label": "._queryCell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", - "norm_label": "._querycell()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_gettiletexture", + "label": ".getTileTexture()", "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", - "norm_label": ".reset()", + "norm_label": ".gettiletexture()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -23468,7 +23350,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23480,7 +23362,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23492,7 +23374,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23504,7 +23386,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23516,7 +23398,7 @@ "_callable": true, "_origin": "ast", "community": 26, - "community_name": ".push", + "community_name": "b", "file_type": "code", "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23528,7 +23410,7 @@ "_callable": true, "_origin": "ast", "community": 260, - "community_name": ".possiblyEvaluate", + "community_name": "yi", "file_type": "code", "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23540,7 +23422,7 @@ "_callable": true, "_origin": "ast", "community": 260, - "community_name": ".possiblyEvaluate", + "community_name": "yi", "file_type": "code", "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23552,7 +23434,7 @@ "_callable": true, "_origin": "ast", "community": 260, - "community_name": ".possiblyEvaluate", + "community_name": "yi", "file_type": "code", "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23564,7 +23446,7 @@ "_callable": true, "_origin": "ast", "community": 260, - "community_name": ".possiblyEvaluate", + "community_name": "yi", "file_type": "code", "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -23576,47 +23458,83 @@ "_callable": true, "_origin": "ast", "community": 260, - "community_name": ".possiblyEvaluate", + "community_name": "yi", "file_type": "code", "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 260, - "community_name": ".possiblyEvaluate", + "community_name": "yi", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at", - "label": "test_describe_api_follows_the_reference_the_docstring_points_at()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 261, - "community_name": "test_describe_api_follows_the_reference_the_docstring_points_at", + "community": 260, + "community_name": "yi", "file_type": "code", - "norm_label": "test_describe_api_follows_the_reference_the_docstring_points_at()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L242" + "norm_label": ".disable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 261, - "community_name": "test_describe_api_follows_the_reference_the_docstring_points_at", + "community": 260, + "community_name": "yi", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L251" + "norm_label": ".enable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_isactive", + "label": ".isActive()", + "_callable": true, + "_origin": "ast", + "community": 260, + "community_name": "yi", + "file_type": "code", + "norm_label": ".isactive()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_isenabled", + "label": ".isEnabled()", + "_callable": true, + "_origin": "ast", + "community": 260, + "community_name": "yi", + "file_type": "code", + "norm_label": ".isenabled()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_possiblyevaluate", + "label": ".possiblyEvaluate()", + "_callable": true, + "_origin": "ast", + "community": 260, + "community_name": "yi", + "file_type": "code", + "norm_label": ".possiblyevaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gu", @@ -23703,38 +23621,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eh", - "label": "eh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_tilesin", + "label": ".tilesIn()", "_callable": true, "_origin": "ast", "community": 264, "community_name": "th", "file_type": "code", - "norm_label": "eh()", + "norm_label": ".tilesin()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_addlayer", - "label": ".addLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getcameraquerygeometry", + "label": ".getCameraQueryGeometry()", "_callable": true, "_origin": "ast", "community": 264, "community_name": "th", "file_type": "code", - "norm_label": ".addlayer()", + "norm_label": ".getcameraquerygeometry()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_addlayer", + "label": ".addLayer()", "_callable": true, "_origin": "ast", "community": 264, "community_name": "th", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".addlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -23775,62 +23693,62 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_clone", + "label": ".clone()", "_callable": true, "_origin": "ast", "community": 264, "community_name": "th", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".clone()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_calculatescaledkey", - "label": ".calculateScaledKey()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_equals", + "label": ".equals()", "_callable": true, "_origin": "ast", "community": 264, "community_name": "th", "file_type": "code", - "norm_label": ".calculatescaledkey()", + "norm_label": ".equals()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_clone", - "label": ".clone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_gettilepoint", + "label": ".getTilePoint()", "_callable": true, "_origin": "ast", "community": 264, "community_name": "th", "file_type": "code", - "norm_label": ".clone()", + "norm_label": ".gettilepoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_ischildof", + "label": ".isChildOf()", "_callable": true, "_origin": "ast", "community": 264, "community_name": "th", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".ischildof()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_equals", - "label": ".equals()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_overscalefactor", + "label": ".overscaleFactor()", "_callable": true, "_origin": "ast", "community": 264, "community_name": "th", "file_type": "code", - "norm_label": ".equals()", + "norm_label": ".overscalefactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -23907,52 +23825,16 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_is_grouped", - "label": "is_grouped()", - "_callable": true, - "_origin": "ast", - "community": 265, - "community_name": "2. Cells into a Collection", - "file_type": "code", - "norm_label": "is_grouped()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L642" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_x2", - "label": ".x2()", - "_callable": true, - "_origin": "ast", - "community": 265, - "community_name": "2. Cells into a Collection", - "file_type": "code", - "norm_label": ".x2()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it", - "label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", - "_callable": true, - "_origin": "ast", - "community": 269, - "community_name": "test_describe_api_renders_a_method_the_way_you_would_call_it", - "file_type": "code", - "norm_label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L263" - }, - { - "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it_steps", - "label": "steps()", + "id": "tests_test_api_test_system_save_rejected_without_webview", + "label": "test_system_save_rejected_without_webview()", "_callable": true, "_origin": "ast", "community": 269, - "community_name": "test_describe_api_renders_a_method_the_way_you_would_call_it", + "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L266" + "norm_label": "test_system_save_rejected_without_webview()", + "source_file": "tests/test_api.py", + "source_location": "L111" }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_j", @@ -23960,7 +23842,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "j()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", @@ -23972,177 +23854,165 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_push", + "label": ".push()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "i()", + "norm_label": ".push()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_k", - "label": "K()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at", + "label": "at()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "k()", + "norm_label": "at()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_deserialize", - "label": ".deserialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".deserialize()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_k", + "label": "K()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_calculatefogblendopacity", - "label": ".calculateFogBlendOpacity()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_e", + "label": "E()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".calculatefogblendopacity()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_d", - "label": "d()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "y", - "file_type": "code", - "norm_label": "d()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_deserialize", + "label": ".deserialize()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "e()", + "norm_label": ".deserialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_getsky", - "label": ".getSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".getsky()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_settransformrequest", - "label": ".setTransformRequest()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_transformrequest", + "label": ".transformRequest()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".settransformrequest()", + "norm_label": ".transformrequest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_validate", - "label": "._validate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadsprite", + "label": "._loadSprite()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "._validate()", + "norm_label": "._loadsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_y", - "label": "y()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadurl", + "label": ".loadURL()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "y()", + "norm_label": ".loadurl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -24152,31 +24022,19 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_m", - "label": "M()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "y", - "file_type": "code", - "norm_label": "m()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_s", "label": "S()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24188,357 +24046,297 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".project()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_size", - "label": ".size()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "y", - "file_type": "code", - "norm_label": ".size()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et", "label": "Et()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "et()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "y", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_o", - "label": "o()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "y", - "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_a", + "label": "A()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "p()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_s", - "label": "s()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "y", - "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_getcanvas", - "label": ".getCanvas()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "y", - "file_type": "code", - "norm_label": ".getcanvas()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_dt", + "label": "Dt()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": "dt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_a", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_a", "label": "a()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_b", - "label": "B()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "b()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f", - "label": "F()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "f()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_gettile", + "label": ".getTile()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "g()", + "norm_label": ".gettile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_splittile", + "label": ".splitTile()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "m()", + "norm_label": ".splittile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_center", + "label": ".center()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "m()", + "norm_label": ".center()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "a()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_b", - "label": "b()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_getcanvas", + "label": ".getCanvas()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "b()", + "norm_label": ".getcanvas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "f()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "g()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "h()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_load", + "label": ".load()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "i()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_load", + "label": ".load()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "l()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_b", + "label": "B()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "n()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_t", - "label": "T()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f", + "label": "F()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "t()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_m", + "label": "m()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "u()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_w", - "label": "w()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_clearrtltextplugin", + "label": ".clearRTLTextPlugin()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "w()", + "norm_label": ".clearrtltextplugin()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_x", - "label": "x()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "x()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_z", - "label": "z()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "z()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -24548,31 +24346,19 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "mt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_l", - "label": "l()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "y", - "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24584,7 +24370,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".getvideo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24596,31 +24382,55 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_load", + "label": ".load()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".load()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_pause", "label": ".pause()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".pause()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_seek", + "label": ".seek()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".seek()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_serialize", "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24632,7 +24442,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24644,7 +24454,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24656,45 +24466,45 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_b", - "label": "B()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "b()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_c", - "label": "C()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_b", + "label": "B()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "c()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_c", + "label": "C()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -24704,7 +24514,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24716,7 +24526,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "et()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24728,7 +24538,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24740,7 +24550,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "ft()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24752,7 +24562,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24764,7 +24574,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".getlight()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24776,7 +24586,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24788,7 +24598,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24800,19 +24610,31 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_j", + "label": "j()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "j()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_k", "label": "K()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24824,7 +24646,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24836,7 +24658,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "lt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24848,7 +24670,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24860,7 +24682,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "nt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24872,7 +24694,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24884,31 +24706,55 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "ot()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_p", + "label": "P()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "p()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_q", "label": "q()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_r", + "label": "r()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_recalculate", "label": ".recalculate()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".recalculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24920,19 +24766,31 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "rt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_s", + "label": "s()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_st", "label": "st()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "st()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24944,7 +24802,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "tt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24956,7 +24814,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -24968,21 +24826,21 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".updatetransitions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_v", - "label": "v()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_validate", + "label": "._validate()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "v()", + "norm_label": "._validate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -24992,7 +24850,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25004,7 +24862,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25016,7 +24874,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25028,21 +24886,33 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_a", - "label": "A()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_b", + "label": "b()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "a()", + "norm_label": "b()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_broadcast", + "label": ".broadcast()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".broadcast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -25052,7 +24922,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25064,7 +24934,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25076,7 +24946,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "._getneighboringtiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25088,57 +24958,57 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_i", - "label": "I()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k", + "label": "k()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "i()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_l", - "label": "L()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "l()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_l", + "label": "L()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "p()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "a()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -25148,7 +25018,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25160,7 +25030,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25172,7 +25042,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".readimagenow()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25184,105 +25054,189 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".registermessagehandler()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t", - "label": "T()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "t()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t_i", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_x", + "label": "x()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "x()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z", + "label": "z()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "z()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_i", "label": "i()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_w", - "label": "w()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "w()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_x", - "label": "x()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "x()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y", - "label": "y()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_load", + "label": ".load()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "y()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z", - "label": "z()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loaded", + "label": ".loaded()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "z()", + "norm_label": ".loaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "i()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "e()", + "norm_label": ".serialize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_u", + "label": "u()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_concat", + "label": ".concat()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".concat()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_get", + "label": ".get()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".get()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_has", + "label": ".has()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".has()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -25292,7 +25246,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25304,81 +25258,309 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "p()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v", - "label": "v()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_load", + "label": ".load()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "v()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_g", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loaded", + "label": ".loaded()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".loaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onremove", + "label": ".onRemove()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".onremove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setclusteroptions", + "label": ".setClusterOptions()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".setclusteroptions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updatedata", + "label": ".updateData()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".updatedata()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updateworkerdata", + "label": "._updateWorkerData()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "._updateworkerdata()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_trim", + "label": ".trim()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".trim()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_a", + "label": "A()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_b", + "label": "b()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "b()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_c", + "label": "C()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "c()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_e", + "label": "E()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "e()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_g", "label": "g()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_i", + "label": "I()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "l()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_k", + "label": "k()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "k()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_m", + "label": "M()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_y", - "label": "y()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_meterinmercatorcoordinateunits", + "label": ".meterInMercatorCoordinateUnits()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".meterinmercatorcoordinateunits()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_o", + "label": "O()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": "y()", + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_r", + "label": "r()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_w", + "label": "w()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "w()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_z", + "label": "z()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "z()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_p", + "label": "p()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": "p()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_getx", + "label": ".getx()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".getx()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_gety", + "label": ".gety()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".gety()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -25388,7 +25570,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".click()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25400,19 +25582,31 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_bind", + "label": ".bind()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".bind()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_destroy", "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25424,19 +25618,31 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "et()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_issizepoweroftwo", + "label": ".isSizePowerOfTwo()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".issizepoweroftwo()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m", "label": "M()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25448,7 +25654,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "at()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25460,7 +25666,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "it()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25472,7 +25678,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "ot()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25484,7 +25690,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "st()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25496,7 +25702,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25508,7 +25714,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "rt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25520,19 +25726,31 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "tt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_update", + "label": ".update()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": ".push", + "file_type": "code", + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_w", "label": "w()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25544,7 +25762,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25556,7 +25774,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25568,7 +25786,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25580,7 +25798,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25592,7 +25810,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25604,59 +25822,59 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_rgb", - "label": ".rgb()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "y", + "community_name": ".push", "file_type": "code", - "norm_label": ".rgb()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zt", - "label": "zt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 272, - "community_name": "y", + "community": 274, + "community_name": "aa", "file_type": "code", - "norm_label": "zt()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call", - "label": "test_search_api_points_at_the_module_that_defines_the_call()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 274, - "community_name": "test_search_api_points_at_the_module_that_defines_the_call", + "community_name": "aa", "file_type": "code", - "norm_label": "test_search_api_points_at_the_module_that_defines_the_call()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L296" + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 274, - "community_name": "test_search_api_points_at_the_module_that_defines_the_call", + "community_name": "aa", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L300" + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "tests_test_packaging_test_stderr_usable_rejects_a_broken_handle", @@ -25682,6 +25900,30 @@ "source_file": "tests/test_packaging.py", "source_location": "L73" }, + { + "id": "tests_test_packaging_smoke_test_module", + "label": "_smoke_test_module()", + "_callable": true, + "_origin": "ast", + "community": 276, + "community_name": "test_smoke_test_skips_only_a_missing_reader", + "file_type": "code", + "norm_label": "_smoke_test_module()", + "source_file": "tests/test_packaging.py", + "source_location": "L241" + }, + { + "id": "tests_test_packaging_test_smoke_test_skips_only_a_missing_reader", + "label": "test_smoke_test_skips_only_a_missing_reader()", + "_callable": true, + "_origin": "ast", + "community": 276, + "community_name": "test_smoke_test_skips_only_a_missing_reader", + "file_type": "code", + "norm_label": "test_smoke_test_skips_only_a_missing_reader()", + "source_file": "tests/test_packaging.py", + "source_location": "L265" + }, { "id": "tests_test_ingest_client", "label": "_client()", @@ -25910,6 +26152,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_contextmenu", + "label": ".contextmenu()", + "_callable": true, + "_origin": "ast", + "community": 278, + "community_name": "qn", + "file_type": "code", + "norm_label": ".contextmenu()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_disable", "label": ".disable()", @@ -26096,7 +26350,7 @@ "_callable": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "clear_uploads()", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", @@ -26108,7 +26362,7 @@ "_callable": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "list_uploads()", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", @@ -26120,7 +26374,7 @@ "_callable": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "upload()", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", @@ -26132,7 +26386,7 @@ "_callable": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "clear()", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -26144,7 +26398,7 @@ "_callable": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "max_upload_bytes()", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -26156,7 +26410,7 @@ "_callable": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "safe_name()", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -26168,7 +26422,7 @@ "_callable": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "save()", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -26180,7 +26434,7 @@ "_callable": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "_unique()", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -26192,7 +26446,7 @@ "_callable": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "uploads_dir()", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -26204,105 +26458,105 @@ "_callable": true, "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "usage()", "source_file": "src/cellpy_simple_gui/core/uploads.py", "source_location": "L128" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_ft", - "label": "Ft()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisioncircles", + "label": ".insertCollisionCircles()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": "ft()", + "norm_label": ".insertcollisioncircles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circleandrectcollide", - "label": "._circleAndRectCollide()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insert", + "label": ".insert()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": "._circleandrectcollide()", + "norm_label": ".insert()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circlescollide", - "label": "._circlesCollide()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_query", + "label": ".query()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": "._circlescollide()", + "norm_label": ".query()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circleandrectcollide", + "label": "._circleAndRectCollide()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "._circleandrectcollide()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoxcellcoord", - "label": "._convertToXCellCoord()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circlescollide", + "label": "._circlesCollide()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": "._converttoxcellcoord()", + "norm_label": "._circlescollide()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoycellcoord", - "label": "._convertToYCellCoord()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoxcellcoord", + "label": "._convertToXCellCoord()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": "._converttoycellcoord()", + "norm_label": "._converttoxcellcoord()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_foreachcell", - "label": "._forEachCell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoycellcoord", + "label": "._convertToYCellCoord()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": "._foreachcell()", + "norm_label": "._converttoycellcoord()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hcl", - "label": ".hcl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_foreachcell", + "label": "._forEachCell()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": ".hcl()", + "norm_label": "._foreachcell()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -26379,38 +26633,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_lab", - "label": ".lab()", - "_callable": true, - "_origin": "ast", - "community": 282, - "community_name": "Xt", - "file_type": "code", - "norm_label": ".lab()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_overwritegetter", - "label": ".overwriteGetter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_query", + "label": "._query()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": ".overwritegetter()", + "norm_label": "._query()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_query", - "label": "._query()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_querycell", + "label": "._queryCell()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": "._query()", + "norm_label": "._querycell()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -26438,6 +26680,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config", + "label": "test_startup_survives_an_unreadable_cellpy_config()", + "_callable": true, + "_origin": "ast", + "community": 283, + "community_name": "test_startup_survives_an_unreadable_cellpy_config", + "file_type": "code", + "norm_label": "test_startup_survives_an_unreadable_cellpy_config()", + "source_file": "tests/test_packaging.py", + "source_location": "L210" + }, + { + "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config_boom", + "label": "boom()", + "_callable": true, + "_origin": "ast", + "community": 283, + "community_name": "test_startup_survives_an_unreadable_cellpy_config", + "file_type": "code", + "norm_label": "boom()", + "source_file": "tests/test_packaging.py", + "source_location": "L213" + }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ci", "label": "ci()", @@ -26559,74 +26825,98 @@ "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_contains", - "label": ".contains()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_queryterrainelevation", + "label": ".queryTerrainElevation()", "_callable": true, "_origin": "ast", "community": 29, "community_name": "xi", "file_type": "code", - "norm_label": ".contains()", + "norm_label": ".queryterrainelevation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getuistring", - "label": "_getUIString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_isopen", + "label": ".isOpen()", "_callable": true, "_origin": "ast", "community": 29, "community_name": "xi", "file_type": "code", - "norm_label": "_getuistring()", + "norm_label": ".isopen()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_createns", - "label": ".createNS()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setlnglat", + "label": ".setLngLat()", "_callable": true, "_origin": "ast", "community": 29, "community_name": "xi", "file_type": "code", - "norm_label": ".createns()", + "norm_label": ".setlnglat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_isopen", - "label": ".isOpen()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 29, "community_name": "xi", "file_type": "code", - "norm_label": ".isopen()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setlnglat", - "label": ".setLngLat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_contains", + "label": ".contains()", "_callable": true, "_origin": "ast", "community": 29, "community_name": "xi", "file_type": "code", - "norm_label": ".setlnglat()", + "norm_label": ".contains()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_addto", - "label": ".addTo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_convert", + "label": ".convert()", "_callable": true, "_origin": "ast", "community": 29, "community_name": "xi", "file_type": "code", - "norm_label": ".addto()", + "norm_label": ".convert()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_setnortheast", + "label": ".setNorthEast()", + "_callable": true, + "_origin": "ast", + "community": 29, + "community_name": "xi", + "file_type": "code", + "norm_label": ".setnortheast()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_setsouthwest", + "label": ".setSouthWest()", + "_callable": true, + "_origin": "ast", + "community": 29, + "community_name": "xi", + "file_type": "code", + "norm_label": ".setsouthwest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -26810,18 +27100,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setdraggable", - "label": ".setDraggable()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setdraggable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setlnglat", "label": ".setLngLat()", @@ -26954,6 +27232,42 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "tests_test_api_test_dva_missing_cell_is_404_not_403", + "label": "test_dva_missing_cell_is_404_not_403()", + "_callable": true, + "_origin": "ast", + "community": 290, + "community_name": "test_dva_missing_cell_is_404_not_403", + "file_type": "code", + "norm_label": "test_dva_missing_cell_is_404_not_403()", + "source_file": "tests/test_api.py", + "source_location": "L355" + }, + { + "id": "tests_test_api_test_files_preview_honours_served_sandbox", + "label": "test_files_preview_honours_served_sandbox()", + "_callable": true, + "_origin": "ast", + "community": 291, + "community_name": "test_files_preview_honours_served_sandbox", + "file_type": "code", + "norm_label": "test_files_preview_honours_served_sandbox()", + "source_file": "tests/test_api.py", + "source_location": "L853" + }, + { + "id": "tests_test_api_test_local_instance_keeps_its_freedom", + "label": "test_local_instance_keeps_its_freedom()", + "_callable": true, + "_origin": "ast", + "community": 292, + "community_name": "test_local_instance_keeps_its_freedom", + "file_type": "code", + "norm_label": "test_local_instance_keeps_its_freedom()", + "source_file": "tests/test_api.py", + "source_location": "L866" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_haslayer", "label": ".hasLayer()", @@ -27074,42 +27388,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aborttile", - "label": ".abortTile()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".aborttile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aftertileloadworkerresponse", - "label": "._afterTileLoadWorkerResponse()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": "._aftertileloadworkerresponse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loadtile", - "label": ".loadTile()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".loadtile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_unloadtile", "label": ".unloadTile()", @@ -27182,30 +27460,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sendasync", - "label": "sendAsync()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": "sendasync()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_overscalefactor", - "label": ".overscaleFactor()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".overscalefactor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loadtile", "label": ".loadTile()", @@ -27243,124 +27497,124 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_apply_colorway", - "label": "_apply_colorway()", + "id": "src_cellpy_simple_gui_api_routers_plots_plot_types", + "label": "plot_types()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_apply_colorway()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1345" + "norm_label": "plot_types()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L25" }, { - "id": "src_cellpy_simple_gui_core_collect_apply_xy_ranges", - "label": "_apply_xy_ranges()", + "id": "src_cellpy_simple_gui_core_collect_add_spread_hover", + "label": "_add_spread_hover()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_apply_xy_ranges()", + "norm_label": "_add_spread_hover()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L753" + "source_location": "L794" }, { - "id": "src_cellpy_simple_gui_core_collect_batch", - "label": "_batch()", + "id": "src_cellpy_simple_gui_core_collect_apply_group_titles", + "label": "_apply_group_titles()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_batch()", + "norm_label": "_apply_group_titles()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L85" + "source_location": "L112" }, { - "id": "src_cellpy_simple_gui_core_collect_batch_keys", - "label": "batch_keys()", + "id": "src_cellpy_simple_gui_core_collect_apply_xy_ranges", + "label": "_apply_xy_ranges()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "batch_keys()", + "norm_label": "_apply_xy_ranges()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L65" + "source_location": "L774" }, { - "id": "src_cellpy_simple_gui_core_collect_capacity_mode_from_column", - "label": "_capacity_mode_from_column()", + "id": "src_cellpy_simple_gui_core_collect_apply_y_ranges", + "label": "_apply_y_ranges()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_capacity_mode_from_column()", + "norm_label": "_apply_y_ranges()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L380" + "source_location": "L1062" }, { - "id": "src_cellpy_simple_gui_core_collect_cycles_collection", - "label": "cycles_collection()", + "id": "src_cellpy_simple_gui_core_collect_attach_spread", + "label": "_attach_spread()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "cycles_collection()", + "norm_label": "_attach_spread()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L496" + "source_location": "L836" }, { - "id": "src_cellpy_simple_gui_core_collect_dva_collection", - "label": "dva_collection()", + "id": "src_cellpy_simple_gui_core_collect_axis_title", + "label": "_axis_title()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "dva_collection()", + "norm_label": "_axis_title()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L530" + "source_location": "L863" }, { - "id": "src_cellpy_simple_gui_core_collect_export_bytes", - "label": "export_bytes()", + "id": "src_cellpy_simple_gui_core_collect_capacity_mode_from_column", + "label": "_capacity_mode_from_column()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "export_bytes()", + "norm_label": "_capacity_mode_from_column()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1457" + "source_location": "L401" }, { - "id": "src_cellpy_simple_gui_core_collect_export_frame_bytes", - "label": "export_frame_bytes()", + "id": "src_cellpy_simple_gui_core_collect_facet_labels_by_axes", + "label": "_facet_labels_by_axes()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "export_frame_bytes()", + "norm_label": "_facet_labels_by_axes()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1440" + "source_location": "L1245" }, { - "id": "src_cellpy_simple_gui_core_collect_facet_labels_by_axes", - "label": "_facet_labels_by_axes()", + "id": "src_cellpy_simple_gui_core_collect_facet_traces", + "label": "_facet_traces()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_facet_labels_by_axes()", + "norm_label": "_facet_traces()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1221" + "source_location": "L854" }, { "id": "src_cellpy_simple_gui_core_collect_family_columns", @@ -27372,7 +27626,7 @@ "file_type": "code", "norm_label": "family_columns()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L272" + "source_location": "L293" }, { "id": "src_cellpy_simple_gui_core_collect_family_required_columns", @@ -27384,7 +27638,7 @@ "file_type": "code", "norm_label": "_family_required_columns()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L182" + "source_location": "L203" }, { "id": "src_cellpy_simple_gui_core_collect_family_summary_options", @@ -27396,19 +27650,43 @@ "file_type": "code", "norm_label": "family_summary_options()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L218" + "source_location": "L239" }, { - "id": "src_cellpy_simple_gui_core_collect_hex_to_rgba", - "label": "_hex_to_rgba()", + "id": "src_cellpy_simple_gui_core_collect_figure_json", + "label": "figure_json()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_hex_to_rgba()", + "norm_label": "figure_json()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1332" + "source_location": "L872" + }, + { + "id": "src_cellpy_simple_gui_core_collect_inject_app_chrome", + "label": "_inject_app_chrome()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "_inject_app_chrome()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L674" + }, + { + "id": "src_cellpy_simple_gui_core_collect_is_grouped", + "label": "is_grouped()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "is_grouped()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L663" }, { "id": "src_cellpy_simple_gui_core_collect_layout_key_for_x_id", @@ -27420,7 +27698,7 @@ "file_type": "code", "norm_label": "_layout_key_for_x_id()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1245" + "source_location": "L1269" }, { "id": "src_cellpy_simple_gui_core_collect_layout_key_for_y_id", @@ -27432,7 +27710,7 @@ "file_type": "code", "norm_label": "_layout_key_for_y_id()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1033" + "source_location": "L1057" }, { "id": "src_cellpy_simple_gui_core_collect_missing_summary_columns", @@ -27444,7 +27722,31 @@ "file_type": "code", "norm_label": "missing_summary_columns()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L258" + "source_location": "L279" + }, + { + "id": "src_cellpy_simple_gui_core_collect_note_downsampling", + "label": "_note_downsampling()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "_note_downsampling()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1004" + }, + { + "id": "src_cellpy_simple_gui_core_collect_overlay_facets", + "label": "_overlay_facets()", + "_callable": true, + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "code", + "norm_label": "_overlay_facets()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1288" }, { "id": "src_cellpy_simple_gui_core_collect_overlay_label", @@ -27456,7 +27758,7 @@ "file_type": "code", "norm_label": "_overlay_label()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1249" + "source_location": "L1273" }, { "id": "src_cellpy_simple_gui_core_collect_panel_label", @@ -27468,7 +27770,7 @@ "file_type": "code", "norm_label": "_panel_label()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L365" + "source_location": "L386" }, { "id": "src_cellpy_simple_gui_core_collect_pre_collect_column", @@ -27480,31 +27782,31 @@ "file_type": "code", "norm_label": "_pre_collect_column()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L209" + "source_location": "L230" }, { - "id": "src_cellpy_simple_gui_core_collect_preserve_full_name_on_hover", - "label": "_preserve_full_name_on_hover()", + "id": "src_cellpy_simple_gui_core_collect_pretty_unit_text", + "label": "_pretty_unit_text()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_preserve_full_name_on_hover()", + "norm_label": "_pretty_unit_text()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1129" + "source_location": "L396" }, { - "id": "src_cellpy_simple_gui_core_collect_pretty_unit_text", - "label": "_pretty_unit_text()", + "id": "src_cellpy_simple_gui_core_collect_raw_figure_json", + "label": "raw_figure_json()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_pretty_unit_text()", + "norm_label": "raw_figure_json()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L375" + "source_location": "L939" }, { "id": "src_cellpy_simple_gui_core_collect_registry_plot_types", @@ -27516,7 +27818,7 @@ "file_type": "code", "norm_label": "registry_plot_types()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L133" + "source_location": "L154" }, { "id": "src_cellpy_simple_gui_core_collect_resolve_axis_range", @@ -27528,31 +27830,31 @@ "file_type": "code", "norm_label": "_resolve_axis_range()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L714" + "source_location": "L735" }, { - "id": "src_cellpy_simple_gui_core_collect_select_ica_direction", - "label": "select_ica_direction()", + "id": "src_cellpy_simple_gui_core_collect_spread_hovertemplate", + "label": "_spread_hovertemplate()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "select_ica_direction()", + "norm_label": "_spread_hovertemplate()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L549" + "source_location": "L828" }, { - "id": "src_cellpy_simple_gui_core_collect_summary_collection", - "label": "summary_collection()", + "id": "src_cellpy_simple_gui_core_collect_stamp_warnings", + "label": "_stamp_warnings()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "summary_collection()", + "norm_label": "_stamp_warnings()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L463" + "source_location": "L925" }, { "id": "src_cellpy_simple_gui_core_collect_summary_column_axis_label", @@ -27564,7 +27866,7 @@ "file_type": "code", "norm_label": "_summary_column_axis_label()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L406" + "source_location": "L427" }, { "id": "src_cellpy_simple_gui_core_collect_summary_columns", @@ -27576,7 +27878,7 @@ "file_type": "code", "norm_label": "summary_columns()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L445" + "source_location": "L466" }, { "id": "src_cellpy_simple_gui_core_collect_summary_columns_for", @@ -27588,7 +27890,7 @@ "file_type": "code", "norm_label": "summary_columns_for()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L316" + "source_location": "L337" }, { "id": "src_cellpy_simple_gui_core_collect_summary_options_for", @@ -27600,7 +27902,7 @@ "file_type": "code", "norm_label": "summary_options_for()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L282" + "source_location": "L303" }, { "id": "src_cellpy_simple_gui_core_collect_summary_panels_for", @@ -27612,7 +27914,7 @@ "file_type": "code", "norm_label": "summary_panels_for()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L437" + "source_location": "L458" }, { "id": "src_cellpy_simple_gui_core_collect_summary_required_columns", @@ -27624,7 +27926,7 @@ "file_type": "code", "norm_label": "summary_required_columns()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L293" + "source_location": "L314" }, { "id": "src_cellpy_simple_gui_core_collect_summary_schema", @@ -27636,19 +27938,7 @@ "file_type": "code", "norm_label": "_summary_schema()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L236" - }, - { - "id": "src_cellpy_simple_gui_core_collect_summary_y_label_mapper", - "label": "summary_y_label_mapper()", - "_callable": true, - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "code", - "norm_label": "summary_y_label_mapper()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L432" + "source_location": "L257" }, { "id": "src_cellpy_simple_gui_core_collect_trace_axis_extent", @@ -27660,91 +27950,67 @@ "file_type": "code", "norm_label": "_trace_axis_extent()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L675" + "source_location": "L696" }, { - "id": "src_cellpy_simple_gui_core_collect_truncate_label", - "label": "_truncate_label()", + "id": "src_cellpy_simple_gui_core_collect_trace_cell_label", + "label": "_trace_cell_label()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_truncate_label()", + "norm_label": "_trace_cell_label()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1123" - }, - { - "id": "src_cellpy_simple_gui_core_export_cycles_export", - "label": "cycles_export()", - "_callable": true, - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "code", - "norm_label": "cycles_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L80" + "source_location": "L1229" }, { - "id": "src_cellpy_simple_gui_core_export_cycles_figure_export", - "label": "cycles_figure_export()", - "_callable": true, - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "code", - "norm_label": "cycles_figure_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L105" - }, - { - "id": "src_cellpy_simple_gui_core_export_dva_export", - "label": "dva_export()", + "id": "src_cellpy_simple_gui_core_collect_trace_variable", + "label": "_trace_variable()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "dva_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L151" + "norm_label": "_trace_variable()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1048" }, { - "id": "src_cellpy_simple_gui_core_export_summary_export", - "label": "summary_export()", + "id": "src_cellpy_simple_gui_core_collect_truncate_label", + "label": "_truncate_label()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "summary_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L59" + "norm_label": "_truncate_label()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1147" }, { - "id": "src_cellpy_simple_gui_core_export_summary_figure_export", - "label": "summary_figure_export()", + "id": "src_cellpy_simple_gui_core_collect_variable_axis_map", + "label": "_variable_axis_map()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "summary_figure_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L99" + "norm_label": "_variable_axis_map()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1029" }, { - "id": "src_cellpy_simple_gui_core_plotting_summary_figure", - "label": "summary_figure()", + "id": "src_cellpy_simple_gui_core_collect_y_id_from_layout_key", + "label": "_y_id_from_layout_key()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "summary_figure()", - "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L27" + "norm_label": "_y_id_from_layout_key()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L765" }, { "id": "src_cellpy_simple_gui_api_routers_export_check_data_fmt", @@ -27752,7 +28018,7 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "_check_data_fmt()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -27764,7 +28030,7 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "_check_figure_fmt()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -27776,7 +28042,7 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "_cycles_records()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -27788,7 +28054,7 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "export_cells()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -27800,7 +28066,7 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "export_compare()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -27812,7 +28078,7 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "export_cycles()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -27824,7 +28090,7 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "export_dva()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -27836,7 +28102,7 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "export_ica()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -27848,7 +28114,7 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "export_summary()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -27860,7 +28126,7 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "_figure_http()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -27872,23 +28138,131 @@ "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "_file()", "source_file": "src/cellpy_simple_gui/api/routers/export.py", "source_location": "L50" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_compare_picks", - "label": "compare_picks()", + "id": "src_cellpy_simple_gui_core_export_cells_export", + "label": "cells_export()", "_callable": true, "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", - "norm_label": "compare_picks()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L112" + "norm_label": "cells_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L255" + }, + { + "id": "src_cellpy_simple_gui_core_export_cycles_figure_export", + "label": "cycles_figure_export()", + "_callable": true, + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "cycles_figure_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L105" + }, + { + "id": "src_cellpy_simple_gui_core_export_dva_export", + "label": "dva_export()", + "_callable": true, + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "dva_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L151" + }, + { + "id": "src_cellpy_simple_gui_core_export_dva_figure_export", + "label": "dva_figure_export()", + "_callable": true, + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "dva_figure_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L162" + }, + { + "id": "src_cellpy_simple_gui_core_export_figure_bytes", + "label": "figure_bytes()", + "_callable": true, + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "figure_bytes()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L168" + }, + { + "id": "src_cellpy_simple_gui_core_export_figureexporterror_init", + "label": ".__init__()", + "_callable": true, + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": ".__init__()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L54" + }, + { + "id": "src_cellpy_simple_gui_core_export_safe_stem", + "label": "_safe_stem()", + "_callable": true, + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "_safe_stem()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L207" + }, + { + "id": "src_cellpy_simple_gui_core_export_summary_figure_export", + "label": "summary_figure_export()", + "_callable": true, + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "summary_figure_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L99" + }, + { + "id": "src_cellpy_simple_gui_core_export_unique_stems", + "label": "_unique_stems()", + "_callable": true, + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "_unique_stems()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L213" + }, + { + "id": "src_cellpy_simple_gui_core_export_zip_members", + "label": "_zip_members()", + "_callable": true, + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "_zip_members()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L225" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_gettransition", @@ -28034,6 +28408,114 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "tests_conftest_parse_figure", + "label": "parse_figure()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "parse_figure()", + "source_file": "tests/conftest.py", + "source_location": "L34" + }, + { + "id": "tests_test_agent_docs_generator", + "label": "generator()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "generator()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L28" + }, + { + "id": "tests_test_agent_docs_test_every_path_the_index_points_at_exists", + "label": "test_every_path_the_index_points_at_exists()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_every_path_the_index_points_at_exists()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L54" + }, + { + "id": "tests_test_agent_docs_test_llms_full_actually_contains_the_documents", + "label": "test_llms_full_actually_contains_the_documents()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_llms_full_actually_contains_the_documents()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L71" + }, + { + "id": "tests_test_agent_docs_test_llms_txt_is_current", + "label": "test_llms_txt_is_current()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_llms_txt_is_current()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L40" + }, + { + "id": "tests_test_agent_docs_test_the_index_lists_every_guide", + "label": "test_the_index_lists_every_guide()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_the_index_lists_every_guide()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L64" + }, + { + "id": "tests_test_agent_docs_test_the_skill_has_the_frontmatter_a_skill_needs", + "label": "test_the_skill_has_the_frontmatter_a_skill_needs()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_the_skill_has_the_frontmatter_a_skill_needs()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L84" + }, + { + "id": "tests_test_agent_docs_test_the_skill_reference_is_bundled", + "label": "test_the_skill_reference_is_bundled()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_the_skill_reference_is_bundled()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L115" + }, + { + "id": "tests_test_agent_docs_test_the_skill_states_the_traps_that_produce_plausible_output", + "label": "test_the_skill_states_the_traps_that_produce_plausible_output()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_the_skill_states_the_traps_that_produce_plausible_output()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L99" + }, { "id": "tests_test_api_reference_generated_against", "label": "generated_against()", @@ -28178,54 +28660,6 @@ "source_file": "tests/test_guides.py", "source_location": "L44" }, - { - "id": "tests_test_journal_build_journal", - "label": "_build_journal()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "_build_journal()", - "source_file": "tests/test_journal.py", - "source_location": "L9" - }, - { - "id": "tests_test_journal_test_load_corrupt_journal_raises_clear_error", - "label": "test_load_corrupt_journal_raises_clear_error()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_load_corrupt_journal_raises_clear_error()", - "source_file": "tests/test_journal.py", - "source_location": "L73" - }, - { - "id": "tests_test_journal_test_load_journal_cells", - "label": "test_load_journal_cells()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_load_journal_cells()", - "source_file": "tests/test_journal.py", - "source_location": "L32" - }, - { - "id": "tests_test_journal_test_load_journal_missing_files_returns_empty", - "label": "test_load_journal_missing_files_returns_empty()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_load_journal_missing_files_returns_empty()", - "source_file": "tests/test_journal.py", - "source_location": "L51" - }, { "id": "tests_test_starter_starter", "label": "starter()", @@ -28538,37 +28972,13 @@ "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, - { - "id": "packaging_smoke_test_check", - "label": "check()", - "_callable": true, - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "code", - "norm_label": "check()", - "source_file": "packaging/smoke_test.py", - "source_location": "L48" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gh", - "label": "gh()", - "_callable": true, - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "code", - "norm_label": "gh()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bc", "label": "bc()", "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": "bc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28580,7 +28990,7 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".getterrainmesh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28592,7 +29002,7 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".simplesegment()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28604,31 +29014,19 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_hasinvaliddimensions", - "label": "._hasInvalidDimensions()", - "_callable": true, - "_origin": "ast", - "community": 34, - "community_name": ".createVertexBuffer", - "file_type": "code", - "norm_label": "._hasinvaliddimensions()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_prepare", "label": ".prepare()", "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".prepare()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28640,7 +29038,7 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28652,7 +29050,7 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28664,7 +29062,7 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".prepare()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28676,7 +29074,7 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28688,7 +29086,7 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".prepare()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28700,19 +29098,31 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_colormodeforrenderpass", + "label": ".colorModeForRenderPass()", + "_callable": true, + "_origin": "ast", + "community": 34, + "community_name": "yr", + "file_type": "code", + "norm_label": ".colormodeforrenderpass()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setup", "label": ".setup()", "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".setup()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28724,7 +29134,7 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".createindexbuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28736,7 +29146,7 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".createvertexbuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -28748,12 +29158,24 @@ "_callable": true, "_origin": "ast", "community": 34, - "community_name": ".createVertexBuffer", + "community_name": "yr", "file_type": "code", "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 34, + "community_name": "yr", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_core_cellpy_config_activate_project_config", "label": "activate_project_config()", @@ -28946,6 +29368,18 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_config.py", "source_location": "L283" }, + { + "id": "tests_test_packaging_fake_cellpy_config_get_config", + "label": "get_config()", + "_callable": true, + "_origin": "ast", + "community": 35, + "community_name": "cellpy_config.py", + "file_type": "code", + "norm_label": "get_config()", + "source_file": "tests/test_packaging.py", + "source_location": "L116" + }, { "id": "tests_test_paths_local", "label": "local()", @@ -29234,30 +29668,6 @@ "source_file": "tests/test_paths.py", "source_location": "L86" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_generatecollisionboxes", - "label": "._generateCollisionBoxes()", - "_callable": true, - "_origin": "ast", - "community": 37, - "community_name": ".resume", - "file_type": "code", - "norm_label": "._generatecollisionboxes()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_reloadsource", - "label": "._reloadSource()", - "_callable": true, - "_origin": "ast", - "community": 37, - "community_name": ".resume", - "file_type": "code", - "norm_label": "._reloadsource()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_resume", "label": ".resume()", @@ -29271,160 +29681,28 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_add_spread_hover", - "label": "_add_spread_hover()", - "_callable": true, - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "code", - "norm_label": "_add_spread_hover()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L773" - }, - { - "id": "src_cellpy_simple_gui_core_collect_attach_spread", - "label": "_attach_spread()", - "_callable": true, - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "code", - "norm_label": "_attach_spread()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L815" - }, - { - "id": "src_cellpy_simple_gui_core_collect_axis_title", - "label": "_axis_title()", - "_callable": true, - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "code", - "norm_label": "_axis_title()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L842" - }, - { - "id": "src_cellpy_simple_gui_core_collect_facet_traces", - "label": "_facet_traces()", - "_callable": true, - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "code", - "norm_label": "_facet_traces()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L833" - }, - { - "id": "src_cellpy_simple_gui_core_collect_spread_hovertemplate", - "label": "_spread_hovertemplate()", - "_callable": true, - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "code", - "norm_label": "_spread_hovertemplate()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L807" - }, - { - "id": "tests_test_core_spread_library", - "label": "_spread_library()", - "_callable": true, - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "code", - "norm_label": "_spread_library()", - "source_file": "tests/test_core.py", - "source_location": "L1151" - }, - { - "id": "tests_test_core_test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", - "_callable": true, - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "code", - "norm_label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", - "source_file": "tests/test_core.py", - "source_location": "L1180" - }, - { - "id": "tests_test_core_test_summary_figure_y_ranges_one_sided_with_spread", - "label": "test_summary_figure_y_ranges_one_sided_with_spread()", + "id": "tests_conftest_example_cell", + "label": "example_cell()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "code", - "norm_label": "test_summary_figure_y_ranges_one_sided_with_spread()", - "source_file": "tests/test_core.py", - "source_location": "L1217" + "norm_label": "example_cell()", + "source_file": "tests/conftest.py", + "source_location": "L16" }, { - "id": "tests_test_core_yaxis_for_title_text", - "label": "_yaxis_for_title_text()", + "id": "tests_conftest_loaded_library", + "label": "loaded_library()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", - "file_type": "code", - "norm_label": "_yaxis_for_title_text()", - "source_file": "tests/test_core.py", - "source_location": "L1167" - }, - { - "id": "src_cellpy_simple_gui_core_collect_apply_y_ranges", - "label": "_apply_y_ranges()", - "_callable": true, - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "code", - "norm_label": "_apply_y_ranges()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1038" - }, - { - "id": "src_cellpy_simple_gui_core_collect_trace_variable", - "label": "_trace_variable()", - "_callable": true, - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "code", - "norm_label": "_trace_variable()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1024" - }, - { - "id": "src_cellpy_simple_gui_core_collect_variable_axis_map", - "label": "_variable_axis_map()", - "_callable": true, - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "code", - "norm_label": "_variable_axis_map()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1005" - }, - { - "id": "src_cellpy_simple_gui_core_collect_y_id_from_layout_key", - "label": "_y_id_from_layout_key()", - "_callable": true, - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "code", - "norm_label": "_y_id_from_layout_key()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L744" + "norm_label": "loaded_library()", + "source_file": "tests/conftest.py", + "source_location": "L26" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_as", @@ -29595,14 +29873,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fs", - "label": "fs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getmaxvalue", + "label": ".getMaxValue()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "fs()", + "norm_label": ".getmaxvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -29618,54 +29896,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_createbucket", - "label": ".createBucket()", - "_callable": true, - "_origin": "ast", - "community": 4, - "community_name": "ss", - "file_type": "code", - "norm_label": ".createbucket()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_is3d", - "label": ".is3D()", - "_callable": true, - "_origin": "ast", - "community": 4, - "community_name": "ss", - "file_type": "code", - "norm_label": ".is3d()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryintersectsfeature", - "label": ".queryIntersectsFeature()", - "_callable": true, - "_origin": "ast", - "community": 4, - "community_name": "ss", - "file_type": "code", - "norm_label": ".queryintersectsfeature()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryradius", - "label": ".queryRadius()", - "_callable": true, - "_origin": "ast", - "community": 4, - "community_name": "ss", - "file_type": "code", - "norm_label": ".queryradius()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hs", "label": "hs()", @@ -29715,31 +29945,19 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ms", - "label": "ms()", - "_callable": true, - "_origin": "ast", - "community": 4, - "community_name": "ss", - "file_type": "code", - "norm_label": "ms()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ol", - "label": "ol()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_clone", + "label": ".clone()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "ol()", + "norm_label": ".clone()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -29751,74 +29969,74 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_createbucket", - "label": ".createBucket()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_replace", + "label": ".replace()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".createbucket()", + "norm_label": ".replace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_handlespecialpaintpropertyupdate", - "label": "._handleSpecialPaintPropertyUpdate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_resize", + "label": ".resize()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "._handlespecialpaintpropertyupdate()", + "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_hasoffscreenpass", - "label": ".hasOffscreenPass()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ms", + "label": "ms()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".hasoffscreenpass()", + "norm_label": "ms()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_queryintersectsfeature", - "label": ".queryIntersectsFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ol", + "label": "ol()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".queryintersectsfeature()", + "norm_label": "ol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_queryradius", - "label": ".queryRadius()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".queryradius()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_resize", - "label": ".resize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ps_handlespecialpaintpropertyupdate", + "label": "._handleSpecialPaintPropertyUpdate()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".resize()", + "norm_label": "._handlespecialpaintpropertyupdate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -29966,18 +30184,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_hastransitions", - "label": ".hasTransitions()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".hastransitions()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_releasesymbolfadetiles", "label": "._releaseSymbolFadeTiles()", @@ -30014,6 +30220,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_backfilldem", + "label": "._backfillDEM()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": "._backfilldem()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_cleartiles", "label": ".clearTiles()", @@ -30134,18 +30352,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_hastransition", - "label": ".hasTransition()", - "_callable": true, - "_origin": "ast", - "community": 40, - "community_name": "Dt", - "file_type": "code", - "norm_label": ".hastransition()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_isidrenderable", "label": "._isIdRenderable()", @@ -30530,18 +30736,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_api_jobs_daemonpool_submit", - "label": ".submit()", - "_callable": true, - "_origin": "ast", - "community": 44, - "community_name": "Job", - "file_type": "code", - "norm_label": ".submit()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L150" - }, { "id": "src_cellpy_simple_gui_api_jobs_job_elapsed_seconds", "label": ".elapsed_seconds()", @@ -30723,14 +30917,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -30747,55 +30941,43 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 45, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", @@ -30807,7 +30989,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", @@ -30819,7 +31001,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplace", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_emplace", "label": ".emplace()", "_callable": true, "_origin": "ast", @@ -30831,7 +31013,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", @@ -30843,7 +31025,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_refreshviews", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", @@ -30854,30 +31036,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 45, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 45, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_emplace", "label": ".emplace()", @@ -30890,18 +31048,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 45, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resize", "label": "resize()", @@ -30915,31 +31061,19 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 45, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpixelratio", - "label": "setPixelRatio()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": "setpixelratio()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", @@ -30951,43 +31085,43 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpixelratio", + "label": "setPixelRatio()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": "setpixelratio()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_resize", + "label": ".resize()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplace", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_emplace", "label": ".emplace()", "_callable": true, "_origin": "ast", @@ -30999,7 +31133,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", @@ -31011,7 +31145,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_refreshviews", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", @@ -31023,158 +31157,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 45, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_clear", - "label": ".clear()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": ".clear()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_deserialize", - "label": ".deserialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_bucketindex", + "label": ".bucketIndex()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", - "norm_label": ".deserialize()", + "norm_label": ".bucketindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplace", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplace", "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_refreshviews", - "label": "._refreshViews()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_reserve", - "label": ".reserve()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": ".reserve()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_resize", - "label": ".resize()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": ".resize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_serialize", - "label": ".serialize()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": ".serialize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_trim", - "label": "._trim()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": "._trim()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_createarrays", - "label": ".createArrays()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": ".createarrays()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_bucketindex", - "label": ".bucketIndex()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": ".bucketindex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -31184,7 +31198,7 @@ "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": ".featureindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -31196,7 +31210,7 @@ "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -31208,153 +31222,69 @@ "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": ".sourcelayerindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja_get", - "label": ".get()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_emplace", - "label": ".emplace()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_refreshviews", - "label": "._refreshViews()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_refreshviews", - "label": "._refreshViews()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_emplace", - "label": ".emplace()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_refreshviews", - "label": "._refreshViews()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplace", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplace", "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_gettileunitdistancefromanchor", - "label": ".gettileUnitDistanceFromAnchor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", - "norm_label": ".gettileunitdistancefromanchor()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_refreshviews", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplace", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplace", "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_refreshviews", - "label": "._refreshViews()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ca", - "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -31364,7 +31294,7 @@ "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -31376,167 +31306,23 @@ "_callable": true, "_origin": "ast", "community": 46, - "community_name": "ca", + "community_name": "Ga", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_app_asset_version", - "label": "_asset_version()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "_asset_version()", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L22" - }, - { - "id": "src_cellpy_simple_gui_api_app_create_app", - "label": "create_app()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "create_app()", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L41" - }, - { - "id": "src_cellpy_simple_gui_api_app_create_app_healthz", - "label": "healthz()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "healthz()", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L89" - }, - { - "id": "src_cellpy_simple_gui_api_app_create_app_index", - "label": "index()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "index()", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L64" - }, - { - "id": "src_cellpy_simple_gui_api_deps_require_token", - "label": "require_token()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "require_token()", - "source_file": "src/cellpy_simple_gui/api/deps.py", - "source_location": "L32" - }, - { - "id": "src_cellpy_simple_gui_api_routers_plots_plot_types", - "label": "plot_types()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "plot_types()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L25" - }, - { - "id": "src_cellpy_simple_gui_api_routers_plots_require_dev_mode", - "label": "require_dev_mode()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "require_dev_mode()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L141" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_capabilities", - "label": "capabilities()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "capabilities()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L66" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_cellpy_config_diagnostics", - "label": "cellpy_config_diagnostics()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "cellpy_config_diagnostics()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L108" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_job_timings", - "label": "job_timings()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "job_timings()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L98" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_logs", - "label": "logs()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "logs()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L84" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_webview_window", - "label": "_webview_window()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "_webview_window()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L39" - }, - { - "id": "src_cellpy_simple_gui_config_get_settings", - "label": "get_settings()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_x2", + "label": ".x2()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "get_settings", + "community": 47, + "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", "file_type": "code", - "norm_label": "get_settings()", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L76" + "norm_label": ".x2()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_desktop_close_webview_windows", @@ -31544,7 +31330,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "_close_webview_windows()", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -31556,7 +31342,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "_install_ctrl_c_close()", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -31568,7 +31354,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "win32_handler()", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -31580,7 +31366,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "run_desktop()", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -31592,7 +31378,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "_shutdown_background()", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -31604,7 +31390,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "enable_ring_buffer()", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -31616,7 +31402,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": ".emit()", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -31628,43 +31414,19 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "log_dir()", "source_file": "src/cellpy_simple_gui/logging_setup.py", "source_location": "L15" }, - { - "id": "src_cellpy_simple_gui_logging_setup_recent_logs", - "label": "recent_logs()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "recent_logs()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L83" - }, - { - "id": "src_cellpy_simple_gui_logging_setup_ring_enabled", - "label": "ring_enabled()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "ring_enabled()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L99" - }, { "id": "src_cellpy_simple_gui_logging_setup_ring_sink", "label": "_ring_sink()", "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "_ring_sink()", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -31676,7 +31438,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "setup_logging()", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -31688,7 +31450,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "_stderr_usable()", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -31700,7 +31462,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "_anchor_cellpy_paths()", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -31712,7 +31474,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "main()", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -31724,7 +31486,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "pick_port()", "source_file": "src/cellpy_simple_gui/server.py", @@ -31736,7 +31498,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "_port_is_free()", "source_file": "src/cellpy_simple_gui/server.py", @@ -31748,7 +31510,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": ".__init__()", "source_file": "src/cellpy_simple_gui/server.py", @@ -31760,7 +31522,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": ".start()", "source_file": "src/cellpy_simple_gui/server.py", @@ -31772,7 +31534,7 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": ".stop()", "source_file": "src/cellpy_simple_gui/server.py", @@ -31784,120 +31546,24 @@ "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": ".url()", "source_file": "src/cellpy_simple_gui/server.py", "source_location": "L48" }, - { - "id": "tests_test_api_client", - "label": "client()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "client()", - "source_file": "tests/test_api.py", - "source_location": "L17" - }, - { - "id": "tests_test_api_served_client", - "label": "served_client()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "served_client()", - "source_file": "tests/test_api.py", - "source_location": "L727" - }, - { - "id": "tests_test_api_test_job_timings_reported", - "label": "test_job_timings_reported()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_job_timings_reported()", - "source_file": "tests/test_api.py", - "source_location": "L429" - }, { "id": "tests_test_api_test_load_and_plot_flow", "label": "test_load_and_plot_flow()", "_callable": true, "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "test_load_and_plot_flow()", "source_file": "tests/test_api.py", "source_location": "L150" }, - { - "id": "tests_test_api_test_log_viewer_captures_stdlib_records", - "label": "test_log_viewer_captures_stdlib_records()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_log_viewer_captures_stdlib_records()", - "source_file": "tests/test_api.py", - "source_location": "L402" - }, - { - "id": "tests_test_compare_client", - "label": "client()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "client()", - "source_file": "tests/test_compare.py", - "source_location": "L285" - }, - { - "id": "tests_test_journal_test_api_load_corrupt_journal_reports_error", - "label": "test_api_load_corrupt_journal_reports_error()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_api_load_corrupt_journal_reports_error()", - "source_file": "tests/test_journal.py", - "source_location": "L83" - }, - { - "id": "tests_test_projects_test_api_classify_import", - "label": "test_api_classify_import()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_api_classify_import()", - "source_file": "tests/test_projects.py", - "source_location": "L346" - }, - { - "id": "tests_test_projects_test_api_open_unknown_404", - "label": "test_api_open_unknown_404()", - "_callable": true, - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_api_open_unknown_404()", - "source_file": "tests/test_projects.py", - "source_location": "L340" - }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_vi", "label": "Vi()", @@ -31959,50 +31625,50 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousedown", + "label": ".mousedown()", "_callable": true, "_origin": "ast", "community": 49, "community_name": "hi", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".mousedown()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_crossfadingfactor", - "label": ".crossFadingFactor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 49, "community_name": "hi", "file_type": "code", - "norm_label": ".crossfadingfactor()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_getcrossfadeparameters", - "label": ".getCrossfadeParameters()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_gesturebeginsvertically", + "label": ".gestureBeginsVertically()", "_callable": true, "_origin": "ast", "community": 49, "community_name": "hi", "file_type": "code", - "norm_label": ".getcrossfadeparameters()", + "norm_label": ".gesturebeginsvertically()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_issupportedscript", - "label": ".isSupportedScript()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_move", + "label": "._move()", "_callable": true, "_origin": "ast", "community": 49, "community_name": "hi", "file_type": "code", - "norm_label": ".issupportedscript()", + "norm_label": "._move()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32114,6 +31780,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_touchstart", + "label": ".touchstart()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".touchstart()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchmove", + "label": ".touchmove()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".touchmove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_remove", "label": ".remove()", @@ -32127,14 +31817,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_getrtltextpluginstatus", - "label": ".getRTLTextPluginStatus()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragmove", + "label": ".dragMove()", "_callable": true, "_origin": "ast", "community": 49, "community_name": "hi", "file_type": "code", - "norm_label": ".getrtltextpluginstatus()", + "norm_label": ".dragmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32198,6 +31888,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_keydown", + "label": ".keydown()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".keydown()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmaxpitch", "label": "setMaxPitch()", @@ -32222,6 +31924,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_preventdefault", + "label": ".preventDefault()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".preventdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_dblclick", + "label": ".dblclick()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".dblclick()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt_c", "label": "c()", @@ -32234,6 +31960,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchmove", + "label": ".touchmove()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".touchmove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchstart", + "label": ".touchstart()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "hi", + "file_type": "code", + "norm_label": ".touchstart()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_e", "label": "e()", @@ -32307,26 +32057,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dc", - "label": "Dc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "dc()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dn", - "label": "Dn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ct", + "label": "ct()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "dn()", + "norm_label": "ct()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32343,74 +32093,74 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ec", + "label": "ec()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "o()", + "norm_label": "ec()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ec", - "label": "ec()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "ec()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_x", - "label": "x()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "x()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "l()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -32451,151 +32201,151 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_rt", - "label": "Rt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "rt()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fc", - "label": "fc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "fc()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fn", - "label": "fn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "fn()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frameasync", - "label": "frameAsync()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi", + "label": "fi()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "frameasync()", + "norm_label": "fi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_update", + "label": ".update()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fn", + "label": "fn()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".set()", + "norm_label": "fn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "p()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_bearing", - "label": ".bearing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".bearing()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_pitch", - "label": ".pitch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".pitch()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_zoom", - "label": ".zoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".zoom()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_getdefault", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_getdefault", "label": ".getDefault()", "_callable": true, "_origin": "ast", @@ -32607,7 +32357,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_set", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_set", "label": ".set()", "_callable": true, "_origin": "ast", @@ -32619,19 +32369,19 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_in", - "label": "In()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "in()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -32643,91 +32393,91 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_x", + "label": "x()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_setdefault", - "label": ".setDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_pruneunusedlayers", + "label": ".pruneUnusedLayers()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".setdefault()", + "norm_label": ".pruneunusedlayers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "c()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "i()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_x", - "label": "x()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "x()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ie", + "label": "ie()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "l()", + "norm_label": "ie()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_a", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ie_a", "label": "a()", "_callable": true, "_origin": "ast", @@ -32739,343 +32489,331 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_k", - "label": "k()", - "_callable": true, - "_origin": "ast", - "community": 5, - "community_name": "i", - "file_type": "code", - "norm_label": "k()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_clearrtltextplugin", - "label": ".clearRTLTextPlugin()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".clearrtltextplugin()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_d", - "label": "d()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "d()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_e", - "label": "E()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_setdefault", + "label": ".setDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "e()", + "norm_label": ".setdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_k", - "label": "k()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "k()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "m()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "o()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "p()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "r()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mc", - "label": "mc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "mc()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_b", - "label": "b()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "b()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_concat", - "label": ".concat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".concat()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "h()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "u()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mc", + "label": "mc()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "h()", + "norm_label": "mc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_h_t", - "label": "T()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_parse_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "t()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "n()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oc", - "label": "Oc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "oc()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oh", - "label": "oh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "oh()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "o()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_commit", + "label": ".commit()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": ".commit()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_continueplacement", + "label": ".continuePlacement()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "h()", + "norm_label": ".continueplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_i", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_i", "label": "i()", "_callable": true, "_origin": "ast", @@ -33087,206 +32825,206 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_isdone", + "label": ".isDone()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "n()", + "norm_label": ".isdone()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".set()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_os", - "label": "Os()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "os()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_d", - "label": "d()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "d()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pc", - "label": "Pc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "pc()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe", - "label": "pe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "pe()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn", - "label": "pn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "pn()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m", - "label": "M()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_v", + "label": "v()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "m()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe", + "label": "pe()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "e()", + "norm_label": "pe()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "i()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "n()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_c", + "label": "C()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_t", + "label": "t()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "o()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_i", + "label": "I()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -33303,14 +33041,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_x_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "n()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -33339,19 +33077,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 5, - "community_name": "i", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a_a", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_a", "label": "a()", "_callable": true, "_origin": "ast", @@ -33363,31 +33089,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a_s", - "label": "s()", - "_callable": true, - "_origin": "ast", - "community": 5, - "community_name": "i", - "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_p", - "label": "p()", - "_callable": true, - "_origin": "ast", - "community": 5, - "community_name": "i", - "file_type": "code", - "norm_label": "p()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -33399,31 +33101,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_o", - "label": "o()", - "_callable": true, - "_origin": "ast", - "community": 5, - "community_name": "i", - "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_r", - "label": "r()", - "_callable": true, - "_origin": "ast", - "community": 5, - "community_name": "i", - "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_tostring", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_tostring", "label": ".toString()", "_callable": true, "_origin": "ast", @@ -33434,42 +33112,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_u", - "label": "u()", - "_callable": true, - "_origin": "ast", - "community": 5, - "community_name": "i", - "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rc", - "label": "Rc()", - "_callable": true, - "_origin": "ast", - "community": 5, - "community_name": "i", - "file_type": "code", - "norm_label": "rc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 5, - "community_name": "i", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_c", "label": "c()", @@ -33543,98 +33185,98 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ru_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_castup", + "label": ".castUp()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": ".castup()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "c()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_castup", - "label": ".castUp()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".castup()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sc", + "label": "Sc()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "e()", + "norm_label": "sc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "u()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_compare", + "label": ".compare()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "r()", + "norm_label": ".compare()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "r()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -33687,86 +33329,86 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_s", - "label": "S()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua_getoffsetx", + "label": ".getoffsetX()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": ".getoffsetx()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui", - "label": "ui()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "ui()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "o()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vc", + "label": "vc()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "f()", + "norm_label": "vc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vc", - "label": "vc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "vc()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createframebuffer", + "label": ".createFramebuffer()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "h()", + "norm_label": ".createframebuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -33783,38 +33425,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_s", - "label": "S()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wc", - "label": "wc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "wc()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -33831,182 +33473,254 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "f()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "h()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xo", - "label": "xo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "xo()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y", - "label": "y()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "y()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "o()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_ishidden", + "label": ".isHidden()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".reset()", + "norm_label": ".ishidden()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchmove", - "label": ".touchmove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".touchmove()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchstart", - "label": ".touchstart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".touchstart()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yo", - "label": "yo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "yo()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_interpolationfactor", + "label": ".interpolationFactor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "i()", + "norm_label": ".interpolationfactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zc", - "label": "zc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "zc()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_interpolationfactor", - "label": ".interpolationFactor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".interpolationfactor()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zn", - "label": "zn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "zn()", + "norm_label": ".disable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_enable", + "label": ".enable()", + "_callable": true, + "_origin": "ast", + "community": 51, + "community_name": ".reset", + "file_type": "code", + "norm_label": ".enable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_fireevent", + "label": "._fireEvent()", + "_callable": true, + "_origin": "ast", + "community": 51, + "community_name": ".reset", + "file_type": "code", + "norm_label": "._fireevent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isactive", + "label": ".isActive()", + "_callable": true, + "_origin": "ast", + "community": 51, + "community_name": ".reset", + "file_type": "code", + "norm_label": ".isactive()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isenabled", + "label": ".isEnabled()", + "_callable": true, + "_origin": "ast", + "community": 51, + "community_name": ".reset", + "file_type": "code", + "norm_label": ".isenabled()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_keydown", + "label": ".keydown()", + "_callable": true, + "_origin": "ast", + "community": 51, + "community_name": ".reset", + "file_type": "code", + "norm_label": ".keydown()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousemovewindow", + "label": ".mousemoveWindow()", + "_callable": true, + "_origin": "ast", + "community": 51, + "community_name": ".reset", + "file_type": "code", + "norm_label": ".mousemovewindow()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -34023,14 +33737,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_touchstart", - "label": ".touchstart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", "community": 51, "community_name": ".reset", "file_type": "code", - "norm_label": ".touchstart()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -34082,6 +33796,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_enabledrag", + "label": ".enableDrag()", + "_callable": true, + "_origin": "ast", + "community": 51, + "community_name": ".reset", + "file_type": "code", + "norm_label": ".enabledrag()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_suppressclick", "label": ".suppressClick()", @@ -34094,6 +33820,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_fireevent", + "label": "._fireEvent()", + "_callable": true, + "_origin": "ast", + "community": 51, + "community_name": ".reset", + "file_type": "code", + "norm_label": "._fireevent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_reset", "label": ".reset()", @@ -34238,18 +33976,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchstart", - "label": ".touchstart()", - "_callable": true, - "_origin": "ast", - "community": 51, - "community_name": ".reset", - "file_type": "code", - "norm_label": ".touchstart()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_constructor", "label": ".constructor()", @@ -34430,6 +34156,18 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L64" }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_compare_picks", + "label": "compare_picks()", + "_callable": true, + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "code", + "norm_label": "compare_picks()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L112" + }, { "id": "src_cellpy_simple_gui_api_routers_plots_compare_plot", "label": "compare_plot()", @@ -34538,6 +34276,18 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L174" }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_require_dev_mode", + "label": "require_dev_mode()", + "_callable": true, + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "code", + "norm_label": "require_dev_mode()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L141" + }, { "id": "src_cellpy_simple_gui_api_routers_plots_selected_cycles_bounds", "label": "selected_cycles_bounds()", @@ -34562,42 +34312,6 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L57" }, - { - "id": "src_cellpy_simple_gui_core_collect_note_downsampling", - "label": "_note_downsampling()", - "_callable": true, - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "code", - "norm_label": "_note_downsampling()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L980" - }, - { - "id": "src_cellpy_simple_gui_core_collect_raw_figure_json", - "label": "raw_figure_json()", - "_callable": true, - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "code", - "norm_label": "raw_figure_json()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L915" - }, - { - "id": "src_cellpy_simple_gui_core_plotting_raw_figure", - "label": "raw_figure()", - "_callable": true, - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "code", - "norm_label": "raw_figure()", - "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L295" - }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_raw", "label": "raw()", @@ -34851,50 +34565,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_emplace", - "label": ".emplace()", - "_callable": true, - "_origin": "ast", - "community": 55, - "community_name": "fa", - "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_calculate", + "label": "._calculate()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "fa", + "community": 56, + "community_name": "ea", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "._calculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_calculate", - "label": "._calculate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 56, "community_name": "ea", "file_type": "code", - "norm_label": "._calculate()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 56, "community_name": "ea", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -34935,26 +34637,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", "community": 56, "community_name": "ea", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_layout", - "label": "layout()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 56, "community_name": "ea", "file_type": "code", - "norm_label": "layout()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -34994,6 +34696,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_emplaceback", + "label": ".emplaceBack()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "ea", + "file_type": "code", + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_evaluate", "label": ".evaluate()", @@ -35042,30 +34756,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_u", - "label": "u()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ct", - "label": "ct()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": "ct()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_a", "label": "a()", @@ -35103,98 +34793,98 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_replace", - "label": ".replace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".replace()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_seturl", - "label": ".setURL()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_replace", + "label": ".replace()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".seturl()", + "norm_label": ".replace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".update()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_apply", - "label": ".apply()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_seturl", + "label": ".setURL()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".apply()", + "norm_label": ".seturl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_filter", - "label": ".filter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_update", + "label": ".update()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".filter()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "i()", + "norm_label": ".bind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_filter", + "label": ".filter()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "a()", + "norm_label": ".filter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -35283,62 +34973,50 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_u", - "label": "u()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_z", - "label": "z()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_setvalue", + "label": ".setValue()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "z()", + "norm_label": ".setvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": "a()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_ishidden", - "label": ".isHidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".ishidden()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -35355,38 +35033,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_broadcast", - "label": ".broadcast()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_getactor", + "label": ".getActor()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".broadcast()", + "norm_label": ".getactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_getactor", - "label": ".getActor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".getactor()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_remove", - "label": ".remove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_updatedata", + "label": ".updateData()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".remove()", + "norm_label": ".updatedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -35510,54 +35188,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_concat", - "label": ".concat()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": ".concat()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_get", - "label": ".get()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_has", - "label": ".has()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": ".has()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_constructor", "label": ".constructor()", @@ -35570,18 +35200,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_n", - "label": "n()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": "n()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_constructor", "label": ".constructor()", @@ -35607,86 +35225,74 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_updateimage", + "label": "updateImage()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "updateimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v", + "label": "v()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_ishidden", - "label": ".isHidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_m", + "label": "m()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".ishidden()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 57, "community_name": "I", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -35732,7 +35338,7 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".draw()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -35744,43 +35350,19 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".draw()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_renderlayer", - "label": ".renderLayer()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".renderlayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_gettile", - "label": ".getTile()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".gettile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getpaintvertexbuffers", "label": ".getPaintVertexBuffers()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".getpaintvertexbuffers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -35792,331 +35374,43 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".setuniforms()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_updatepaintbuffers", - "label": ".updatePaintBuffers()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".updatepaintbuffers()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpaintproperty", - "label": "getPaintProperty()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": "getpaintproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_getbucket", - "label": ".getBucket()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".getbucket()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_patternsloaded", - "label": ".patternsLoaded()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".patternsloaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constantor", - "label": ".constantOr()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".constantor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_on", - "label": "on()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": "on()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_clearstencil", - "label": ".clearStencil()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".clearstencil()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_colormodeforrenderpass", - "label": ".colorModeForRenderPass()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".colormodeforrenderpass()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_depthmodeforsublayer", - "label": ".depthModeForSublayer()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".depthmodeforsublayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_destroy", - "label": ".destroy()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluate", - "label": ".evaluate()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluatewithouterrorhandling", - "label": ".evaluateWithoutErrorHandling()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".evaluatewithouterrorhandling()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_ispatternmissing", - "label": ".isPatternMissing()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".ispatternmissing()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_opaquepassenabledforlayer", - "label": ".opaquePassEnabledForLayer()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".opaquepassenabledforlayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_overlimit", - "label": ".overLimit()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".overlimit()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_render", - "label": ".render()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".render()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_renderlayer", - "label": ".renderLayer()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".renderlayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_rendertileclippingmasks", "label": "._renderTileClippingMasks()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": "._rendertileclippingmasks()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_resize", - "label": ".resize()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".resize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setbasestate", - "label": ".setBaseState()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".setbasestate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setcustomlayerdefaults", "label": ".setCustomLayerDefaults()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".setcustomlayerdefaults()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilconfigforoverlap", - "label": ".stencilConfigForOverlap()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".stencilconfigforoverlap()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodefor3d", - "label": ".stencilModeFor3D()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".stencilmodefor3d()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodeforclipping", - "label": ".stencilModeForClipping()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".stencilmodeforclipping()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_useprogram", - "label": ".useProgram()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".useprogram()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_ishidden", - "label": ".isHidden()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".ishidden()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_deletevertexarray", "label": ".deleteVertexArray()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".deletevertexarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36128,7 +35422,7 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36140,7 +35434,7 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36152,7 +35446,7 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".setcolormode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36164,7 +35458,7 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".setcullface()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36176,7 +35470,7 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".setdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36188,7 +35482,7 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".setdepthmode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36200,7 +35494,7 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".setstencilmode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36212,79 +35506,31 @@ "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": ".draw", "file_type": "code", "norm_label": ".unbindvao()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_commit", - "label": ".commit()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".commit()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_symbolfadechange", - "label": ".symbolFadeChange()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".symbolfadechange()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr_getdefault", - "label": ".getDefault()", - "_callable": true, - "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", - "file_type": "code", - "norm_label": ".getdefault()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "examples_mcp_server_cell", "label": "_cell()", "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "_cell()", "source_file": "examples/mcp/server.py", "source_location": "L159" }, - { - "id": "examples_mcp_server_collect", - "label": "collect()", - "_callable": true, - "_origin": "ast", - "community": 59, - "community_name": "collect", - "file_type": "code", - "norm_label": "collect()", - "source_file": "examples/mcp/server.py", - "source_location": "L296" - }, { "id": "examples_mcp_server_collection", "label": "_collection()", "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "_collection()", "source_file": "examples/mcp/server.py", @@ -36296,7 +35542,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "describe_api()", "source_file": "examples/mcp/server.py", @@ -36308,7 +35554,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "describe_plot_families()", "source_file": "examples/mcp/server.py", @@ -36320,7 +35566,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "export_collection()", "source_file": "examples/mcp/server.py", @@ -36332,7 +35578,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "_follow_reference()", "source_file": "examples/mcp/server.py", @@ -36344,19 +35590,43 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "list_cells()", "source_file": "examples/mcp/server.py", "source_location": "L248" }, + { + "id": "examples_mcp_server_list_instruments", + "label": "list_instruments()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "Refused", + "file_type": "code", + "norm_label": "list_instruments()", + "source_file": "examples/mcp/server.py", + "source_location": "L177" + }, + { + "id": "examples_mcp_server_list_instruments_arbin_res_readable", + "label": "arbin_res_readable()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "Refused", + "file_type": "code", + "norm_label": "arbin_res_readable()", + "source_file": "examples/mcp/server.py", + "source_location": "L184" + }, { "id": "examples_mcp_server_list_templates", "label": "list_templates()", "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "list_templates()", "source_file": "examples/mcp/server.py", @@ -36368,7 +35638,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "load_cell()", "source_file": "examples/mcp/server.py", @@ -36380,7 +35650,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "new_project()", "source_file": "examples/mcp/server.py", @@ -36392,7 +35662,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "preview_collection()", "source_file": "examples/mcp/server.py", @@ -36404,7 +35674,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "render()", "source_file": "examples/mcp/server.py", @@ -36416,7 +35686,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "_resolve()", "source_file": "examples/mcp/server.py", @@ -36428,7 +35698,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "_resolve_dotted()", "source_file": "examples/mcp/server.py", @@ -36440,7 +35710,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "search_api()", "source_file": "examples/mcp/server.py", @@ -36452,7 +35722,7 @@ "_callable": true, "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": ".handle()", "source_file": "examples/mcp/server.py", @@ -36464,273 +35734,261 @@ "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_eachchild", - "label": ".eachChild()", - "_callable": true, - "_origin": "ast", - "community": 6, - "community_name": "N", - "file_type": "code", - "norm_label": ".eachchild()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_distancex", + "label": ".distanceX()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".bind()", + "norm_label": ".distancex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_distancey", + "label": ".distanceY()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".distancey()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_intersects", + "label": ".intersects()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".intersects()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_quadrant", + "label": ".quadrant()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".quadrant()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_gettile", + "label": ".getTile()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".gettile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_updatedata", - "label": ".updateData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coveringtiles", + "label": ".coveringTiles()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".updatedata()", + "norm_label": ".coveringtiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_updatepaintbuffers", + "label": ".updatePaintBuffers()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "a()", + "norm_label": ".updatepaintbuffers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpaintproperty", + "label": "getPaintProperty()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "getpaintproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_pruneunusedlayers", - "label": ".pruneUnusedLayers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_bearing", + "label": ".bearing()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".pruneunusedlayers()", + "norm_label": ".bearing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_center", - "label": ".center()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".center()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ke", - "label": "ke()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_pitch", + "label": ".pitch()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "ke()", + "norm_label": ".pitch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_unproject", + "label": ".unproject()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".enable()", + "norm_label": ".unproject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_zoom", + "label": ".zoom()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "f()", + "norm_label": ".zoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_getbucket", + "label": ".getBucket()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": ".getbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_patternsloaded", + "label": ".patternsLoaded()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": ".patternsloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_je", + "label": "Je()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "l()", + "norm_label": "je()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_move", - "label": "._move()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_je_generate", + "label": ".generate()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "._move()", + "norm_label": ".generate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constantor", + "label": ".constantOr()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "n()", + "norm_label": ".constantor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_addto", + "label": ".addTo()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "r()", + "norm_label": ".addto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".reset()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ne", - "label": "ne()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_gethashstring", + "label": ".getHashString()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "ne()", + "norm_label": ".gethashstring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -36740,7 +35998,7 @@ "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", "norm_label": ".defaultprevented()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36752,141 +36010,45 @@ "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", "norm_label": ".preventdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_f", - "label": "f()", - "_callable": true, - "_origin": "ast", - "community": 6, - "community_name": "N", - "file_type": "code", - "norm_label": "f()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_eachchild", - "label": ".eachChild()", - "_callable": true, - "_origin": "ast", - "community": 6, - "community_name": "N", - "file_type": "code", - "norm_label": ".eachchild()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_bind", - "label": ".bind()", - "_callable": true, - "_origin": "ast", - "community": 6, - "community_name": "N", - "file_type": "code", - "norm_label": ".bind()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 6, - "community_name": "N", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_destroy", - "label": ".destroy()", - "_callable": true, - "_origin": "ast", - "community": 6, - "community_name": "N", - "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_updatedata", - "label": ".updateData()", - "_callable": true, - "_origin": "ast", - "community": 6, - "community_name": "N", - "file_type": "code", - "norm_label": ".updatedata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_clear", - "label": ".clear()", - "_callable": true, - "_origin": "ast", - "community": 6, - "community_name": "N", - "file_type": "code", - "norm_label": ".clear()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_draininertiabuffer", - "label": "._drainInertiaBuffer()", - "_callable": true, - "_origin": "ast", - "community": 6, - "community_name": "N", - "file_type": "code", - "norm_label": "._draininertiabuffer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_onmoveend", - "label": "._onMoveEnd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getcrossfadeparameters", + "label": ".getCrossfadeParameters()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "._onmoveend()", + "norm_label": ".getcrossfadeparameters()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_record", - "label": ".record()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_on", + "label": "on()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".record()", + "norm_label": "on()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sc", - "label": "Sc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": "sc()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -36896,7 +36058,7 @@ "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36908,7 +36070,7 @@ "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -36920,33 +36082,33 @@ "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", "norm_label": ".evaluatewithouterrorhandling()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_interpolationfactor", - "label": ".interpolationFactor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_renderlayer", + "label": ".renderLayer()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".interpolationfactor()", + "norm_label": ".renderlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_initdebugoverlaycanvas", - "label": ".initDebugOverlayCanvas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodeforclipping", + "label": ".stencilModeForClipping()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".initdebugoverlaycanvas()", + "norm_label": ".stencilmodeforclipping()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -36956,33 +36118,21 @@ "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", "norm_label": ".translateposmatrix()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getcenter", - "label": ".getCenter()", - "_callable": true, - "_origin": "ast", - "community": 6, - "community_name": "N", - "file_type": "code", - "norm_label": ".getcenter()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_useprogram", + "label": ".useProgram()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": "hn", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".useprogram()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -37118,18 +36268,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_parse_r", - "label": "r()", - "_callable": true, - "_origin": "ast", - "community": 60, - "community_name": ".parse", - "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_parse", "label": ".parse()", @@ -37191,55 +36329,55 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 60, "community_name": ".parse", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_parse", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_parse", "label": ".parse()", "_callable": true, "_origin": "ast", @@ -37251,7 +36389,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_parse", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_parse", "label": ".parse()", "_callable": true, "_origin": "ast", @@ -37263,158 +36401,482 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_core_library_file_stat", + "label": "file_stat()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "file_stat()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L35" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_add_cell", + "label": ".add_cell()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".add_cell()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L134" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_all", + "label": ".all()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".all()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L334" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_clear", + "label": ".clear()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".clear()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L278" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_get", + "label": ".get()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".get()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L330" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_group_label", + "label": ".group_label()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".group_label()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L301" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_group_labels", + "label": ".group_labels()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".group_labels()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L306" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_groups", + "label": ".groups()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".groups()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L312" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_init", + "label": ".__init__()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".__init__()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L121" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_is_empty", + "label": ".is_empty()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".is_empty()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L347" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_len", + "label": ".__len__()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".__len__()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L344" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_mark_clean", + "label": "._mark_clean()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": "._mark_clean()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L242" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_mark_saved", + "label": ".mark_saved()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".mark_saved()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L248" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_n_groups", + "label": ".n_groups()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".n_groups()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L353" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_remove", + "label": ".remove()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".remove()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L274" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_restore_cell", + "label": ".restore_cell()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".restore_cell()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L157" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_reusable_data_file", + "label": ".reusable_data_file()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".reusable_data_file()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L255" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_set_group_label", + "label": ".set_group_label()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".set_group_label()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L291" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_set_selection", + "label": ".set_selection()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": ".set_selection()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L285" + }, + { + "id": "tests_test_projects_test_group_names_saved_and_restored", + "label": "test_group_names_saved_and_restored()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": "test_group_names_saved_and_restored()", + "source_file": "tests/test_projects.py", + "source_location": "L64" + }, + { + "id": "tests_test_projects_test_manifest_without_groups_still_opens", + "label": "test_manifest_without_groups_still_opens()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": "test_manifest_without_groups_still_opens()", + "source_file": "tests/test_projects.py", + "source_location": "L84" + }, + { + "id": "tests_test_projects_test_open_via_project_json_file_and_absolute_path", + "label": "test_open_via_project_json_file_and_absolute_path()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": "test_open_via_project_json_file_and_absolute_path()", + "source_file": "tests/test_projects.py", + "source_location": "L316" + }, + { + "id": "tests_test_projects_test_opened_cells_start_clean_and_dirty_on_edit", + "label": "test_opened_cells_start_clean_and_dirty_on_edit()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": "test_opened_cells_start_clean_and_dirty_on_edit()", + "source_file": "tests/test_projects.py", + "source_location": "L266" + }, + { + "id": "tests_test_projects_test_save_as_new_project_still_copies_every_cell", + "label": "test_save_as_new_project_still_copies_every_cell()", + "_callable": true, + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "code", + "norm_label": "test_save_as_new_project_still_copies_every_cell()", + "source_file": "tests/test_projects.py", + "source_location": "L229" + }, + { + "id": "src_cellpy_simple_gui_config_settings_max_files", + "label": ".max_files()", + "_callable": true, + "_origin": "ast", + "community": 62, + "community_name": ".max_files", + "file_type": "code", + "norm_label": ".max_files()", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L70" + }, + { + "id": "src_cellpy_simple_gui_core_paths_is_remote_uri", + "label": "is_remote_uri()", + "_callable": true, + "_origin": "ast", + "community": 62, + "community_name": ".max_files", + "file_type": "code", + "norm_label": "is_remote_uri()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L43" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 63, + "community_name": "ti", + "file_type": "code", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_createobject", + "label": "._createObject()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "._createobject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_conftest_example_cell", - "label": "example_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeallobjects", + "label": ".freeAllObjects()", "_callable": true, "_origin": "ast", - "community": 61, - "community_name": "conftest.py", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "example_cell()", - "source_file": "tests/conftest.py", - "source_location": "L16" + "norm_label": ".freeallobjects()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_conftest_loaded_library", - "label": "loaded_library()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeobject", + "label": ".freeObject()", "_callable": true, "_origin": "ast", - "community": 61, - "community_name": "conftest.py", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "loaded_library()", - "source_file": "tests/conftest.py", - "source_location": "L26" + "norm_label": ".freeobject()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_conftest_parse_figure", - "label": "parse_figure()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getobjectforid", + "label": ".getObjectForId()", "_callable": true, "_origin": "ast", - "community": 61, - "community_name": "conftest.py", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "parse_figure()", - "source_file": "tests/conftest.py", - "source_location": "L34" + "norm_label": ".getobjectforid()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getorcreatefreeobject", + "label": ".getOrCreateFreeObject()", "_callable": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".getorcreatefreeobject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_isfull", + "label": ".isFull()", "_callable": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".isfull()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": ".set()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_stampobject", + "label": ".stampObject()", "_callable": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".stampobject()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_useobject", + "label": ".useObject()", + "_callable": true, + "_origin": "ast", + "community": 63, + "community_name": "ti", + "file_type": "code", + "norm_label": ".useobject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -37515,124 +36977,232 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_setupui", - "label": "._setupUI()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": "._setupui()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_pn", + "label": "Pn()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 64, + "community_name": ".concat", "file_type": "code", - "norm_label": ".set()", + "norm_label": "pn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dn", + "label": "Dn()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": ".concat", + "file_type": "code", + "norm_label": "dn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_agent_docs_generator", - "label": "generator()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 64, - "community_name": "test_agent_docs.py", + "community_name": ".concat", "file_type": "code", - "norm_label": "generator()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L28" + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_agent_docs_test_every_path_the_index_points_at_exists", - "label": "test_every_path_the_index_points_at_exists()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 64, - "community_name": "test_agent_docs.py", + "community_name": ".concat", "file_type": "code", - "norm_label": "test_every_path_the_index_points_at_exists()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L54" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_agent_docs_test_llms_full_actually_contains_the_documents", - "label": "test_llms_full_actually_contains_the_documents()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_ishidden", + "label": ".isHidden()", "_callable": true, "_origin": "ast", "community": 64, - "community_name": "test_agent_docs.py", + "community_name": ".concat", "file_type": "code", - "norm_label": "test_llms_full_actually_contains_the_documents()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L71" + "norm_label": ".ishidden()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_agent_docs_test_llms_txt_is_current", - "label": "test_llms_txt_is_current()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_concat", + "label": ".concat()", "_callable": true, "_origin": "ast", "community": 64, - "community_name": "test_agent_docs.py", + "community_name": ".concat", "file_type": "code", - "norm_label": "test_llms_txt_is_current()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L40" + "norm_label": ".concat()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_agent_docs_test_the_index_lists_every_guide", - "label": "test_the_index_lists_every_guide()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 64, - "community_name": "test_agent_docs.py", + "community_name": ".concat", "file_type": "code", - "norm_label": "test_the_index_lists_every_guide()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L64" + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_agent_docs_test_the_skill_has_the_frontmatter_a_skill_needs", - "label": "test_the_skill_has_the_frontmatter_a_skill_needs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 64, - "community_name": "test_agent_docs.py", + "community_name": ".concat", "file_type": "code", - "norm_label": "test_the_skill_has_the_frontmatter_a_skill_needs()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L84" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_agent_docs_test_the_skill_reference_is_bundled", - "label": "test_the_skill_reference_is_bundled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 64, - "community_name": "test_agent_docs.py", + "community_name": ".concat", "file_type": "code", - "norm_label": "test_the_skill_reference_is_bundled()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L115" + "norm_label": "i()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_agent_docs_test_the_skill_states_the_traps_that_produce_plausible_output", - "label": "test_the_skill_states_the_traps_that_produce_plausible_output()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 64, - "community_name": "test_agent_docs.py", + "community_name": ".concat", "file_type": "code", - "norm_label": "test_the_skill_states_the_traps_that_produce_plausible_output()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L99" + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_r", + "label": "r()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": ".concat", + "file_type": "code", + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_tostring", + "label": ".toString()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": ".concat", + "file_type": "code", + "norm_label": ".tostring()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_clear", + "label": ".clear()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": ".concat", + "file_type": "code", + "norm_label": ".clear()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_draininertiabuffer", + "label": "._drainInertiaBuffer()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": ".concat", + "file_type": "code", + "norm_label": "._draininertiabuffer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_onmoveend", + "label": "._onMoveEnd()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": ".concat", + "file_type": "code", + "norm_label": "._onmoveend()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_record", + "label": ".record()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": ".concat", + "file_type": "code", + "norm_label": ".record()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": ".concat", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zn", + "label": "zn()", + "_callable": true, + "_origin": "ast", + "community": 64, + "community_name": ".concat", + "file_type": "code", + "norm_label": "zn()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_api_routers_projects_delete_project", @@ -37644,7 +37214,7 @@ "file_type": "code", "norm_label": "delete_project()", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L193" + "source_location": "L196" }, { "id": "src_cellpy_simple_gui_core_projects_classify_import_path", @@ -37656,7 +37226,7 @@ "file_type": "code", "norm_label": "classify_import_path()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L116" + "source_location": "L125" }, { "id": "src_cellpy_simple_gui_core_projects_cleanup_save_artifacts", @@ -37668,7 +37238,7 @@ "file_type": "code", "norm_label": "_cleanup_save_artifacts()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L147" + "source_location": "L156" }, { "id": "src_cellpy_simple_gui_core_projects_delete_project", @@ -37680,7 +37250,7 @@ "file_type": "code", "norm_label": "delete_project()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L312" + "source_location": "L327" }, { "id": "src_cellpy_simple_gui_core_projects_list_projects", @@ -37692,7 +37262,7 @@ "file_type": "code", "norm_label": "list_projects()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L292" + "source_location": "L307" }, { "id": "src_cellpy_simple_gui_core_projects_now", @@ -37704,7 +37274,7 @@ "file_type": "code", "norm_label": "_now()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L99" + "source_location": "L108" }, { "id": "src_cellpy_simple_gui_core_projects_open_project", @@ -37716,7 +37286,7 @@ "file_type": "code", "norm_label": "open_project()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L261" + "source_location": "L274" }, { "id": "src_cellpy_simple_gui_core_projects_projects_root", @@ -37728,7 +37298,7 @@ "file_type": "code", "norm_label": "projects_root()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L88" + "source_location": "L97" }, { "id": "src_cellpy_simple_gui_core_projects_resolve_project_path", @@ -37740,7 +37310,7 @@ "file_type": "code", "norm_label": "resolve_project_path()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L103" + "source_location": "L112" }, { "id": "src_cellpy_simple_gui_core_projects_safe_cellpy_version", @@ -37752,7 +37322,7 @@ "file_type": "code", "norm_label": "_safe_cellpy_version()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L318" + "source_location": "L333" }, { "id": "src_cellpy_simple_gui_core_projects_save_project", @@ -37764,7 +37334,7 @@ "file_type": "code", "norm_label": "save_project()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L158" + "source_location": "L167" }, { "id": "src_cellpy_simple_gui_core_projects_slugify", @@ -37776,7 +37346,7 @@ "file_type": "code", "norm_label": "slugify()", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L94" + "source_location": "L103" }, { "id": "tests_test_projects_temp_projects_root", @@ -37791,566 +37361,578 @@ "source_location": "L18" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": "Ra", + "community_name": "N", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_f", + "label": "f()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": "Ra", + "community_name": "N", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_calculate", - "label": "._calculate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": "Ra", + "community_name": "N", "file_type": "code", - "norm_label": "._calculate()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": "Ra", + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": "Ra", + "community_name": "N", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_interpolate", - "label": ".interpolate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": "Ra", + "community_name": "N", "file_type": "code", - "norm_label": ".interpolate()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_move", + "label": "._move()", "_callable": true, "_origin": "ast", "community": 66, - "community_name": "Ra", + "community_name": "N", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": "._move()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_normalize_dialog_path", - "label": "_normalize_dialog_path()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "pick", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": "_normalize_dialog_path()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L57" + "norm_label": "n()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_pick", - "label": "pick()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "pick", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": "pick()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L118" + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_save", - "label": "save()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "pick", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": "save()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L140" + "norm_label": ".reset()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_save_file_types", - "label": "_save_file_types()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m", + "label": "M()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "pick", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": "_save_file_types()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L49" + "norm_label": "m()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_e", + "label": "e()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getcenter", + "label": ".getCenter()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": "i()", + "norm_label": ".getcenter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": "n()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ie", - "label": "ie()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchmove", + "label": ".touchmove()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": "ie()", + "norm_label": ".touchmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ie_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchstart", + "label": ".touchstart()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 66, + "community_name": "N", "file_type": "code", - "norm_label": "a()", + "norm_label": ".touchstart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_r", - "label": "r()", + "id": "src_cellpy_simple_gui_api_routers_system_capabilities", + "label": "capabilities()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 67, + "community_name": "system.py", "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "capabilities()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L66" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_api_routers_system_cellpy_config_diagnostics", + "label": "cellpy_config_diagnostics()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 67, + "community_name": "system.py", "file_type": "code", - "norm_label": ".getdefault()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cellpy_config_diagnostics()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L108" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_api_routers_system_job_timings", + "label": "job_timings()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 67, + "community_name": "system.py", "file_type": "code", - "norm_label": ".set()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "job_timings()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L98" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_tojson", - "label": ".toJSON()", + "id": "src_cellpy_simple_gui_api_routers_system_logs", + "label": "logs()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 67, + "community_name": "system.py", "file_type": "code", - "norm_label": ".tojson()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "logs()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L84" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_a", - "label": "a()", + "id": "src_cellpy_simple_gui_api_routers_system_normalize_dialog_path", + "label": "_normalize_dialog_path()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 67, + "community_name": "system.py", "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_normalize_dialog_path()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L57" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_commit", - "label": ".commit()", + "id": "src_cellpy_simple_gui_api_routers_system_pick", + "label": "pick()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 67, + "community_name": "system.py", "file_type": "code", - "norm_label": ".commit()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "pick()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L118" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_api_routers_system_save", + "label": "save()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 67, + "community_name": "system.py", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "save()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L140" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_continueplacement", - "label": ".continuePlacement()", + "id": "src_cellpy_simple_gui_api_routers_system_save_file_types", + "label": "_save_file_types()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 67, + "community_name": "system.py", "file_type": "code", - "norm_label": ".continueplacement()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_save_file_types()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L49" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_i", - "label": "i()", + "id": "src_cellpy_simple_gui_api_routers_system_webview_window", + "label": "_webview_window()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 67, + "community_name": "system.py", "file_type": "code", - "norm_label": "i()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_webview_window()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L39" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_isdone", - "label": ".isDone()", + "id": "src_cellpy_simple_gui_logging_setup_recent_logs", + "label": "recent_logs()", + "_callable": true, + "_origin": "ast", + "community": 67, + "community_name": "system.py", + "file_type": "code", + "norm_label": "recent_logs()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L83" + }, + { + "id": "src_cellpy_simple_gui_logging_setup_ring_enabled", + "label": "ring_enabled()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "g", + "community": 67, + "community_name": "system.py", "file_type": "code", - "norm_label": ".isdone()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ring_enabled()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L99" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_hasinvaliddimensions", + "label": "._hasInvalidDimensions()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": "o()", + "norm_label": "._hasinvaliddimensions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_c", - "label": "C()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_load", + "label": ".load()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": "c()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_setsourceproperty", + "label": ".setSourceProperty()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": "g()", + "norm_label": ".setsourceproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua_getoffsetx", - "label": ".getoffsetX()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_settiles", + "label": ".setTiles()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".getoffsetx()", + "norm_label": ".settiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_seturl", + "label": ".setUrl()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".seturl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_getx", - "label": ".getx()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setsourceproperty", + "label": ".setSourceProperty()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".getx()", + "norm_label": ".setsourceproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_gety", - "label": ".gety()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_settiles", + "label": ".setTiles()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".gety()", + "norm_label": ".settiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_seturl", + "label": ".setUrl()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": "r()", + "norm_label": ".seturl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_play", + "label": ".play()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".play()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_finishloading", + "label": "._finishLoading()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "._finishloading()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": "h()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_ishidden", - "label": ".isHidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_setcoordinates", + "label": ".setCoordinates()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".ishidden()", + "norm_label": ".setcoordinates()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_updateimage", + "label": ".updateImage()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": ".updateimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 68, - "community_name": "g", + "community_name": ".load", "file_type": "code", - "norm_label": "u()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -38364,7 +37946,7 @@ "file_type": "code", "norm_label": "ica_collection()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L514" + "source_location": "L535" }, { "id": "src_cellpy_simple_gui_core_export_ica_export", @@ -38448,7 +38030,7 @@ "file_type": "code", "norm_label": "test_thin_traces_leaves_small_figures_alone()", "source_file": "tests/test_core.py", - "source_location": "L1865" + "source_location": "L1947" }, { "id": "tests_test_compare_ids", @@ -39015,743 +38597,1235 @@ "source_location": "L194" }, { - "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config", - "label": "test_startup_survives_an_unreadable_cellpy_config()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_setsky", + "label": ".setSky()", "_callable": true, "_origin": "ast", - "community": 71, - "community_name": "app_main_module", + "community": 72, + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": "test_startup_survives_an_unreadable_cellpy_config()", - "source_file": "tests/test_packaging.py", - "source_location": "L210" + "norm_label": ".setsky()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config_boom", - "label": "boom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addlayer", + "label": ".addLayer()", "_callable": true, "_origin": "ast", - "community": 71, - "community_name": "app_main_module", + "community": 72, + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": "boom()", - "source_file": "tests/test_packaging.py", - "source_location": "L213" + "norm_label": ".addlayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addsource", - "label": "addSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addsprite", + "label": ".addSprite()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": "addsource()", + "norm_label": ".addsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_setsky", - "label": ".setSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_checkloaded", + "label": "._checkLoaded()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".setsky()", + "norm_label": "._checkloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addimage", - "label": ".addImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getfeaturestate", + "label": ".getFeatureState()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".addimage()", + "norm_label": ".getfeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addlayer", - "label": ".addLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getfilter", + "label": ".getFilter()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".addlayer()", + "norm_label": ".getfilter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addsource", - "label": ".addSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayoutproperty", + "label": ".getLayoutProperty()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".addsource()", + "norm_label": ".getlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addsprite", - "label": ".addSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getpaintproperty", + "label": ".getPaintProperty()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".addsprite()", + "norm_label": ".getpaintproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_afterimageupdated", - "label": "._afterImageUpdated()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsource", + "label": ".getSource()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": "._afterimageupdated()", + "norm_label": ".getsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_checkloaded", - "label": "._checkLoaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_listimages", + "label": ".listImages()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": "._checkloaded()", + "norm_label": ".listimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_movelayer", + "label": ".moveLayer()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".movelayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_geometry", - "label": ".geometry()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removefeaturestate", + "label": ".removeFeatureState()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".geometry()", + "norm_label": ".removefeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getfeaturestate", - "label": ".getFeatureState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removesprite", + "label": ".removeSprite()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getfeaturestate()", + "norm_label": ".removesprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getfilter", - "label": ".getFilter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfeaturestate", + "label": ".setFeatureState()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getfilter()", + "norm_label": ".setfeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getglyphsurl", - "label": ".getGlyphsUrl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfilter", + "label": ".setFilter()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getglyphsurl()", + "norm_label": ".setfilter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getimage", - "label": ".getImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setgeojsonsourcedata", + "label": ".setGeoJSONSourceData()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getimage()", + "norm_label": ".setgeojsonsourcedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayer", - "label": ".getLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setglyphs", + "label": ".setGlyphs()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getlayer()", + "norm_label": ".setglyphs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayersorder", - "label": ".getLayersOrder()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayerzoomrange", + "label": ".setLayerZoomRange()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getlayersorder()", + "norm_label": ".setlayerzoomrange()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayoutproperty", - "label": ".getLayoutProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayoutproperty", + "label": ".setLayoutProperty()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getlayoutproperty()", + "norm_label": ".setlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlight", - "label": ".getLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlight", + "label": ".setLight()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getlight()", + "norm_label": ".setlight()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getoperationstoperform", - "label": "._getOperationsToPerform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setpaintproperty", + "label": ".setPaintProperty()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": "._getoperationstoperform()", + "norm_label": ".setpaintproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getpaintproperty", - "label": ".getPaintProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsprite", + "label": ".setSprite()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getpaintproperty()", + "norm_label": ".setsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsky", - "label": ".getSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_unloadsprite", + "label": "._unloadSprite()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getsky()", + "norm_label": "._unloadsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsource", - "label": ".getSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatelayer", + "label": "._updateLayer()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getsource()", + "norm_label": "._updatelayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsprite", - "label": ".getSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validate", + "label": "._validate()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".getsprite()", + "norm_label": "._validate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_id", - "label": ".id()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validatelayer", + "label": "._validateLayer()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".id()", + "norm_label": "._validatelayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_listimages", - "label": ".listImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_pause", + "label": ".pause()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".listimages()", + "norm_label": ".pause()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayer", + "label": "getLayer()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".loaded()", + "norm_label": "getlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_movelayer", - "label": ".moveLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayoutproperty", + "label": "getLayoutProperty()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".movelayer()", + "norm_label": "getlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_properties", - "label": ".properties()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsource", + "label": "getSource()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".properties()", + "norm_label": "getsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removefeaturestate", - "label": ".removeFeatureState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".removefeaturestate()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removeimage", - "label": ".removeImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_addimage", + "label": ".addImage()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".removeimage()", + "norm_label": ".addimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removesprite", - "label": ".removeSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setlayoutproperty", + "label": ".setLayoutProperty()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".removesprite()", + "norm_label": ".setlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_setlight", + "label": ".setLight()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".setlight()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serializebyids", - "label": "._serializeByIds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removefeaturestate", + "label": "removeFeatureState()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": "._serializebyids()", + "norm_label": "removefeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serializedalllayers", - "label": "._serializedAllLayers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setdata", + "label": ".setData()", "_callable": true, "_origin": "ast", "community": 72, - "community_name": "de", + "community_name": "._checkLoaded", "file_type": "code", - "norm_label": "._serializedalllayers()", + "norm_label": ".setdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfilter", - "label": ".setFilter()", + "id": "tests_test_packaging_load_zip_installer", + "label": "_load_zip_installer()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 75, + "community_name": "test_packaging.py", "file_type": "code", - "norm_label": ".setfilter()", + "norm_label": "_load_zip_installer()", + "source_file": "tests/test_packaging.py", + "source_location": "L366" + }, + { + "id": "tests_test_packaging_test_installer_needs_no_admin", + "label": "test_installer_needs_no_admin()", + "_callable": true, + "_origin": "ast", + "community": 75, + "community_name": "test_packaging.py", + "file_type": "code", + "norm_label": "test_installer_needs_no_admin()", + "source_file": "tests/test_packaging.py", + "source_location": "L235" + }, + { + "id": "tests_test_packaging_test_installer_removes_its_own_directory_but_never_user_data", + "label": "test_installer_removes_its_own_directory_but_never_user_data()", + "_callable": true, + "_origin": "ast", + "community": 75, + "community_name": "test_packaging.py", + "file_type": "code", + "norm_label": "test_installer_removes_its_own_directory_but_never_user_data()", + "source_file": "tests/test_packaging.py", + "source_location": "L222" + }, + { + "id": "tests_test_packaging_test_installer_version_resource_stays_numeric", + "label": "test_installer_version_resource_stays_numeric()", + "_callable": true, + "_origin": "ast", + "community": 75, + "community_name": "test_packaging.py", + "file_type": "code", + "norm_label": "test_installer_version_resource_stays_numeric()", + "source_file": "tests/test_packaging.py", + "source_location": "L290" + }, + { + "id": "tests_test_packaging_test_setup_logging_survives_a_windowed_build", + "label": "test_setup_logging_survives_a_windowed_build()", + "_callable": true, + "_origin": "ast", + "community": 75, + "community_name": "test_packaging.py", + "file_type": "code", + "norm_label": "test_setup_logging_survives_a_windowed_build()", + "source_file": "tests/test_packaging.py", + "source_location": "L47" + }, + { + "id": "tests_test_packaging_test_spec_ships_both_a_windowed_and_a_console_executable", + "label": "test_spec_ships_both_a_windowed_and_a_console_executable()", + "_callable": true, + "_origin": "ast", + "community": 75, + "community_name": "test_packaging.py", + "file_type": "code", + "norm_label": "test_spec_ships_both_a_windowed_and_a_console_executable()", + "source_file": "tests/test_packaging.py", + "source_location": "L278" + }, + { + "id": "tests_test_packaging_test_zip_installer_refuses_a_directory_with_no_exe", + "label": "test_zip_installer_refuses_a_directory_with_no_exe()", + "_callable": true, + "_origin": "ast", + "community": 75, + "community_name": "test_packaging.py", + "file_type": "code", + "norm_label": "test_zip_installer_refuses_a_directory_with_no_exe()", + "source_file": "tests/test_packaging.py", + "source_location": "L390" + }, + { + "id": "tests_test_packaging_test_zip_installer_wraps_each_exe", + "label": "test_zip_installer_wraps_each_exe()", + "_callable": true, + "_origin": "ast", + "community": 75, + "community_name": "test_packaging.py", + "file_type": "code", + "norm_label": "test_zip_installer_wraps_each_exe()", + "source_file": "tests/test_packaging.py", + "source_location": "L375" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_parse", + "label": ".parse()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setgeojsonsourcedata", - "label": ".setGeoJSONSourceData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".setgeojsonsourcedata()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setglyphs", - "label": ".setGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_down", + "label": "._down()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".setglyphs()", + "norm_label": "._down()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayerzoomrange", - "label": ".setLayerZoomRange()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_getid", + "label": ".getId()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".setlayerzoomrange()", + "norm_label": ".getid()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayoutproperty", - "label": ".setLayoutProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_haslayer", + "label": ".hasLayer()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".setlayoutproperty()", + "norm_label": ".haslayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlight", - "label": ".setLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadmatchingfeature", + "label": ".loadMatchingFeature()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".setlight()", + "norm_label": ".loadmatchingfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setpaintproperty", - "label": ".setPaintProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadvtlayers", + "label": ".loadVTLayers()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".setpaintproperty()", + "norm_label": ".loadvtlayers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsky", - "label": ".setSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_lookupsymbolfeatures", + "label": ".lookupSymbolFeatures()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".setsky()", + "norm_label": ".lookupsymbolfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsprite", - "label": ".setSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_peek", + "label": ".peek()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".setsprite()", + "norm_label": ".peek()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setstate", - "label": ".setState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_query", + "label": ".query()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".setstate()", + "norm_label": ".query()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_unloadsprite", - "label": "._unloadSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_up", + "label": "._up()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": "._unloadsprite()", + "norm_label": "._up()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateimage", - "label": ".updateImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_calculateglyphdependencies", + "label": ".calculateGlyphDependencies()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".updateimage()", + "norm_label": ".calculateglyphdependencies()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatelayer", - "label": "._updateLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate", + "label": ".populate()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": "._updatelayer()", + "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatesources", - "label": "._updateSources()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_feature", + "label": "feature()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": "._updatesources()", + "norm_label": "feature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validate", - "label": "._validate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_updatepaintarrays", + "label": ".updatePaintArrays()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": "._validate()", + "norm_label": ".updatepaintarrays()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_pause", - "label": ".pause()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_issupportedscript", + "label": ".isSupportedScript()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".pause()", + "norm_label": ".issupportedscript()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_fire", - "label": ".fire()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_querysourcefeatures", + "label": ".querySourceFeatures()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".fire()", + "norm_label": ".querysourcefeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_listens", - "label": ".listens()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeatures", + "label": ".addFeatures()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", "file_type": "code", - "norm_label": ".listens()", + "norm_label": ".addfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayer", - "label": "getLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_tojson", + "label": ".toJSON()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": ".tojson()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lh", + "label": "lh()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": "lh()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_getrtltextpluginstatus", + "label": ".getRTLTextPluginStatus()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": ".getrtltextpluginstatus()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_decode", + "label": ".decode()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": ".decode()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_encode", + "label": ".encode()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": ".encode()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pop", + "label": "pop()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": "pop()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_push", + "label": "push()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": "push()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sh", + "label": "sh()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": "sh()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_getpositions", + "label": ".getPositions()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": ".getpositions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_isempty", + "label": ".isEmpty()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": ".isempty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yc", + "label": "yc()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": "yc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_queryintersectsfeature", + "label": ".queryIntersectsFeature()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": ".populate", + "file_type": "code", + "norm_label": ".queryintersectsfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpoint", + "label": ".anchorPoint()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".anchorpoint()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpointx", + "label": ".anchorPointX()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".anchorpointx()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpointy", + "label": ".anchorPointY()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".anchorpointy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_bucketindex", + "label": ".bucketIndex()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".bucketindex()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_emplace", + "label": ".emplace()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_emplaceback", + "label": ".emplaceBack()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_featureindex", + "label": ".featureIndex()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".featureindex()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_refreshviews", + "label": "._refreshViews()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_sourcelayerindex", + "label": ".sourceLayerIndex()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".sourcelayerindex()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_x1", + "label": ".x1()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".x1()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_y1", + "label": ".y1()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".y1()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_y2", + "label": ".y2()", + "_callable": true, + "_origin": "ast", + "community": 77, + "community_name": "da", + "file_type": "code", + "norm_label": ".y2()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_clearstencil", + "label": ".clearStencil()", + "_callable": true, + "_origin": "ast", + "community": 78, + "community_name": "Tn", + "file_type": "code", + "norm_label": ".clearstencil()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_depthmodeforsublayer", + "label": ".depthModeForSublayer()", + "_callable": true, + "_origin": "ast", + "community": 78, + "community_name": "Tn", + "file_type": "code", + "norm_label": ".depthmodeforsublayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_destroy", + "label": ".destroy()", + "_callable": true, + "_origin": "ast", + "community": 78, + "community_name": "Tn", + "file_type": "code", + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluate", + "label": ".evaluate()", + "_callable": true, + "_origin": "ast", + "community": 78, + "community_name": "Tn", + "file_type": "code", + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluatewithouterrorhandling", + "label": ".evaluateWithoutErrorHandling()", + "_callable": true, + "_origin": "ast", + "community": 78, + "community_name": "Tn", + "file_type": "code", + "norm_label": ".evaluatewithouterrorhandling()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_initdebugoverlaycanvas", + "label": ".initDebugOverlayCanvas()", + "_callable": true, + "_origin": "ast", + "community": 78, + "community_name": "Tn", + "file_type": "code", + "norm_label": ".initdebugoverlaycanvas()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_ispatternmissing", + "label": ".isPatternMissing()", + "_callable": true, + "_origin": "ast", + "community": 78, + "community_name": "Tn", + "file_type": "code", + "norm_label": ".ispatternmissing()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_opaquepassenabledforlayer", + "label": ".opaquePassEnabledForLayer()", + "_callable": true, + "_origin": "ast", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "getlayer()", + "norm_label": ".opaquepassenabledforlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayoutproperty", - "label": "getLayoutProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_overlimit", + "label": ".overLimit()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "getlayoutproperty()", + "norm_label": ".overlimit()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsource", - "label": "getSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setbasestate", + "label": ".setBaseState()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "getsource()", + "norm_label": ".setbasestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hasimage", - "label": "hasImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilconfigforoverlap", + "label": ".stencilConfigForOverlap()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "hasimage()", + "norm_label": ".stencilconfigforoverlap()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_issourceloaded", - "label": "isSourceLoaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodefor3d", + "label": ".stencilModeFor3D()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "issourceloaded()", + "norm_label": ".stencilmodefor3d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addsource", + "label": "addSource()", "_callable": true, "_origin": "ast", - "community": 72, + "community": 79, "community_name": "de", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "addsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_updatetransitions", + "label": ".updateTransitions()", "_callable": true, "_origin": "ast", - "community": 72, + "community": 79, "community_name": "de", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".updatetransitions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_addimage", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addimage", "label": ".addImage()", "_callable": true, "_origin": "ast", - "community": 72, + "community": 79, "community_name": "de", "file_type": "code", "norm_label": ".addimage()", @@ -39759,1634 +39833,1634 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loaded", - "label": "loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addsource", + "label": ".addSource()", "_callable": true, "_origin": "ast", - "community": 72, + "community": 79, "community_name": "de", "file_type": "code", - "norm_label": "loaded()", + "norm_label": ".addsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_seek", - "label": ".seek()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_afterimageupdated", + "label": "._afterImageUpdated()", "_callable": true, "_origin": "ast", - "community": 72, + "community": 79, "community_name": "de", "file_type": "code", - "norm_label": ".seek()", + "norm_label": "._afterimageupdated()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setlayoutproperty", - "label": ".setLayoutProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 72, + "community": 79, "community_name": "de", "file_type": "code", - "norm_label": ".setlayoutproperty()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_setlight", - "label": ".setLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_createlayers", + "label": "._createLayers()", "_callable": true, "_origin": "ast", - "community": 72, + "community": 79, "community_name": "de", "file_type": "code", - "norm_label": ".setlight()", + "norm_label": "._createlayers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removefeaturestate", - "label": "removeFeatureState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 72, + "community": 79, "community_name": "de", "file_type": "code", - "norm_label": "removefeaturestate()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlayoutproperty", - "label": "setLayoutProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_generatecollisionboxes", + "label": "._generateCollisionBoxes()", "_callable": true, "_origin": "ast", - "community": 72, + "community": 79, "community_name": "de", "file_type": "code", - "norm_label": "setlayoutproperty()", + "norm_label": "._generatecollisionboxes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpaintproperty", - "label": "setPaintProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_geometry", + "label": ".geometry()", "_callable": true, "_origin": "ast", - "community": 72, + "community": 79, "community_name": "de", "file_type": "code", - "norm_label": "setpaintproperty()", + "norm_label": ".geometry()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_packaging_load_entry", - "label": "_load_entry()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getglyphs", + "label": ".getGlyphs()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_load_entry()", - "source_file": "tests/test_packaging.py", - "source_location": "L29" + "norm_label": ".getglyphs()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_load_zip_installer", - "label": "_load_zip_installer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getglyphsurl", + "label": ".getGlyphsUrl()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_load_zip_installer()", - "source_file": "tests/test_packaging.py", - "source_location": "L366" + "norm_label": ".getglyphsurl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_smoke_test_module", - "label": "_smoke_test_module()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getimage", + "label": ".getImage()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_smoke_test_module()", - "source_file": "tests/test_packaging.py", - "source_location": "L241" + "norm_label": ".getimage()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_crash_goes_to_stderr_when_there_is_a_console", - "label": "test_crash_goes_to_stderr_when_there_is_a_console()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getimages", + "label": ".getImages()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_crash_goes_to_stderr_when_there_is_a_console()", - "source_file": "tests/test_packaging.py", - "source_location": "L100" + "norm_label": ".getimages()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_crash_report_is_written_and_the_dialog_names_it", - "label": "test_crash_report_is_written_and_the_dialog_names_it()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayer", + "label": ".getLayer()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_crash_report_is_written_and_the_dialog_names_it()", - "source_file": "tests/test_packaging.py", - "source_location": "L80" + "norm_label": ".getlayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_crash_reporter_agrees_with_the_app_on_where_logs_go", - "label": "test_crash_reporter_agrees_with_the_app_on_where_logs_go()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayersorder", + "label": ".getLayersOrder()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_crash_reporter_agrees_with_the_app_on_where_logs_go()", - "source_file": "tests/test_packaging.py", - "source_location": "L37" + "norm_label": ".getlayersorder()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_installer_needs_no_admin", - "label": "test_installer_needs_no_admin()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlight", + "label": ".getLight()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_installer_needs_no_admin()", - "source_file": "tests/test_packaging.py", - "source_location": "L235" + "norm_label": ".getlight()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_installer_removes_its_own_directory_but_never_user_data", - "label": "test_installer_removes_its_own_directory_but_never_user_data()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getoperationstoperform", + "label": "._getOperationsToPerform()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_installer_removes_its_own_directory_but_never_user_data()", - "source_file": "tests/test_packaging.py", - "source_location": "L222" + "norm_label": "._getoperationstoperform()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_installer_version_resource_stays_numeric", - "label": "test_installer_version_resource_stays_numeric()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsky", + "label": ".getSky()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_installer_version_resource_stays_numeric()", - "source_file": "tests/test_packaging.py", - "source_location": "L290" + "norm_label": ".getsky()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_setup_logging_survives_a_windowed_build", - "label": "test_setup_logging_survives_a_windowed_build()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsprite", + "label": ".getSprite()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_setup_logging_survives_a_windowed_build()", - "source_file": "tests/test_packaging.py", - "source_location": "L47" + "norm_label": ".getsprite()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_smoke_test_skips_only_a_missing_reader", - "label": "test_smoke_test_skips_only_a_missing_reader()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_hastransitions", + "label": ".hasTransitions()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_smoke_test_skips_only_a_missing_reader()", - "source_file": "tests/test_packaging.py", - "source_location": "L265" + "norm_label": ".hastransitions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_spec_ships_both_a_windowed_and_a_console_executable", - "label": "test_spec_ships_both_a_windowed_and_a_console_executable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_id", + "label": ".id()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_spec_ships_both_a_windowed_and_a_console_executable()", - "source_file": "tests/test_packaging.py", - "source_location": "L278" + "norm_label": ".id()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_zip_installer_refuses_a_directory_with_no_exe", - "label": "test_zip_installer_refuses_a_directory_with_no_exe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_load", + "label": "._load()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_zip_installer_refuses_a_directory_with_no_exe()", - "source_file": "tests/test_packaging.py", - "source_location": "L390" + "norm_label": "._load()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_zip_installer_wraps_each_exe", - "label": "test_zip_installer_wraps_each_exe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loaded", + "label": ".loaded()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_zip_installer_wraps_each_exe()", - "source_file": "tests/test_packaging.py", - "source_location": "L375" + "norm_label": ".loaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadempty", + "label": ".loadEmpty()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".loadempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadjson", + "label": ".loadJSON()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".loadjson()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_properties", + "label": ".properties()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".properties()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_down", - "label": "._down()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_reloadsource", + "label": "._reloadSource()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "._down()", + "norm_label": "._reloadsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_getid", - "label": ".getId()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removeimage", + "label": ".removeImage()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".getid()", + "norm_label": ".removeimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_haslayer", - "label": ".hasLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_resetupdates", + "label": "._resetUpdates()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".haslayer()", + "norm_label": "._resetupdates()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_insert", - "label": ".insert()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".insert()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadmatchingfeature", - "label": ".loadMatchingFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serializebyids", + "label": "._serializeByIds()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".loadmatchingfeature()", + "norm_label": "._serializebyids()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadvtlayers", - "label": ".loadVTLayers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serializedalllayers", + "label": "._serializedAllLayers()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".loadvtlayers()", + "norm_label": "._serializedalllayers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_lookupsymbolfeatures", - "label": ".lookupSymbolFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsky", + "label": ".setSky()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".lookupsymbolfeatures()", + "norm_label": ".setsky()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_peek", - "label": ".peek()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setstate", + "label": ".setState()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".peek()", + "norm_label": ".setstate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_up", - "label": "._up()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "._up()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_feature", - "label": "feature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateimage", + "label": ".updateImage()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "feature()", + "norm_label": ".updateimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_updatepaintarrays", - "label": ".updatePaintArrays()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatesources", + "label": "._updateSources()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".updatepaintarrays()", + "norm_label": "._updatesources()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_querysourcefeatures", - "label": ".querySourceFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatetilesforchangedglyphs", + "label": "._updateTilesForChangedGlyphs()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".querysourcefeatures()", + "norm_label": "._updatetilesforchangedglyphs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatetilesforchangedimages", + "label": "._updateTilesForChangedImages()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "._updatetilesforchangedimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_tojson", - "label": ".toJSON()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateworkerlayers", + "label": "._updateWorkerLayers()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".tojson()", + "norm_label": "._updateworkerlayers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_decode", - "label": ".decode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_reloadtilesfordependencies", + "label": ".reloadTilesForDependencies()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".decode()", + "norm_label": ".reloadtilesfordependencies()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_encode", - "label": ".encode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_setdependencies", + "label": ".setDependencies()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".encode()", + "norm_label": ".setdependencies()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pop", - "label": "pop()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getglyphs", + "label": "getGlyphs()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "pop()", + "norm_label": "getglyphs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_push", - "label": "push()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmapid", + "label": "_getMapId()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "push()", + "norm_label": "_getmapid()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_getpositions", - "label": ".getPositions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_hasdependency", + "label": ".hasDependency()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".getpositions()", + "norm_label": ".hasdependency()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpoint", - "label": ".anchorPoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_issourceloaded", + "label": "isSourceLoaded()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".anchorpoint()", + "norm_label": "issourceloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpointx", - "label": ".anchorPointX()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loaded", + "label": "loaded()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".anchorpointx()", + "norm_label": "loaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpointy", - "label": ".anchorPointY()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_accesstoken", + "label": "accessToken()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".anchorpointy()", + "norm_label": "accesstoken()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_bucketindex", - "label": ".bucketIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addcontrol", + "label": "addControl()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".bucketindex()", + "norm_label": "addcontrol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addimage", + "label": "addImage()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "addimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_featureindex", - "label": ".featureIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addlayer", + "label": "addLayer()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".featureindex()", + "norm_label": "addlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addsprite", + "label": "addSprite()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "addsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_sourcelayerindex", - "label": ".sourceLayerIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aretilesloaded", + "label": "areTilesLoaded()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".sourcelayerindex()", + "norm_label": "aretilesloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_x1", - "label": ".x1()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_baseapiurl", + "label": "baseApiUrl()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".x1()", + "norm_label": "baseapiurl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_y1", - "label": ".y1()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bh", + "label": "bh()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".y1()", + "norm_label": "bh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_y2", - "label": ".y2()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bu", + "label": "Bu()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".y2()", + "norm_label": "bu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cancelrenderframe", + "label": "_cancelRenderFrame()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".get()", + "norm_label": "_cancelrenderframe()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cc", + "label": "Cc()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "cc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_clearmetrics", + "label": "clearMetrics()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "clearmetrics()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_completetask", + "label": "completeTask()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "completetask()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textanchor", - "label": ".textAnchor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_containerdimensions", + "label": "_containerDimensions()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".textanchor()", + "norm_label": "_containerdimensions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset0", - "label": ".textOffset0()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createcanvas", + "label": "_createCanvas()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".textoffset0()", + "norm_label": "_createcanvas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset1", - "label": ".textOffset1()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createdelegatedlistener", + "label": "_createDelegatedListener()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "da", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".textoffset1()", + "norm_label": "_createdelegatedlistener()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_updatetransitions", - "label": ".updateTransitions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_devicepixelratio", + "label": "devicePixelRatio()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".updatetransitions()", + "norm_label": "devicepixelratio()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_diffstyle", + "label": "_diffStyle()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "_diffstyle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getglyphs", - "label": ".getGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dl", + "label": "Dl()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".getglyphs()", + "norm_label": "dl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getimages", - "label": ".getImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_down", + "label": "_down()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".getimages()", + "norm_label": "_down()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_resetupdates", - "label": "._resetUpdates()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_draw", + "label": "draw()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._resetupdates()", + "norm_label": "draw()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_du", + "label": "du()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".update()", + "norm_label": "du()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatetilesforchangedglyphs", - "label": "._updateTilesForChangedGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_events_url", + "label": "EVENTS_URL()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._updatetilesforchangedglyphs()", + "norm_label": "events_url()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatetilesforchangedimages", - "label": "._updateTilesForChangedImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frame", + "label": "frame()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._updatetilesforchangedimages()", + "norm_label": "frame()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateworkerlayers", - "label": "._updateWorkerLayers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fu", + "label": "Fu()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._updateworkerlayers()", + "norm_label": "fu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validatelayer", - "label": "._validateLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_once", + "label": ".once()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._validatelayer()", + "norm_label": ".once()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_reloadtilesfordependencies", - "label": ".reloadTilesForDependencies()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gc", + "label": "gc()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".reloadtilesfordependencies()", + "norm_label": "gc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_setdependencies", - "label": ".setDependencies()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getbounds", + "label": "getBounds()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".setdependencies()", + "norm_label": "getbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getglyphs", - "label": "getGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcameratargetelevation", + "label": "getCameraTargetElevation()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "getglyphs()", + "norm_label": "getcameratargetelevation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmapid", - "label": "_getMapId()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcanvas", + "label": "getCanvas()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "_getmapid()", + "norm_label": "getcanvas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_hasdependency", - "label": ".hasDependency()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcanvascontainer", + "label": "getCanvasContainer()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".constructor", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".hasdependency()", + "norm_label": "getcanvascontainer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_accesstoken", - "label": "accessToken()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getclampedpixelratio", + "label": "_getClampedPixelRatio()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "accesstoken()", + "norm_label": "_getclampedpixelratio()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addlayer", - "label": "addLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcontainer", + "label": "getContainer()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "addlayer()", + "norm_label": "getcontainer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addsprite", - "label": "addSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getdefaultposition", + "label": "getDefaultPosition()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "addsprite()", + "norm_label": "getdefaultposition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aretilesloaded", - "label": "areTilesLoaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfilter", + "label": "getFilter()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "aretilesloaded()", + "norm_label": "getfilter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_baseapiurl", - "label": "baseApiUrl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimagecanvascontext", + "label": "getImageCanvasContext()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "baseapiurl()", + "norm_label": "getimagecanvascontext()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bh", - "label": "bh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimagedata", + "label": "getImageData()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "bh()", + "norm_label": "getimagedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cc", - "label": "Cc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayersorder", + "label": "getLayersOrder()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "cc()", + "norm_label": "getlayersorder()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_clearmetrics", - "label": "clearMetrics()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlight", + "label": "getLight()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "clearmetrics()", + "norm_label": "getlight()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_containerdimensions", - "label": "_containerDimensions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxbounds", + "label": "getMaxBounds()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "_containerdimensions()", + "norm_label": "getmaxbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_devicepixelratio", - "label": "devicePixelRatio()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxpitch", + "label": "getMaxPitch()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "devicepixelratio()", + "norm_label": "getmaxpitch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_diffstyle", - "label": "_diffStyle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxzoom", + "label": "getMaxZoom()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "_diffstyle()", + "norm_label": "getmaxzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dl", - "label": "Dl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getminpitch", + "label": "getMinPitch()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "dl()", + "norm_label": "getminpitch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_down", - "label": "_down()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getminzoom", + "label": "getMinZoom()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "_down()", + "norm_label": "getminzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_du", - "label": "du()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getperformancemetrics", + "label": "getPerformanceMetrics()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "du()", + "norm_label": "getperformancemetrics()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_doescharsupportlocalglyph", - "label": "._doesCharSupportLocalGlyph()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpixelratio", + "label": "getPixelRatio()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "._doescharsupportlocalglyph()", + "norm_label": "getpixelratio()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getandcacheglyphspromise", - "label": "._getAndCacheGlyphsPromise()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpluginurl", + "label": "getPluginURL()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "._getandcacheglyphspromise()", + "norm_label": "getpluginurl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_tinysdf", - "label": "._tinySDF()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getrenderworldcopies", + "label": "getRenderWorldCopies()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "._tinysdf()", + "norm_label": "getrenderworldcopies()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_events_url", - "label": "EVENTS_URL()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getrtltextpluginstatus", + "label": "getRTLTextPluginStatus()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "events_url()", + "norm_label": "getrtltextpluginstatus()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frame", - "label": "frame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsky", + "label": "getSky()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "frame()", + "norm_label": "getsky()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fu", - "label": "Fu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsprite", + "label": "getSprite()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "fu()", + "norm_label": "getsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gc", - "label": "gc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getstate", + "label": "getState()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "gc()", + "norm_label": "getstate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getbounds", - "label": "getBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getstyle", + "label": "getStyle()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getbounds()", + "norm_label": "getstyle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcameratargetelevation", - "label": "getCameraTargetElevation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getterrain", + "label": "getTerrain()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getcameratargetelevation()", + "norm_label": "getterrain()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getclampedpixelratio", - "label": "_getClampedPixelRatio()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getuistring", + "label": "_getUIString()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "_getclampedpixelratio()", + "norm_label": "_getuistring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfilter", - "label": "getFilter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gl", + "label": "Gl()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getfilter()", + "norm_label": "gl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayersorder", - "label": "getLayersOrder()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getlayersorder()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlight", - "label": "getLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getlight()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxbounds", - "label": "getMaxBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hascontrol", + "label": "hasControl()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getmaxbounds()", + "norm_label": "hascontrol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxpitch", - "label": "getMaxPitch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hasimage", + "label": "hasImage()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getmaxpitch()", + "norm_label": "hasimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxzoom", - "label": "getMaxZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_crossfadingfactor", + "label": ".crossFadingFactor()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getmaxzoom()", + "norm_label": ".crossfadingfactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getminpitch", - "label": "getMinPitch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_getcrossfadeparameters", + "label": ".getCrossfadeParameters()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getminpitch()", + "norm_label": ".getcrossfadeparameters()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getminzoom", - "label": "getMinZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ismoving", + "label": "isMoving()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getminzoom()", + "norm_label": "ismoving()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getperformancemetrics", - "label": "getPerformanceMetrics()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isrotating", + "label": "isRotating()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getperformancemetrics()", + "norm_label": "isrotating()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpixelratio", - "label": "getPixelRatio()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isstyleloaded", + "label": "isStyleLoaded()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getpixelratio()", + "norm_label": "isstyleloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpluginurl", - "label": "getPluginURL()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_iu", + "label": "iu()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getpluginurl()", + "norm_label": "iu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getrenderworldcopies", - "label": "getRenderWorldCopies()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_feature", + "label": ".feature()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getrenderworldcopies()", + "norm_label": ".feature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getrtltextpluginstatus", - "label": "getRTLTextPluginStatus()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimage", + "label": ".getImage()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getrtltextpluginstatus()", + "norm_label": ".getimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsky", - "label": "getSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kc", + "label": "Kc()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getsky()", + "norm_label": "kc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsprite", - "label": "getSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kh_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getsprite()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getstate", - "label": "getState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lazyinitemptystyle", + "label": "_lazyInitEmptyStyle()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getstate()", + "norm_label": "_lazyinitemptystyle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getstyle", - "label": "getStyle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_listimages", + "label": "listImages()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getstyle()", + "norm_label": "listimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getterrain", - "label": "getTerrain()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loadimage", + "label": "loadImage()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "getterrain()", + "norm_label": "loadimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gl", - "label": "Gl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mark", + "label": "mark()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "gl()", + "norm_label": "mark()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hascontrol", - "label": "hasControl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_maxparallelimagerequests", + "label": "maxParallelImageRequests()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "hascontrol()", + "norm_label": "maxparallelimagerequests()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ml", + "label": "Ml()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "ml()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isstyleloaded", - "label": "isStyleLoaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_movelayer", + "label": "moveLayer()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "isstyleloaded()", + "norm_label": "movelayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_iu", - "label": "iu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "iu()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_feature", - "label": ".feature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setmaxwidth", + "label": ".setMaxWidth()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": ".feature()", + "norm_label": ".setmaxwidth()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kc", - "label": "Kc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setoffset", + "label": ".setOffset()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "kc()", + "norm_label": ".setoffset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kh_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_trackpointer", + "label": ".trackPointer()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".trackpointer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lazyinitemptystyle", - "label": "_lazyInitEmptyStyle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_onadd", + "label": "onAdd()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "_lazyinitemptystyle()", + "norm_label": "onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_listimages", - "label": "listImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_once", + "label": "once()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "listimages()", + "norm_label": "once()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_maxparallelimagerequests", - "label": "maxParallelImageRequests()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_peek", + "label": "peek()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "maxparallelimagerequests()", + "norm_label": "peek()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_movelayer", - "label": "moveLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_prefersreducedmotion", + "label": "prefersReducedMotion()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "movelayer()", + "norm_label": "prefersreducedmotion()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setmaxwidth", - "label": ".setMaxWidth()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_process", + "label": "process()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": ".setmaxwidth()", + "norm_label": "process()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setoffset", - "label": ".setOffset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_processtask", + "label": "processTask()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": ".setoffset()", + "norm_label": "processtask()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_peek", - "label": "peek()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_queryrenderedfeatures", + "label": "queryRenderedFeatures()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "peek()", + "norm_label": "queryrenderedfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_prefersreducedmotion", - "label": "prefersReducedMotion()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_receive", + "label": "receive()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "prefersreducedmotion()", + "norm_label": "receive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ql", - "label": "ql()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_redraw", + "label": "redraw()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "ql()", + "norm_label": "redraw()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -41439,26 +41513,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesource", - "label": "removeSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesprite", + "label": "removeSprite()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "removesource()", + "norm_label": "removesprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesprite", - "label": "removeSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_render", + "label": "_render()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "removesprite()", + "norm_label": "_render()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -41546,6 +41620,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlayoutproperty", + "label": "setLayoutProperty()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "setlayoutproperty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlight", "label": "setLight()", @@ -41558,6 +41644,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpaintproperty", + "label": "setPaintProperty()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "setpaintproperty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setrenderworldcopies", "label": "setRenderWorldCopies()", @@ -41642,6 +41740,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setuppainter", + "label": "_setupPainter()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "_setuppainter()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_showcollisionboxes", "label": "showCollisionBoxes()", @@ -41691,26 +41801,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_resolvedlocale", - "label": ".resolvedLocale()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sl", + "label": "Sl()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": ".resolvedlocale()", + "norm_label": "sl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tc", - "label": "tc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_resolvedlocale", + "label": ".resolvedLocale()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "tc()", + "norm_label": ".resolvedlocale()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -41786,6 +41896,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_validatebounds", + "label": ".validateBounds()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": ".validatebounds()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vertices", "label": "vertices()", @@ -41822,6 +41944,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdirty", + "label": ".setDirty()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": ".setdirty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wh", "label": "wh()", @@ -41883,100 +42017,76 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xl", - "label": "Xl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_addto", + "label": ".addTo()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "xl()", + "norm_label": ".addto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zl", - "label": "zl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setdraggable", + "label": ".setDraggable()", "_callable": true, "_origin": "ast", "community": 8, "community_name": "$", "file_type": "code", - "norm_label": "zl()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_g", - "label": "g()", - "_callable": true, - "_origin": "ast", - "community": 80, - "community_name": "_render", - "file_type": "code", - "norm_label": "g()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isrotating", - "label": "isRotating()", - "_callable": true, - "_origin": "ast", - "community": 80, - "community_name": "_render", - "file_type": "code", - "norm_label": "isrotating()", + "norm_label": ".setdraggable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_redraw", - "label": "redraw()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xl", + "label": "Xl()", "_callable": true, "_origin": "ast", - "community": 80, - "community_name": "_render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "redraw()", + "norm_label": "xl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_render", - "label": "_render()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zl", + "label": "zl()", "_callable": true, "_origin": "ast", - "community": 80, - "community_name": "_render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "_render()", + "norm_label": "zl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdirty", - "label": ".setDirty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_layout", + "label": "layout()", "_callable": true, "_origin": "ast", "community": 80, - "community_name": "_render", + "community_name": "layout", "file_type": "code", - "norm_label": ".setdirty()", + "norm_label": "layout()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_config_settings_max_files", - "label": ".max_files()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_explain_load_error", + "label": "explain_load_error()", "_callable": true, "_origin": "ast", "community": 83, "community_name": "expand_paths", "file_type": "code", - "norm_label": ".max_files()", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L70" + "norm_label": "explain_load_error()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L205" }, { "id": "src_cellpy_simple_gui_core_files_expand_paths", @@ -42254,18 +42364,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 85, - "community_name": "ii", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_disable", "label": ".disable()", @@ -42392,19 +42490,151 @@ "_callable": true, "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "code", "norm_label": "test_llms_full_txt_is_current()", "source_file": "tests/test_agent_docs.py", "source_location": "L47" }, + { + "id": "tests_test_api_test_app_js_parses", + "label": "test_app_js_parses()", + "_callable": true, + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "code", + "norm_label": "test_app_js_parses()", + "source_file": "tests/test_api.py", + "source_location": "L480" + }, + { + "id": "tests_test_api_test_index_alpine_state_is_defined", + "label": "test_index_alpine_state_is_defined()", + "_callable": true, + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "code", + "norm_label": "test_index_alpine_state_is_defined()", + "source_file": "tests/test_api.py", + "source_location": "L501" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_disable", + "label": ".disable()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".disable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_enable", + "label": ".enable()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".enable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_gettexture", + "label": ".getTexture()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".gettexture()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_isactive", + "label": ".isActive()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".isactive()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_isenabled", + "label": ".isEnabled()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".isenabled()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_prepareforrender", + "label": ".prepareForRender()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".prepareforrender()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_renderlayer", + "label": ".renderLayer()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".renderlayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getvisiblecoordinates", + "label": ".getVisibleCoordinates()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".getvisiblecoordinates()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 89, - "community_name": "ju", + "community_name": ".render", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42416,7 +42646,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": "ju", + "community_name": ".render", "file_type": "code", "norm_label": ".hasoffscreenpass()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42428,7 +42658,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": "ju", + "community_name": ".render", "file_type": "code", "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42440,7 +42670,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": "ju", + "community_name": ".render", "file_type": "code", "norm_label": ".is3d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42452,7 +42682,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": "ju", + "community_name": ".render", "file_type": "code", "norm_label": ".recalculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42464,7 +42694,7 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": "ju", + "community_name": ".render", "file_type": "code", "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -42476,107 +42706,167 @@ "_callable": true, "_origin": "ast", "community": 89, - "community_name": "ju", + "community_name": ".render", "file_type": "code", "norm_label": ".updatetransitions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", - "label": "test_cv_split_and_fullcell_families_are_plottable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_getrenderabletiles", + "label": ".getRenderableTiles()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 89, + "community_name": ".render", "file_type": "code", - "norm_label": "test_cv_split_and_fullcell_families_are_plottable()", - "source_file": "tests/test_core.py", - "source_location": "L1648" + "norm_label": ".getrenderabletiles()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", - "label": "test_cycles_figure_forwards_group_legend_muting()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_gettilebyid", + "label": ".getTileByID()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 89, + "community_name": ".render", "file_type": "code", - "norm_label": "test_cycles_figure_forwards_group_legend_muting()", - "source_file": "tests/test_core.py", - "source_location": "L171" + "norm_label": ".gettilebyid()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting_spy", - "label": "spy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_render", + "label": ".render()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 89, + "community_name": ".render", "file_type": "code", - "norm_label": "spy()", - "source_file": "tests/test_core.py", - "source_location": "L176" + "norm_label": ".render()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_group_average_keeps_singleton_traces", - "label": "test_group_average_keeps_singleton_traces()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_ishidden", + "label": ".isHidden()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".ishidden()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_commit", + "label": ".commit()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".commit()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_stillrecent", + "label": ".stillRecent()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".stillrecent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_symbolfadechange", + "label": ".symbolFadeChange()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".symbolfadechange()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_zoomadjustment", + "label": ".zoomAdjustment()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".zoomadjustment()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_core_collect_summary_y_label_mapper", + "label": "summary_y_label_mapper()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "test_group_average_keeps_singleton_traces()", - "source_file": "tests/test_core.py", - "source_location": "L611" + "norm_label": "summary_y_label_mapper()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L453" }, { - "id": "tests_test_core_test_group_average_singleton_traces_on_correct_facet", - "label": "test_group_average_singleton_traces_on_correct_facet()", + "id": "src_cellpy_simple_gui_core_plotting_summary_figure", + "label": "summary_figure()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "test_group_average_singleton_traces_on_correct_facet()", - "source_file": "tests/test_core.py", - "source_location": "L648" + "norm_label": "summary_figure()", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L27" }, { - "id": "tests_test_core_test_non_spread_hover_is_left_to_cellpy", - "label": "test_non_spread_hover_is_left_to_cellpy()", + "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", + "label": "test_cycles_figure_forwards_group_legend_muting()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "test_non_spread_hover_is_left_to_cellpy()", + "norm_label": "test_cycles_figure_forwards_group_legend_muting()", "source_file": "tests/test_core.py", - "source_location": "L918" + "source_location": "L171" }, { - "id": "tests_test_core_test_spread_traces_keep_useful_hover", - "label": "test_spread_traces_keep_useful_hover()", + "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting_spy", + "label": "spy()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "test_spread_traces_keep_useful_hover()", + "norm_label": "spy()", "source_file": "tests/test_core.py", - "source_location": "L876" + "source_location": "L176" }, { - "id": "tests_test_core_test_summary_figure_dark_theme", - "label": "test_summary_figure_dark_theme()", + "id": "tests_test_core_test_group_average_keeps_singleton_traces", + "label": "test_group_average_keeps_singleton_traces()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "test_summary_figure_dark_theme()", + "norm_label": "test_group_average_keeps_singleton_traces()", "source_file": "tests/test_core.py", - "source_location": "L804" + "source_location": "L611" }, { "id": "tests_test_core_test_summary_figure_export_svg", @@ -42588,7 +42878,7 @@ "file_type": "code", "norm_label": "test_summary_figure_export_svg()", "source_file": "tests/test_core.py", - "source_location": "L1376" + "source_location": "L1458" }, { "id": "tests_test_core_test_summary_figure_forwards_group_legend_muting", @@ -42615,100 +42905,280 @@ "source_location": "L155" }, { - "id": "tests_test_core_test_summary_figure_long_cell_names_shorten_legend", - "label": "test_summary_figure_long_cell_names_shorten_legend()", + "id": "tests_test_core_test_summary_figure_pretty_axis_labels", + "label": "test_summary_figure_pretty_axis_labels()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "test_summary_figure_long_cell_names_shorten_legend()", + "norm_label": "test_summary_figure_pretty_axis_labels()", "source_file": "tests/test_core.py", - "source_location": "L734" + "source_location": "L707" }, { - "id": "tests_test_core_test_summary_figure_safe_color_scheme", - "label": "test_summary_figure_safe_color_scheme()", + "id": "tests_test_core_yaxis_titles", + "label": "_yaxis_titles()", "_callable": true, "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "code", - "norm_label": "test_summary_figure_safe_color_scheme()", + "norm_label": "_yaxis_titles()", "source_file": "tests/test_core.py", - "source_location": "L817" + "source_location": "L694" }, { - "id": "tests_test_core_test_summary_figure_short_names_unchanged", - "label": "test_summary_figure_short_names_unchanged()", + "id": "src_cellpy_simple_gui_api_app_create_app", + "label": "create_app()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 90, + "community_name": "get_settings", "file_type": "code", - "norm_label": "test_summary_figure_short_names_unchanged()", - "source_file": "tests/test_core.py", - "source_location": "L764" + "norm_label": "create_app()", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L41" }, { - "id": "tests_test_core_test_unavailable_family_explains_itself", - "label": "test_unavailable_family_explains_itself()", + "id": "src_cellpy_simple_gui_api_app_create_app_healthz", + "label": "healthz()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 90, + "community_name": "get_settings", "file_type": "code", - "norm_label": "test_unavailable_family_explains_itself()", + "norm_label": "healthz()", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L89" + }, + { + "id": "src_cellpy_simple_gui_api_app_create_app_index", + "label": "index()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "index()", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L64" + }, + { + "id": "src_cellpy_simple_gui_api_deps_require_token", + "label": "require_token()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "require_token()", + "source_file": "src/cellpy_simple_gui/api/deps.py", + "source_location": "L32" + }, + { + "id": "src_cellpy_simple_gui_config_get_settings", + "label": "get_settings()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "get_settings()", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L76" + }, + { + "id": "tests_test_api_client", + "label": "client()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "client()", + "source_file": "tests/test_api.py", + "source_location": "L17" + }, + { + "id": "tests_test_api_served_client", + "label": "served_client()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "served_client()", + "source_file": "tests/test_api.py", + "source_location": "L754" + }, + { + "id": "tests_test_api_test_job_timings_reported", + "label": "test_job_timings_reported()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_job_timings_reported()", + "source_file": "tests/test_api.py", + "source_location": "L456" + }, + { + "id": "tests_test_api_test_log_viewer_captures_stdlib_records", + "label": "test_log_viewer_captures_stdlib_records()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_log_viewer_captures_stdlib_records()", + "source_file": "tests/test_api.py", + "source_location": "L429" + }, + { + "id": "tests_test_compare_client", + "label": "client()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "client()", + "source_file": "tests/test_compare.py", + "source_location": "L285" + }, + { + "id": "tests_test_core_dev_mode", + "label": "dev_mode()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "dev_mode()", "source_file": "tests/test_core.py", - "source_location": "L1625" + "source_location": "L1631" }, { - "id": "src_cellpy_simple_gui_core_export_dva_figure_export", - "label": "dva_figure_export()", + "id": "tests_test_journal_build_journal", + "label": "_build_journal()", "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", - "norm_label": "dva_figure_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L162" + "norm_label": "_build_journal()", + "source_file": "tests/test_journal.py", + "source_location": "L9" }, { - "id": "src_cellpy_simple_gui_core_export_figureexporterror_init", - "label": ".__init__()", + "id": "tests_test_journal_test_api_load_corrupt_journal_reports_error", + "label": "test_api_load_corrupt_journal_reports_error()", "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", - "norm_label": ".__init__()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L54" + "norm_label": "test_api_load_corrupt_journal_reports_error()", + "source_file": "tests/test_journal.py", + "source_location": "L148" }, { - "id": "src_cellpy_simple_gui_core_export_safe_stem", - "label": "_safe_stem()", + "id": "tests_test_journal_test_api_load_journal_applies_group_labels", + "label": "test_api_load_journal_applies_group_labels()", "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", - "norm_label": "_safe_stem()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L207" + "norm_label": "test_api_load_journal_applies_group_labels()", + "source_file": "tests/test_journal.py", + "source_location": "L79" }, { - "id": "src_cellpy_simple_gui_core_export_unique_stems", - "label": "_unique_stems()", + "id": "tests_test_journal_test_load_corrupt_journal_raises_clear_error", + "label": "test_load_corrupt_journal_raises_clear_error()", "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", - "norm_label": "_unique_stems()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L213" + "norm_label": "test_load_corrupt_journal_raises_clear_error()", + "source_file": "tests/test_journal.py", + "source_location": "L138" + }, + { + "id": "tests_test_journal_test_load_journal_cells", + "label": "test_load_journal_cells()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_load_journal_cells()", + "source_file": "tests/test_journal.py", + "source_location": "L33" + }, + { + "id": "tests_test_journal_test_load_journal_missing_files_returns_empty", + "label": "test_load_journal_missing_files_returns_empty()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_load_journal_missing_files_returns_empty()", + "source_file": "tests/test_journal.py", + "source_location": "L116" + }, + { + "id": "tests_test_journal_test_load_journal_reads_group_labels", + "label": "test_load_journal_reads_group_labels()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_load_journal_reads_group_labels()", + "source_file": "tests/test_journal.py", + "source_location": "L52" + }, + { + "id": "tests_test_journal_test_load_journal_without_group_labels", + "label": "test_load_journal_without_group_labels()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_load_journal_without_group_labels()", + "source_file": "tests/test_journal.py", + "source_location": "L67" + }, + { + "id": "tests_test_projects_test_api_classify_import", + "label": "test_api_classify_import()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_api_classify_import()", + "source_file": "tests/test_projects.py", + "source_location": "L385" + }, + { + "id": "tests_test_projects_test_api_open_unknown_404", + "label": "test_api_open_unknown_404()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "test_api_open_unknown_404()", + "source_file": "tests/test_projects.py", + "source_location": "L379" }, { "id": "tests_test_uploads_client", @@ -42716,7 +43186,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "client()", "source_file": "tests/test_uploads.py", @@ -42728,7 +43198,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "served()", "source_file": "tests/test_uploads.py", @@ -42740,7 +43210,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_a_file_over_the_cap_is_refused_and_leaves_nothing_behind()", "source_file": "tests/test_uploads.py", @@ -42752,7 +43222,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_a_traversing_filename_still_lands_inside()", "source_file": "tests/test_uploads.py", @@ -42764,7 +43234,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_all_rejected_is_an_error_not_a_silent_nothing()", "source_file": "tests/test_uploads.py", @@ -42776,7 +43246,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_an_empty_file_is_refused()", "source_file": "tests/test_uploads.py", @@ -42788,7 +43258,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_capabilities_advertise_the_cap()", "source_file": "tests/test_uploads.py", @@ -42800,7 +43270,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_one_rejected_file_does_not_lose_the_others()", "source_file": "tests/test_uploads.py", @@ -42812,7 +43282,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_safe_name_reduces_a_path_to_a_filename()", "source_file": "tests/test_uploads.py", @@ -42824,7 +43294,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_safe_name_refuses_what_is_left_of_nothing()", "source_file": "tests/test_uploads.py", @@ -42836,7 +43306,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_two_uploads_of_one_name_are_two_files()", "source_file": "tests/test_uploads.py", @@ -42848,7 +43318,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_upload_lands_inside_the_data_directory()", "source_file": "tests/test_uploads.py", @@ -42860,7 +43330,7 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_upload_needs_the_token()", "source_file": "tests/test_uploads.py", @@ -42872,168 +43342,12 @@ "_callable": true, "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_usage_and_clear()", "source_file": "tests/test_uploads.py", "source_location": "L155" }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_hi", - "label": "Hi()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": "hi()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcanvas", - "label": "getCanvas()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": "getcanvas()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_disable", - "label": ".disable()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".disable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_enable", - "label": ".enable()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".enable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_isactive", - "label": ".isActive()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".isactive()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_isenabled", - "label": ".isEnabled()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".isenabled()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_iszooming", - "label": ".isZooming()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".iszooming()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_possiblyevaluate", - "label": ".possiblyEvaluate()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".possiblyevaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_renderframe", - "label": ".renderFrame()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".renderframe()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_reset", - "label": ".reset()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".reset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_setwheelzoomrate", - "label": ".setWheelZoomRate()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".setwheelzoomrate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_setzoomrate", - "label": ".setZoomRate()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".setzoomrate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_smoothouteasing", - "label": "._smoothOutEasing()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": "._smoothouteasing()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_start", "label": "._start()", @@ -43070,6 +43384,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jn_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_constructor", "label": ".constructor()", @@ -43190,18 +43516,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_fireevent", - "label": "._fireEvent()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": "._fireevent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_fireevents", "label": "._fireEvents()", @@ -43347,62 +43661,26 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_disable", - "label": ".disable()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".disable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_enable", - "label": ".enable()", - "_callable": true, - "_origin": "ast", - "community": 94, - "community_name": "Si", - "file_type": "code", - "norm_label": ".enable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_unproject", + "label": "unproject()", "_callable": true, "_origin": "ast", "community": 94, "community_name": "Si", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": "unproject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_touchend", + "label": ".touchend()", "_callable": true, "_origin": "ast", "community": 94, "community_name": "Si", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": ".touchend()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -43887,16 +44165,26 @@ "source_location": "L115" }, { - "id": "src_cellpy_simple_gui_api_jobs_jobmanager_cancel", - "label": ".cancel()", - "_callable": true, + "id": "fastapi", + "label": "FastAPI", "_origin": "ast", - "community": 96, - "community_name": ".status", + "community": 0, + "community_name": "get_library", "file_type": "code", - "norm_label": ".cancel()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L250" + "norm_label": "fastapi", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_api_app", + "label": "api/app.py", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "code", + "norm_label": "api/app.py", + "source_file": "src/cellpy_simple_gui/api/app.py", + "source_location": "L1" }, { "id": "src_cellpy_simple_gui_api_deps_py_path", @@ -43987,26 +44275,26 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_api_routers_ingest_py_get", - "label": "get", + "id": "src_cellpy_simple_gui_api_routers_ingest_py_post", + "label": "post", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "code", - "norm_label": "get", + "norm_label": "post", "source_file": "", "source_location": "" }, { - "id": "src_cellpy_simple_gui_api_routers_ingest_py_post", - "label": "post", + "id": "src_cellpy_simple_gui_api_routers_init", + "label": "routers/__init__.py", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "code", - "norm_label": "post", - "source_file": "", - "source_location": "" + "norm_label": "routers/__init__.py", + "source_file": "src/cellpy_simple_gui/api/routers/__init__.py", + "source_location": "L1" }, { "id": "src_cellpy_simple_gui_api_routers_jobs", @@ -44097,48 +44385,37 @@ "source_location": "" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_baseexception", - "label": "BaseException", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "baseexception", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_progressfn", - "label": "ProgressFn", + "id": "src_cellpy_simple_gui_api_routers_uploads", + "label": "routers/uploads.py", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "code", - "norm_label": "progressfn", - "source_file": "", - "source_location": "" + "norm_label": "routers/uploads.py", + "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_models", - "label": "models.py", + "id": "src_cellpy_simple_gui_core_init", + "label": "core/__init__.py", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "code", - "norm_label": "models.py", - "source_file": "src/cellpy_simple_gui/core/models.py", + "norm_label": "core/__init__.py", + "source_file": "src/cellpy_simple_gui/core/__init__.py", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_models_py_basemodel", - "label": "BaseModel", + "id": "src_cellpy_simple_gui_core_library", + "label": "library.py", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "code", - "norm_label": "basemodel", - "source_file": "", - "source_location": "" + "norm_label": "library.py", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L1" }, { "id": "streamingresponse", @@ -44152,113 +44429,28 @@ "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue19_plan", - "label": "issue19_plan.md", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue19_plan.md", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan_plan_issue_19_journal_load_error_surfacing", - "label": "Plan: Issue #19 \u2014 journal load error surfacing", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plan: issue #19 \u2014 journal load error surfacing", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue19_status", - "label": "issue19_status.md", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue19_status.md", - "source_file": ".issueflows/03-solved-issues/issue19_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue19_status_done", - "label": "Done", + "id": "issueflows_04_designs_and_guides_job_cancel_dismiss_decision", + "label": "Decision", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "document", "node_kind": "heading", - "norm_label": "done", - "source_file": ".issueflows/03-solved-issues/issue19_status.md", - "source_location": "L5" + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/job-cancel-dismiss.md", + "source_location": "L10" }, { - "id": "issueflows_03_solved_issues_issue19_status_status_issue_19_journal_load_errors", - "label": "Status: Issue #19 \u2014 journal load errors", + "id": "src_cellpy_simple_gui_api_app_rationale_1", + "label": "FastAPI application factory.", "_origin": "ast", "community": 0, "community_name": "get_library", - "file_type": "document", - "node_kind": "heading", - "norm_label": "status: issue #19 \u2014 journal load errors", - "source_file": ".issueflows/03-solved-issues/issue19_status.md", + "file_type": "rationale", + "norm_label": "fastapi application factory.", + "source_file": "src/cellpy_simple_gui/api/app.py", "source_location": "L1" }, - { - "id": "issueflows_04_designs_and_guides_job_cancel_dismiss_decision", - "label": "Decision", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "document", - "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/job-cancel-dismiss.md", - "source_location": "L10" - }, { "id": "src_cellpy_simple_gui_api_deps_rationale_19", "label": "Resolve a client-supplied path, or refuse it with a 400 (#120). Checks the\u2026", @@ -44315,7 +44507,18 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_api_routers_cells_rationale_97", + "id": "src_cellpy_simple_gui_api_routers_cells_rationale_152", + "label": "Name a group (#187). Groups are implicit \u2014 any positive number works.", + "_origin": "ast", + "community": 0, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "name a group (#187). groups are implicit \u2014 any positive number works.", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L152" + }, + { + "id": "src_cellpy_simple_gui_api_routers_cells_rationale_99", "label": "Expand paths / globs for the staged list, loading nothing (#136). Same policy\u2026", "_origin": "ast", "community": 0, @@ -44323,7 +44526,7 @@ "file_type": "rationale", "norm_label": "expand paths / globs for the staged list, loading nothing (#136). same policy...", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L97" + "source_location": "L99" }, { "id": "src_cellpy_simple_gui_api_routers_ingest_rationale_1", @@ -44414,26 +44617,15 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_206", - "label": "Turn a loader failure into something a user can act on (#143). A raw\u2026", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "rationale", - "norm_label": "turn a loader failure into something a user can act on (#143). a raw...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L206" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_573", - "label": "Load a cellpy batch journal (.json) and return ``(label, cell, group)``. Uses\u2026", + "id": "src_cellpy_simple_gui_api_routers_uploads_rationale_1", + "label": "Bringing files in through the browser (#133). Upload writes into\u2026", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "rationale", - "norm_label": "load a cellpy batch journal (.json) and return ``(label, cell, group)``. uses...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L573" + "norm_label": "bringing files in through the browser (#133). upload writes into...", + "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", + "source_location": "L1" }, { "id": "src_cellpy_simple_gui_core_files_rationale_21", @@ -44447,92 +44639,48 @@ "source_location": "L21" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_300", - "label": "Return the process-wide library singleton.", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "rationale", - "norm_label": "return the process-wide library singleton.", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L300" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_1", - "label": "Pydantic domain models shared by the core, the API and (as JSON) the UI.", + "id": "src_cellpy_simple_gui_core_init_rationale_1", + "label": "Core layer: pure-Python domain logic for cellpy-simple-gui. Nothing in this\u2026", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "rationale", - "norm_label": "pydantic domain models shared by the core, the api and (as json) the ui.", - "source_file": "src/cellpy_simple_gui/core/models.py", + "norm_label": "core layer: pure-python domain logic for cellpy-simple-gui. nothing in this...", + "source_file": "src/cellpy_simple_gui/core/__init__.py", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_290", - "label": "Raw traces annotated with step/cycle information \u2014 developer mode. Cycle-\u2026", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "rationale", - "norm_label": "raw traces annotated with step/cycle information \u2014 developer mode. cycle-...", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L290" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_304", - "label": "A plot spec plus the desired file format.", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "rationale", - "norm_label": "a plot spec plus the desired file format.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L304" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_314", - "label": "Optional explicit cell ids for library-cell export (default = selected).", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "rationale", - "norm_label": "optional explicit cell ids for library-cell export (default = selected).", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L314" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_343", - "label": "Expand typed paths / globs without loading anything (#136 staged list).", + "id": "src_cellpy_simple_gui_core_library_rationale_1", + "label": "In-memory library of loaded cells \u2014 the backend's source of truth. For a\u2026", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "rationale", - "norm_label": "expand typed paths / globs without loading anything (#136 staged list).", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L343" + "norm_label": "in-memory library of loaded cells \u2014 the backend's source of truth. for a...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_350", - "label": "List files under a remote ``sftp://`` folder via cellpy's filefinder (#162).", + "id": "src_cellpy_simple_gui_core_library_rationale_361", + "label": "Return the process-wide library singleton.", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "rationale", - "norm_label": "list files under a remote ``sftp://`` folder via cellpy's filefinder (#162).", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L350" + "norm_label": "return the process-wide library singleton.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L361" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_359", - "label": "Import one or more raw instrument files with shared metadata.", + "id": "tests_test_core_rationale_1666", + "label": "A hand-made request cannot exceed the regular-user cap.", "_origin": "ast", "community": 0, "community_name": "get_library", "file_type": "rationale", - "norm_label": "import one or more raw instrument files with shared metadata.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L359" + "norm_label": "a hand-made request cannot exceed the regular-user cap.", + "source_file": "tests/test_core.py", + "source_location": "L1666" }, { "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_10_risks_open_questions", @@ -44745,7 +44893,19 @@ "source_location": "" }, { - "id": "issueflows_01_current_issues_issue184_status", + "id": "issueflows_03_solved_issues_issue136_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L229" + }, + { + "id": "issueflows_03_solved_issues_issue184_status", "label": "issue184_status.md", "_origin": "ast", "community": 101, @@ -44753,11 +44913,11 @@ "file_type": "document", "node_kind": "page", "norm_label": "issue184_status.md", - "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_file": ".issueflows/03-solved-issues/issue184_status.md", "source_location": "L1" }, { - "id": "issueflows_01_current_issues_issue184_status_remaining_work", + "id": "issueflows_03_solved_issues_issue184_status_remaining_work", "label": "Remaining work", "_origin": "ast", "community": 101, @@ -44765,11 +44925,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", - "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_file": ".issueflows/03-solved-issues/issue184_status.md", "source_location": "L30" }, { - "id": "issueflows_01_current_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", + "id": "issueflows_03_solved_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", "label": "Status \u2014 #184 update plots when the Manage cells modal closes", "_origin": "ast", "community": 101, @@ -44777,11 +44937,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "status \u2014 #184 update plots when the manage cells modal closes", - "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_file": ".issueflows/03-solved-issues/issue184_status.md", "source_location": "L1" }, { - "id": "issueflows_01_current_issues_issue184_status_what_s_done", + "id": "issueflows_03_solved_issues_issue184_status_what_s_done", "label": "What's done", "_origin": "ast", "community": 101, @@ -44789,21 +44949,9 @@ "file_type": "document", "node_kind": "heading", "norm_label": "what's done", - "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_file": ".issueflows/03-solved-issues/issue184_status.md", "source_location": "L9" }, - { - "id": "issueflows_03_solved_issues_issue136_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L229" - }, { "id": "tests_test_gui_playwright_rationale_1", "label": "Playwright GUI smoke tests against --server / browser mode. Requires the\u2026", @@ -44870,6 +45018,17 @@ "source_file": "tests/test_gui_playwright.py", "source_location": "L231" }, + { + "id": "tests_test_gui_playwright_rationale_287", + "label": "The Groups strip names a group; the name reaches state and the legend.", + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "rationale", + "norm_label": "the groups strip names a group; the name reaches state and the legend.", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L287" + }, { "id": "tests_test_gui_playwright_rationale_42", "label": "In-process uvicorn with a fixed CSG_TOKEN (same surface as --server).", @@ -44882,95 +45041,35 @@ "source_location": "L42" }, { - "id": "issueflows_03_solved_issues_issue38_original", - "label": "issue38_original.md", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue38_original.md", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L19" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_issue_38_use_cellpy_label_builders_for_summary_cycle_axis_titles", - "label": "Issue #38: Use cellpy label builders for summary/cycle axis titles", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #38: use cellpy label builders for summary/cycle axis titles", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L26" - }, - { - "id": "issueflows_03_solved_issues_issue38_original_problem_context", - "label": "Problem / context", + "id": "cellpy_painpoints_16_ica_plotter_direction_gaps_line_plots_both", + "label": "16. \ud83d\udfe2 ICA plotter direction gaps (line plots + `both`)", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L7" + "norm_label": "16. \ud83d\udfe2 ica plotter direction gaps (line plots + `both`)", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L400" }, { - "id": "issueflows_03_solved_issues_issue38_original_spec", - "label": "Spec", + "id": "issueflows_03_solved_issues_issue28_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L11" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_location": "L15" }, { "id": "issueflows_03_solved_issues_issue38_plan", "label": "issue38_plan.md", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "page", "norm_label": "issue38_plan.md", @@ -44978,107 +45077,35 @@ "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue38_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L38" - }, - { - "id": "issueflows_03_solved_issues_issue38_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L9" - }, - { - "id": "issueflows_03_solved_issues_issue38_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue38_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L91" - }, - { - "id": "issueflows_03_solved_issues_issue38_plan_plan_issue_38_cellpy_label_builders_for_axis_titles", - "label": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "id": "issueflows_03_solved_issues_issue72_plan", + "label": "issue72_plan.md", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", - "node_kind": "heading", - "norm_label": "plan \u2014 issue #38: cellpy label builders for axis titles", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "node_kind": "page", + "norm_label": "issue72_plan.md", + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue38_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L18" - }, - { - "id": "issueflows_03_solved_issues_issue38_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_03_solved_issues_issue72_plan_approach", + "label": "Approach", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L86" - }, - { - "id": "issueflows_03_solved_issues_issue72_plan", - "label": "issue72_plan.md", - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue72_plan.md", + "norm_label": "approach", "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L1" + "source_location": "L32" }, { "id": "issueflows_03_solved_issues_issue72_plan_constraints", "label": "Constraints", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -45090,7 +45117,7 @@ "label": "Files to touch", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -45102,7 +45129,7 @@ "label": "Goal", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -45114,7 +45141,7 @@ "label": "Open questions", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -45126,19 +45153,31 @@ "label": "Plan \u2014 Issue #72: Cycles Mode \u2194 x-axis capacity units", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", "norm_label": "plan \u2014 issue #72: cycles mode \u2194 x-axis capacity units", "source_file": ".issueflows/03-solved-issues/issue72_plan.md", "source_location": "L1" }, + { + "id": "issueflows_03_solved_issues_issue72_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "source_location": "L16" + }, { "id": "issueflows_03_solved_issues_issue72_plan_test_strategy", "label": "Test strategy", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -45150,19 +45189,103 @@ "label": "cellpy-delegation-inventory.md", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "page", "norm_label": "cellpy-delegation-inventory.md", "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", "source_location": "L1" }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cellpy_delegation_inventory_issue_52", + "label": "cellpy delegation inventory (issue #52)", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "document", + "node_kind": "heading", + "norm_label": "cellpy delegation inventory (issue #52)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cycles_pane_curve_kinds_95", + "label": "Cycles pane curve kinds (#95)", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "document", + "node_kind": "heading", + "norm_label": "cycles pane curve kinds (#95)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L140" + }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_hover", + "label": "Hover", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "document", + "node_kind": "heading", + "norm_label": "hover", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L150" + }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_incremental_analysis_ica_dva", + "label": "Incremental analysis (ICA / DVA)", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "document", + "node_kind": "heading", + "norm_label": "incremental analysis (ica / dva)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L102" + }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_raw_data_views_developer_mode", + "label": "Raw data views (developer mode)", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "document", + "node_kind": "heading", + "norm_label": "raw data views (developer mode)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L123" + }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_release_gating_note_resolved_for_816_818_819", + "label": "Release-gating note (resolved for #816/#818/#819)", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "document", + "node_kind": "heading", + "norm_label": "release-gating note (resolved for #816/#818/#819)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L11" + }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_removed_in_the_2_1_2a2_cleanup", + "label": "Removed in the 2.1.2a2 cleanup", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "document", + "node_kind": "heading", + "norm_label": "removed in the 2.1.2a2 cleanup", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L53" + }, { "id": "issueflows_04_designs_and_guides_plot_appearance", "label": "plot-appearance.md", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "page", "norm_label": "plot-appearance.md", @@ -45170,15 +45293,48 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1186", - "label": "Best-effort cleanup if a ``variable=\u2026`` strip slipped past cellpy. cellpy\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1465", + "label": "Serialise a tidy polars frame in-memory. Returns (bytes, media_type).", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "rationale", - "norm_label": "best-effort cleanup if a ``variable=...`` strip slipped past cellpy. cellpy...", + "norm_label": "serialise a tidy polars frame in-memory. returns (bytes, media_type).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1186" + "source_location": "L1465" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_1482", + "label": "Serialise a collection's tidy frame in-memory. Returns (bytes, media_type).", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "serialise a collection's tidy frame in-memory. returns (bytes, media_type).", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1482" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_492", + "label": "Collect summaries, optionally under a family's own :class:`SummaryOptions`.\u2026", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "collect summaries, optionally under a family's own :class:`summaryoptions`....", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L492" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_571", + "label": "Filter a collected ICA frame to one half-cycle for **export**. Mirrors what\u2026", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "filter a collected ica frame to one half-cycle for **export**. mirrors what...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L571" }, { "id": "tests_test_core", @@ -45202,17 +45358,6 @@ "source_file": "", "source_location": "" }, - { - "id": "tests_test_core_py_fixture", - "label": "fixture", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "fixture", - "source_file": "", - "source_location": "" - }, { "id": "tests_test_core_py_parametrize", "label": "parametrize", @@ -45302,7 +45447,73 @@ "source_location": "L1100" }, { - "id": "tests_test_core_rationale_1250", + "id": "tests_test_core_rationale_1152", + "label": "Two demo cells in one group (so Group avg averages) plus a singleton.", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "two demo cells in one group (so group avg averages) plus a singleton.", + "source_file": "tests/test_core.py", + "source_location": "L1152" + }, + { + "id": "tests_test_core_rationale_1168", + "label": "Layout y-axis whose title contains ``needle`` (case-insensitive).", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "layout y-axis whose title contains ``needle`` (case-insensitive).", + "source_file": "tests/test_core.py", + "source_location": "L1168" + }, + { + "id": "tests_test_core_rationale_1181", + "label": "Group avg + Spread must honour per-panel y_ranges (#186). The spread hover\u2026", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "group avg + spread must honour per-panel y_ranges (#186). the spread hover...", + "source_file": "tests/test_core.py", + "source_location": "L1181" + }, + { + "id": "tests_test_core_rationale_1218", + "label": "A blank end is filled from the spread panel's own extent (#186).", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "a blank end is filled from the spread panel's own extent (#186).", + "source_file": "tests/test_core.py", + "source_location": "L1218" + }, + { + "id": "tests_test_core_rationale_1279", + "label": "cellpy names group-averaged traces after the label ``_batch`` hands it.", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "cellpy names group-averaged traces after the label ``_batch`` hands it.", + "source_file": "tests/test_core.py", + "source_location": "L1279" + }, + { + "id": "tests_test_core_rationale_1295", + "label": "Per-cell traces of a named group get that name as legend-group title.", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "per-cell traces of a named group get that name as legend-group title.", + "source_file": "tests/test_core.py", + "source_location": "L1295" + }, + { + "id": "tests_test_core_rationale_1332", "label": "Y-axis title texts ordered by Plotly domain (top facet first).", "_origin": "ast", "community": 103, @@ -45310,10 +45521,10 @@ "file_type": "rationale", "norm_label": "y-axis title texts ordered by plotly domain (top facet first).", "source_file": "tests/test_core.py", - "source_location": "L1250" + "source_location": "L1332" }, { - "id": "tests_test_core_rationale_1265", + "id": "tests_test_core_rationale_1347", "label": "CE stays on top with Group avg on or off (#81).", "_origin": "ast", "community": 103, @@ -45321,10 +45532,10 @@ "file_type": "rationale", "norm_label": "ce stays on top with group avg on or off (#81).", "source_file": "tests/test_core.py", - "source_location": "L1265" + "source_location": "L1347" }, { - "id": "tests_test_core_rationale_1291", + "id": "tests_test_core_rationale_1373", "label": "Group avg + Spread must still honour share_y (#47; cellpy spread_plot gap).", "_origin": "ast", "community": 103, @@ -45332,10 +45543,10 @@ "file_type": "rationale", "norm_label": "group avg + spread must still honour share_y (#47; cellpy spread_plot gap).", "source_file": "tests/test_core.py", - "source_location": "L1291" + "source_location": "L1373" }, { - "id": "tests_test_core_rationale_1318", + "id": "tests_test_core_rationale_1400", "label": "Extreme CE must not force capacity panels onto a million-scale (#2).", "_origin": "ast", "community": 103, @@ -45343,10 +45554,10 @@ "file_type": "rationale", "norm_label": "extreme ce must not force capacity panels onto a million-scale (#2).", "source_file": "tests/test_core.py", - "source_location": "L1318" + "source_location": "L1400" }, { - "id": "tests_test_core_rationale_1480", + "id": "tests_test_core_rationale_1562", "label": "Panel data: sections with provenance, paths/units first, no secrets.", "_origin": "ast", "community": 103, @@ -45354,10 +45565,10 @@ "file_type": "rationale", "norm_label": "panel data: sections with provenance, paths/units first, no secrets.", "source_file": "tests/test_core.py", - "source_location": "L1480" + "source_location": "L1562" }, { - "id": "tests_test_core_rationale_1496", + "id": "tests_test_core_rationale_1578", "label": "A legacy Arbin SQL password must never render (cellpy #849).", "_origin": "ast", "community": 103, @@ -45365,10 +45576,10 @@ "file_type": "rationale", "norm_label": "a legacy arbin sql password must never render (cellpy #849).", "source_file": "tests/test_core.py", - "source_location": "L1496" + "source_location": "L1578" }, { - "id": "tests_test_core_rationale_1514", + "id": "tests_test_core_rationale_1596", "label": "No cellpy.toml + a legacy YAML => tell the user to migrate.", "_origin": "ast", "community": 103, @@ -45376,10 +45587,10 @@ "file_type": "rationale", "norm_label": "no cellpy.toml + a legacy yaml => tell the user to migrate.", "source_file": "tests/test_core.py", - "source_location": "L1514" + "source_location": "L1596" }, { - "id": "tests_test_core_rationale_1533", + "id": "tests_test_core_rationale_1615", "label": "A failing sources() must degrade to 'default', not break the panel.", "_origin": "ast", "community": 103, @@ -45387,54 +45598,54 @@ "file_type": "rationale", "norm_label": "a failing sources() must degrade to 'default', not break the panel.", "source_file": "tests/test_core.py", - "source_location": "L1533" + "source_location": "L1615" }, { - "id": "tests_test_core_rationale_1550", - "label": "Run a block with CSG_DEV_MODE=1 and a fresh settings cache.", + "id": "tests_test_core_rationale_1680", + "label": "Every cellpy family is listed; the unusable ones say what is missing.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "run a block with csg_dev_mode=1 and a fresh settings cache.", + "norm_label": "every cellpy family is listed; the unusable ones say what is missing.", "source_file": "tests/test_core.py", - "source_location": "L1550" + "source_location": "L1680" }, { - "id": "tests_test_core_rationale_1584", - "label": "A hand-made request cannot exceed the regular-user cap.", + "id": "tests_test_core_rationale_1708", + "label": "A family the data cannot support must say so, not render blank (#97).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "a hand-made request cannot exceed the regular-user cap.", + "norm_label": "a family the data cannot support must say so, not render blank (#97).", "source_file": "tests/test_core.py", - "source_location": "L1584" + "source_location": "L1708" }, { - "id": "tests_test_core_rationale_1598", - "label": "Every cellpy family is listed; the unusable ones say what is missing.", + "id": "tests_test_core_rationale_1724", + "label": "cellpy 2.1.2 tags families by entry point \u2014 raw/ica/dva have own tabs.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "every cellpy family is listed; the unusable ones say what is missing.", + "norm_label": "cellpy 2.1.2 tags families by entry point \u2014 raw/ica/dva have own tabs.", "source_file": "tests/test_core.py", - "source_location": "L1598" + "source_location": "L1724" }, { - "id": "tests_test_core_rationale_1642", - "label": "cellpy 2.1.2 tags families by entry point \u2014 raw/ica/dva have own tabs.", + "id": "tests_test_core_rationale_1731", + "label": "#106 / cellpy #868: collect-time columns must not read as missing data.\u2026", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "cellpy 2.1.2 tags families by entry point \u2014 raw/ica/dva have own tabs.", + "norm_label": "#106 / cellpy #868: collect-time columns must not read as missing data....", "source_file": "tests/test_core.py", - "source_location": "L1642" + "source_location": "L1731" }, { - "id": "tests_test_core_rationale_1676", + "id": "tests_test_core_rationale_1758", "label": "The options handed to collect come from the family itself (cellpy #868).", "_origin": "ast", "community": 103, @@ -45442,10 +45653,10 @@ "file_type": "rationale", "norm_label": "the options handed to collect come from the family itself (cellpy #868).", "source_file": "tests/test_core.py", - "source_location": "L1676" + "source_location": "L1758" }, { - "id": "tests_test_core_rationale_1686", + "id": "tests_test_core_rationale_1768", "label": "Regular users still get exactly the curated list.", "_origin": "ast", "community": 103, @@ -45453,10 +45664,10 @@ "file_type": "rationale", "norm_label": "regular users still get exactly the curated list.", "source_file": "tests/test_core.py", - "source_location": "L1686" + "source_location": "L1768" }, { - "id": "tests_test_core_rationale_1698", + "id": "tests_test_core_rationale_1780", "label": "dV/dQ renders per direction; cellpy's dva_plot is single-cell.", "_origin": "ast", "community": 103, @@ -45464,10 +45675,10 @@ "file_type": "rationale", "norm_label": "dv/dq renders per direction; cellpy's dva_plot is single-cell.", "source_file": "tests/test_core.py", - "source_location": "L1698" + "source_location": "L1780" }, { - "id": "tests_test_core_rationale_1713", + "id": "tests_test_core_rationale_1795", "label": "cellpy #862/#863: the collected DVA path labels and dashes both halves.", "_origin": "ast", "community": 103, @@ -45475,10 +45686,10 @@ "file_type": "rationale", "norm_label": "cellpy #862/#863: the collected dva path labels and dashes both halves.", "source_file": "tests/test_core.py", - "source_location": "L1713" + "source_location": "L1795" }, { - "id": "tests_test_core_rationale_1730", + "id": "tests_test_core_rationale_1812", "label": "collect_dva (cellpy #863) makes DVA multi-cell, like ICA.", "_origin": "ast", "community": 103, @@ -45486,10 +45697,10 @@ "file_type": "rationale", "norm_label": "collect_dva (cellpy #863) makes dva multi-cell, like ica.", "source_file": "tests/test_core.py", - "source_location": "L1730" + "source_location": "L1812" }, { - "id": "tests_test_core_rationale_1752", + "id": "tests_test_core_rationale_1834", "label": "Export mirrors the plotted direction and rides the shared polars path.", "_origin": "ast", "community": 103, @@ -45497,10 +45708,10 @@ "file_type": "rationale", "norm_label": "export mirrors the plotted direction and rides the shared polars path.", "source_file": "tests/test_core.py", - "source_location": "L1752" + "source_location": "L1834" }, { - "id": "tests_test_core_rationale_1773", + "id": "tests_test_core_rationale_1855", "label": "With nothing loaded, availability is unknown \u2014 do not claim data is missing.\u2026", "_origin": "ast", "community": 103, @@ -45508,10 +45719,10 @@ "file_type": "rationale", "norm_label": "with nothing loaded, availability is unknown \u2014 do not claim data is missing....", "source_file": "tests/test_core.py", - "source_location": "L1773" + "source_location": "L1855" }, { - "id": "tests_test_core_rationale_1787", + "id": "tests_test_core_rationale_1869", "label": "One cell with an unreadable summary must not hide the others' columns.", "_origin": "ast", "community": 103, @@ -45519,21 +45730,10 @@ "file_type": "rationale", "norm_label": "one cell with an unreadable summary must not hide the others' columns.", "source_file": "tests/test_core.py", - "source_location": "L1787" - }, - { - "id": "tests_test_core_rationale_1846", - "label": "cycle_info_plot returns None for plotly unless get_axes=True.", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "cycle_info_plot returns none for plotly unless get_axes=true.", - "source_file": "tests/test_core.py", - "source_location": "L1846" + "source_location": "L1869" }, { - "id": "tests_test_core_rationale_1876", + "id": "tests_test_core_rationale_1958", "label": "cellpy #846: prefer refresh_after over a full make_summary rebuild.", "_origin": "ast", "community": 103, @@ -45541,10 +45741,10 @@ "file_type": "rationale", "norm_label": "cellpy #846: prefer refresh_after over a full make_summary rebuild.", "source_file": "tests/test_core.py", - "source_location": "L1876" + "source_location": "L1958" }, { - "id": "tests_test_core_rationale_1901", + "id": "tests_test_core_rationale_1983", "label": "Older cellpy has no refresh_after \u2014 must still rebuild the summary.", "_origin": "ast", "community": 103, @@ -45552,7 +45752,7 @@ "file_type": "rationale", "norm_label": "older cellpy has no refresh_after \u2014 must still rebuild the summary.", "source_file": "tests/test_core.py", - "source_location": "L1901" + "source_location": "L1983" }, { "id": "tests_test_core_rationale_201", @@ -45687,15 +45887,26 @@ "source_location": "L567" }, { - "id": "tests_test_core_rationale_708", - "label": "Summary y-titles use cellpy label builders with units (#38).", + "id": "tests_test_core_rationale_649", + "label": "Avg group + singleton both render on every variable facet (#39/#816). cellpy\u2026", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "summary y-titles use cellpy label builders with units (#38).", + "norm_label": "avg group + singleton both render on every variable facet (#39/#816). cellpy...", "source_file": "tests/test_core.py", - "source_location": "L708" + "source_location": "L649" + }, + { + "id": "tests_test_core_rationale_735", + "label": "Long journal-style labels must not blow up the summary legend (#1).", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "long journal-style labels must not blow up the summary legend (#1).", + "source_file": "tests/test_core.py", + "source_location": "L735" }, { "id": "tests_test_core_rationale_74", @@ -45708,6 +45919,17 @@ "source_file": "tests/test_core.py", "source_location": "L74" }, + { + "id": "tests_test_core_rationale_765", + "label": "Short labels stay intact; right margin stays modest (#1).", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "short labels stay intact; right margin stays modest (#1).", + "source_file": "tests/test_core.py", + "source_location": "L765" + }, { "id": "tests_test_core_rationale_785", "label": "Legend shortening must not be skipped if update_layout raises (#1).", @@ -45719,6 +45941,28 @@ "source_file": "tests/test_core.py", "source_location": "L785" }, + { + "id": "tests_test_core_rationale_805", + "label": "Dark theme tokens land on layout (#32).", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "dark theme tokens land on layout (#32).", + "source_file": "tests/test_core.py", + "source_location": "L805" + }, + { + "id": "tests_test_core_rationale_818", + "label": "safe colorway paints at least one trace from library.PALETTE (#32).", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "safe colorway paints at least one trace from library.palette (#32).", + "source_file": "tests/test_core.py", + "source_location": "L818" + }, { "id": "tests_test_core_rationale_840", "label": "safe/muted spread bands use translucent rgba fill, solid mean lines (#37).", @@ -45730,6 +45974,28 @@ "source_file": "tests/test_core.py", "source_location": "L840" }, + { + "id": "tests_test_core_rationale_877", + "label": "#40: cellpy's spread_plot sets no hovertemplate at all \u2014 restore it. Turning\u2026", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "#40: cellpy's spread_plot sets no hovertemplate at all \u2014 restore it. turning...", + "source_file": "tests/test_core.py", + "source_location": "L877" + }, + { + "id": "tests_test_core_rationale_919", + "label": "No regression: cellpy already gives these paths good hover (#40).", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "no regression: cellpy already gives these paths good hover (#40).", + "source_file": "tests/test_core.py", + "source_location": "L919" + }, { "id": "tests_test_core_rationale_940", "label": "Unpack Plotly figure-json ``y`` (plain list or binary ``bdata`` dict).", @@ -45785,67 +46051,188 @@ "source_file": "tests/test_core.py", "source_location": "L999" }, + { + "id": "src_cellpy_simple_gui_core_models", + "label": "models.py", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "code", + "norm_label": "models.py", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_core_models_py_basemodel", + "label": "BaseModel", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "code", + "norm_label": "basemodel", + "source_file": "", + "source_location": "" + }, { "id": "src_cellpy_simple_gui_core_models_py_field_validator", "label": "field_validator", "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "code", "norm_label": "field_validator", "source_file": "", "source_location": "" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_169", + "id": "src_cellpy_simple_gui_core_models_rationale_1", + "label": "Pydantic domain models shared by the core, the API and (as JSON) the UI.", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "rationale", + "norm_label": "pydantic domain models shared by the core, the api and (as json) the ui.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_177", "label": "One cell and the cycles to draw from it.", "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "rationale", "norm_label": "one cell and the cycles to draw from it.", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L169" + "source_location": "L177" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_272", + "id": "src_cellpy_simple_gui_core_models_rationale_280", "label": "Raw time-series traces for one cell \u2014 developer mode.", "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "rationale", "norm_label": "raw time-series traces for one cell \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L272" + "source_location": "L280" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_298", + "label": "Raw traces annotated with step/cycle information \u2014 developer mode. Cycle-\u2026", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "rationale", + "norm_label": "raw traces annotated with step/cycle information \u2014 developer mode. cycle-...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L298" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_312", + "label": "A plot spec plus the desired file format.", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "rationale", + "norm_label": "a plot spec plus the desired file format.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L312" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_322", + "label": "Optional explicit cell ids for library-cell export (default = selected).", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "rationale", + "norm_label": "optional explicit cell ids for library-cell export (default = selected).", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L322" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_351", + "label": "Expand typed paths / globs without loading anything (#136 staged list).", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "rationale", + "norm_label": "expand typed paths / globs without loading anything (#136 staged list).", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L351" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_358", + "label": "List files under a remote ``sftp://`` folder via cellpy's filefinder (#162).", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "rationale", + "norm_label": "list files under a remote ``sftp://`` folder via cellpy's filefinder (#162).", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L358" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_367", + "label": "Import one or more raw instrument files with shared metadata.", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "rationale", + "norm_label": "import one or more raw instrument files with shared metadata.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L367" }, { "id": "src_cellpy_simple_gui_core_models_rationale_42", "label": "Accept ``[lo, hi]`` with either end optional (blank \u2192 data extent). Both ends\u2026", "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "rationale", "norm_label": "accept ``[lo, hi]`` with either end optional (blank \u2192 data extent). both ends...", "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L42" }, { - "id": "tests_test_core_rationale_1812", + "id": "src_cellpy_simple_gui_core_models_rationale_92", + "label": "Rename one group (#187); an empty label restores ``group ``.", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "rationale", + "norm_label": "rename one group (#187); an empty label restores ``group ``.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L92" + }, + { + "id": "tests_test_core_rationale_1894", "label": "cellpy #867 landed in 2.1.2: raw_plot bounds the payload via max_points.", "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "models.py", "file_type": "rationale", "norm_label": "cellpy #867 landed in 2.1.2: raw_plot bounds the payload via max_points.", "source_file": "tests/test_core.py", - "source_location": "L1812" + "source_location": "L1894" + }, + { + "id": "tests_test_core_rationale_1928", + "label": "cycle_info_plot returns None for plotly unless get_axes=True.", + "_origin": "ast", + "community": 105, + "community_name": "models.py", + "file_type": "rationale", + "norm_label": "cycle_info_plot returns none for plotly unless get_axes=true.", + "source_file": "tests/test_core.py", + "source_location": "L1928" }, { "id": "src_cellpy_simple_gui_core_cycle_report", "label": "cycle_report.py", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "cycle_report.py", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -45856,7 +46243,7 @@ "label": "ComparePicks", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "comparepicks", "source_file": "", @@ -45867,7 +46254,7 @@ "label": "plotting.py", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "plotting.py", "source_file": "src/cellpy_simple_gui/core/plotting.py", @@ -45878,18 +46265,30 @@ "label": "ComparePicks", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "code", "norm_label": "comparepicks", "source_file": "", "source_location": "" }, + { + "id": "issueflows_03_solved_issues_issue169_plan_3_core_core_plotting_py", + "label": "3. Core \u2014 `core/plotting.py`", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "document", + "node_kind": "heading", + "norm_label": "3. core \u2014 `core/plotting.py`", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L136" + }, { "id": "issueflows_03_solved_issues_issue169_plan_4_api_api_routers_plots_py_api_routers_export_py_core_export_py", "label": "4. API \u2014 `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "4. api \u2014 `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`", @@ -45901,31 +46300,19 @@ "label": "Files to touch", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", "source_file": ".issueflows/03-solved-issues/issue169_plan.md", "source_location": "L189" }, - { - "id": "issueflows_03_solved_issues_issue169_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 107, - "community_name": "plotting.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L208" - }, { "id": "issueflows_03_solved_issues_issue169_status_2026_10_02_built", "label": "2026-10-02 \u2014 built", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "2026-10-02 \u2014 built", @@ -45937,7 +46324,7 @@ "label": "issue175_plan.md", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "page", "norm_label": "issue175_plan.md", @@ -45949,7 +46336,7 @@ "label": "1. Core \u2014 a small, pure cycle report (`core/cycle_report.py`, new)", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "1. core \u2014 a small, pure cycle report (`core/cycle_report.py`, new)", @@ -45961,7 +46348,7 @@ "label": "2. `collect.py`", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "2. `collect.py`", @@ -45973,7 +46360,7 @@ "label": "3. `plotting.py`", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "3. `plotting.py`", @@ -45985,7 +46372,7 @@ "label": "5. Docs", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "5. docs", @@ -45997,7 +46384,7 @@ "label": "Approach", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -46009,7 +46396,7 @@ "label": "Constraints", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -46021,7 +46408,7 @@ "label": "Files to touch", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -46033,7 +46420,7 @@ "label": "Goal", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -46045,7 +46432,7 @@ "label": "Open questions", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -46057,19 +46444,31 @@ "label": "Plan \u2014 #175 missing or bad cycles not reported", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "plan \u2014 #175 missing or bad cycles not reported", "source_file": ".issueflows/03-solved-issues/issue175_plan.md", "source_location": "L1" }, + { + "id": "issueflows_03_solved_issues_issue175_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue175_plan.md", + "source_location": "L38" + }, { "id": "issueflows_03_solved_issues_issue175_plan_test_strategy", "label": "Test strategy", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -46081,7 +46480,7 @@ "label": "What happens today (reproduced against the running server)", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "what happens today (reproduced against the running server)", @@ -46093,7 +46492,7 @@ "label": "issue175_status.md", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "page", "norm_label": "issue175_status.md", @@ -46105,7 +46504,7 @@ "label": "Remaining work", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -46117,7 +46516,7 @@ "label": "Status \u2014 #175 missing or bad cycles not reported", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "status \u2014 #175 missing or bad cycles not reported", @@ -46129,7 +46528,7 @@ "label": "What's done", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", @@ -46137,35 +46536,35 @@ "source_location": "L10" }, { - "id": "issueflows_03_solved_issues_issue72_plan_approach", - "label": "Approach", + "id": "issueflows_03_solved_issues_issue55_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L32" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L26" }, { - "id": "issueflows_03_solved_issues_issue72_plan_prior_art", - "label": "Prior art", + "id": "issueflows_04_designs_and_guides_compare_cells", + "label": "compare-cells.md", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L16" + "node_kind": "page", + "norm_label": "compare-cells.md", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L1" }, { "id": "issueflows_04_designs_and_guides_compare_cells_addendum_missing_unreadable_cycles_are_reported_175", "label": "Addendum \u2014 missing / unreadable cycles are reported (#175)", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "document", "node_kind": "heading", "norm_label": "addendum \u2014 missing / unreadable cycles are reported (#175)", @@ -46173,77 +46572,148 @@ "source_location": "L62" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1206", - "label": "Which cell a per-cell facet trace belongs to. Plotly Express writes\u2026", + "id": "issueflows_04_designs_and_guides_compare_cells_alternatives_considered", + "label": "Alternatives considered", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", + "file_type": "document", + "node_kind": "heading", + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L42" + }, + { + "id": "issueflows_04_designs_and_guides_compare_cells_compare_cells_169", + "label": "Compare cells (#169)", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "document", + "node_kind": "heading", + "norm_label": "compare cells (#169)", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_compare_cells_context", + "label": "Context", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "document", + "node_kind": "heading", + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L3" + }, + { + "id": "issueflows_04_designs_and_guides_compare_cells_decision", + "label": "Decision", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "document", + "node_kind": "heading", + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L12" + }, + { + "id": "issueflows_04_designs_and_guides_compare_cells_gotcha_recorded", + "label": "Gotcha recorded", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "document", + "node_kind": "heading", + "norm_label": "gotcha recorded", + "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", + "source_location": "L53" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_101", + "label": "``legendgroup`` \u2192 user-given group name, for the groups that have one.\u2026", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", "file_type": "rationale", - "norm_label": "which cell a per-cell facet trace belongs to. plotly express writes...", + "norm_label": "``legendgroup`` \u2192 user-given group name, for the groups that have one....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1206" + "source_location": "L101" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1265", - "label": "Fold a cellpy ``per_cell`` facet figure onto one axis pair (#169). cellpy's\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_557", + "label": "Collect DVA (dV/dQ) curves \u2014 the sibling of :func:`ica_collection`. cellpy\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", - "norm_label": "fold a cellpy ``per_cell`` facet figure onto one axis pair (#169). cellpy's...", + "norm_label": "collect dva (dv/dq) curves \u2014 the sibling of :func:`ica_collection`. cellpy...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1265" + "source_location": "L557" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_579", + "id": "src_cellpy_simple_gui_core_collect_rationale_600", "label": "Keep only the ``(cell label, cycle)`` rows in ``pairs`` (#169). cellpy collects\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "keep only the ``(cell label, cycle)`` rows in ``pairs`` (#169). cellpy collects...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L579" + "source_location": "L600" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_614", + "id": "src_cellpy_simple_gui_core_collect_rationale_635", "label": "The ``(cell label, cycle)`` pairs that actually have rows (#175). The mirror of\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "the ``(cell label, cycle)`` pairs that actually have rows (#175). the mirror of...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L614" + "source_location": "L635" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_902", - "label": "Carry user-facing notes in ``layout.meta.warnings`` (#175). Plotly's ``meta``\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_66", + "label": "The ``cell`` label each record gets in a collected frame, in order. This is the\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", - "norm_label": "carry user-facing notes in ``layout.meta.warnings`` (#175). plotly's ``meta``...", + "norm_label": "the ``cell`` label each record gets in a collected frame, in order. this is the...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L902" + "source_location": "L66" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_86", + "label": "Build a cellpy ``Batch`` from library records (labels/groups/selection).", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "rationale", + "norm_label": "build a cellpy ``batch`` from library records (labels/groups/selection).", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L86" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_954", + "id": "src_cellpy_simple_gui_core_collect_rationale_978", "label": "Raw traces annotated with step/cycle info, via cellpy's ``cycle_info_plot``.\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "raw traces annotated with step/cycle info, via cellpy's ``cycle_info_plot``....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L954" + "source_location": "L978" }, { "id": "src_cellpy_simple_gui_core_cycle_report_rationale_1", "label": "Say which requested cycles a cell could not deliver (#175). A cell explorer\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "say which requested cycles a cell could not deliver (#175). a cell explorer...", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -46254,7 +46724,7 @@ "label": "``[22, 23, 24, 30]`` \u2192 ``\"22\u201324, 30\"`` (sorted, de-duplicated).", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "``[22, 23, 24, 30]`` \u2192 ``\"22\u201324, 30\"`` (sorted, de-duplicated).", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -46265,7 +46735,7 @@ "label": "What one cell could not deliver for a request.", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "what one cell could not deliver for a request.", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -46276,7 +46746,7 @@ "label": "One report per cell that lost at least one requested cycle. ``requested`` maps\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "one report per cell that lost at least one requested cycle. ``requested`` maps...", "source_file": "src/cellpy_simple_gui/core/cycle_report.py", @@ -46287,132 +46757,176 @@ "label": "Rows for exactly the picked ``(cell, cycle)`` pairs the chart shows (#169).", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "rows for exactly the picked ``(cell, cycle)`` pairs the chart shows (#169).", "source_file": "src/cellpy_simple_gui/core/export.py", "source_location": "L114" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_181", + "id": "src_cellpy_simple_gui_core_library_rationale_31", + "label": "The name a group has until the user gives it one (cellpy's default too).", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "rationale", + "norm_label": "the name a group has until the user gives it one (cellpy's default too).", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L31" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_50", + "label": "A loaded cell plus its mutable, user-editable metadata.", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "rationale", + "norm_label": "a loaded cell plus its mutable, user-editable metadata.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L50" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_87", + "label": "The group's display name: the custom label, else ``group ``.", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "rationale", + "norm_label": "the group's display name: the custom label, else ``group ``.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L87" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_189", "label": "Several cells, each with its own cycles, in one figure (#169). cellpy collects\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "several cells, each with its own cycles, in one figure (#169). cellpy collects...", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L181" + "source_location": "L189" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_231", + "id": "src_cellpy_simple_gui_core_models_rationale_239", "label": "Every ``(cell_id, cycle)`` the spec asks for.", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "every ``(cell_id, cycle)`` the spec asks for.", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L231" + "source_location": "L239" }, { "id": "src_cellpy_simple_gui_core_plotting_rationale_1", "label": "Figure generation \u2014 thin delegation to cellpy's own collect + plotting. We no\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "figure generation \u2014 thin delegation to cellpy's own collect + plotting. we no...", "source_file": "src/cellpy_simple_gui/core/plotting.py", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_100", + "id": "src_cellpy_simple_gui_core_plotting_rationale_102", "label": "Batch label and cycle numbers per record, in record order (#175).", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "batch label and cycle numbers per record, in record order (#175).", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L100" + "source_location": "L102" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_112", + "id": "src_cellpy_simple_gui_core_plotting_rationale_114", "label": "Empty figure that says *why* nothing was drawn (#175).", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "empty figure that says *why* nothing was drawn (#175).", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L112" + "source_location": "L114" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_124", + "id": "src_cellpy_simple_gui_core_plotting_rationale_126", "label": "Missing + unreadable cycles for the one-cell explorer views. Only judged for a\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "missing + unreadable cycles for the one-cell explorer views. only judged for a...", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L124" + "source_location": "L126" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_143", + "id": "src_cellpy_simple_gui_core_plotting_rationale_145", "label": "Empty-figure JSON when *no* record has *any* requested cycle, else None. cellpy\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "empty-figure json when *no* record has *any* requested cycle, else none. cellpy...", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L143" + "source_location": "L145" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_222", + "id": "src_cellpy_simple_gui_core_plotting_rationale_225", "label": "Collect the picked cells over the *union* of their cycles, then narrow. Shared\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "collect the picked cells over the *union* of their cycles, then narrow. shared...", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L222" + "source_location": "L225" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_265", + "id": "src_cellpy_simple_gui_core_plotting_rationale_268", "label": "Curves from several cells, each with its own cycles, in one figure (#169).\u2026", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "curves from several cells, each with its own cycles, in one figure (#169)....", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L265" + "source_location": "L268" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_309", + "id": "src_cellpy_simple_gui_core_plotting_rationale_299", + "label": "Raw time-series traces for one cell \u2014 developer mode.", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "rationale", + "norm_label": "raw time-series traces for one cell \u2014 developer mode.", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L299" + }, + { + "id": "src_cellpy_simple_gui_core_plotting_rationale_312", "label": "Raw traces with step/cycle annotations \u2014 developer mode.", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "raw traces with step/cycle annotations \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L309" + "source_location": "L312" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_325", + "id": "src_cellpy_simple_gui_core_plotting_rationale_328", "label": "Differential voltage (dV/dQ vs capacity) for one cell \u2014 developer mode.", "_origin": "ast", "community": 107, - "community_name": "plotting.py", + "community_name": "CellRecord", "file_type": "rationale", "norm_label": "differential voltage (dv/dq vs capacity) for one cell \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L325" + "source_location": "L328" }, { "id": "issueflows_03_solved_issues_issue36_original", @@ -46666,61 +47180,6 @@ "source_file": ".issueflows/03-solved-issues/issue3_original.md", "source_location": "L13" }, - { - "id": "tests_test_mcp_prototype", - "label": "test_mcp_prototype.py", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "code", - "norm_label": "test_mcp_prototype.py", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L1" - }, - { - "id": "tests_test_mcp_prototype_py_fixture", - "label": "fixture", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "code", - "norm_label": "fixture", - "source_file": "", - "source_location": "" - }, - { - "id": "tests_test_mcp_prototype_rationale_1", - "label": "Drive the MCP prototype over the real protocol (#128). A prototype exists to\u2026", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "rationale", - "norm_label": "drive the mcp prototype over the real protocol (#128). a prototype exists to...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L1" - }, - { - "id": "tests_test_mcp_prototype_rationale_276", - "label": "Resolving a dotted path is importing it, and the caller is a model. The refusal\u2026", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "rationale", - "norm_label": "resolving a dotted path is importing it, and the caller is a model. the refusal...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L276" - }, - { - "id": "tests_test_mcp_prototype_rationale_33", - "label": "The server module, with its sandbox pointed at a temp directory. `ROOT` is read\u2026", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "rationale", - "norm_label": "the server module, with its sandbox pointed at a temp directory. `root` is read...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L33" - }, { "id": "tools_gen_llms_txt", "label": "gen_llms_txt.py", @@ -47064,89 +47523,6 @@ "source_file": "tests/test_api.py", "source_location": "L1" }, - { - "id": "tests_test_api_py_essential", - "label": "essential", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "code", - "norm_label": "essential", - "source_file": "", - "source_location": "" - }, - { - "id": "issueflows_03_solved_issues_issue136_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue136_original.md", - "source_location": "L87" - }, - { - "id": "issueflows_03_solved_issues_issue136_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue175_plan_4_ui_app_js_index_html_app_css", - "label": "4. UI (`app.js`, `index.html`, `app.css`)", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "4. ui (`app.js`, `index.html`, `app.css`)", - "source_file": ".issueflows/03-solved-issues/issue175_plan.md", - "source_location": "L110" - }, - { - "id": "issueflows_03_solved_issues_issue31_status", - "label": "issue31_status.md", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue31_status.md", - "source_file": ".issueflows/03-solved-issues/issue31_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue31_status_issue_31_status_iterative_fixes_export_download_location", - "label": "Issue #31 status \u2014 Iterative fixes: export download location", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #31 status \u2014 iterative fixes: export download location", - "source_file": ".issueflows/03-solved-issues/issue31_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue31_status_iterative_fixes_log", - "label": "Iterative fixes log", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "iterative fixes log", - "source_file": ".issueflows/03-solved-issues/issue31_status.md", - "source_location": "L7" - }, { "id": "tests_test_api_rationale_1", "label": "Integration tests for the FastAPI layer using TestClient.", @@ -47159,7 +47535,7 @@ "source_location": "L1" }, { - "id": "tests_test_api_rationale_259", + "id": "tests_test_api_rationale_286", "label": "Settings are pinned to a project folder, so there must be one.", "_origin": "ast", "community": 12, @@ -47167,10 +47543,10 @@ "file_type": "rationale", "norm_label": "settings are pinned to a project folder, so there must be one.", "source_file": "tests/test_api.py", - "source_location": "L259" + "source_location": "L286" }, { - "id": "tests_test_api_rationale_266", + "id": "tests_test_api_rationale_293", "label": "Regular users see only the curated list \u2014 no registry families.", "_origin": "ast", "community": 12, @@ -47178,106 +47554,7 @@ "file_type": "rationale", "norm_label": "regular users see only the curated list \u2014 no registry families.", "source_file": "tests/test_api.py", - "source_location": "L266" - }, - { - "id": "tests_test_api_rationale_298", - "label": "Load one example cell through the API and build a dV/dQ spec for it.", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "load one example cell through the api and build a dv/dq spec for it.", - "source_file": "tests/test_api.py", - "source_location": "L298" - }, - { - "id": "tests_test_api_rationale_309", - "label": "dV/dQ is a regular Cell-explorer view (#94), like the dQ/dV beside it.", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "dv/dq is a regular cell-explorer view (#94), like the dq/dv beside it.", - "source_file": "tests/test_api.py", - "source_location": "L309" - }, - { - "id": "tests_test_api_rationale_329", - "label": "Ungating must not turn an unknown cell into a permissions error.", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "ungating must not turn an unknown cell into a permissions error.", - "source_file": "tests/test_api.py", - "source_location": "L329" - }, - { - "id": "tests_test_api_rationale_454", - "label": "A syntax error in app.js breaks the whole UI while Python tests stay green.\u2026", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "a syntax error in app.js breaks the whole ui while python tests stay green....", - "source_file": "tests/test_api.py", - "source_location": "L454" - }, - { - "id": "tests_test_api_rationale_475", - "label": "Every x-model in the template must exist in the component, or Alpine throws.\u2026", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "every x-model in the template must exist in the component, or alpine throws....", - "source_file": "tests/test_api.py", - "source_location": "L475" - }, - { - "id": "tests_test_api_rationale_524", - "label": "Every state key, getter and method declared at the top level of app().", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "every state key, getter and method declared at the top level of app().", - "source_file": "tests/test_api.py", - "source_location": "L524" - }, - { - "id": "tests_test_api_rationale_540", - "label": "Identifiers an Alpine expression reads from the component scope. Property\u2026", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "identifiers an alpine expression reads from the component scope. property...", - "source_file": "tests/test_api.py", - "source_location": "L540" - }, - { - "id": "tests_test_api_rationale_562", - "label": "Every ``@click`` / ``x-show`` in the template resolves in the component. The\u2026", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "every ``@click`` / ``x-show`` in the template resolves in the component. the...", - "source_file": "tests/test_api.py", - "source_location": "L562" - }, - { - "id": "tests_test_api_rationale_593", - "label": "One primary button per modal, whatever tab is showing (#136).", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "one primary button per modal, whatever tab is showing (#136).", - "source_file": "tests/test_api.py", - "source_location": "L593" + "source_location": "L293" }, { "id": "tests_test_api_rationale_60", @@ -47291,106 +47568,7 @@ "source_location": "L60" }, { - "id": "tests_test_api_rationale_605", - "label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor.\u2026", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor....", - "source_file": "tests/test_api.py", - "source_location": "L605" - }, - { - "id": "tests_test_api_rationale_647", - "label": "At most four help lines are visible before the user touches anything (#136).\u2026", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "at most four help lines are visible before the user touches anything (#136)....", - "source_file": "tests/test_api.py", - "source_location": "L647" - }, - { - "id": "tests_test_api_rationale_671", - "label": "Make ``import webview`` fail, as it would on a server-only install.", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "make ``import webview`` fail, as it would on a server-only install.", - "source_file": "tests/test_api.py", - "source_location": "L671" - }, - { - "id": "tests_test_api_rationale_681", - "label": "A server-only install must serve the whole app (#118). pywebview moved to the\u2026", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "a server-only install must serve the whole app (#118). pywebview moved to the...", - "source_file": "tests/test_api.py", - "source_location": "L681" - }, - { - "id": "tests_test_api_rationale_700", - "label": "The two endpoints that genuinely need a window fail clearly, not with a 500.", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "the two endpoints that genuinely need a window fail clearly, not with a 500.", - "source_file": "tests/test_api.py", - "source_location": "L700" - }, - { - "id": "tests_test_api_rationale_712", - "label": "Falling back to the browser should say what to install, not raise ImportError.", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "falling back to the browser should say what to install, not raise importerror.", - "source_file": "tests/test_api.py", - "source_location": "L712" - }, - { - "id": "tests_test_api_rationale_74", - "label": "The config panel gets sections + provenance, and never a secrets section.", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "the config panel gets sections + provenance, and never a secrets section.", - "source_file": "tests/test_api.py", - "source_location": "L74" - }, - { - "id": "tests_test_api_rationale_746", - "label": "The blast radius of the old behaviour was the host, not the app (#120).", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "the blast radius of the old behaviour was the host, not the app (#120).", - "source_file": "tests/test_api.py", - "source_location": "L746" - }, - { - "id": "tests_test_api_rationale_762", - "label": "Loading is a job, so the refusal comes back as an error, not a status.", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "loading is a job, so the refusal comes back as an error, not a status.", - "source_file": "tests/test_api.py", - "source_location": "L762" - }, - { - "id": "tests_test_api_rationale_797", + "id": "tests_test_api_rationale_824", "label": "What the staged list shows is exactly what Load would take.", "_origin": "ast", "community": 12, @@ -47398,29 +47576,7 @@ "file_type": "rationale", "norm_label": "what the staged list shows is exactly what load would take.", "source_file": "tests/test_api.py", - "source_location": "L797" - }, - { - "id": "tests_test_api_rationale_827", - "label": "A served instance previews only inside its data directory (#120).", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "a served instance previews only inside its data directory (#120).", - "source_file": "tests/test_api.py", - "source_location": "L827" - }, - { - "id": "tests_test_api_rationale_840", - "label": "The desktop app takes host paths on purpose \u2014 that must not regress.", - "_origin": "ast", - "community": 12, - "community_name": "test_api.py", - "file_type": "rationale", - "norm_label": "the desktop app takes host paths on purpose \u2014 that must not regress.", - "source_file": "tests/test_api.py", - "source_location": "L840" + "source_location": "L824" }, { "id": "tests_test_api_rationale_92", @@ -49365,12 +49521,34 @@ "source_file": ".issueflows/03-solved-issues/issue63_status.md", "source_location": "L7" }, + { + "id": "examples_mcp_server", + "label": "mcp/server.py", + "_origin": "ast", + "community": 153, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "mcp/server.py", + "source_file": "examples/mcp/server.py", + "source_location": "L1" + }, + { + "id": "examples_mcp_server_py_path", + "label": "Path", + "_origin": "ast", + "community": 153, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" + }, { "id": "prompt", "label": "prompt", "_origin": "ast", "community": 153, - "community_name": "The prompts", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "prompt", "source_file": "", @@ -49381,19 +49559,63 @@ "label": "The prompts", "_origin": "ast", "community": 153, - "community_name": "The prompts", + "community_name": "mcp/server.py", "file_type": "document", "node_kind": "heading", "norm_label": "the prompts", "source_file": "examples/mcp/README.md", "source_location": "L74" }, + { + "id": "examples_mcp_server_rationale_1016", + "label": "Where Claude Desktop keeps its MCP server list, per platform.", + "_origin": "ast", + "community": 153, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "where claude desktop keeps its mcp server list, per platform.", + "source_file": "examples/mcp/server.py", + "source_location": "L1016" + }, + { + "id": "examples_mcp_server_rationale_1026", + "label": "Merge a `cellpy` entry into the client config, leaving the rest alone.", + "_origin": "ast", + "community": 153, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "merge a `cellpy` entry into the client config, leaving the rest alone.", + "source_file": "examples/mcp/server.py", + "source_location": "L1026" + }, + { + "id": "examples_mcp_server_rationale_51", + "label": "# NOTE: `mcp.server.mcpserver.Context` \u2014 *not* `mcp.server.context.Context`.", + "_origin": "ast", + "community": 153, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "# note: `mcp.server.mcpserver.context` \u2014 *not* `mcp.server.context.context`.", + "source_file": "examples/mcp/server.py", + "source_location": "L51" + }, + { + "id": "examples_mcp_server_rationale_9", + "label": "A prototype MCP server for cellpy \u2014 enough to prove or disprove the design.\u2026", + "_origin": "ast", + "community": 153, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "a prototype mcp server for cellpy \u2014 enough to prove or disprove the design....", + "source_file": "examples/mcp/server.py", + "source_location": "L9" + }, { "id": "examples_mcp_server_rationale_947", "label": "Load one cell and produce the standard set of plots.", "_origin": "ast", "community": 153, - "community_name": "The prompts", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "load one cell and produce the standard set of plots.", "source_file": "examples/mcp/server.py", @@ -49404,7 +49626,7 @@ "label": "Set up the notebook template for a new set of experiments.", "_origin": "ast", "community": 153, - "community_name": "The prompts", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "set up the notebook template for a new set of experiments.", "source_file": "examples/mcp/server.py", @@ -49415,7 +49637,7 @@ "label": "Explain a cellpy function: arguments, defaults, and the traps.", "_origin": "ast", "community": 153, - "community_name": "The prompts", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "explain a cellpy function: arguments, defaults, and the traps.", "source_file": "examples/mcp/server.py", @@ -49542,37 +49764,49 @@ "source_location": "L17" }, { - "id": "examples_mcp_server_py_path", - "label": "Path", + "id": "src_cellpy_simple_gui_api_routers_ingest_py_get", + "label": "get", "_origin": "ast", "community": 157, - "community_name": "_client_config_path", + "community_name": "list_instruments", "file_type": "code", - "norm_label": "path", + "norm_label": "get", "source_file": "", "source_location": "" }, { - "id": "examples_mcp_server_rationale_1016", - "label": "Where Claude Desktop keeps its MCP server list, per platform.", + "id": "cellpy_painpoints_5_instrument_discovery_logs_a_warning_per_non_loader_module", + "label": "5. \ud83d\udfe0 Instrument discovery logs a WARNING per non-loader module", "_origin": "ast", "community": 157, - "community_name": "_client_config_path", + "community_name": "list_instruments", + "file_type": "document", + "node_kind": "heading", + "norm_label": "5. \ud83d\udfe0 instrument discovery logs a warning per non-loader module", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L219" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_179", + "label": "Can this machine actually read an Arbin ``.res``? Cheap enough to call on every\u2026", + "_origin": "ast", + "community": 157, + "community_name": "list_instruments", "file_type": "rationale", - "norm_label": "where claude desktop keeps its mcp server list, per platform.", - "source_file": "examples/mcp/server.py", - "source_location": "L1016" + "norm_label": "can this machine actually read an arbin ``.res``? cheap enough to call on every...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L179" }, { - "id": "examples_mcp_server_rationale_1026", - "label": "Merge a `cellpy` entry into the client config, leaving the rest alone.", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_85", + "label": "The available instrument loaders (id / label / models / suffixes). Uses\u2026", "_origin": "ast", "community": 157, - "community_name": "_client_config_path", + "community_name": "list_instruments", "file_type": "rationale", - "norm_label": "merge a `cellpy` entry into the client config, leaving the rest alone.", - "source_file": "examples/mcp/server.py", - "source_location": "L1026" + "norm_label": "the available instrument loaders (id / label / models / suffixes). uses...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L85" }, { "id": "issueflows_03_solved_issues_issue15_original", @@ -49667,15 +49901,21 @@ "source_location": "L47" }, { - "id": "agents", - "label": "AGENTS.md", + "id": "cursor_skills_iflow_drive_skill", + "label": "iflow-drive/SKILL.md", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", + "frontmatter": { + "name": "iflow-drive", + "description": ">-", + "disable-model-invocation": "true", + "issue-flow-version": "0.4.2a4" + }, "node_kind": "page", - "norm_label": "agents.md", - "source_file": "AGENTS.md", + "norm_label": "iflow-drive/skill.md", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", "source_location": "L1" }, { @@ -49715,16 +49955,16 @@ "source_location": "L288" }, { - "id": "agents_cursor_cloud_specific_instructions", - "label": "Cursor Cloud specific instructions", + "id": "agents_command_lifecycle", + "label": "Command lifecycle", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "cursor cloud specific instructions", + "norm_label": "command lifecycle", "source_file": "AGENTS.md", - "source_location": "L345" + "source_location": "L167" }, { "id": "agents_designs_and_guides", @@ -49763,160 +50003,172 @@ "source_location": "L328" }, { - "id": "agents_if_the_project_uses_conda", - "label": "If the project uses conda", + "id": "agents_knowledge_graph_optional_via_graphify_https_iflow_graphify_net", + "label": "Knowledge graph (optional, via [graphify](https://iflow-graphify.net))", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "if the project uses conda", + "norm_label": "knowledge graph (optional, via [graphify](https://iflow-graphify.net))", "source_file": "AGENTS.md", - "source_location": "L18" + "source_location": "L334" }, { - "id": "agents_if_the_project_uses_uv_issue_flow_s_default", - "label": "If the project uses uv (issue-flow's default)", + "id": "agents_multi_root_workspaces", + "label": "Multi-root workspaces", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "if the project uses uv (issue-flow's default)", + "norm_label": "multi-root workspaces", "source_file": "AGENTS.md", - "source_location": "L34" + "source_location": "L309" }, { - "id": "agents_issue_flow_best_practices", - "label": "Issue-flow best practices", + "id": "agents_optional_response_styles", + "label": "Optional response styles", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "issue-flow best practices", + "norm_label": "optional response styles", "source_file": "AGENTS.md", - "source_location": "L2" + "source_location": "L259" }, { - "id": "agents_issue_tracking_structure", - "label": "Issue tracking structure", + "id": "agents_planning_aids", + "label": "Planning aids", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "issue tracking structure", + "norm_label": "planning aids", "source_file": "AGENTS.md", - "source_location": "L72" + "source_location": "L274" }, { - "id": "agents_knowledge_graph_optional_via_graphify_https_iflow_graphify_net", - "label": "Knowledge graph (optional, via [graphify](https://iflow-graphify.net))", + "id": "agents_scripts_that_can_help_us_when_working_on_issues", + "label": "Scripts that can help us when working on issues", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "knowledge graph (optional, via [graphify](https://iflow-graphify.net))", + "norm_label": "scripts that can help us when working on issues", "source_file": "AGENTS.md", - "source_location": "L334" + "source_location": "L250" }, { - "id": "agents_multi_root_workspaces", - "label": "Multi-root workspaces", + "id": "agents_when_finishing_an_issue", + "label": "When finishing an issue", + "_origin": "ast", + "community": 161, + "community_name": "Development information", + "file_type": "document", + "node_kind": "heading", + "norm_label": "when finishing an issue", + "source_file": "AGENTS.md", + "source_location": "L246" + }, + { + "id": "agents_working_on_issues", + "label": "Working on issues", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "multi-root workspaces", + "norm_label": "working on issues", "source_file": "AGENTS.md", - "source_location": "L309" + "source_location": "L95" }, { - "id": "agents_optional_response_styles", - "label": "Optional response styles", + "id": "cursor_skills_iflow_drive_skill_constraints", + "label": "Constraints", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "optional response styles", - "source_file": "AGENTS.md", - "source_location": "L259" + "norm_label": "constraints", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L178" }, { - "id": "agents_other_toolchains_plain_venv_pip_poetry", - "label": "Other toolchains (plain venv / pip / poetry)", + "id": "cursor_skills_iflow_drive_skill_input", + "label": "Input", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "other toolchains (plain venv / pip / poetry)", - "source_file": "AGENTS.md", - "source_location": "L66" + "norm_label": "input", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L24" }, { - "id": "agents_planning_aids", - "label": "Planning aids", + "id": "cursor_skills_iflow_drive_skill_instructions", + "label": "Instructions", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "planning aids", - "source_file": "AGENTS.md", - "source_location": "L274" + "norm_label": "instructions", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L83" }, { - "id": "agents_running_python", - "label": "Running python", + "id": "cursor_skills_iflow_drive_skill_issue_flow_drive_iflow_drive", + "label": "issue-flow \u2014 drive (`/iflow-drive`)", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "running python", - "source_file": "AGENTS.md", - "source_location": "L5" + "norm_label": "issue-flow \u2014 drive (`/iflow-drive`)", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L11" }, { - "id": "agents_scripts_that_can_help_us_when_working_on_issues", - "label": "Scripts that can help us when working on issues", + "id": "cursor_skills_iflow_drive_skill_model_execution_directive", + "label": "MODEL & EXECUTION DIRECTIVE", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "scripts that can help us when working on issues", - "source_file": "AGENTS.md", - "source_location": "L250" + "norm_label": "model & execution directive", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L48" }, { - "id": "agents_when_finishing_an_issue", - "label": "When finishing an issue", + "id": "cursor_skills_iflow_drive_skill_resolve_project_root_multi_root_workspaces", + "label": "Resolve project root (multi-root workspaces)", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "when finishing an issue", - "source_file": "AGENTS.md", - "source_location": "L246" + "norm_label": "resolve project root (multi-root workspaces)", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L62" }, { - "id": "agents_working_on_issues", - "label": "Working on issues", + "id": "docs_issue_workflow_16_iflow_drive_compose_epic_publish_auto_all", + "label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", "_origin": "ast", "community": 161, "community_name": "Development information", "file_type": "document", "node_kind": "heading", - "norm_label": "working on issues", - "source_file": "AGENTS.md", - "source_location": "L95" + "norm_label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", + "source_file": "docs/issue-workflow.md", + "source_location": "L550" }, { "id": "tools_gen_api_reference", @@ -50229,7 +50481,7 @@ "label": "entry.py", "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "file_type": "code", "norm_label": "entry.py", "source_file": "packaging/entry.py", @@ -50240,7 +50492,7 @@ "label": "BaseException", "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "file_type": "code", "norm_label": "baseexception", "source_file": "", @@ -50251,7 +50503,29 @@ "label": "Path", "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" + }, + { + "id": "packaging_smoke_test", + "label": "smoke_test.py", + "_origin": "ast", + "community": 166, + "community_name": "smoke_test.py", + "file_type": "code", + "norm_label": "smoke_test.py", + "source_file": "packaging/smoke_test.py", + "source_location": "L1" + }, + { + "id": "packaging_smoke_test_py_path", + "label": "Path", + "_origin": "ast", + "community": 166, + "community_name": "smoke_test.py", "file_type": "code", "norm_label": "path", "source_file": "", @@ -50262,7 +50536,7 @@ "label": "Frozen-app entry point. A module of its own rather than pointing PyInstaller at\u2026", "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "file_type": "rationale", "norm_label": "frozen-app entry point. a module of its own rather than pointing pyinstaller at...", "source_file": "packaging/entry.py", @@ -50273,7 +50547,7 @@ "label": "Where to write a crash report, using stdlib only. Duplicated from\u2026", "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "file_type": "rationale", "norm_label": "where to write a crash report, using stdlib only. duplicated from...", "source_file": "packaging/entry.py", @@ -50284,7 +50558,7 @@ "label": "Native message box. Separate so tests can stub it \u2014 calling the real one would\u2026", "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "file_type": "rationale", "norm_label": "native message box. separate so tests can stub it \u2014 calling the real one would...", "source_file": "packaging/entry.py", @@ -50295,12 +50569,45 @@ "label": "Write the traceback somewhere findable, and say so if there is a UI.", "_origin": "ast", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "file_type": "rationale", "norm_label": "write the traceback somewhere findable, and say so if there is a ui.", "source_file": "packaging/entry.py", "source_location": "L55" }, + { + "id": "packaging_smoke_test_rationale_1", + "label": "Smoke-test a built app by driving it over HTTP. Deliberately talks to a\u2026", + "_origin": "ast", + "community": 166, + "community_name": "smoke_test.py", + "file_type": "rationale", + "norm_label": "smoke-test a built app by driving it over http. deliberately talks to a...", + "source_file": "packaging/smoke_test.py", + "source_location": "L1" + }, + { + "id": "packaging_smoke_test_rationale_141", + "label": "Launches a binary and picks its URL and token out of the startup log.", + "_origin": "ast", + "community": 166, + "community_name": "smoke_test.py", + "file_type": "rationale", + "norm_label": "launches a binary and picks its url and token out of the startup log.", + "source_file": "packaging/smoke_test.py", + "source_location": "L141" + }, + { + "id": "packaging_smoke_test_rationale_55", + "label": "A capability this machine genuinely lacks, as opposed to a broken build.\u2026", + "_origin": "ast", + "community": 166, + "community_name": "smoke_test.py", + "file_type": "rationale", + "norm_label": "a capability this machine genuinely lacks, as opposed to a broken build....", + "source_file": "packaging/smoke_test.py", + "source_location": "L55" + }, { "id": "issueflows_03_solved_issues_issue50_status", "label": "issue50_status.md", @@ -50350,37 +50657,100 @@ "source_location": "L16" }, { - "id": "packaging_smoke_test_rationale_55", - "label": "A capability this machine genuinely lacks, as opposed to a broken build.\u2026", + "id": "issueflows_03_solved_issues_issue32_original", + "label": "issue32_original.md", "_origin": "ast", "community": 168, - "community_name": "Client", - "file_type": "rationale", - "norm_label": "a capability this machine genuinely lacks, as opposed to a broken build....", - "source_file": "packaging/smoke_test.py", - "source_location": "L55" + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue32_original.md", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L1" }, { - "id": "packaging_smoke_test_rationale_92", - "label": "Talks to an app that is already serving.", + "id": "issueflows_03_solved_issues_issue32_original_acceptance_criteria", + "label": "Acceptance criteria", "_origin": "ast", "community": 168, - "community_name": "Client", - "file_type": "rationale", - "norm_label": "talks to an app that is already serving.", - "source_file": "packaging/smoke_test.py", - "source_location": "L92" + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L19" }, { - "id": "tests_test_mcp_prototype_rationale_210", - "label": "The design doc lists these; drift makes the doc wrong, not the code.", + "id": "issueflows_03_solved_issues_issue32_original_comments_curated_summary", + "label": "Comments (curated summary)", "_origin": "ast", "community": 168, - "community_name": "Client", - "file_type": "rationale", - "norm_label": "the design doc lists these; drift makes the doc wrong, not the code.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L210" + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "comments (curated summary)", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L33" + }, + { + "id": "issueflows_03_solved_issues_issue32_original_issue_32_plot_appearance_options_color_scheme_and_figure_theme", + "label": "Issue #32: Plot appearance options: color scheme and figure theme", + "_origin": "ast", + "community": 168, + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #32: plot appearance options: color scheme and figure theme", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue32_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 168, + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue32_original_out_of_scope", + "label": "Out of scope", + "_origin": "ast", + "community": 168, + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L27" + }, + { + "id": "issueflows_03_solved_issues_issue32_original_problem_context", + "label": "Problem / context", + "_origin": "ast", + "community": 168, + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue32_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 168, + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L11" }, { "id": "dataframe", @@ -50438,40 +50808,16 @@ "source_location": "" }, { - "id": "src_cellpy_simple_gui_core_export_py_path", - "label": "Path", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_progressfn", + "label": "ProgressFn", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "path", + "norm_label": "progressfn", "source_file": "", "source_location": "" }, - { - "id": "issueflows_03_solved_issues_issue160_plan_phase_1_this_pr", - "label": "Phase 1 (this PR)", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase 1 (this pr)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L130" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L151" - }, { "id": "issueflows_03_solved_issues_issue162_plan_constraints", "label": "Constraints", @@ -50508,66 +50854,6 @@ "source_file": ".issueflows/03-solved-issues/issue162_plan.md", "source_location": "L35" }, - { - "id": "issueflows_03_solved_issues_issue28_status", - "label": "issue28_status.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue28_status.md", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue28_status_issue_28_status_export_cells_from_manage_cells", - "label": "Issue #28 status \u2014 Export cells from Manage cells", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #28 status \u2014 export cells from manage cells", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue28_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue28_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue3_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L15" - }, { "id": "issueflows_03_solved_issues_issue41_plan_approach", "label": "Approach", @@ -50580,126 +50866,6 @@ "source_file": ".issueflows/03-solved-issues/issue41_plan.md", "source_location": "L7" }, - { - "id": "issueflows_03_solved_issues_issue41_status", - "label": "issue41_status.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue41_status.md", - "source_file": ".issueflows/03-solved-issues/issue41_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue41_status_progress", - "label": "Progress", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "progress", - "source_file": ".issueflows/03-solved-issues/issue41_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue41_status_status_issue_41", - "label": "Status \u2014 Issue #41", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "status \u2014 issue #41", - "source_file": ".issueflows/03-solved-issues/issue41_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan", - "label": "issue52_plan.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue52_plan.md", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L39" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L9" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L95" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_issue_52_plan_bump_cellpy_post4_delegate_app_glue", - "label": "Issue #52 \u2014 Plan: bump cellpy post4 + delegate app glue", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #52 \u2014 plan: bump cellpy post4 + delegate app glue", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L120" - }, { "id": "issueflows_03_solved_issues_issue52_plan_phase_a_bump_smoke", "label": "Phase A \u2014 bump + smoke", @@ -50712,426 +50878,6 @@ "source_file": ".issueflows/03-solved-issues/issue52_plan.md", "source_location": "L44" }, - { - "id": "issueflows_03_solved_issues_issue52_plan_phase_b_written_inventory", - "label": "Phase B \u2014 written inventory", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase b \u2014 written inventory", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L51" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_phase_c_implement_delegate_now", - "label": "Phase C \u2014 implement \u201cdelegate now\u201d", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase c \u2014 implement \u201cdelegate now\u201d", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L69" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_phase_d_docs", - "label": "Phase D \u2014 docs", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase d \u2014 docs", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L89" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L21" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L112" - }, - { - "id": "issueflows_03_solved_issues_issue52_status", - "label": "issue52_status.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue52_status.md", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue52_status_issue_52_status", - "label": "Issue #52 \u2014 Status", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #52 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue52_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue52_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue69_plan", - "label": "issue69_plan.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue69_plan.md", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue69_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L26" - }, - { - "id": "issueflows_03_solved_issues_issue69_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue69_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L36" - }, - { - "id": "issueflows_03_solved_issues_issue69_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue69_plan_issue_69_plan_edit_cell_metadata", - "label": "Issue #69 \u2014 Plan: edit cell metadata", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #69 \u2014 plan: edit cell metadata", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue69_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L59" - }, - { - "id": "issueflows_03_solved_issues_issue69_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue69_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L52" - }, - { - "id": "issueflows_03_solved_issues_issue69_status", - "label": "issue69_status.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue69_status.md", - "source_file": ".issueflows/03-solved-issues/issue69_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue69_status_issue_69_status", - "label": "Issue #69 \u2014 Status", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #69 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue69_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue69_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue69_status.md", - "source_location": "L16" - }, - { - "id": "issueflows_03_solved_issues_issue69_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue69_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue86_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue86_original.md", - "source_location": "L11" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan", - "label": "issue86_plan.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue86_plan.md", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L24" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L35" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_issue_86_plan_edit_nominal_capacity_basis", - "label": "Issue #86 \u2014 Plan: edit nominal-capacity basis", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #86 \u2014 plan: edit nominal-capacity basis", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L56" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L49" - }, - { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_release_gating_note_resolved_for_816_818_819", - "label": "Release-gating note (resolved for #816/#818/#819)", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "release-gating note (resolved for #816/#818/#819)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L11" - }, - { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_still_app_owned_no_upstream_yet_by_design", - "label": "Still app-owned (no upstream yet / by design)", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "still app-owned (no upstream yet / by design)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L178" - }, - { - "id": "issueflows_04_designs_and_guides_manage_cells_modal_behaviour", - "label": "Behaviour", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "behaviour", - "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", - "source_location": "L5" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_1", "label": "The one and only bridge to cellpy (>= 2.1). Every cellpy import and every\u2026", @@ -51143,28 +50889,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_179", - "label": "Can this machine actually read an Arbin ``.res``? Cheap enough to call on every\u2026", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "can this machine actually read an arbin ``.res``? cheap enough to call on every...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L179" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_221", - "label": "Describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L221" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_228", "label": "Peek cellpy-file metadata without loading raw/steps/summary (#799).", @@ -51275,17 +50999,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L414" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_494", - "label": "Return a plain-dict projection of a cell's metadata.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "return a plain-dict projection of a cell's metadata.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L494" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_530", "label": "Return the per-cycle summary DataFrame for a cell. Uses the modern\u2026", @@ -51309,51 +51022,51 @@ "source_location": "L557" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_61", - "label": "Load one bundled example cell. Returns a ``CellpyCell``. ``kind`` is one of\u2026", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_573", + "label": "Load a cellpy batch journal (.json) and return ``(label, cell, group)``. Thin\u2026", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "rationale", - "norm_label": "load one bundled example cell. returns a ``cellpycell``. ``kind`` is one of...", + "norm_label": "load a cellpy batch journal (.json) and return ``(label, cell, group)``. thin...", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L61" + "source_location": "L573" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_718", - "label": "Write a cell to a self-contained ``.cellpy`` file (overwriting).", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_585", + "label": "Load a cellpy batch journal (.json). Returns ``(cells, group_labels)``: one\u2026", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "rationale", - "norm_label": "write a cell to a self-contained ``.cellpy`` file (overwriting).", + "norm_label": "load a cellpy batch journal (.json). returns ``(cells, group_labels)``: one...", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L718" + "source_location": "L585" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_725", - "label": "Write a cell via cellpy ``to_excel`` (default sheets / options).", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_61", + "label": "Load one bundled example cell. Returns a ``CellpyCell``. ``kind`` is one of\u2026", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "rationale", - "norm_label": "write a cell via cellpy ``to_excel`` (default sheets / options).", + "norm_label": "load one bundled example cell. returns a ``cellpycell``. ``kind`` is one of...", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L725" + "source_location": "L61" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_732", - "label": "Write cellpy ``to_csv`` outputs into ``datadir``; return created files.", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_749", + "label": "Write a cell via cellpy ``to_excel`` (default sheets / options).", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "rationale", - "norm_label": "write cellpy ``to_csv`` outputs into ``datadir``; return created files.", + "norm_label": "write a cell via cellpy ``to_excel`` (default sheets / options).", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L732" + "source_location": "L749" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_742", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_766", "label": "Refresh the summary after a physical meta change. cellpy \u22652.1.2a4 exposes\u2026", "_origin": "ast", "community": 17, @@ -51361,43 +51074,10 @@ "file_type": "rationale", "norm_label": "refresh the summary after a physical meta change. cellpy \u22652.1.2a4 exposes...", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L742" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_769", - "label": "Assign physical meta knobs and refresh the summary once. Returns the names of\u2026", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "assign physical meta knobs and refresh the summary once. returns the names of...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L769" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_798", - "label": "Update the active-material mass and refresh the summary.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "update the active-material mass and refresh the summary.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L798" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_803", - "label": "Update active electrode area (cm\u00b2) and refresh the summary.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "update active electrode area (cm2) and refresh the summary.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L803" + "source_location": "L766" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_808", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_832", "label": "Update nominal capacity and refresh the summary.", "_origin": "ast", "community": 17, @@ -51405,10 +51085,10 @@ "file_type": "rationale", "norm_label": "update nominal capacity and refresh the summary.", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L808" + "source_location": "L832" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_813", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_837", "label": "Update nominal-capacity basis and refresh the summary.", "_origin": "ast", "community": 17, @@ -51416,106 +51096,7 @@ "file_type": "rationale", "norm_label": "update nominal-capacity basis and refresh the summary.", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L813" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_818", - "label": "Update cycle mode (anode/cathode/full_cell) and refresh the summary.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "update cycle mode (anode/cathode/full_cell) and refresh the summary.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L818" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_85", - "label": "The available instrument loaders (id / label / models / suffixes). Uses\u2026", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "the available instrument loaders (id / label / models / suffixes). uses...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L85" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_654", - "label": "Fold theme tokens into cellpy #801 knobs before ``collection.plot``.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "fold theme tokens into cellpy #801 knobs before ``collection.plot``.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L654" - }, - { - "id": "src_cellpy_simple_gui_core_export_rationale_169", - "label": "Render Plotly figure JSON to static image bytes (requires kaleido). Delegates\u2026", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "render plotly figure json to static image bytes (requires kaleido). delegates...", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L169" - }, - { - "id": "src_cellpy_simple_gui_core_export_rationale_236", - "label": "Write one cell into ``work``; return (archive_name, path) pairs.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "write one cell into ``work``; return (archive_name, path) pairs.", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L236" - }, - { - "id": "src_cellpy_simple_gui_core_export_rationale_256", - "label": "Export library cells via cellpy save/to_csv/to_excel. Returns ``(bytes,\u2026", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "export library cells via cellpy save/to_csv/to_excel. returns ``(bytes,...", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L256" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_320", - "label": "A single editable-grid change.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "a single editable-grid change.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L320" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_68", - "label": "Everything the UI needs to know about one loaded cell. The heavy ``CellpyCell``\u2026", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "everything the ui needs to know about one loaded cell. the heavy ``cellpycell``...", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L68" - }, - { - "id": "src_cellpy_simple_gui_core_paths_rationale_44", - "label": "True when ``raw`` is an ssh/sftp/scp URI (cellpy OtherPath).", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "true when ``raw`` is an ssh/sftp/scp uri (cellpy otherpath).", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L44" + "source_location": "L837" }, { "id": "src_cellpy_simple_gui_core_paths_rationale_50", @@ -52078,17 +51659,6 @@ "source_file": ".issueflows/03-solved-issues/issue14_original.md", "source_location": "L5" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a_mouse", - "label": ".mouse()", - "_origin": "ast", - "community": 18, - "community_name": "m", - "file_type": "code", - "norm_label": ".mouse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "issueflows_03_solved_issues_issue14_status", "label": "issue14_status.md", @@ -52346,7 +51916,7 @@ "label": "iflow-cleanup/SKILL.md", "_origin": "ast", "community": 188, - "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "community_name": "gh", "file_type": "document", "frontmatter": { "name": "iflow-cleanup", @@ -52359,12 +51929,125 @@ "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", "source_location": "L1" }, + { + "id": "cursor_skills_iflow_setup_skill", + "label": "iflow-setup/SKILL.md", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "frontmatter": { + "name": "iflow-setup", + "description": ">-", + "disable-model-invocation": "true", + "issue-flow-version": "0.4.2a4" + }, + "node_kind": "page", + "norm_label": "iflow-setup/skill.md", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L1" + }, + { + "id": "cursor_skills_iflow_status_skill", + "label": "iflow-status/SKILL.md", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "frontmatter": { + "name": "iflow-status", + "description": ">-", + "disable-model-invocation": "true", + "issue-flow-version": "0.4.2a4" + }, + "node_kind": "page", + "norm_label": "iflow-status/skill.md", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L1" + }, + { + "id": "cursor_skills_gh_ci_skill", + "label": "gh-ci/SKILL.md", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "frontmatter": { + "name": "gh-ci", + "description": ">-", + "issue-flow-version": "0.4.2a4" + }, + "node_kind": "page", + "norm_label": "gh-ci/skill.md", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L1" + }, + { + "id": "cursor_skills_gh_ci_skill_fallback_workflow_runs", + "label": "Fallback (workflow runs)", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "fallback (workflow runs)", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L34" + }, + { + "id": "cursor_skills_gh_ci_skill_gh_ci_wait_on_github_ci_with_gh", + "label": "gh-ci \u2014 wait on GitHub CI with `gh`", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "gh-ci \u2014 wait on github ci with `gh`", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L12" + }, + { + "id": "cursor_skills_gh_ci_skill_primary_pr_attached_checks", + "label": "Primary (PR-attached checks)", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "primary (pr-attached checks)", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L17" + }, + { + "id": "cursor_skills_gh_ci_skill_semantics", + "label": "Semantics", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "semantics", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L47" + }, + { + "id": "cursor_skills_gh_ci_skill_where_this_fits", + "label": "Where this fits", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "where this fits", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L55" + }, { "id": "cursor_skills_iflow_cleanup_skill_constraints", "label": "Constraints", "_origin": "ast", "community": 188, - "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -52376,7 +52059,7 @@ "label": "Input", "_origin": "ast", "community": 188, - "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "input", @@ -52388,7 +52071,7 @@ "label": "Instructions", "_origin": "ast", "community": 188, - "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "instructions", @@ -52400,7 +52083,7 @@ "label": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", "_origin": "ast", "community": 188, - "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", @@ -52412,7 +52095,7 @@ "label": "MODEL & EXECUTION DIRECTIVE", "_origin": "ast", "community": 188, - "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "model & execution directive", @@ -52424,13 +52107,145 @@ "label": "Resolve project root (multi-root workspaces)", "_origin": "ast", "community": 188, - "community_name": "issue-flow \u2014 issue cleanup (`/iflow-cleanup`)", + "community_name": "gh", "file_type": "document", "node_kind": "heading", "norm_label": "resolve project root (multi-root workspaces)", "source_file": ".cursor/skills/iflow-cleanup/SKILL.md", "source_location": "L36" }, + { + "id": "cursor_skills_iflow_setup_skill_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L110" + }, + { + "id": "cursor_skills_iflow_setup_skill_input", + "label": "Input", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "input", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L63" + }, + { + "id": "cursor_skills_iflow_setup_skill_instructions", + "label": "Instructions", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "instructions", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L70" + }, + { + "id": "cursor_skills_iflow_setup_skill_issue_flow_guided_project_setup_iflow_setup", + "label": "issue-flow \u2014 guided project setup (`/iflow-setup`)", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue-flow \u2014 guided project setup (`/iflow-setup`)", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L10" + }, + { + "id": "cursor_skills_iflow_setup_skill_model_execution_directive", + "label": "MODEL & EXECUTION DIRECTIVE", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "model & execution directive", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L27" + }, + { + "id": "cursor_skills_iflow_setup_skill_resolve_project_root_multi_root_workspaces", + "label": "Resolve project root (multi-root workspaces)", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "resolve project root (multi-root workspaces)", + "source_file": ".cursor/skills/iflow-setup/SKILL.md", + "source_location": "L41" + }, + { + "id": "cursor_skills_iflow_status_skill_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L84" + }, + { + "id": "cursor_skills_iflow_status_skill_instructions", + "label": "Instructions", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "instructions", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L56" + }, + { + "id": "cursor_skills_iflow_status_skill_issue_flow_issue_status_overview_iflow_status", + "label": "issue-flow \u2014 issue status overview (`/iflow-status`)", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue-flow \u2014 issue status overview (`/iflow-status`)", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L9" + }, + { + "id": "cursor_skills_iflow_status_skill_model_execution_directive", + "label": "MODEL & EXECUTION DIRECTIVE", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "model & execution directive", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L21" + }, + { + "id": "cursor_skills_iflow_status_skill_resolve_project_root_multi_root_workspaces", + "label": "Resolve project root (multi-root workspaces)", + "_origin": "ast", + "community": 188, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "resolve project root (multi-root workspaces)", + "source_file": ".cursor/skills/iflow-status/SKILL.md", + "source_location": "L35" + }, { "id": "issueflows_03_solved_issues_issue28_original", "label": "issue28_original.md", @@ -52583,153 +52398,69 @@ "community_name": "issue-flow \u2014 issue comments triage", "file_type": "document", "node_kind": "heading", - "norm_label": "edge cases", - "source_file": ".cursor/skills/iflow-comments/SKILL.md", - "source_location": "L89" - }, - { - "id": "cursor_skills_iflow_comments_skill_inputs", - "label": "Inputs", - "_origin": "ast", - "community": 19, - "community_name": "issue-flow \u2014 issue comments triage", - "file_type": "document", - "node_kind": "heading", - "norm_label": "inputs", - "source_file": ".cursor/skills/iflow-comments/SKILL.md", - "source_location": "L30" - }, - { - "id": "cursor_skills_iflow_comments_skill_issue_flow_issue_comments_triage", - "label": "issue-flow \u2014 issue comments triage", - "_origin": "ast", - "community": 19, - "community_name": "issue-flow \u2014 issue comments triage", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue-flow \u2014 issue comments triage", - "source_file": ".cursor/skills/iflow-comments/SKILL.md", - "source_location": "L10" - }, - { - "id": "cursor_skills_iflow_comments_skill_model_execution_directive", - "label": "MODEL & EXECUTION DIRECTIVE", - "_origin": "ast", - "community": 19, - "community_name": "issue-flow \u2014 issue comments triage", - "file_type": "document", - "node_kind": "heading", - "norm_label": "model & execution directive", - "source_file": ".cursor/skills/iflow-comments/SKILL.md", - "source_location": "L17" - }, - { - "id": "cursor_skills_iflow_comments_skill_output_contract", - "label": "Output contract", - "_origin": "ast", - "community": 19, - "community_name": "issue-flow \u2014 issue comments triage", - "file_type": "document", - "node_kind": "heading", - "norm_label": "output contract", - "source_file": ".cursor/skills/iflow-comments/SKILL.md", - "source_location": "L69" - }, - { - "id": "cursor_skills_iflow_comments_skill_triage_rules", - "label": "Triage rules", - "_origin": "ast", - "community": 19, - "community_name": "issue-flow \u2014 issue comments triage", - "file_type": "document", - "node_kind": "heading", - "norm_label": "triage rules", - "source_file": ".cursor/skills/iflow-comments/SKILL.md", - "source_location": "L46" - }, - { - "id": "issueflows_01_current_issues_issue184_plan", - "label": "issue184_plan.md", - "_origin": "ast", - "community": 190, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue184_plan.md", - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_01_current_issues_issue184_plan_approach_front_end_only_app_js_modal_markup", - "label": "Approach (front-end only, `app.js` + modal markup)", - "_origin": "ast", - "community": 190, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach (front-end only, `app.js` + modal markup)", - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L21" + "norm_label": "edge cases", + "source_file": ".cursor/skills/iflow-comments/SKILL.md", + "source_location": "L89" }, { - "id": "issueflows_01_current_issues_issue184_plan_files_to_touch", - "label": "Files to touch", + "id": "cursor_skills_iflow_comments_skill_inputs", + "label": "Inputs", "_origin": "ast", - "community": 190, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "community": 19, + "community_name": "issue-flow \u2014 issue comments triage", "file_type": "document", "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L37" + "norm_label": "inputs", + "source_file": ".cursor/skills/iflow-comments/SKILL.md", + "source_location": "L30" }, { - "id": "issueflows_01_current_issues_issue184_plan_goal", - "label": "Goal", + "id": "cursor_skills_iflow_comments_skill_issue_flow_issue_comments_triage", + "label": "issue-flow \u2014 issue comments triage", "_origin": "ast", - "community": 190, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "community": 19, + "community_name": "issue-flow \u2014 issue comments triage", "file_type": "document", "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L3" + "norm_label": "issue-flow \u2014 issue comments triage", + "source_file": ".cursor/skills/iflow-comments/SKILL.md", + "source_location": "L10" }, { - "id": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", - "label": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "id": "cursor_skills_iflow_comments_skill_model_execution_directive", + "label": "MODEL & EXECUTION DIRECTIVE", "_origin": "ast", - "community": 190, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "community": 19, + "community_name": "issue-flow \u2014 issue comments triage", "file_type": "document", "node_kind": "heading", - "norm_label": "plan \u2014 #184 update plots when the manage cells modal closes", - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L1" + "norm_label": "model & execution directive", + "source_file": ".cursor/skills/iflow-comments/SKILL.md", + "source_location": "L17" }, { - "id": "issueflows_01_current_issues_issue184_plan_test_strategy", - "label": "Test strategy", + "id": "cursor_skills_iflow_comments_skill_output_contract", + "label": "Output contract", "_origin": "ast", - "community": 190, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "community": 19, + "community_name": "issue-flow \u2014 issue comments triage", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L46" + "norm_label": "output contract", + "source_file": ".cursor/skills/iflow-comments/SKILL.md", + "source_location": "L69" }, { - "id": "issueflows_01_current_issues_issue184_plan_what_happens_today", - "label": "What happens today", + "id": "cursor_skills_iflow_comments_skill_triage_rules", + "label": "Triage rules", "_origin": "ast", - "community": 190, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "community": 19, + "community_name": "issue-flow \u2014 issue comments triage", "file_type": "document", "node_kind": "heading", - "norm_label": "what happens today", - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L10" + "norm_label": "triage rules", + "source_file": ".cursor/skills/iflow-comments/SKILL.md", + "source_location": "L46" }, { "id": "issueflows_03_solved_issues_issue36_status", @@ -52983,30 +52714,6 @@ "source_file": "docs/guides/05-configuration.md", "source_location": "L38" }, - { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_configuration_cellpy_config_new_in_2_1_2", - "label": "Configuration (`cellpy.config`, new in 2.1.2)", - "_origin": "ast", - "community": 192, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "configuration (`cellpy.config`, new in 2.1.2)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L67" - }, - { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_resolved_in_2_1_2a3", - "label": "Resolved in 2.1.2a3", - "_origin": "ast", - "community": 192, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "resolved in 2.1.2a3", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L84" - }, { "id": "readme_find_files_in_a_remote_folder", "label": "Find files in a remote folder", @@ -53019,18 +52726,6 @@ "source_file": "README.md", "source_location": "L378" }, - { - "id": "readme_local_vs_served_what_the_app_may_touch", - "label": "Local vs served: what the app may touch", - "_origin": "ast", - "community": 192, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "local vs served: what the app may touch", - "source_file": "README.md", - "source_location": "L319" - }, { "id": "readme_moving_the_data_directory", "label": "Moving the data directory", @@ -53314,122 +53009,214 @@ "type": "package" }, { - "id": "issueflows_03_solved_issues_issue37_original", - "label": "issue37_original.md", + "id": "tests_test_mcp_prototype", + "label": "test_mcp_prototype.py", "_origin": "ast", - "community": 202, - "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue37_original.md", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_mcp_prototype.py", + "source_file": "tests/test_mcp_prototype.py", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue37_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 202, - "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L20" - }, - { - "id": "issueflows_03_solved_issues_issue37_original_issue_37_spread_bands_too_opaque_for_safe_muted_color_schemes", - "label": "Issue #37: Spread bands too opaque for safe/muted color schemes", + "id": "tests_test_mcp_prototype_py_fixture", + "label": "fixture", "_origin": "ast", - "community": 202, - "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #37: spread bands too opaque for safe/muted color schemes", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L1" + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "fixture", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue37_original_original_issue_text", - "label": "Original issue text", + "id": "tests_test_mcp_prototype_py_parametrize", + "label": "parametrize", "_origin": "ast", - "community": 202, - "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L5" + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "parametrize", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue37_original_out_of_scope", - "label": "Out of scope", + "id": "packaging_smoke_test_rationale_92", + "label": "Talks to an app that is already serving.", "_origin": "ast", - "community": 202, - "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L27" + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "talks to an app that is already serving.", + "source_file": "packaging/smoke_test.py", + "source_location": "L92" }, { - "id": "issueflows_03_solved_issues_issue37_original_problem_context", - "label": "Problem / context", + "id": "tests_test_mcp_prototype_rationale_1", + "label": "Drive the MCP prototype over the real protocol (#128). A prototype exists to\u2026", "_origin": "ast", - "community": 202, - "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L7" + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "drive the mcp prototype over the real protocol (#128). a prototype exists to...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue37_original_spec", - "label": "Spec", + "id": "tests_test_mcp_prototype_rationale_110", + "label": "The trap made visible: fewer points than rows, reported rather than hidden.", "_origin": "ast", - "community": 202, - "community_name": "Issue #37: Spread bands too opaque for safe/muted color schemes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue37_original.md", - "source_location": "L13" + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "the trap made visible: fewer points than rows, reported rather than hidden.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L110" }, { - "id": "tests_test_mcp_prototype_py_parametrize", - "label": "parametrize", + "id": "tests_test_mcp_prototype_rationale_122", + "label": "Only preview returns rows, and it caps whatever it is asked for.", "_origin": "ast", "community": 204, - "community_name": "steps", - "file_type": "code", - "norm_label": "parametrize", - "source_file": "", - "source_location": "" + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "only preview returns rows, and it caps whatever it is asked for.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L122" }, { "id": "tests_test_mcp_prototype_rationale_167", "label": "The caller is a model acting on text it may have read somewhere.", "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "rationale", "norm_label": "the caller is a model acting on text it may have read somewhere.", "source_file": "tests/test_mcp_prototype.py", "source_location": "L167" }, + { + "id": "tests_test_mcp_prototype_rationale_178", + "label": "A write primitive outside the boundary would make the read check decor.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "a write primitive outside the boundary would make the read check decor.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L178" + }, + { + "id": "tests_test_mcp_prototype_rationale_196", + "label": "Error text is read by a model, so it has to name the next call.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "error text is read by a model, so it has to name the next call.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L196" + }, + { + "id": "tests_test_mcp_prototype_rationale_210", + "label": "The design doc lists these; drift makes the doc wrong, not the code.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "the design doc lists these; drift makes the doc wrong, not the code.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L210" + }, + { + "id": "tests_test_mcp_prototype_rationale_243", + "label": "The finding this family turns on. `CellpyCell.get_cap` points at the\u2026", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "the finding this family turns on. `cellpycell.get_cap` points at the...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L243" + }, + { + "id": "tests_test_mcp_prototype_rationale_264", + "label": "`self` in a rendered signature invites a model to pass it.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "`self` in a rendered signature invites a model to pass it.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L264" + }, + { + "id": "tests_test_mcp_prototype_rationale_276", + "label": "Resolving a dotted path is importing it, and the caller is a model. The refusal\u2026", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "resolving a dotted path is importing it, and the caller is a model. the refusal...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L276" + }, + { + "id": "tests_test_mcp_prototype_rationale_297", + "label": "`utils.helpers` re-exports `CellpyCell`; a path through it sends the reader to\u2026", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "`utils.helpers` re-exports `cellpycell`; a path through it sends the reader to...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L297" + }, { "id": "tests_test_mcp_prototype_rationale_311", "label": "The happy path downloads a cookiecutter from GitHub, so CI tests the boundary \u2014\u2026", "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "rationale", "norm_label": "the happy path downloads a cookiecutter from github, so ci tests the boundary \u2014...", "source_file": "tests/test_mcp_prototype.py", "source_location": "L311" }, + { + "id": "tests_test_mcp_prototype_rationale_33", + "label": "The server module, with its sandbox pointed at a temp directory. `ROOT` is read\u2026", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "the server module, with its sandbox pointed at a temp directory. `root` is read...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L33" + }, + { + "id": "tests_test_mcp_prototype_rationale_56", + "label": "Run `steps(call)` against a connected client; return whatever it returns.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "run `steps(call)` against a connected client; return whatever it returns.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L56" + }, + { + "id": "tests_test_mcp_prototype_rationale_78", + "label": "Load -> collect -> render -> export, as a client actually does it.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "load -> collect -> render -> export, as a client actually does it.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L78" + }, { "id": "cellpy_painpoints", "label": "CELLPY_PAINPOINTS.md", @@ -53754,6 +53541,50 @@ "source_file": "skills/README.md", "source_location": "L1" }, + { + "id": "tests_test_api_py_essential", + "label": "essential", + "_origin": "ast", + "community": 209, + "community_name": "essential", + "file_type": "code", + "norm_label": "essential", + "source_file": "", + "source_location": "" + }, + { + "id": "tests_test_api_rationale_74", + "label": "The config panel gets sections + provenance, and never a secrets section.", + "_origin": "ast", + "community": 209, + "community_name": "essential", + "file_type": "rationale", + "norm_label": "the config panel gets sections + provenance, and never a secrets section.", + "source_file": "tests/test_api.py", + "source_location": "L74" + }, + { + "id": "tests_test_api_rationale_773", + "label": "The blast radius of the old behaviour was the host, not the app (#120).", + "_origin": "ast", + "community": 209, + "community_name": "essential", + "file_type": "rationale", + "norm_label": "the blast radius of the old behaviour was the host, not the app (#120).", + "source_file": "tests/test_api.py", + "source_location": "L773" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a_mouse", + "label": ".mouse()", + "_origin": "ast", + "community": 211, + "community_name": "k", + "file_type": "code", + "norm_label": ".mouse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "packaging_zip_installer", "label": "zip_installer.py", @@ -53799,109 +53630,132 @@ "source_location": "L15" }, { - "id": "tests_test_mcp_prototype_rationale_122", - "label": "Only preview returns rows, and it caps whatever it is asked for.", + "id": "tests_test_api_rationale_698", + "label": "Make ``import webview`` fail, as it would on a server-only install.", "_origin": "ast", "community": 213, - "community_name": "drive", + "community_name": "_without_webview", "file_type": "rationale", - "norm_label": "only preview returns rows, and it caps whatever it is asked for.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L122" + "norm_label": "make ``import webview`` fail, as it would on a server-only install.", + "source_file": "tests/test_api.py", + "source_location": "L698" }, { - "id": "tests_test_mcp_prototype_rationale_56", - "label": "Run `steps(call)` against a connected client; return whatever it returns.", + "id": "tests_test_api_rationale_708", + "label": "A server-only install must serve the whole app (#118). pywebview moved to the\u2026", "_origin": "ast", "community": 213, - "community_name": "drive", + "community_name": "_without_webview", "file_type": "rationale", - "norm_label": "run `steps(call)` against a connected client; return whatever it returns.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L56" + "norm_label": "a server-only install must serve the whole app (#118). pywebview moved to the...", + "source_file": "tests/test_api.py", + "source_location": "L708" }, { - "id": "tests_test_mcp_prototype_rationale_78", - "label": "Load -> collect -> render -> export, as a client actually does it.", + "id": "tests_test_api_rationale_727", + "label": "The two endpoints that genuinely need a window fail clearly, not with a 500.", "_origin": "ast", "community": 213, - "community_name": "drive", + "community_name": "_without_webview", "file_type": "rationale", - "norm_label": "load -> collect -> render -> export, as a client actually does it.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L78" + "norm_label": "the two endpoints that genuinely need a window fail clearly, not with a 500.", + "source_file": "tests/test_api.py", + "source_location": "L727" }, { - "id": "issueflows_03_solved_issues_issue37_plan", - "label": "issue37_plan.md", + "id": "tests_test_api_rationale_739", + "label": "Falling back to the browser should say what to install, not raise ImportError.", + "_origin": "ast", + "community": 213, + "community_name": "_without_webview", + "file_type": "rationale", + "norm_label": "falling back to the browser should say what to install, not raise importerror.", + "source_file": "tests/test_api.py", + "source_location": "L739" + }, + { + "id": "issueflows_03_solved_issues_issue184_plan", + "label": "issue184_plan.md", "_origin": "ast", "community": 214, - "community_name": "Plan \u2014 Issue #37", + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", "file_type": "document", "node_kind": "page", - "norm_label": "issue37_plan.md", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "norm_label": "issue184_plan.md", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue37_plan_approach", - "label": "Approach", + "id": "issueflows_03_solved_issues_issue184_plan_approach_front_end_only_app_js_modal_markup", + "label": "Approach (front-end only, `app.js` + modal markup)", "_origin": "ast", "community": 214, - "community_name": "Plan \u2014 Issue #37", + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", "file_type": "document", "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", - "source_location": "L7" + "norm_label": "approach (front-end only, `app.js` + modal markup)", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L21" }, { - "id": "issueflows_03_solved_issues_issue37_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue184_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 214, - "community_name": "Plan \u2014 Issue #37", + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", - "source_location": "L14" + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L37" }, { - "id": "issueflows_03_solved_issues_issue37_plan_goal", + "id": "issueflows_03_solved_issues_issue184_plan_goal", "label": "Goal", "_origin": "ast", "community": 214, - "community_name": "Plan \u2014 Issue #37", + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue37_plan_plan_issue_37", - "label": "Plan \u2014 Issue #37", + "id": "issueflows_03_solved_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "label": "Plan \u2014 #184 update plots when the Manage cells modal closes", "_origin": "ast", "community": 214, - "community_name": "Plan \u2014 Issue #37", + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", "file_type": "document", "node_kind": "heading", - "norm_label": "plan \u2014 issue #37", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "norm_label": "plan \u2014 #184 update plots when the manage cells modal closes", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue37_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue184_plan_test_strategy", "label": "Test strategy", "_origin": "ast", "community": 214, - "community_name": "Plan \u2014 Issue #37", + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", - "source_location": "L20" + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L46" + }, + { + "id": "issueflows_03_solved_issues_issue184_plan_what_happens_today", + "label": "What happens today", + "_origin": "ast", + "community": 214, + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what happens today", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L10" }, { "id": "cursor_skills_iflow_split_skill", @@ -54095,6 +53949,102 @@ "source_file": "", "source_location": "" }, + { + "id": "agents", + "label": "AGENTS.md", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "agents.md", + "source_file": "AGENTS.md", + "source_location": "L1" + }, + { + "id": "agents_cursor_cloud_specific_instructions", + "label": "Cursor Cloud specific instructions", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "cursor cloud specific instructions", + "source_file": "AGENTS.md", + "source_location": "L345" + }, + { + "id": "agents_if_the_project_uses_conda", + "label": "If the project uses conda", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "if the project uses conda", + "source_file": "AGENTS.md", + "source_location": "L18" + }, + { + "id": "agents_if_the_project_uses_uv_issue_flow_s_default", + "label": "If the project uses uv (issue-flow's default)", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "if the project uses uv (issue-flow's default)", + "source_file": "AGENTS.md", + "source_location": "L34" + }, + { + "id": "agents_issue_flow_best_practices", + "label": "Issue-flow best practices", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue-flow best practices", + "source_file": "AGENTS.md", + "source_location": "L2" + }, + { + "id": "agents_issue_tracking_structure", + "label": "Issue tracking structure", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue tracking structure", + "source_file": "AGENTS.md", + "source_location": "L72" + }, + { + "id": "agents_other_toolchains_plain_venv_pip_poetry", + "label": "Other toolchains (plain venv / pip / poetry)", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "other toolchains (plain venv / pip / poetry)", + "source_file": "AGENTS.md", + "source_location": "L66" + }, + { + "id": "agents_running_python", + "label": "Running python", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "running python", + "source_file": "AGENTS.md", + "source_location": "L5" + }, { "id": "issueflows_03_solved_issues_issue3_plan_ux", "label": "UX", @@ -54131,6 +54081,54 @@ "source_file": ".issueflows/04-designs-and-guides/this-project.md", "source_location": "L106" }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs", + "label": "next-phase-deployment-and-docs.md", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "next-phase-deployment-and-docs.md", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L1" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_decisions_taken_up_front", + "label": "Decisions taken up front", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "decisions taken up front", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L16" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_issues", + "label": "Issues", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issues", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L239" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_1_headless_ready", + "label": "Milestone 1 \u2014 Headless-ready", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "milestone 1 \u2014 headless-ready", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L71" + }, { "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_2_two_ways_to_run_it", "label": "Milestone 2 \u2014 Two ways to run it", @@ -54143,6 +54141,54 @@ "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", "source_location": "L96" }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_3_build_your_own_cellpy_app", + "label": "Milestone 3 \u2014 Build your own cellpy app", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "milestone 3 \u2014 build your own cellpy app", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L148" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_next_phase_deployment_routes_and_app_builder_documentation", + "label": "Next phase \u2014 deployment routes and app-builder documentation", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "next phase \u2014 deployment routes and app-builder documentation", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L1" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_risks", + "label": "Risks", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "risks", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L216" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_sequencing", + "label": "Sequencing", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "sequencing", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L229" + }, { "id": "examples_starter_app_rationale_10", "label": "A cellpy app in one file: load cells, plot them, export the numbers. uv run\u2026", @@ -54258,100 +54304,496 @@ "id": "issueflows_04_designs_and_guides_continuous_installer_alternatives_considered", "label": "Alternatives considered", "_origin": "ast", - "community": 217, - "community_name": "Continuous Windows installer from `main`", + "community": 217, + "community_name": "Continuous Windows installer from `main`", + "file_type": "document", + "node_kind": "heading", + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/continuous-installer.md", + "source_location": "L45" + }, + { + "id": "issueflows_04_designs_and_guides_continuous_installer_context", + "label": "Context", + "_origin": "ast", + "community": 217, + "community_name": "Continuous Windows installer from `main`", + "file_type": "document", + "node_kind": "heading", + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/continuous-installer.md", + "source_location": "L6" + }, + { + "id": "issueflows_04_designs_and_guides_continuous_installer_continuous_windows_installer_from_main", + "label": "Continuous Windows installer from `main`", + "_origin": "ast", + "community": 217, + "community_name": "Continuous Windows installer from `main`", + "file_type": "document", + "node_kind": "heading", + "norm_label": "continuous windows installer from `main`", + "source_file": ".issueflows/04-designs-and-guides/continuous-installer.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_continuous_installer_decision", + "label": "Decision", + "_origin": "ast", + "community": 217, + "community_name": "Continuous Windows installer from `main`", + "file_type": "document", + "node_kind": "heading", + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/continuous-installer.md", + "source_location": "L13" + }, + { + "id": "issueflows_03_solved_issues_issue168_original", + "label": "issue168_original.md", + "_origin": "ast", + "community": 218, + "community_name": "Issue #168: Create installer using CI", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue168_original.md", + "source_file": ".issueflows/03-solved-issues/issue168_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue168_original_issue_168_create_installer_using_ci", + "label": "Issue #168: Create installer using CI", + "_origin": "ast", + "community": 218, + "community_name": "Issue #168: Create installer using CI", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #168: create installer using ci", + "source_file": ".issueflows/03-solved-issues/issue168_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue168_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 218, + "community_name": "Issue #168: Create installer using CI", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue168_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_2_core_core_collect_py", + "label": "2. Core \u2014 `core/collect.py`", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "2. core \u2014 `core/collect.py`", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L113" + }, + { + "id": "issueflows_03_solved_issues_issue1_original", + "label": "issue1_original.md", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue1_original.md", + "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue1_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "source_location": "L22" + }, + { + "id": "issueflows_03_solved_issues_issue1_original_issue_1_fix_plotly_summary_legend_when_cell_names_are_very_long", + "label": "Issue #1: Fix Plotly summary legend when cell names are very long", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #1: fix plotly summary legend when cell names are very long", + "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue1_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue1_original_out_of_scope", + "label": "Out of scope", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "source_location": "L30" + }, + { + "id": "issueflows_03_solved_issues_issue1_original_problem_context", + "label": "Problem / context", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue1_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue1_plan", + "label": "issue1_plan.md", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue1_plan.md", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue1_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L37" + }, + { + "id": "issueflows_03_solved_issues_issue1_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L9" + }, + { + "id": "issueflows_03_solved_issues_issue1_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L85" + }, + { + "id": "issueflows_03_solved_issues_issue1_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue1_plan_issue_1_plan_fix_plotly_summary_legend_when_cell_names_are_very_long", + "label": "Issue #1 plan: Fix Plotly summary legend when cell names are very long", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #1 plan: fix plotly summary legend when cell names are very long", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue1_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L102" + }, + { + "id": "issueflows_03_solved_issues_issue1_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L19" + }, + { + "id": "issueflows_03_solved_issues_issue1_status", + "label": "issue1_status.md", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue1_status.md", + "source_file": ".issueflows/03-solved-issues/issue1_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue1_status_issue_1_status", + "label": "Issue #1 status", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #1 status", + "source_file": ".issueflows/03-solved-issues/issue1_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue1_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue1_status.md", + "source_location": "L21" + }, + { + "id": "issueflows_03_solved_issues_issue1_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue1_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue32_plan", + "label": "issue32_plan.md", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue32_plan.md", + "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue32_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_location": "L52" + }, + { + "id": "issueflows_03_solved_issues_issue32_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_location": "L11" + }, + { + "id": "issueflows_03_solved_issues_issue32_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_location": "L93" + }, + { + "id": "issueflows_03_solved_issues_issue32_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue32_plan_issue_32_plan_plot_appearance_theme_color_scheme", + "label": "Issue #32 \u2014 Plan: plot appearance (theme + color scheme)", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/continuous-installer.md", - "source_location": "L45" + "norm_label": "issue #32 \u2014 plan: plot appearance (theme + color scheme)", + "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_continuous_installer_context", - "label": "Context", + "id": "issueflows_03_solved_issues_issue32_plan_open_questions", + "label": "Open questions", "_origin": "ast", - "community": 217, - "community_name": "Continuous Windows installer from `main`", + "community": 221, + "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/continuous-installer.md", - "source_location": "L6" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_location": "L121" }, { - "id": "issueflows_04_designs_and_guides_continuous_installer_continuous_windows_installer_from_main", - "label": "Continuous Windows installer from `main`", + "id": "issueflows_03_solved_issues_issue32_plan_prior_art", + "label": "Prior art", "_origin": "ast", - "community": 217, - "community_name": "Continuous Windows installer from `main`", + "community": 221, + "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "continuous windows installer from `main`", - "source_file": ".issueflows/04-designs-and-guides/continuous-installer.md", - "source_location": "L1" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_location": "L24" }, { - "id": "issueflows_04_designs_and_guides_continuous_installer_decision", - "label": "Decision", + "id": "issueflows_03_solved_issues_issue32_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", - "community": 217, - "community_name": "Continuous Windows installer from `main`", + "community": 221, + "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/continuous-installer.md", - "source_location": "L13" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_location": "L111" }, { - "id": "issueflows_03_solved_issues_issue168_original", - "label": "issue168_original.md", + "id": "issueflows_03_solved_issues_issue32_status", + "label": "issue32_status.md", "_origin": "ast", - "community": 218, - "community_name": "Issue #168: Create installer using CI", + "community": 221, + "community_name": "_restyle", "file_type": "document", "node_kind": "page", - "norm_label": "issue168_original.md", - "source_file": ".issueflows/03-solved-issues/issue168_original.md", + "norm_label": "issue32_status.md", + "source_file": ".issueflows/03-solved-issues/issue32_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue168_original_issue_168_create_installer_using_ci", - "label": "Issue #168: Create installer using CI", + "id": "issueflows_03_solved_issues_issue32_status_issue_32_status", + "label": "Issue #32 \u2014 Status", "_origin": "ast", - "community": 218, - "community_name": "Issue #168: Create installer using CI", + "community": 221, + "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #168: create installer using ci", - "source_file": ".issueflows/03-solved-issues/issue168_original.md", + "norm_label": "issue #32 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue32_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue168_original_original_issue_text", - "label": "Original issue text", + "id": "issueflows_03_solved_issues_issue32_status_remaining_work", + "label": "Remaining work", "_origin": "ast", - "community": 218, - "community_name": "Issue #168: Create installer using CI", + "community": 221, + "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue168_original.md", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue32_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue32_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue32_status.md", "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue1_original", - "label": "issue1_original.md", + "id": "issueflows_03_solved_issues_issue37_original", + "label": "issue37_original.md", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "page", - "norm_label": "issue1_original.md", - "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "norm_label": "issue37_original.md", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue1_original_acceptance_criteria", + "id": "issueflows_03_solved_issues_issue37_original_acceptance_criteria", "label": "Acceptance criteria", "_origin": "ast", "community": 221, @@ -54359,23 +54801,23 @@ "file_type": "document", "node_kind": "heading", "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue1_original.md", - "source_location": "L22" + "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "source_location": "L20" }, { - "id": "issueflows_03_solved_issues_issue1_original_issue_1_fix_plotly_summary_legend_when_cell_names_are_very_long", - "label": "Issue #1: Fix Plotly summary legend when cell names are very long", + "id": "issueflows_03_solved_issues_issue37_original_issue_37_spread_bands_too_opaque_for_safe_muted_color_schemes", + "label": "Issue #37: Spread bands too opaque for safe/muted color schemes", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #1: fix plotly summary legend when cell names are very long", - "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "norm_label": "issue #37: spread bands too opaque for safe/muted color schemes", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue1_original_original_issue_text", + "id": "issueflows_03_solved_issues_issue37_original_original_issue_text", "label": "Original issue text", "_origin": "ast", "community": 221, @@ -54383,11 +54825,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue1_original_out_of_scope", + "id": "issueflows_03_solved_issues_issue37_original_out_of_scope", "label": "Out of scope", "_origin": "ast", "community": 221, @@ -54395,11 +54837,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue1_original.md", - "source_location": "L30" + "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "source_location": "L27" }, { - "id": "issueflows_03_solved_issues_issue1_original_problem_context", + "id": "issueflows_03_solved_issues_issue37_original_problem_context", "label": "Problem / context", "_origin": "ast", "community": 221, @@ -54407,11 +54849,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue1_original.md", + "source_file": ".issueflows/03-solved-issues/issue37_original.md", "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue1_original_spec", + "id": "issueflows_03_solved_issues_issue37_original_spec", "label": "Spec", "_origin": "ast", "community": 221, @@ -54419,23 +54861,23 @@ "file_type": "document", "node_kind": "heading", "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue1_original.md", - "source_location": "L15" + "source_file": ".issueflows/03-solved-issues/issue37_original.md", + "source_location": "L13" }, { - "id": "issueflows_03_solved_issues_issue1_plan", - "label": "issue1_plan.md", + "id": "issueflows_03_solved_issues_issue37_plan", + "label": "issue37_plan.md", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "page", - "norm_label": "issue1_plan.md", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "norm_label": "issue37_plan.md", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue1_plan_approach", + "id": "issueflows_03_solved_issues_issue37_plan_approach", "label": "Approach", "_origin": "ast", "community": 221, @@ -54443,23 +54885,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", - "source_location": "L37" - }, - { - "id": "issueflows_03_solved_issues_issue1_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", - "source_location": "L9" + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue1_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue37_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 221, @@ -54467,11 +54897,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", - "source_location": "L85" + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_location": "L14" }, { - "id": "issueflows_03_solved_issues_issue1_plan_goal", + "id": "issueflows_03_solved_issues_issue37_plan_goal", "label": "Goal", "_origin": "ast", "community": 221, @@ -54479,107 +54909,83 @@ "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue1_plan_issue_1_plan_fix_plotly_summary_legend_when_cell_names_are_very_long", - "label": "Issue #1 plan: Fix Plotly summary legend when cell names are very long", + "id": "issueflows_03_solved_issues_issue37_plan_plan_issue_37", + "label": "Plan \u2014 Issue #37", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #1 plan: fix plotly summary legend when cell names are very long", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "norm_label": "plan \u2014 issue #37", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue1_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", - "source_location": "L102" - }, - { - "id": "issueflows_03_solved_issues_issue1_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue37_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", - "source_location": "L19" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_location": "L20" }, { - "id": "issueflows_03_solved_issues_issue1_status", - "label": "issue1_status.md", + "id": "issueflows_03_solved_issues_issue37_status", + "label": "issue37_status.md", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "page", - "norm_label": "issue1_status.md", - "source_file": ".issueflows/03-solved-issues/issue1_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue1_status_issue_1_status", - "label": "Issue #1 status", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #1 status", - "source_file": ".issueflows/03-solved-issues/issue1_status.md", + "norm_label": "issue37_status.md", + "source_file": ".issueflows/03-solved-issues/issue37_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue1_status_remaining_work", - "label": "Remaining work", + "id": "issueflows_03_solved_issues_issue37_status_progress", + "label": "Progress", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue1_status.md", - "source_location": "L21" + "norm_label": "progress", + "source_file": ".issueflows/03-solved-issues/issue37_status.md", + "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue1_status_what_s_done", - "label": "What's done", + "id": "issueflows_03_solved_issues_issue37_status_status_issue_37", + "label": "Status \u2014 Issue #37", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue1_status.md", - "source_location": "L5" + "norm_label": "status \u2014 issue #37", + "source_file": ".issueflows/03-solved-issues/issue37_status.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue32_original", - "label": "issue32_original.md", + "id": "issueflows_03_solved_issues_issue52_original", + "label": "issue52_original.md", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "page", - "norm_label": "issue32_original.md", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "norm_label": "issue52_original.md", + "source_file": ".issueflows/03-solved-issues/issue52_original.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue32_original_acceptance_criteria", + "id": "issueflows_03_solved_issues_issue52_original_acceptance_criteria", "label": "Acceptance criteria", "_origin": "ast", "community": 221, @@ -54587,35 +54993,23 @@ "file_type": "document", "node_kind": "heading", "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L19" - }, - { - "id": "issueflows_03_solved_issues_issue32_original_comments_curated_summary", - "label": "Comments (curated summary)", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "comments (curated summary)", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L33" + "source_file": ".issueflows/03-solved-issues/issue52_original.md", + "source_location": "L28" }, { - "id": "issueflows_03_solved_issues_issue32_original_issue_32_plot_appearance_options_color_scheme_and_figure_theme", - "label": "Issue #32: Plot appearance options: color scheme and figure theme", + "id": "issueflows_03_solved_issues_issue52_original_issue_52_deep_dive_bump_cellpy_post_release_and_delegate_more_app_glue_to_cellpy", + "label": "Issue #52: Deep-dive: bump cellpy post-release and delegate more app glue to cellpy", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #32: plot appearance options: color scheme and figure theme", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "norm_label": "issue #52: deep-dive: bump cellpy post-release and delegate more app glue to cellpy", + "source_file": ".issueflows/03-solved-issues/issue52_original.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue32_original_original_issue_text", + "id": "issueflows_03_solved_issues_issue52_original_original_issue_text", "label": "Original issue text", "_origin": "ast", "community": 221, @@ -54623,11 +55017,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_file": ".issueflows/03-solved-issues/issue52_original.md", "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue32_original_out_of_scope", + "id": "issueflows_03_solved_issues_issue52_original_out_of_scope", "label": "Out of scope", "_origin": "ast", "community": 221, @@ -54635,11 +55029,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L27" + "source_file": ".issueflows/03-solved-issues/issue52_original.md", + "source_location": "L36" }, { - "id": "issueflows_03_solved_issues_issue32_original_problem_context", + "id": "issueflows_03_solved_issues_issue52_original_problem_context", "label": "Problem / context", "_origin": "ast", "community": 221, @@ -54647,11 +55041,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_file": ".issueflows/03-solved-issues/issue52_original.md", "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue32_original_spec", + "id": "issueflows_03_solved_issues_issue52_original_spec", "label": "Spec", "_origin": "ast", "community": 221, @@ -54659,23 +55053,23 @@ "file_type": "document", "node_kind": "heading", "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L11" + "source_file": ".issueflows/03-solved-issues/issue52_original.md", + "source_location": "L15" }, { - "id": "issueflows_03_solved_issues_issue32_plan", - "label": "issue32_plan.md", + "id": "issueflows_03_solved_issues_issue52_plan", + "label": "issue52_plan.md", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "page", - "norm_label": "issue32_plan.md", - "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "norm_label": "issue52_plan.md", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue32_plan_approach", + "id": "issueflows_03_solved_issues_issue52_plan_approach", "label": "Approach", "_origin": "ast", "community": 221, @@ -54683,11 +55077,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue32_plan.md", - "source_location": "L52" + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L39" }, { - "id": "issueflows_03_solved_issues_issue32_plan_constraints", + "id": "issueflows_03_solved_issues_issue52_plan_constraints", "label": "Constraints", "_origin": "ast", "community": 221, @@ -54695,11 +55089,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue32_plan.md", - "source_location": "L11" + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L9" }, { - "id": "issueflows_03_solved_issues_issue32_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue52_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 221, @@ -54707,11 +55101,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue32_plan.md", - "source_location": "L93" + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L95" }, { - "id": "issueflows_03_solved_issues_issue32_plan_goal", + "id": "issueflows_03_solved_issues_issue52_plan_goal", "label": "Goal", "_origin": "ast", "community": 221, @@ -54719,23 +55113,23 @@ "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue32_plan_issue_32_plan_plot_appearance_theme_color_scheme", - "label": "Issue #32 \u2014 Plan: plot appearance (theme + color scheme)", + "id": "issueflows_03_solved_issues_issue52_plan_issue_52_plan_bump_cellpy_post4_delegate_app_glue", + "label": "Issue #52 \u2014 Plan: bump cellpy post4 + delegate app glue", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #32 \u2014 plan: plot appearance (theme + color scheme)", - "source_file": ".issueflows/03-solved-issues/issue32_plan.md", + "norm_label": "issue #52 \u2014 plan: bump cellpy post4 + delegate app glue", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue32_plan_open_questions", + "id": "issueflows_03_solved_issues_issue52_plan_open_questions", "label": "Open questions", "_origin": "ast", "community": 221, @@ -54743,116 +55137,116 @@ "file_type": "document", "node_kind": "heading", "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue32_plan.md", - "source_location": "L121" + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L120" }, { - "id": "issueflows_03_solved_issues_issue32_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue52_plan_phase_b_written_inventory", + "label": "Phase B \u2014 written inventory", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue32_plan.md", - "source_location": "L24" + "norm_label": "phase b \u2014 written inventory", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L51" }, { - "id": "issueflows_03_solved_issues_issue32_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_03_solved_issues_issue52_plan_phase_c_implement_delegate_now", + "label": "Phase C \u2014 implement \u201cdelegate now\u201d", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue32_plan.md", - "source_location": "L111" + "norm_label": "phase c \u2014 implement \u201cdelegate now\u201d", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L69" }, { - "id": "issueflows_03_solved_issues_issue52_original", - "label": "issue52_original.md", + "id": "issueflows_03_solved_issues_issue52_plan_phase_d_docs", + "label": "Phase D \u2014 docs", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", - "node_kind": "page", - "norm_label": "issue52_original.md", - "source_file": ".issueflows/03-solved-issues/issue52_original.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "phase d \u2014 docs", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L89" }, { - "id": "issueflows_03_solved_issues_issue52_original_acceptance_criteria", - "label": "Acceptance criteria", + "id": "issueflows_03_solved_issues_issue52_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue52_original.md", - "source_location": "L28" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L21" }, { - "id": "issueflows_03_solved_issues_issue52_original_issue_52_deep_dive_bump_cellpy_post_release_and_delegate_more_app_glue_to_cellpy", - "label": "Issue #52: Deep-dive: bump cellpy post-release and delegate more app glue to cellpy", + "id": "issueflows_03_solved_issues_issue52_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #52: deep-dive: bump cellpy post-release and delegate more app glue to cellpy", - "source_file": ".issueflows/03-solved-issues/issue52_original.md", - "source_location": "L1" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L112" }, { - "id": "issueflows_03_solved_issues_issue52_original_original_issue_text", - "label": "Original issue text", + "id": "issueflows_03_solved_issues_issue52_status", + "label": "issue52_status.md", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue52_original.md", - "source_location": "L5" + "node_kind": "page", + "norm_label": "issue52_status.md", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue52_original_out_of_scope", - "label": "Out of scope", + "id": "issueflows_03_solved_issues_issue52_status_issue_52_status", + "label": "Issue #52 \u2014 Status", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue52_original.md", - "source_location": "L36" + "norm_label": "issue #52 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue52_original_problem_context", - "label": "Problem / context", + "id": "issueflows_03_solved_issues_issue52_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue52_original.md", - "source_location": "L7" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L15" }, { - "id": "issueflows_03_solved_issues_issue52_original_spec", - "label": "Spec", + "id": "issueflows_03_solved_issues_issue52_status_what_s_done", + "label": "What's done", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue52_original.md", - "source_location": "L15" + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L5" }, { "id": "issueflows_03_solved_issues_issue62_plan_constraints", @@ -54975,7 +55369,29 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1146", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_221", + "label": "Describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "rationale", + "norm_label": "describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L221" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_1154", + "label": "Keep the full identity discoverable when display ``name`` is truncated. Plotly\u2026", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "rationale", + "norm_label": "keep the full identity discoverable when display ``name`` is truncated. plotly...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1154" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_1170", "label": "Truncate long legend-facing labels; return longest *displayed* length. Journal\u2026", "_origin": "ast", "community": 221, @@ -54983,10 +55399,10 @@ "file_type": "rationale", "norm_label": "truncate long legend-facing labels; return longest *displayed* length. journal...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1146" + "source_location": "L1170" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1174", + "id": "src_cellpy_simple_gui_core_collect_rationale_1198", "label": "True when PX facet annotations sit on the right edge (collide with legend).", "_origin": "ast", "community": 221, @@ -54994,10 +55410,43 @@ "file_type": "rationale", "norm_label": "true when px facet annotations sit on the right edge (collide with legend).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1174" + "source_location": "L1198" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_1210", + "label": "Best-effort cleanup if a ``variable=\u2026`` strip slipped past cellpy. cellpy\u2026", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "rationale", + "norm_label": "best-effort cleanup if a ``variable=...`` strip slipped past cellpy. cellpy...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1210" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_1357", + "label": "Turn ``#RRGGBB`` into ``rgba(r,g,b,a)`` for translucent Plotly fills.", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "rationale", + "norm_label": "turn ``#rrggbb`` into ``rgba(r,g,b,a)`` for translucent plotly fills.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1357" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_1370", + "label": "Cycle a discrete colorway across legend series (name / legendgroup).", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "rationale", + "norm_label": "cycle a discrete colorway across legend series (name / legendgroup).", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1370" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1377", + "id": "src_cellpy_simple_gui_core_collect_rationale_1401", "label": "Post-plot polish: legend truncation, colorway, margins, soft axes.\u2026", "_origin": "ast", "community": 221, @@ -55005,7 +55454,7 @@ "file_type": "rationale", "norm_label": "post-plot polish: legend truncation, colorway, margins, soft axes....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1377" + "source_location": "L1401" }, { "id": "tests_test_core_rationale_593", @@ -55198,6 +55647,90 @@ "source_file": ".issueflows/04-designs-and-guides/this-project.md", "source_location": "L3" }, + { + "id": "issueflows_03_solved_issues_issue38_original", + "label": "issue38_original.md", + "_origin": "ast", + "community": 223, + "community_name": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue38_original.md", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 223, + "community_name": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L19" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_issue_38_use_cellpy_label_builders_for_summary_cycle_axis_titles", + "label": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "_origin": "ast", + "community": 223, + "community_name": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #38: use cellpy label builders for summary/cycle axis titles", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 223, + "community_name": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_out_of_scope", + "label": "Out of scope", + "_origin": "ast", + "community": 223, + "community_name": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L26" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_problem_context", + "label": "Problem / context", + "_origin": "ast", + "community": 223, + "community_name": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 223, + "community_name": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L11" + }, { "id": "issueflows_03_solved_issues_issue177_plan", "label": "issue177_plan.md", @@ -55342,12 +55875,60 @@ "source_file": ".issueflows/03-solved-issues/issue177_plan.md", "source_location": "L75" }, + { + "id": "issueflows_03_solved_issues_issue54_status", + "label": "issue54_status.md", + "_origin": "ast", + "community": 225, + "community_name": "collect", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue54_status.md", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue54_status_issue_54_status", + "label": "Issue #54 status", + "_origin": "ast", + "community": 225, + "community_name": "collect", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #54 status", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue54_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 225, + "community_name": "collect", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue54_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 225, + "community_name": "collect", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L5" + }, { "id": "issueflows_03_solved_issues_issue72_original", "label": "issue72_original.md", "_origin": "ast", "community": 225, - "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "community_name": "collect", "file_type": "document", "node_kind": "page", "norm_label": "issue72_original.md", @@ -55359,7 +55940,7 @@ "label": "Acceptance criteria", "_origin": "ast", "community": 225, - "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "community_name": "collect", "file_type": "document", "node_kind": "heading", "norm_label": "acceptance criteria", @@ -55371,7 +55952,7 @@ "label": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", "_origin": "ast", "community": 225, - "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "community_name": "collect", "file_type": "document", "node_kind": "heading", "norm_label": "issue #72: cycles tab: mode change does not update x-axis capacity units", @@ -55383,7 +55964,7 @@ "label": "Original issue text", "_origin": "ast", "community": 225, - "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "community_name": "collect", "file_type": "document", "node_kind": "heading", "norm_label": "original issue text", @@ -55395,7 +55976,7 @@ "label": "Out of scope", "_origin": "ast", "community": 225, - "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "community_name": "collect", "file_type": "document", "node_kind": "heading", "norm_label": "out of scope", @@ -55407,7 +55988,7 @@ "label": "Problem / context", "_origin": "ast", "community": 225, - "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "community_name": "collect", "file_type": "document", "node_kind": "heading", "norm_label": "problem / context", @@ -55419,19 +56000,246 @@ "label": "Spec", "_origin": "ast", "community": 225, - "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "community_name": "collect", "file_type": "document", "node_kind": "heading", "norm_label": "spec", "source_file": ".issueflows/03-solved-issues/issue72_original.md", "source_location": "L13" }, + { + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_2_target_architecture", + "label": "2. Target architecture", + "_origin": "ast", + "community": 225, + "community_name": "collect", + "file_type": "document", + "node_kind": "heading", + "norm_label": "2. target architecture", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L36" + }, + { + "id": "readme_how_it_is_built", + "label": "How it is built", + "_origin": "ast", + "community": 225, + "community_name": "collect", + "file_type": "document", + "node_kind": "heading", + "norm_label": "how it is built", + "source_file": "README.md", + "source_location": "L424" + }, + { + "id": "examples_mcp_server_rationale_306", + "label": "Build a collection. `kind` is one of: summary, cycles, ica, dva. Returns a\u2026", + "_origin": "ast", + "community": 225, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "build a collection. `kind` is one of: summary, cycles, ica, dva. returns a...", + "source_file": "examples/mcp/server.py", + "source_location": "L306" + }, + { + "id": "cellpy_painpoints_21_no_selective_summary_rebuild_after_meta_edits", + "label": "21. \ud83d\udfe0 No selective summary rebuild after meta edits", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "21. \ud83d\udfe0 no selective summary rebuild after meta edits", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L529" + }, + { + "id": "issueflows_03_solved_issues_issue3_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue3_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan", + "label": "issue69_plan.md", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue69_plan.md", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L26" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L36" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_issue_69_plan_edit_cell_metadata", + "label": "Issue #69 \u2014 Plan: edit cell metadata", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #69 \u2014 plan: edit cell metadata", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L59" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L52" + }, + { + "id": "issueflows_03_solved_issues_issue69_status", + "label": "issue69_status.md", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue69_status.md", + "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue69_status_issue_69_status", + "label": "Issue #69 \u2014 Status", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #69 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue69_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "source_location": "L16" + }, + { + "id": "issueflows_03_solved_issues_issue69_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "source_location": "L5" + }, { "id": "issueflows_03_solved_issues_issue86_original", "label": "issue86_original.md", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "page", "norm_label": "issue86_original.md", @@ -55443,7 +56251,7 @@ "label": "Acceptance criteria", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "heading", "norm_label": "acceptance criteria", @@ -55455,7 +56263,7 @@ "label": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "heading", "norm_label": "issue #86: manage cells: edit nominal-capacity basis (gravimetric / areal / absolute)", @@ -55467,7 +56275,7 @@ "label": "Original issue text", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "heading", "norm_label": "original issue text", @@ -55479,7 +56287,7 @@ "label": "Out of scope", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "heading", "norm_label": "out of scope", @@ -55491,7 +56299,7 @@ "label": "Problem / context", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "heading", "norm_label": "problem / context", @@ -55499,26 +56307,223 @@ "source_location": "L7" }, { - "id": "packaging_smoke_test_py_path", - "label": "Path", + "id": "issueflows_03_solved_issues_issue86_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue86_original.md", + "source_location": "L11" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan", + "label": "issue86_plan.md", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue86_plan.md", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L24" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L35" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_issue_86_plan_edit_nominal_capacity_basis", + "label": "Issue #86 \u2014 Plan: edit nominal-capacity basis", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #86 \u2014 plan: edit nominal-capacity basis", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L56" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L49" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_494", + "label": "Return a plain-dict projection of a cell's metadata.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "return a plain-dict projection of a cell's metadata.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L494" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_793", + "label": "Assign physical meta knobs and refresh the summary once. Returns the names of\u2026", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "assign physical meta knobs and refresh the summary once. returns the names of...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L793" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_822", + "label": "Update the active-material mass and refresh the summary.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "update the active-material mass and refresh the summary.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L822" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_827", + "label": "Update active electrode area (cm\u00b2) and refresh the summary.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "update active electrode area (cm2) and refresh the summary.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L827" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_842", + "label": "Update cycle mode (anode/cathode/full_cell) and refresh the summary.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "update cycle mode (anode/cathode/full_cell) and refresh the summary.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L842" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_328", + "label": "A single editable-grid change.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "a single editable-grid change.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L328" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_68", + "label": "Everything the UI needs to know about one loaded cell. The heavy ``CellpyCell``\u2026", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "everything the ui needs to know about one loaded cell. the heavy ``cellpycell``...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L68" + }, + { + "id": "tests_test_api_rationale_242", + "label": "Groups are named through their own endpoint; state carries them (#187).", "_origin": "ast", "community": 227, - "community_name": "LaunchedApp", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" + "community_name": "_wait_for_job", + "file_type": "rationale", + "norm_label": "groups are named through their own endpoint; state carries them (#187).", + "source_file": "tests/test_api.py", + "source_location": "L242" }, { - "id": "packaging_smoke_test_rationale_141", - "label": "Launches a binary and picks its URL and token out of the startup log.", + "id": "tests_test_api_rationale_789", + "label": "Loading is a job, so the refusal comes back as an error, not a status.", "_origin": "ast", "community": 227, - "community_name": "LaunchedApp", + "community_name": "_wait_for_job", "file_type": "rationale", - "norm_label": "launches a binary and picks its url and token out of the startup log.", - "source_file": "packaging/smoke_test.py", - "source_location": "L141" + "norm_label": "loading is a job, so the refusal comes back as an error, not a status.", + "source_file": "tests/test_api.py", + "source_location": "L789" }, { "id": "cursor_skills_iflow_init_skill", @@ -55915,7 +56920,7 @@ "label": "BaseSettings", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "basesettings", "source_file": "", @@ -55926,7 +56931,7 @@ "label": "field_validator", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "field_validator", "source_file": "", @@ -55937,29 +56942,7 @@ "label": "Path", "_origin": "ast", "community": 23, - "community_name": "Library", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_core_library_py_any", - "label": "Any", - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "code", - "norm_label": "any", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_core_library_py_path", - "label": "Path", - "_origin": "ast", - "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "path", "source_file": "", @@ -55970,7 +56953,7 @@ "label": "test_projects.py", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "test_projects.py", "source_file": "tests/test_projects.py", @@ -55981,309 +56964,221 @@ "label": "essential", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "code", "norm_label": "essential", "source_file": "", "source_location": "" }, { - "id": "cellpy_painpoints_1_no_public_collection_from_in_memory_cells", - "label": "1. \ud83d\udd34 No public \"collection from in-memory cells\"", + "id": "issueflows_05_epics_next_phase_deployment_and_docs_what_the_current_architecture_already_decides_for_us", + "label": "What the current architecture already decides for us", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "document", "node_kind": "heading", - "norm_label": "1. \ud83d\udd34 no public \"collection from in-memory cells\"", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L126" + "norm_label": "what the current architecture already decides for us", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L29" }, { "id": "src_cellpy_simple_gui_config_rationale_61", "label": "``~`` and relative paths are normal in env vars; resolve them once. Resolving\u2026", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "``~`` and relative paths are normal in env vars; resolve them once. resolving...", "source_file": "src/cellpy_simple_gui/config.py", "source_location": "L61" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_104", - "label": "Thread-safe ordered collection of :class:`CellRecord`.", - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "thread-safe ordered collection of :class:`cellrecord`.", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L104" - }, - { - "id": "src_cellpy_simple_gui_core_library_rationale_148", - "label": "Add a cell while preserving saved organisational metadata. Physical quantities\u2026", - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "add a cell while preserving saved organisational metadata. physical quantities...", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L148" - }, - { - "id": "src_cellpy_simple_gui_core_library_rationale_230", - "label": "Record that ``rid``'s data was just written to ``path``.", - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "record that ``rid``'s data was just written to ``path``.", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L230" - }, - { - "id": "src_cellpy_simple_gui_core_library_rationale_237", - "label": "The on-disk copy of ``rid``'s data, when it provably still matches. Three\u2026", + "id": "tests_test_projects_rationale_1", + "label": "Tests for project persistence (core round-trip + API).", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", - "norm_label": "the on-disk copy of ``rid``'s data, when it provably still matches. three...", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L237" + "norm_label": "tests for project persistence (core round-trip + api).", + "source_file": "tests/test_projects.py", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_31", - "label": "``(size, mtime_ns)`` for ``path``, or ``None`` if it cannot be read. Cheap\u2026", + "id": "tests_test_projects_rationale_104", + "label": "Interrupted save must not wipe or corrupt the previous project on disk.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", - "norm_label": "``(size, mtime_ns)`` for ``path``, or ``none`` if it cannot be read. cheap...", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L31" + "norm_label": "interrupted save must not wipe or corrupt the previous project on disk.", + "source_file": "tests/test_projects.py", + "source_location": "L104" }, { - "id": "tests_test_projects_rationale_1", - "label": "Tests for project persistence (core round-trip + API).", + "id": "tests_test_projects_rationale_136", + "label": "Wrap adapter.save_cell so a test can see how often it actually ran.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", - "norm_label": "tests for project persistence (core round-trip + api).", + "norm_label": "wrap adapter.save_cell so a test can see how often it actually ran.", "source_file": "tests/test_projects.py", - "source_location": "L1" + "source_location": "L136" }, { - "id": "tests_test_projects_rationale_111", + "id": "tests_test_projects_rationale_150", "label": "A label-only change must not re-serialise the cell data (#29).", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "a label-only change must not re-serialise the cell data (#29).", "source_file": "tests/test_projects.py", - "source_location": "L111" + "source_location": "L150" }, { - "id": "tests_test_projects_rationale_139", + "id": "tests_test_projects_rationale_178", "label": "Editing mass moves the cell, so its file must be rewritten (#29).", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "editing mass moves the cell, so its file must be rewritten (#29).", "source_file": "tests/test_projects.py", - "source_location": "L139" + "source_location": "L178" }, { - "id": "tests_test_projects_rationale_155", + "id": "tests_test_projects_rationale_194", "label": "Provably untouched means the file too \u2014 not just the in-memory cell.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "provably untouched means the file too \u2014 not just the in-memory cell.", "source_file": "tests/test_projects.py", - "source_location": "L155" - }, - { - "id": "tests_test_projects_rationale_193", - "label": "Save-As must produce a complete project, reuse or not (#29).", - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "save-as must produce a complete project, reuse or not (#29).", - "source_file": "tests/test_projects.py", - "source_location": "L193" + "source_location": "L194" }, { - "id": "tests_test_projects_rationale_211", + "id": "tests_test_projects_rationale_250", "label": "The end-to-end guarantee: a reused save is still a loadable project.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "the end-to-end guarantee: a reused save is still a loadable project.", "source_file": "tests/test_projects.py", - "source_location": "L211" - }, - { - "id": "tests_test_projects_rationale_230", - "label": "The flag itself: clean on open, dirty the moment the cell moves.", - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "the flag itself: clean on open, dirty the moment the cell moves.", - "source_file": "tests/test_projects.py", - "source_location": "L230" - }, - { - "id": "tests_test_projects_rationale_278", - "label": "#75: open works for absolute folders and project.json file paths.", - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "#75: open works for absolute folders and project.json file paths.", - "source_file": "tests/test_projects.py", - "source_location": "L278" + "source_location": "L250" }, { - "id": "tests_test_projects_rationale_383", + "id": "tests_test_projects_rationale_422", "label": "A project's cellpy.toml wins while open, and is dropped on close.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "a project's cellpy.toml wins while open, and is dropped on close.", "source_file": "tests/test_projects.py", - "source_location": "L383" + "source_location": "L422" }, { - "id": "tests_test_projects_rationale_402", + "id": "tests_test_projects_rationale_441", "label": "Settings must not leak from one project into the next.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "settings must not leak from one project into the next.", "source_file": "tests/test_projects.py", - "source_location": "L402" + "source_location": "L441" }, { - "id": "tests_test_projects_rationale_422", + "id": "tests_test_projects_rationale_461", "label": "An unparseable cellpy.toml must not stop the project from opening.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "an unparseable cellpy.toml must not stop the project from opening.", "source_file": "tests/test_projects.py", - "source_location": "L422" + "source_location": "L461" }, { - "id": "tests_test_projects_rationale_451", + "id": "tests_test_projects_rationale_490", "label": "Pinning captures interpretation settings \u2014 never paths or credentials.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "pinning captures interpretation settings \u2014 never paths or credentials.", "source_file": "tests/test_projects.py", - "source_location": "L451" + "source_location": "L490" }, { - "id": "tests_test_projects_rationale_477", + "id": "tests_test_projects_rationale_516", "label": "What is pinned is what a later open reproduces.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "what is pinned is what a later open reproduces.", "source_file": "tests/test_projects.py", - "source_location": "L477" + "source_location": "L516" }, { - "id": "tests_test_projects_rationale_498", + "id": "tests_test_projects_rationale_537", "label": "A legacy .conf outranked by cellpy.toml is surfaced, not hidden (cellpy #851).", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "a legacy .conf outranked by cellpy.toml is surfaced, not hidden (cellpy #851).", "source_file": "tests/test_projects.py", - "source_location": "L498" + "source_location": "L537" }, { - "id": "tests_test_projects_rationale_535", + "id": "tests_test_projects_rationale_574", "label": "A container points this at a volume (#119).", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "a container points this at a volume (#119).", "source_file": "tests/test_projects.py", - "source_location": "L535" + "source_location": "L574" }, { - "id": "tests_test_projects_rationale_544", + "id": "tests_test_projects_rationale_583", "label": "Env vars carry ~ and relative paths; downstream wants one canonical root.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "env vars carry ~ and relative paths; downstream wants one canonical root.", "source_file": "tests/test_projects.py", - "source_location": "L544" + "source_location": "L583" }, { - "id": "tests_test_projects_rationale_557", + "id": "tests_test_projects_rationale_596", "label": "Settings must not touch the filesystem \u2014 writers create what they need.", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "settings must not touch the filesystem \u2014 writers create what they need.", "source_file": "tests/test_projects.py", - "source_location": "L557" + "source_location": "L596" }, { - "id": "tests_test_projects_rationale_568", + "id": "tests_test_projects_rationale_607", "label": "End to end: point CSG_DATA_DIR at a volume and a save lands there (#119).\u2026", "_origin": "ast", "community": 23, - "community_name": "Library", + "community_name": "test_projects.py", "file_type": "rationale", "norm_label": "end to end: point csg_data_dir at a volume and a save lands there (#119)....", "source_file": "tests/test_projects.py", - "source_location": "L568" - }, - { - "id": "tests_test_projects_rationale_65", - "label": "Interrupted save must not wipe or corrupt the previous project on disk.", - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "interrupted save must not wipe or corrupt the previous project on disk.", - "source_file": "tests/test_projects.py", - "source_location": "L65" - }, - { - "id": "tests_test_projects_rationale_97", - "label": "Wrap adapter.save_cell so a test can see how often it actually ran.", - "_origin": "ast", - "community": 23, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "wrap adapter.save_cell so a test can see how often it actually ran.", - "source_file": "tests/test_projects.py", - "source_location": "L97" + "source_location": "L607" }, { "id": "issueflows_04_designs_and_guides_guides_upstream_candidates", @@ -56415,66 +57310,6 @@ "source_file": "examples/mcp/server.py", "source_location": "L658" }, - { - "id": "issueflows_04_designs_and_guides_compare_cells", - "label": "compare-cells.md", - "_origin": "ast", - "community": 234, - "community_name": "Compare cells (#169)", - "file_type": "document", - "node_kind": "page", - "norm_label": "compare-cells.md", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_compare_cells_alternatives_considered", - "label": "Alternatives considered", - "_origin": "ast", - "community": 234, - "community_name": "Compare cells (#169)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L42" - }, - { - "id": "issueflows_04_designs_and_guides_compare_cells_compare_cells_169", - "label": "Compare cells (#169)", - "_origin": "ast", - "community": 234, - "community_name": "Compare cells (#169)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "compare cells (#169)", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_compare_cells_context", - "label": "Context", - "_origin": "ast", - "community": 234, - "community_name": "Compare cells (#169)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L3" - }, - { - "id": "issueflows_04_designs_and_guides_compare_cells_gotcha_recorded", - "label": "Gotcha recorded", - "_origin": "ast", - "community": 234, - "community_name": "Compare cells (#169)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "gotcha recorded", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L53" - }, { "id": "docs_guides_01_loading_cells_1_getting_cells_into_memory", "label": "1. Getting cells into memory", @@ -56571,12 +57406,23 @@ "source_file": "docs/guides/01-loading-cells.md", "source_location": "L80" }, + { + "id": "src_cellpy_simple_gui_core_export_py_path", + "label": "Path", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" + }, { "id": "issueflows_03_solved_issues_issue28_plan", "label": "issue28_plan.md", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "page", "norm_label": "issue28_plan.md", @@ -56588,7 +57434,7 @@ "label": "Approach", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -56600,7 +57446,7 @@ "label": "Constraints", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -56612,7 +57458,7 @@ "label": "Files to touch", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -56624,7 +57470,7 @@ "label": "Goal", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -56636,7 +57482,7 @@ "label": "Issue #28 plan \u2014 Export cells from Manage cells", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", "norm_label": "issue #28 plan \u2014 export cells from manage cells", @@ -56648,7 +57494,7 @@ "label": "Open questions", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -56660,31 +57506,91 @@ "label": "Test strategy", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", "source_file": ".issueflows/03-solved-issues/issue28_plan.md", "source_location": "L64" }, + { + "id": "issueflows_03_solved_issues_issue28_status", + "label": "issue28_status.md", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue28_status.md", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue28_status_issue_28_status_export_cells_from_manage_cells", + "label": "Issue #28 status \u2014 Export cells from Manage cells", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #28 status \u2014 export cells from manage cells", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue28_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue28_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L5" + }, { "id": "issueflows_04_designs_and_guides_manage_cells_modal", "label": "manage-cells-modal.md", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "page", "norm_label": "manage-cells-modal.md", "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", "source_location": "L1" }, + { + "id": "issueflows_04_designs_and_guides_manage_cells_modal_behaviour", + "label": "Behaviour", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "behaviour", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L5" + }, { "id": "issueflows_04_designs_and_guides_manage_cells_modal_manage_cells_modal", "label": "Manage cells modal", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", "norm_label": "manage cells modal", @@ -56696,7 +57602,7 @@ "label": "Plot refresh timing (issue #184)", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", "norm_label": "plot refresh timing (issue #184)", @@ -56708,7 +57614,7 @@ "label": "UI location", "_origin": "ast", "community": 238, - "community_name": "Issue #28 plan \u2014 Export cells from Manage cells", + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", "norm_label": "ui location", @@ -56716,160 +57622,37 @@ "source_location": "L41" }, { - "id": "issueflows_05_epics_next_phase_deployment_and_docs", - "label": "next-phase-deployment-and-docs.md", - "_origin": "ast", - "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "page", - "norm_label": "next-phase-deployment-and-docs.md", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L1" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_decisions_taken_up_front", - "label": "Decisions taken up front", - "_origin": "ast", - "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "decisions taken up front", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L16" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_issues", - "label": "Issues", - "_origin": "ast", - "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issues", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L239" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_1_headless_ready", - "label": "Milestone 1 \u2014 Headless-ready", - "_origin": "ast", - "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "milestone 1 \u2014 headless-ready", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L71" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_3_build_your_own_cellpy_app", - "label": "Milestone 3 \u2014 Build your own cellpy app", - "_origin": "ast", - "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "milestone 3 \u2014 build your own cellpy app", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L148" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_next_phase_deployment_routes_and_app_builder_documentation", - "label": "Next phase \u2014 deployment routes and app-builder documentation", - "_origin": "ast", - "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "next phase \u2014 deployment routes and app-builder documentation", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L1" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_risks", - "label": "Risks", - "_origin": "ast", - "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "risks", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L216" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_sequencing", - "label": "Sequencing", - "_origin": "ast", - "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "sequencing", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L229" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_what_the_current_architecture_already_decides_for_us", - "label": "What the current architecture already decides for us", - "_origin": "ast", - "community": 239, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what the current architecture already decides for us", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L29" - }, - { - "id": "issueflows_03_solved_issues_issue54_status", - "label": "issue54_status.md", - "_origin": "ast", - "community": 240, - "community_name": "Issue #54 status", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue54_status.md", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue54_status_issue_54_status", - "label": "Issue #54 status", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_742", + "label": "Write a cell to a self-contained ``.cellpy`` file (overwriting).", "_origin": "ast", - "community": 240, - "community_name": "Issue #54 status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #54 status", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", - "source_location": "L1" + "community": 238, + "community_name": "save_cell", + "file_type": "rationale", + "norm_label": "write a cell to a self-contained ``.cellpy`` file (overwriting).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L742" }, { - "id": "issueflows_03_solved_issues_issue54_status_remaining_work", - "label": "Remaining work", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_756", + "label": "Write cellpy ``to_csv`` outputs into ``datadir``; return created files.", "_origin": "ast", - "community": 240, - "community_name": "Issue #54 status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", - "source_location": "L14" + "community": 238, + "community_name": "save_cell", + "file_type": "rationale", + "norm_label": "write cellpy ``to_csv`` outputs into ``datadir``; return created files.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L756" }, { - "id": "issueflows_03_solved_issues_issue54_status_what_s_done", - "label": "What's done", + "id": "src_cellpy_simple_gui_core_export_rationale_236", + "label": "Write one cell into ``work``; return (archive_name, path) pairs.", "_origin": "ast", - "community": 240, - "community_name": "Issue #54 status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", - "source_location": "L5" + "community": 238, + "community_name": "save_cell", + "file_type": "rationale", + "norm_label": "write one cell into ``work``; return (archive_name, path) pairs.", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L236" }, { "id": "issueflows_03_solved_issues_issue55_status", @@ -56967,6 +57750,61 @@ "source_file": ".issueflows/03-solved-issues/issue72_status.md", "source_location": "L5" }, + { + "id": "tests_test_api_rationale_620", + "label": "One primary button per modal, whatever tab is showing (#136).", + "_origin": "ast", + "community": 245, + "community_name": "test_default_visible_hint_budget", + "file_type": "rationale", + "norm_label": "one primary button per modal, whatever tab is showing (#136).", + "source_file": "tests/test_api.py", + "source_location": "L620" + }, + { + "id": "tests_test_api_rationale_674", + "label": "At most four help lines are visible before the user touches anything (#136).\u2026", + "_origin": "ast", + "community": 245, + "community_name": "test_default_visible_hint_budget", + "file_type": "rationale", + "norm_label": "at most four help lines are visible before the user touches anything (#136)....", + "source_file": "tests/test_api.py", + "source_location": "L674" + }, + { + "id": "tests_test_api_rationale_551", + "label": "Every state key, getter and method declared at the top level of app().", + "_origin": "ast", + "community": 246, + "community_name": "test_index_click_and_show_targets_exist", + "file_type": "rationale", + "norm_label": "every state key, getter and method declared at the top level of app().", + "source_file": "tests/test_api.py", + "source_location": "L551" + }, + { + "id": "tests_test_api_rationale_567", + "label": "Identifiers an Alpine expression reads from the component scope. Property\u2026", + "_origin": "ast", + "community": 246, + "community_name": "test_index_click_and_show_targets_exist", + "file_type": "rationale", + "norm_label": "identifiers an alpine expression reads from the component scope. property...", + "source_file": "tests/test_api.py", + "source_location": "L567" + }, + { + "id": "tests_test_api_rationale_589", + "label": "Every ``@click`` / ``x-show`` in the template resolves in the component. The\u2026", + "_origin": "ast", + "community": 246, + "community_name": "test_index_click_and_show_targets_exist", + "file_type": "rationale", + "norm_label": "every ``@click`` / ``x-show`` in the template resolves in the component. the...", + "source_file": "tests/test_api.py", + "source_location": "L589" + }, { "id": "issueflows_03_solved_issues_issue169_original", "label": "issue169_original.md", @@ -57004,15 +57842,48 @@ "source_location": "L5" }, { - "id": "examples_mcp_server_rationale_178", - "label": "Which cellpy loaders exist, and which can actually run on this machine.", + "id": "tests_test_api_rationale_325", + "label": "Load one example cell through the API and build a dV/dQ spec for it.", + "_origin": "ast", + "community": 248, + "community_name": "_dva_spec", + "file_type": "rationale", + "norm_label": "load one example cell through the api and build a dv/dq spec for it.", + "source_file": "tests/test_api.py", + "source_location": "L325" + }, + { + "id": "tests_test_api_rationale_336", + "label": "dV/dQ is a regular Cell-explorer view (#94), like the dQ/dV beside it.", + "_origin": "ast", + "community": 248, + "community_name": "_dva_spec", + "file_type": "rationale", + "norm_label": "dv/dq is a regular cell-explorer view (#94), like the dq/dv beside it.", + "source_file": "tests/test_api.py", + "source_location": "L336" + }, + { + "id": "tests_test_packaging_rationale_30", + "label": "Import packaging/entry.py without it being on sys.path.", "_origin": "ast", "community": 249, - "community_name": "list_instruments", + "community_name": "_load_entry", "file_type": "rationale", - "norm_label": "which cellpy loaders exist, and which can actually run on this machine.", - "source_file": "examples/mcp/server.py", - "source_location": "L178" + "norm_label": "import packaging/entry.py without it being on sys.path.", + "source_file": "tests/test_packaging.py", + "source_location": "L30" + }, + { + "id": "tests_test_packaging_rationale_38", + "label": "The two are duplicated deliberately; this is the thing keeping them honest.\u2026", + "_origin": "ast", + "community": 249, + "community_name": "_load_entry", + "file_type": "rationale", + "norm_label": "the two are duplicated deliberately; this is the thing keeping them honest....", + "source_file": "tests/test_packaging.py", + "source_location": "L38" }, { "id": "cursor_skills_iflow_pr_sync_skill", @@ -57357,48 +58228,123 @@ "source_location": "L20" }, { - "id": "tests_test_mcp_prototype_rationale_110", - "label": "The trap made visible: fewer points than rows, reported rather than hidden.", + "id": "issueflows_03_solved_issues_issue19_plan", + "label": "issue19_plan.md", "_origin": "ast", "community": 256, - "community_name": "test_a_default_direction_plot_says_it_drew_less", - "file_type": "rationale", - "norm_label": "the trap made visible: fewer points than rows, reported rather than hidden.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L110" + "community_name": "Plan: Issue #19 \u2014 journal load error surfacing", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue19_plan.md", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L1" }, { - "id": "tests_test_mcp_prototype_rationale_178", - "label": "A write primitive outside the boundary would make the read check decor.", + "id": "issueflows_03_solved_issues_issue19_plan_approach", + "label": "Approach", "_origin": "ast", - "community": 258, - "community_name": "test_writes_are_sandboxed_too", - "file_type": "rationale", - "norm_label": "a write primitive outside the boundary would make the read check decor.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L178" + "community": 256, + "community_name": "Plan: Issue #19 \u2014 journal load error surfacing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L7" }, { - "id": "tests_test_mcp_prototype_rationale_196", - "label": "Error text is read by a model, so it has to name the next call.", + "id": "issueflows_03_solved_issues_issue19_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 256, + "community_name": "Plan: Issue #19 \u2014 journal load error surfacing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue19_plan_plan_issue_19_journal_load_error_surfacing", + "label": "Plan: Issue #19 \u2014 journal load error surfacing", + "_origin": "ast", + "community": 256, + "community_name": "Plan: Issue #19 \u2014 journal load error surfacing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan: issue #19 \u2014 journal load error surfacing", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue19_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 256, + "community_name": "Plan: Issue #19 \u2014 journal load error surfacing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L14" + }, + { + "id": "tests_test_api_rationale_632", + "label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor.\u2026", "_origin": "ast", "community": 259, - "community_name": "test_unknown_handles_and_kinds_are_told_what_to_do", + "community_name": "_default_visible_hints", "file_type": "rationale", - "norm_label": "error text is read by a model, so it has to name the next call.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L196" + "norm_label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor....", + "source_file": "tests/test_api.py", + "source_location": "L632" }, { - "id": "tests_test_mcp_prototype_rationale_243", - "label": "The finding this family turns on. `CellpyCell.get_cap` points at the\u2026", + "id": "issueflows_03_solved_issues_issue160_status", + "label": "issue160_status.md", "_origin": "ast", "community": 261, - "community_name": "test_describe_api_follows_the_reference_the_docstring_points_at", - "file_type": "rationale", - "norm_label": "the finding this family turns on. `cellpycell.get_cap` points at the...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L243" + "community_name": "Issue #160 \u2014 Status", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue160_status.md", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue160_status_issue_160_status", + "label": "Issue #160 \u2014 Status", + "_origin": "ast", + "community": 261, + "community_name": "Issue #160 \u2014 Status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #160 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue160_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 261, + "community_name": "Issue #160 \u2014 Status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue160_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 261, + "community_name": "Issue #160 \u2014 Status", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L5" }, { "id": "cursor_skills_iflow_ops_skill", @@ -57478,18 +58424,6 @@ "source_file": ".cursor/skills/iflow-ops/SKILL.md", "source_location": "L36" }, - { - "id": "cellpy_painpoints_3_silent_all_or_nothing_group_averaging_when_any_group_is_a_singleton", - "label": "3. \ud83d\udfe0 Silent all-or-nothing group-averaging when any group is a singleton", - "_origin": "ast", - "community": 265, - "community_name": "2. Cells into a Collection", - "file_type": "document", - "node_kind": "heading", - "norm_label": "3. \ud83d\udfe0 silent all-or-nothing group-averaging when any group is a singleton", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L171" - }, { "id": "docs_guides_02_collections_2_cells_into_a_collection", "label": "2. Cells into a Collection", @@ -57574,17 +58508,6 @@ "source_file": "docs/guides/02-collections.md", "source_location": "L278" }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_643", - "label": "True when the collection carries averaged (mean/std) series.", - "_origin": "ast", - "community": 265, - "community_name": "2. Cells into a Collection", - "file_type": "rationale", - "norm_label": "true when the collection carries averaged (mean/std) series.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L643" - }, { "id": "docs_guides_07_delegation_7_what_cellpy_will_and_will_not_do_for_you", "label": "7. What cellpy will and will not do for you", @@ -57754,15 +58677,40 @@ "source_location": "L11" }, { - "id": "tests_test_mcp_prototype_rationale_264", - "label": "`self` in a rendered signature invites a model to pass it.", + "id": "issueflows_03_solved_issues_issue31_status", + "label": "issue31_status.md", "_origin": "ast", "community": 269, - "community_name": "test_describe_api_renders_a_method_the_way_you_would_call_it", - "file_type": "rationale", - "norm_label": "`self` in a rendered signature invites a model to pass it.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L264" + "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue31_status.md", + "source_file": ".issueflows/03-solved-issues/issue31_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue31_status_issue_31_status_iterative_fixes_export_download_location", + "label": "Issue #31 status \u2014 Iterative fixes: export download location", + "_origin": "ast", + "community": 269, + "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #31 status \u2014 iterative fixes: export download location", + "source_file": ".issueflows/03-solved-issues/issue31_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue31_status_iterative_fixes_log", + "label": "Iterative fixes log", + "_origin": "ast", + "community": 269, + "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", + "file_type": "document", + "node_kind": "heading", + "norm_label": "iterative fixes log", + "source_file": ".issueflows/03-solved-issues/issue31_status.md", + "source_location": "L7" }, { "id": "cursor_skills_iflow_plan_skill", @@ -58039,17 +58987,6 @@ "source_file": ".issueflows/03-solved-issues/issue177_original.md", "source_location": "L5" }, - { - "id": "tests_test_mcp_prototype_rationale_297", - "label": "`utils.helpers` re-exports `CellpyCell`; a path through it sends the reader to\u2026", - "_origin": "ast", - "community": 274, - "community_name": "test_search_api_points_at_the_module_that_defines_the_call", - "file_type": "rationale", - "norm_label": "`utils.helpers` re-exports `cellpycell`; a path through it sends the reader to...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L297" - }, { "id": "tests_test_packaging_rationale_70", "label": "Not just None: a detached handle raises on write.", @@ -58062,28 +58999,26 @@ "source_location": "L70" }, { - "id": "issueflows_01_current_issues_issue184_original", - "label": "issue184_original.md", + "id": "tests_test_packaging_py_parametrize", + "label": "parametrize", "_origin": "ast", "community": 276, - "community_name": "issue184_original.md", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue184_original.md", - "source_file": ".issueflows/01-current-issues/issue184_original.md", - "source_location": "L1" + "community_name": "test_smoke_test_skips_only_a_missing_reader", + "file_type": "code", + "norm_label": "parametrize", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_01_current_issues_issue184_original_184_update_plots_when_cells_modal_closes", - "label": "#184 \u2014 update plots when cells modal closes", + "id": "tests_test_packaging_rationale_266", + "label": "The skip must track *both* vocabularies (#124, #143). It originally matched\u2026", "_origin": "ast", "community": 276, - "community_name": "issue184_original.md", - "file_type": "document", - "node_kind": "heading", - "norm_label": "#184 \u2014 update plots when cells modal closes", - "source_file": ".issueflows/01-current-issues/issue184_original.md", - "source_location": "L1" + "community_name": "test_smoke_test_skips_only_a_missing_reader", + "file_type": "rationale", + "norm_label": "the skip must track *both* vocabularies (#124, #143). it originally matched...", + "source_file": "tests/test_packaging.py", + "source_location": "L266" }, { "id": "tests_test_ingest", @@ -58180,29 +59115,18 @@ "label": "BinaryIO", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "binaryio", "source_file": "", "source_location": "" }, - { - "id": "src_cellpy_simple_gui_api_routers_uploads", - "label": "routers/uploads.py", - "_origin": "ast", - "community": 28, - "community_name": "library.py", - "file_type": "code", - "norm_label": "routers/uploads.py", - "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_api_routers_uploads_py_delete", "label": "delete", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "delete", "source_file": "", @@ -58213,7 +59137,7 @@ "label": "get", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "get", "source_file": "", @@ -58224,40 +59148,18 @@ "label": "post", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "post", "source_file": "", "source_location": "" }, - { - "id": "src_cellpy_simple_gui_core_init", - "label": "core/__init__.py", - "_origin": "ast", - "community": 28, - "community_name": "library.py", - "file_type": "code", - "norm_label": "core/__init__.py", - "source_file": "src/cellpy_simple_gui/core/__init__.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_core_library", - "label": "library.py", - "_origin": "ast", - "community": 28, - "community_name": "library.py", - "file_type": "code", - "norm_label": "library.py", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_core_uploads", "label": "core/uploads.py", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "core/uploads.py", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58268,7 +59170,7 @@ "label": "Path", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "path", "source_file": "", @@ -58279,7 +59181,7 @@ "label": "ValueError", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "valueerror", "source_file": "", @@ -58290,29 +59192,18 @@ "label": "UploadFile", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "code", "norm_label": "uploadfile", "source_file": "", "source_location": "" }, - { - "id": "src_cellpy_simple_gui_api_routers_uploads_rationale_1", - "label": "Bringing files in through the browser (#133). Upload writes into\u2026", - "_origin": "ast", - "community": 28, - "community_name": "library.py", - "file_type": "rationale", - "norm_label": "bringing files in through the browser (#133). upload writes into...", - "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_api_routers_uploads_rationale_24", "label": "Accept one or more files; report what landed and what did not. A rejected file\u2026", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "rationale", "norm_label": "accept one or more files; report what landed and what did not. a rejected file...", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", @@ -58323,40 +59214,18 @@ "label": "Delete every uploaded file. Never happens on a timer \u2014 see core.uploads.", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "rationale", "norm_label": "delete every uploaded file. never happens on a timer \u2014 see core.uploads.", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", "source_location": "L62" }, - { - "id": "src_cellpy_simple_gui_core_init_rationale_1", - "label": "Core layer: pure-Python domain logic for cellpy-simple-gui. Nothing in this\u2026", - "_origin": "ast", - "community": 28, - "community_name": "library.py", - "file_type": "rationale", - "norm_label": "core layer: pure-python domain logic for cellpy-simple-gui. nothing in this...", - "source_file": "src/cellpy_simple_gui/core/__init__.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_core_library_rationale_1", - "label": "In-memory library of loaded cells \u2014 the backend's source of truth. For a\u2026", - "_origin": "ast", - "community": 28, - "community_name": "library.py", - "file_type": "rationale", - "norm_label": "in-memory library of loaded cells \u2014 the backend's source of truth. for a...", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_core_uploads_rationale_1", "label": "Files brought in through the browser (#133). A served instance may only read\u2026", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "rationale", "norm_label": "files brought in through the browser (#133). a served instance may only read...", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58367,7 +59236,7 @@ "label": "What is sitting in the uploads folder, so it is not a mystery.", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "rationale", "norm_label": "what is sitting in the uploads folder, so it is not a mystery.", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58378,7 +59247,7 @@ "label": "Delete every uploaded file. Uploads are never pruned automatically. Between\u2026", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "rationale", "norm_label": "delete every uploaded file. uploads are never pruned automatically. between...", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58389,7 +59258,7 @@ "label": "The upload cannot be accepted \u2014 bad name, too large, nowhere to put it.", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "rationale", "norm_label": "the upload cannot be accepted \u2014 bad name, too large, nowhere to put it.", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58400,7 +59269,7 @@ "label": "Where uploads live: ``/uploads``. Inside the sandbox on purpose, so\u2026", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "rationale", "norm_label": "where uploads live: ``/uploads``. inside the sandbox on purpose, so...", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58411,7 +59280,7 @@ "label": "A filename we are willing to create. Only the final component is considered, so\u2026", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "rationale", "norm_label": "a filename we are willing to create. only the final component is considered, so...", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58422,7 +59291,7 @@ "label": "Never silently overwrite: two uploads of `cell.h5` are two files.", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "rationale", "norm_label": "never silently overwrite: two uploads of `cell.h5` are two files.", "source_file": "src/cellpy_simple_gui/core/uploads.py", @@ -58433,12 +59302,119 @@ "label": "Stream one upload to disk, refusing it if it grows past the cap.", "_origin": "ast", "community": 28, - "community_name": "library.py", + "community_name": "core/uploads.py", "file_type": "rationale", "norm_label": "stream one upload to disk, refusing it if it grows past the cap.", "source_file": "src/cellpy_simple_gui/core/uploads.py", "source_location": "L89" }, + { + "id": "issueflows_03_solved_issues_issue19_status", + "label": "issue19_status.md", + "_origin": "ast", + "community": 280, + "community_name": "Done", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue19_status.md", + "source_file": ".issueflows/03-solved-issues/issue19_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue19_status_done", + "label": "Done", + "_origin": "ast", + "community": 280, + "community_name": "Done", + "file_type": "document", + "node_kind": "heading", + "norm_label": "done", + "source_file": ".issueflows/03-solved-issues/issue19_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue19_status_status_issue_19_journal_load_errors", + "label": "Status: Issue #19 \u2014 journal load errors", + "_origin": "ast", + "community": 280, + "community_name": "Done", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status: issue #19 \u2014 journal load errors", + "source_file": ".issueflows/03-solved-issues/issue19_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue41_status", + "label": "issue41_status.md", + "_origin": "ast", + "community": 281, + "community_name": "Progress", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue41_status.md", + "source_file": ".issueflows/03-solved-issues/issue41_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue41_status_progress", + "label": "Progress", + "_origin": "ast", + "community": 281, + "community_name": "Progress", + "file_type": "document", + "node_kind": "heading", + "norm_label": "progress", + "source_file": ".issueflows/03-solved-issues/issue41_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue41_status_status_issue_41", + "label": "Status \u2014 Issue #41", + "_origin": "ast", + "community": 281, + "community_name": "Progress", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 issue #41", + "source_file": ".issueflows/03-solved-issues/issue41_status.md", + "source_location": "L1" + }, + { + "id": "tests_test_packaging_rationale_211", + "label": "A broken probe must not stop the app from starting.", + "_origin": "ast", + "community": 283, + "community_name": "test_startup_survives_an_unreadable_cellpy_config", + "file_type": "rationale", + "norm_label": "a broken probe must not stop the app from starting.", + "source_file": "tests/test_packaging.py", + "source_location": "L211" + }, + { + "id": "issueflows_01_current_issues_issue187_original", + "label": "issue187_original.md", + "_origin": "ast", + "community": 284, + "community_name": "issue187_original.md", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue187_original.md", + "source_file": ".issueflows/01-current-issues/issue187_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_01_current_issues_issue187_original_issue_187_name_of_groups", + "label": "Issue #187 \u2014 name of groups", + "_origin": "ast", + "community": 284, + "community_name": "issue187_original.md", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #187 \u2014 name of groups", + "source_file": ".issueflows/01-current-issues/issue187_original.md", + "source_location": "L1" + }, { "id": "docs_guides_readme_building_on_cellpy", "label": "Building on cellpy", @@ -58583,6 +59559,63 @@ "source_file": ".issueflows/03-solved-issues/issue86_status.md", "source_location": "L5" }, + { + "id": "issueflows_03_solved_issues_issue184_original", + "label": "issue184_original.md", + "_origin": "ast", + "community": 289, + "community_name": "issue184_original.md", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue184_original.md", + "source_file": ".issueflows/03-solved-issues/issue184_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue184_original_184_update_plots_when_cells_modal_closes", + "label": "#184 \u2014 update plots when cells modal closes", + "_origin": "ast", + "community": 289, + "community_name": "issue184_original.md", + "file_type": "document", + "node_kind": "heading", + "norm_label": "#184 \u2014 update plots when cells modal closes", + "source_file": ".issueflows/03-solved-issues/issue184_original.md", + "source_location": "L1" + }, + { + "id": "tests_test_api_rationale_356", + "label": "Ungating must not turn an unknown cell into a permissions error.", + "_origin": "ast", + "community": 290, + "community_name": "test_dva_missing_cell_is_404_not_403", + "file_type": "rationale", + "norm_label": "ungating must not turn an unknown cell into a permissions error.", + "source_file": "tests/test_api.py", + "source_location": "L356" + }, + { + "id": "tests_test_api_rationale_854", + "label": "A served instance previews only inside its data directory (#120).", + "_origin": "ast", + "community": 291, + "community_name": "test_files_preview_honours_served_sandbox", + "file_type": "rationale", + "norm_label": "a served instance previews only inside its data directory (#120).", + "source_file": "tests/test_api.py", + "source_location": "L854" + }, + { + "id": "tests_test_api_rationale_867", + "label": "The desktop app takes host paths on purpose \u2014 that must not regress.", + "_origin": "ast", + "community": 292, + "community_name": "test_local_instance_keeps_its_freedom", + "file_type": "rationale", + "norm_label": "the desktop app takes host paths on purpose \u2014 that must not regress.", + "source_file": "tests/test_api.py", + "source_location": "L867" + }, { "id": "issueflows_03_solved_issues_issue160_original", "label": "issue160_original.md", @@ -58643,151 +59676,127 @@ "source_location": "L91" }, { - "id": "issueflows_03_solved_issues_issue169_plan_2_core_core_collect_py", - "label": "2. Core \u2014 `core/collect.py`", - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "2. core \u2014 `core/collect.py`", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L113" - }, - { - "id": "issueflows_03_solved_issues_issue169_plan_3_core_core_plotting_py", - "label": "3. Core \u2014 `core/plotting.py`", + "id": "issueflows_03_solved_issues_issue186_plan", + "label": "issue186_plan.md", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", - "node_kind": "heading", - "norm_label": "3. core \u2014 `core/plotting.py`", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L136" + "node_kind": "page", + "norm_label": "issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue169_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue186_plan_approach", + "label": "Approach", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L64" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L22" }, { - "id": "issueflows_03_solved_issues_issue175_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue186_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue175_plan.md", - "source_location": "L38" + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L30" }, { - "id": "issueflows_03_solved_issues_issue28_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue186_plan_goal", + "label": "Goal", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue2_status", - "label": "issue2_status.md", - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue2_status.md", - "source_file": ".issueflows/03-solved-issues/issue2_status.md", - "source_location": "L1" + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue2_status_issue_2_status", - "label": "Issue #2 status", + "id": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", + "label": "Plan \u2014 #186 y ranges ignored with Group avg + Spread", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #2 status", - "source_file": ".issueflows/03-solved-issues/issue2_status.md", + "norm_label": "plan \u2014 #186 y ranges ignored with group avg + spread", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue2_status_remaining_work", - "label": "Remaining work", + "id": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", + "label": "Root cause (reproduced with two demo cells in one group)", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue2_status.md", - "source_location": "L20" + "norm_label": "root cause (reproduced with two demo cells in one group)", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L8" }, { - "id": "issueflows_03_solved_issues_issue2_status_what_s_done", - "label": "What's done", + "id": "issueflows_03_solved_issues_issue186_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue2_status.md", - "source_location": "L5" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L36" }, { - "id": "issueflows_03_solved_issues_issue32_status", - "label": "issue32_status.md", + "id": "issueflows_03_solved_issues_issue186_status", + "label": "issue186_status.md", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "page", - "norm_label": "issue32_status.md", - "source_file": ".issueflows/03-solved-issues/issue32_status.md", + "norm_label": "issue186_status.md", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue32_status_issue_32_status", - "label": "Issue #32 \u2014 Status", + "id": "issueflows_03_solved_issues_issue186_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #32 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue32_status.md", - "source_location": "L1" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L24" }, { - "id": "issueflows_03_solved_issues_issue32_status_remaining_work", - "label": "Remaining work", + "id": "issueflows_03_solved_issues_issue186_status_status_186_y_ranges_ignored_with_group_avg_spread", + "label": "Status \u2014 #186 y ranges ignored with Group avg + Spread", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue32_status.md", - "source_location": "L14" + "norm_label": "status \u2014 #186 y ranges ignored with group avg + spread", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue32_status_what_s_done", + "id": "issueflows_03_solved_issues_issue186_status_what_s_done", "label": "What's done", "_origin": "ast", "community": 3, @@ -58795,47 +59804,47 @@ "file_type": "document", "node_kind": "heading", "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue32_status.md", - "source_location": "L5" + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue37_status", - "label": "issue37_status.md", + "id": "issueflows_03_solved_issues_issue60_original_spec", + "label": "Spec", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", - "node_kind": "page", - "norm_label": "issue37_status.md", - "source_file": ".issueflows/03-solved-issues/issue37_status.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L16" }, { - "id": "issueflows_03_solved_issues_issue37_status_progress", - "label": "Progress", + "id": "issueflows_03_solved_issues_issue60_plan_approach", + "label": "Approach", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "progress", - "source_file": ".issueflows/03-solved-issues/issue37_status.md", - "source_location": "L5" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L23" }, { - "id": "issueflows_03_solved_issues_issue37_status_status_issue_37", - "label": "Status \u2014 Issue #37", + "id": "issueflows_03_solved_issues_issue60_plan_constraints", + "label": "Constraints", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "status \u2014 issue #37", - "source_file": ".issueflows/03-solved-issues/issue37_status.md", - "source_location": "L1" + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L10" }, { - "id": "issueflows_03_solved_issues_issue38_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue60_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 3, @@ -58843,68 +59852,56 @@ "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L75" - }, - { - "id": "issueflows_03_solved_issues_issue38_status", - "label": "issue38_status.md", - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue38_status.md", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L1" + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L36" }, { - "id": "issueflows_03_solved_issues_issue38_status_issue_38_status", - "label": "Issue #38 status", + "id": "issueflows_03_solved_issues_issue60_plan_goal", + "label": "Goal", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #38 status", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L1" + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue38_status_remaining_work", - "label": "Remaining work", + "id": "issueflows_03_solved_issues_issue60_plan_issue_60_plan_summary_y_ranges_facet_miss", + "label": "Issue #60 plan \u2014 summary y_ranges facet miss", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L14" + "norm_label": "issue #60 plan \u2014 summary y_ranges facet miss", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue38_status_what_s_done", - "label": "What's done", + "id": "issueflows_03_solved_issues_issue60_plan_open_questions", + "label": "Open questions", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L5" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L52" }, { - "id": "issueflows_03_solved_issues_issue55_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue60_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L26" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L44" }, { "id": "issueflows_03_solved_issues_issue81_plan_constraints", @@ -58979,153 +59976,139 @@ "source_location": "L5" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cycles_pane_curve_kinds_95", - "label": "Cycles pane curve kinds (#95)", - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cycles pane curve kinds (#95)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L140" - }, - { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_removed_in_the_2_1_2a2_cleanup", - "label": "Removed in the 2.1.2a2 cleanup", + "id": "src_cellpy_simple_gui_api_routers_plots_rationale_26", + "label": "Curated summary plot types, with panel ids for the current capacity basis.\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "removed in the 2.1.2a2 cleanup", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L53" + "file_type": "rationale", + "norm_label": "curated summary plot types, with panel ids for the current capacity basis....", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L26" }, { - "id": "issueflows_04_designs_and_guides_compare_cells_decision", - "label": "Decision", + "id": "src_cellpy_simple_gui_core_collect_rationale_1", + "label": "Bridge the in-memory library into cellpy's own collect / plot / export stack.\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/compare-cells.md", - "source_location": "L12" + "file_type": "rationale", + "norm_label": "bridge the in-memory library into cellpy's own collect / plot / export stack....", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1", - "label": "Bridge the in-memory library into cellpy's own collect / plot / export stack.\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1005", + "label": "Say so when cellpy downsampled \u2014 a silently thinned plot is misleading.\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "bridge the in-memory library into cellpy's own collect / plot / export stack....", + "norm_label": "say so when cellpy downsampled \u2014 a silently thinned plot is misleading....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1" + "source_location": "L1005" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1034", - "label": "Plotly layout key for a trace ``yaxis`` id (``y`` \u2192 ``yaxis``, \u2026).", + "id": "src_cellpy_simple_gui_core_collect_rationale_1030", + "label": "Map facet ``variable`` \u2192 ``(xaxis_id, yaxis_id)`` from base traces. Prefer\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "plotly layout key for a trace ``yaxis`` id (``y`` \u2192 ``yaxis``, ...).", + "norm_label": "map facet ``variable`` \u2192 ``(xaxis_id, yaxis_id)`` from base traces. prefer...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1034" + "source_location": "L1030" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1130", - "label": "Keep the full identity discoverable when display ``name`` is truncated. Plotly\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1049", + "label": "Pull ``variable=`` from a PX hovertemplate, if present.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "keep the full identity discoverable when display ``name`` is truncated. plotly...", + "norm_label": "pull ``variable=`` from a px hovertemplate, if present.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1130" + "source_location": "L1049" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1222", - "label": "Facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. PX\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1058", + "label": "Plotly layout key for a trace ``yaxis`` id (``y`` \u2192 ``yaxis``, \u2026).", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. px...", + "norm_label": "plotly layout key for a trace ``yaxis`` id (``y`` \u2192 ``yaxis``, ...).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1222" + "source_location": "L1058" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1250", - "label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation.\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1065", + "label": "Set per-facet ``[lo, hi]`` on the merged summary figure (#60 / #54). Prefer\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation....", + "norm_label": "set per-facet ``[lo, hi]`` on the merged summary figure (#60 / #54). prefer...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1250" + "source_location": "L1065" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1333", - "label": "Turn ``#RRGGBB`` into ``rgba(r,g,b,a)`` for translucent Plotly fills.", + "id": "src_cellpy_simple_gui_core_collect_rationale_1230", + "label": "Which cell a per-cell facet trace belongs to. Plotly Express writes\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "turn ``#rrggbb`` into ``rgba(r,g,b,a)`` for translucent plotly fills.", + "norm_label": "which cell a per-cell facet trace belongs to. plotly express writes...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1333" + "source_location": "L1230" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_134", - "label": "Every summary family cellpy registers, marked available or not (#97).\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1246", + "label": "Facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. PX\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "every summary family cellpy registers, marked available or not (#97)....", + "norm_label": "facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. px...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L134" + "source_location": "L1246" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1346", - "label": "Cycle a discrete colorway across legend series (name / legendgroup).", + "id": "src_cellpy_simple_gui_core_collect_rationale_1274", + "label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation.\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "cycle a discrete colorway across legend series (name / legendgroup).", + "norm_label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1346" + "source_location": "L1274" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1441", - "label": "Serialise a tidy polars frame in-memory. Returns (bytes, media_type).", + "id": "src_cellpy_simple_gui_core_collect_rationale_1289", + "label": "Fold a cellpy ``per_cell`` facet figure onto one axis pair (#169). cellpy's\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "serialise a tidy polars frame in-memory. returns (bytes, media_type).", + "norm_label": "fold a cellpy ``per_cell`` facet figure onto one axis pair (#169). cellpy's...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1441" + "source_location": "L1289" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1458", - "label": "Serialise a collection's tidy frame in-memory. Returns (bytes, media_type).", + "id": "src_cellpy_simple_gui_core_collect_rationale_155", + "label": "Every summary family cellpy registers, marked available or not (#97).\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "serialise a collection's tidy frame in-memory. returns (bytes, media_type).", + "norm_label": "every summary family cellpy registers, marked available or not (#97)....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1458" + "source_location": "L155" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_183", + "id": "src_cellpy_simple_gui_core_collect_rationale_204", "label": "Summary columns a family needs *before* collect-time derivation.\u2026", "_origin": "ast", "community": 3, @@ -59133,10 +60116,10 @@ "file_type": "rationale", "norm_label": "summary columns a family needs *before* collect-time derivation....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L183" + "source_location": "L204" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_210", + "id": "src_cellpy_simple_gui_core_collect_rationale_231", "label": "Summary column that must already exist before collect derives ``name``.", "_origin": "ast", "community": 3, @@ -59144,10 +60127,10 @@ "file_type": "rationale", "norm_label": "summary column that must already exist before collect derives ``name``.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L210" + "source_location": "L231" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_219", + "id": "src_cellpy_simple_gui_core_collect_rationale_240", "label": "Ready :class:`SummaryOptions` for a registry family, or ``None``. Carries the\u2026", "_origin": "ast", "community": 3, @@ -59155,10 +60138,10 @@ "file_type": "rationale", "norm_label": "ready :class:`summaryoptions` for a registry family, or ``none``. carries the...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L219" + "source_location": "L240" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_237", + "id": "src_cellpy_simple_gui_core_collect_rationale_258", "label": "``(header, available_columns)`` across the loaded cells, or ``(None, None)``.\u2026", "_origin": "ast", "community": 3, @@ -59166,10 +60149,10 @@ "file_type": "rationale", "norm_label": "``(header, available_columns)`` across the loaded cells, or ``(none, none)``....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L237" + "source_location": "L258" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_261", + "id": "src_cellpy_simple_gui_core_collect_rationale_282", "label": "Which of ``columns`` the loaded cells do not actually carry. A family's\u2026", "_origin": "ast", "community": 3, @@ -59177,10 +60160,10 @@ "file_type": "rationale", "norm_label": "which of ``columns`` the loaded cells do not actually carry. a family's...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L261" + "source_location": "L282" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_273", + "id": "src_cellpy_simple_gui_core_collect_rationale_294", "label": "Columns for a registry family, resolved against the loaded cells.", "_origin": "ast", "community": 3, @@ -59188,10 +60171,10 @@ "file_type": "rationale", "norm_label": "columns for a registry family, resolved against the loaded cells.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L273" + "source_location": "L294" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_283", + "id": "src_cellpy_simple_gui_core_collect_rationale_304", "label": "Collect options for a plot type, or ``None`` for the curated ones. Only a\u2026", "_origin": "ast", "community": 3, @@ -59199,10 +60182,10 @@ "file_type": "rationale", "norm_label": "collect options for a plot type, or ``none`` for the curated ones. only a...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L283" + "source_location": "L304" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_296", + "id": "src_cellpy_simple_gui_core_collect_rationale_317", "label": "The summary columns the data must already carry for this plot type. Same as\u2026", "_origin": "ast", "community": 3, @@ -59210,10 +60193,10 @@ "file_type": "rationale", "norm_label": "the summary columns the data must already carry for this plot type. same as...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L296" + "source_location": "L317" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_366", + "id": "src_cellpy_simple_gui_core_collect_rationale_387", "label": "Short UI label for a summary facet column id.", "_origin": "ast", "community": 3, @@ -59221,10 +60204,10 @@ "file_type": "rationale", "norm_label": "short ui label for a summary facet column id.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L366" + "source_location": "L387" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_376", + "id": "src_cellpy_simple_gui_core_collect_rationale_397", "label": "Normalize cellpy unit markup for plot titles (``cm**2`` \u2192 ``cm\u00b2``).", "_origin": "ast", "community": 3, @@ -59232,10 +60215,10 @@ "file_type": "rationale", "norm_label": "normalize cellpy unit markup for plot titles (``cm**2`` \u2192 ``cm2``).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L376" + "source_location": "L397" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_381", + "id": "src_cellpy_simple_gui_core_collect_rationale_402", "label": "Strip basis suffix; return ``(base_id, mode|None)``.", "_origin": "ast", "community": 3, @@ -59243,10 +60226,10 @@ "file_type": "rationale", "norm_label": "strip basis suffix; return ``(base_id, mode|none)``.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L381" + "source_location": "L402" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_407", + "id": "src_cellpy_simple_gui_core_collect_rationale_428", "label": "One human axis title for a summary ``variable`` column id (#38).", "_origin": "ast", "community": 3, @@ -59254,168 +60237,201 @@ "file_type": "rationale", "norm_label": "one human axis title for a summary ``variable`` column id (#38).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L407" + "source_location": "L428" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_433", - "label": "``variable \u2192`` unit-bearing axis title via cellpy label builders (#38).", + "id": "src_cellpy_simple_gui_core_collect_rationale_459", + "label": "Panel descriptors (column id + short label) for summary y-range widgets.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "``variable \u2192`` unit-bearing axis title via cellpy label builders (#38).", + "norm_label": "panel descriptors (column id + short label) for summary y-range widgets.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L433" + "source_location": "L459" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_438", - "label": "Panel descriptors (column id + short label) for summary y-range widgets.", + "id": "src_cellpy_simple_gui_core_collect_rationale_467", + "label": "Legacy charge/discharge/CE column selection (kept for tests).", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "panel descriptors (column id + short label) for summary y-range widgets.", + "norm_label": "legacy charge/discharge/ce column selection (kept for tests).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L438" + "source_location": "L467" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_446", - "label": "Legacy charge/discharge/CE column selection (kept for tests).", + "id": "src_cellpy_simple_gui_core_collect_rationale_664", + "label": "True when the collection carries averaged (mean/std) series.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "legacy charge/discharge/ce column selection (kept for tests).", + "norm_label": "true when the collection carries averaged (mean/std) series.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L446" + "source_location": "L664" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_471", - "label": "Collect summaries, optionally under a family's own :class:`SummaryOptions`.\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_675", + "label": "Fold theme tokens into cellpy #801 knobs before ``collection.plot``.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "collect summaries, optionally under a family's own :class:`summaryoptions`....", + "norm_label": "fold theme tokens into cellpy #801 knobs before ``collection.plot``.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L471" + "source_location": "L675" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_536", - "label": "Collect DVA (dV/dQ) curves \u2014 the sibling of :func:`ica_collection`. cellpy\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_702", + "label": "Min/max over finite numeric samples on trace ``x`` or ``y``. When ``axis_id``\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "collect dva (dv/dq) curves \u2014 the sibling of :func:`ica_collection`. cellpy...", + "norm_label": "min/max over finite numeric samples on trace ``x`` or ``y``. when ``axis_id``...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L536" + "source_location": "L702" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_550", - "label": "Filter a collected ICA frame to one half-cycle for **export**. Mirrors what\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_742", + "label": "Turn ``[lo|None, hi|None]`` into a concrete ``[lo, hi]`` using data.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "filter a collected ica frame to one half-cycle for **export**. mirrors what...", + "norm_label": "turn ``[lo|none, hi|none]`` into a concrete ``[lo, hi]`` using data.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L550" + "source_location": "L742" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_66", - "label": "The ``cell`` label each record gets in a collected frame, in order. This is the\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_766", + "label": "``yaxis`` \u2192 ``y``, ``yaxis2`` \u2192 ``y2``.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "the ``cell`` label each record gets in a collected frame, in order. this is the...", + "norm_label": "``yaxis`` \u2192 ``y``, ``yaxis2`` \u2192 ``y2``.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L66" + "source_location": "L766" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_681", - "label": "Min/max over finite numeric samples on trace ``x`` or ``y``. When ``axis_id``\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_775", + "label": "Pin axes to ``[lo, hi]``; missing ends use the data extent.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "min/max over finite numeric samples on trace ``x`` or ``y``. when ``axis_id``...", + "norm_label": "pin axes to ``[lo, hi]``; missing ends use the data extent.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L681" + "source_location": "L775" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_721", - "label": "Turn ``[lo|None, hi|None]`` into a concrete ``[lo, hi]`` using data.", + "id": "src_cellpy_simple_gui_core_collect_rationale_795", + "label": "Give spread traces the hover the plain group-average plot already has (#40).\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "turn ``[lo|none, hi|none]`` into a concrete ``[lo, hi]`` using data.", + "norm_label": "give spread traces the hover the plain group-average plot already has (#40)....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L721" + "source_location": "L795" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_754", - "label": "Pin axes to ``[lo, hi]``; missing ends use the data extent.", + "id": "src_cellpy_simple_gui_core_collect_rationale_829", + "label": "Match the fields the non-averaged plot shows: series, variable, x, y.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "pin axes to ``[lo, hi]``; missing ends use the data extent.", + "norm_label": "match the fields the non-averaged plot shows: series, variable, x, y.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L754" + "source_location": "L829" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_86", - "label": "Build a cellpy ``Batch`` from library records (labels/groups/selection).", + "id": "src_cellpy_simple_gui_core_collect_rationale_837", + "label": "Put the band half-width on the mean trace so hover can show ``\u00b1 std``.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "build a cellpy ``batch`` from library records (labels/groups/selection).", + "norm_label": "put the band half-width on the mean trace so hover can show ``\u00b1 std``.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L86" + "source_location": "L837" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_45", - "label": "A loaded cell plus its mutable, user-editable metadata.", + "id": "src_cellpy_simple_gui_core_collect_rationale_855", + "label": "Traces grouped by the subplot they live on, in figure order.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "a loaded cell plus its mutable, user-editable metadata.", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L45" + "norm_label": "traces grouped by the subplot they live on, in figure order.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L855" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_125", - "label": "Drives a cellpy ``collect_cycles`` collection. With ``cell_id`` set: one\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_864", + "label": "The y-axis title for ``y``/``y2``/\u2026 \u2014 what names the facet on screen.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "drives a cellpy ``collect_cycles`` collection. with ``cell_id`` set: one...", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L125" + "norm_label": "the y-axis title for ``y``/``y2``/... \u2014 what names the facet on screen.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L864" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_926", + "label": "Carry user-facing notes in ``layout.meta.warnings`` (#175). Plotly's ``meta``\u2026", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "rationale", + "norm_label": "carry user-facing notes in ``layout.meta.warnings`` (#175). plotly's ``meta``...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L926" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_949", + "label": "Raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2\u2026", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "rationale", + "norm_label": "raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L949" }, { "id": "httpexception", "label": "HTTPException", "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "httpexception", "source_file": "", "source_location": "" }, + { + "id": "runtimeerror", + "label": "RuntimeError", + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "runtimeerror", + "source_file": "", + "source_location": "" + }, { "id": "src_cellpy_simple_gui_api_routers_export", "label": "routers/export.py", "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "routers/export.py", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -59426,7 +60442,7 @@ "label": "post", "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "post", "source_file": "", @@ -59437,29 +60453,41 @@ "label": "Response", "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", "norm_label": "response", "source_file": "", "source_location": "" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_py_comparepicks", - "label": "ComparePicks", + "id": "src_cellpy_simple_gui_core_export", + "label": "core/export.py", "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "code", - "norm_label": "comparepicks", - "source_file": "", - "source_location": "" + "norm_label": "core/export.py", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue169_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L64" }, { "id": "src_cellpy_simple_gui_api_routers_export_rationale_1", "label": "Export endpoints: collected data, library cells, and static figures.", "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "rationale", "norm_label": "export endpoints: collected data, library cells, and static figures.", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -59470,7 +60498,7 @@ "label": "Compare-mode data or figure: exactly the picked (cell, cycle) pairs (#169).", "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "rationale", "norm_label": "compare-mode data or figure: exactly the picked (cell, cycle) pairs (#169).", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -59481,7 +60509,7 @@ "label": "dV/dQ data or figure for one cell (#94) \u2014 same access as dQ/dV.", "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "rationale", "norm_label": "dv/dq data or figure for one cell (#94) \u2014 same access as dq/dv.", "source_file": "src/cellpy_simple_gui/api/routers/export.py", @@ -59492,22 +60520,121 @@ "label": "Export selected (or listed) library cells via cellpy save/to_csv/to_excel.", "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "rationale", "norm_label": "export selected (or listed) library cells via cellpy save/to_csv/to_excel.", "source_file": "src/cellpy_simple_gui/api/routers/export.py", "source_location": "L179" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_rationale_113", - "label": "Resolve every pick's cell; a missing one names itself in the 404.", + "id": "src_cellpy_simple_gui_core_export_rationale_1", + "label": "Data + static-figure export. Data path: cellpy collections \u2192 csv / xlsx /\u2026", "_origin": "ast", "community": 30, - "community_name": "routers/export.py", + "community_name": "CyclesPlotSpec", "file_type": "rationale", - "norm_label": "resolve every pick's cell; a missing one names itself in the 404.", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L113" + "norm_label": "data + static-figure export. data path: cellpy collections \u2192 csv / xlsx /...", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_169", + "label": "Render Plotly figure JSON to static image bytes (requires kaleido). Delegates\u2026", + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "render plotly figure json to static image bytes (requires kaleido). delegates...", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L169" + }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_214", + "label": "Stable, filesystem-safe stems; disambiguate duplicates with ``_2``, \u2026", + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "stable, filesystem-safe stems; disambiguate duplicates with ``_2``, ...", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L214" + }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_256", + "label": "Export library cells via cellpy save/to_csv/to_excel. Returns ``(bytes,\u2026", + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "export library cells via cellpy save/to_csv/to_excel. returns ``(bytes,...", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L256" + }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_52", + "label": "Static figure export failed (often missing kaleido or its browser).", + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "static figure export failed (often missing kaleido or its browser).", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L52" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_133", + "label": "Drives a cellpy ``collect_cycles`` collection. With ``cell_id`` set: one\u2026", + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "drives a cellpy ``collect_cycles`` collection. with ``cell_id`` set: one...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L133" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_264", + "label": "Differential voltage (dV/dQ vs capacity) for one cell \u2014 developer mode. Same\u2026", + "_origin": "ast", + "community": 30, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "differential voltage (dv/dq vs capacity) for one cell \u2014 developer mode. same...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L264" + }, + { + "id": "tests_conftest", + "label": "conftest.py", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "conftest.py", + "source_file": "tests/conftest.py", + "source_location": "L1" + }, + { + "id": "tests_test_agent_docs", + "label": "test_agent_docs.py", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "test_agent_docs.py", + "source_file": "tests/test_agent_docs.py", + "source_location": "L1" + }, + { + "id": "tests_test_agent_docs_py_fixture", + "label": "fixture", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "code", + "norm_label": "fixture", + "source_file": "", + "source_location": "" }, { "id": "tests_test_api_reference", @@ -59553,17 +60680,6 @@ "source_file": "", "source_location": "" }, - { - "id": "tests_test_journal", - "label": "test_journal.py", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "test_journal.py", - "source_file": "tests/test_journal.py", - "source_location": "L1" - }, { "id": "tests_test_starter", "label": "test_starter.py", @@ -59586,6 +60702,83 @@ "source_file": "", "source_location": "" }, + { + "id": "tests_conftest_rationale_1", + "label": "Shared test fixtures. The example cells are downloaded from GitHub on first use\u2026", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "rationale", + "norm_label": "shared test fixtures. the example cells are downloaded from github on first use...", + "source_file": "tests/conftest.py", + "source_location": "L1" + }, + { + "id": "tests_test_agent_docs_rationale_1", + "label": "`llms.txt`, `llms-full.txt` and the Claude Skill (#127). These are the\u2026", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "rationale", + "norm_label": "`llms.txt`, `llms-full.txt` and the claude skill (#127). these are the...", + "source_file": "tests/test_agent_docs.py", + "source_location": "L1" + }, + { + "id": "tests_test_agent_docs_rationale_100", + "label": "The API listing is the cheap half. These are why the skill exists.", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "rationale", + "norm_label": "the api listing is the cheap half. these are why the skill exists.", + "source_file": "tests/test_agent_docs.py", + "source_location": "L100" + }, + { + "id": "tests_test_agent_docs_rationale_116", + "label": "Installed elsewhere, the skill has no repo to fall back on.", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "rationale", + "norm_label": "installed elsewhere, the skill has no repo to fall back on.", + "source_file": "tests/test_agent_docs.py", + "source_location": "L116" + }, + { + "id": "tests_test_agent_docs_rationale_55", + "label": "A dead link in an index written for machines is silent until it is not.", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "rationale", + "norm_label": "a dead link in an index written for machines is silent until it is not.", + "source_file": "tests/test_agent_docs.py", + "source_location": "L55" + }, + { + "id": "tests_test_agent_docs_rationale_65", + "label": "Adding a guide without listing it is the easy mistake; catch it here.", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "rationale", + "norm_label": "adding a guide without listing it is the easy mistake; catch it here.", + "source_file": "tests/test_agent_docs.py", + "source_location": "L65" + }, + { + "id": "tests_test_agent_docs_rationale_72", + "label": "An index is cheap; the concatenation is what an agent will rely on.", + "_origin": "ast", + "community": 304, + "community_name": "test_starter.py", + "file_type": "rationale", + "norm_label": "an index is cheap; the concatenation is what an agent will rely on.", + "source_file": "tests/test_agent_docs.py", + "source_location": "L72" + }, { "id": "tests_test_api_reference_rationale_1", "label": "Keep `docs/api-reference.md` honest (#127). The reference exists so an agent\u2026", @@ -59685,39 +60878,6 @@ "source_file": "tests/test_guides.py", "source_location": "L45" }, - { - "id": "tests_test_journal_rationale_1", - "label": "Tests for loading native cellpy batch journals.", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "tests for loading native cellpy batch journals.", - "source_file": "tests/test_journal.py", - "source_location": "L1" - }, - { - "id": "tests_test_journal_rationale_10", - "label": "Write a real cellpy batch journal referencing the bundled example files.", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "write a real cellpy batch journal referencing the bundled example files.", - "source_file": "tests/test_journal.py", - "source_location": "L10" - }, - { - "id": "tests_test_journal_rationale_52", - "label": "A journal pointing at non-existent .cellpy files yields no linkable cells.", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "a journal pointing at non-existent .cellpy files yields no linkable cells.", - "source_file": "tests/test_journal.py", - "source_location": "L52" - }, { "id": "tests_test_starter_rationale_1", "label": "The starter app in ``examples/starter/`` (#125). The starter is documentation\u2026", @@ -60009,257 +61169,12 @@ "source_file": "packaging/build_installer.ps1", "source_location": "L1" }, - { - "id": "cursor_skills_iflow_setup_skill", - "label": "iflow-setup/SKILL.md", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "frontmatter": { - "name": "iflow-setup", - "description": ">-", - "disable-model-invocation": "true", - "issue-flow-version": "0.4.2a4" - }, - "node_kind": "page", - "norm_label": "iflow-setup/skill.md", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L1" - }, - { - "id": "cursor_skills_iflow_status_skill", - "label": "iflow-status/SKILL.md", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "frontmatter": { - "name": "iflow-status", - "description": ">-", - "disable-model-invocation": "true", - "issue-flow-version": "0.4.2a4" - }, - "node_kind": "page", - "norm_label": "iflow-status/skill.md", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L1" - }, - { - "id": "cursor_skills_gh_ci_skill", - "label": "gh-ci/SKILL.md", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "frontmatter": { - "name": "gh-ci", - "description": ">-", - "issue-flow-version": "0.4.2a4" - }, - "node_kind": "page", - "norm_label": "gh-ci/skill.md", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L1" - }, - { - "id": "cursor_skills_gh_ci_skill_fallback_workflow_runs", - "label": "Fallback (workflow runs)", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "fallback (workflow runs)", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L34" - }, - { - "id": "cursor_skills_gh_ci_skill_gh_ci_wait_on_github_ci_with_gh", - "label": "gh-ci \u2014 wait on GitHub CI with `gh`", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "gh-ci \u2014 wait on github ci with `gh`", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L12" - }, - { - "id": "cursor_skills_gh_ci_skill_primary_pr_attached_checks", - "label": "Primary (PR-attached checks)", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "primary (pr-attached checks)", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L17" - }, - { - "id": "cursor_skills_gh_ci_skill_semantics", - "label": "Semantics", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "semantics", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L47" - }, - { - "id": "cursor_skills_gh_ci_skill_where_this_fits", - "label": "Where this fits", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "where this fits", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L55" - }, - { - "id": "cursor_skills_iflow_setup_skill_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L110" - }, - { - "id": "cursor_skills_iflow_setup_skill_input", - "label": "Input", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "input", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L63" - }, - { - "id": "cursor_skills_iflow_setup_skill_instructions", - "label": "Instructions", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "instructions", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L70" - }, - { - "id": "cursor_skills_iflow_setup_skill_issue_flow_guided_project_setup_iflow_setup", - "label": "issue-flow \u2014 guided project setup (`/iflow-setup`)", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue-flow \u2014 guided project setup (`/iflow-setup`)", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L10" - }, - { - "id": "cursor_skills_iflow_setup_skill_model_execution_directive", - "label": "MODEL & EXECUTION DIRECTIVE", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "model & execution directive", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L27" - }, - { - "id": "cursor_skills_iflow_setup_skill_resolve_project_root_multi_root_workspaces", - "label": "Resolve project root (multi-root workspaces)", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "resolve project root (multi-root workspaces)", - "source_file": ".cursor/skills/iflow-setup/SKILL.md", - "source_location": "L41" - }, - { - "id": "cursor_skills_iflow_status_skill_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L84" - }, - { - "id": "cursor_skills_iflow_status_skill_instructions", - "label": "Instructions", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "instructions", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L56" - }, - { - "id": "cursor_skills_iflow_status_skill_issue_flow_issue_status_overview_iflow_status", - "label": "issue-flow \u2014 issue status overview (`/iflow-status`)", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue-flow \u2014 issue status overview (`/iflow-status`)", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L9" - }, - { - "id": "cursor_skills_iflow_status_skill_model_execution_directive", - "label": "MODEL & EXECUTION DIRECTIVE", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "model & execution directive", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L21" - }, - { - "id": "cursor_skills_iflow_status_skill_resolve_project_root_multi_root_workspaces", - "label": "Resolve project root (multi-root workspaces)", - "_origin": "ast", - "community": 32, - "community_name": "gh", - "file_type": "document", - "node_kind": "heading", - "norm_label": "resolve project root (multi-root workspaces)", - "source_file": ".cursor/skills/iflow-status/SKILL.md", - "source_location": "L35" - }, { "id": "docs_issue_workflow", "label": "issue-workflow.md", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "page", "norm_label": "issue-workflow.md", @@ -60271,7 +61186,7 @@ "label": "0. `/iflow` \u2014 smart dispatcher (quick start)", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "0. `/iflow` \u2014 smart dispatcher (quick start)", @@ -60283,7 +61198,7 @@ "label": "0a. `/iflow-pick` \u2014 choose the next issue (front door)", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "0a. `/iflow-pick` \u2014 choose the next issue (front door)", @@ -60295,7 +61210,7 @@ "label": "10. `/iflow-issue` \u2014 create a normal (non-epic) issue", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "10. `/iflow-issue` \u2014 create a normal (non-epic) issue", @@ -60307,7 +61222,7 @@ "label": "10a. `/iflow-split` \u2014 linked sub-issues for an over-large issue", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "10a. `/iflow-split` \u2014 linked sub-issues for an over-large issue", @@ -60319,7 +61234,7 @@ "label": "11. `/iflow-status` \u2014 status overview of all issues (read-only)", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "11. `/iflow-status` \u2014 status overview of all issues (read-only)", @@ -60331,7 +61246,7 @@ "label": "12. `/iflow-review` \u2014 review open issues and apply labels", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "12. `/iflow-review` \u2014 review open issues and apply labels", @@ -60343,7 +61258,7 @@ "label": "13. `/iflow-epic` \u2014 plan a large change as staged issues", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "13. `/iflow-epic` \u2014 plan a large change as staged issues", @@ -60355,7 +61270,7 @@ "label": "17. `/iflow-archive` \u2014 condense the solved-issues archive (destructive, gated)", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "17. `/iflow-archive` \u2014 condense the solved-issues archive (destructive, gated)", @@ -60367,7 +61282,7 @@ "label": "1. `/iflow-capture` \u2014 capture the issue locally", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "1. `/iflow-capture` \u2014 capture the issue locally", @@ -60379,7 +61294,7 @@ "label": "1a. `/iflow-init` \u2014 cold-start the harness (off-path)", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "1a. `/iflow-init` \u2014 cold-start the harness (off-path)", @@ -60391,7 +61306,7 @@ "label": "2. `/iflow-plan` \u2014 design the approach", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "2. `/iflow-plan` \u2014 design the approach", @@ -60403,7 +61318,7 @@ "label": "3. `/iflow-build` \u2014 implement the plan", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "3. `/iflow-build` \u2014 implement the plan", @@ -60415,7 +61330,7 @@ "label": "4. `/iflow-pause` \u2014 park work safely", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "4. `/iflow-pause` \u2014 park work safely", @@ -60427,7 +61342,7 @@ "label": "5. `/iflow-close` \u2014 land the work", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "5. `/iflow-close` \u2014 land the work", @@ -60439,7 +61354,7 @@ "label": "6. `/iflow-cleanup` \u2014 post-merge branch hygiene", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "6. `/iflow-cleanup` \u2014 post-merge branch hygiene", @@ -60451,7 +61366,7 @@ "label": "7. `/iflow-graphify` \u2014 rebuild the knowledge graph (optional)", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "7. `/iflow-graphify` \u2014 rebuild the knowledge graph (optional)", @@ -60463,7 +61378,7 @@ "label": "8. `/iflow-yolo` \u2014 all-in-one for small issues", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "8. `/iflow-yolo` \u2014 all-in-one for small issues", @@ -60475,7 +61390,7 @@ "label": "8b. `/iflow-ops` \u2014 ops / no-PR work", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "8b. `/iflow-ops` \u2014 ops / no-pr work", @@ -60487,7 +61402,7 @@ "label": "9. `/iflow-fix` \u2014 interactive iterative-fixes session", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "9. `/iflow-fix` \u2014 interactive iterative-fixes session", @@ -60499,7 +61414,7 @@ "label": "Agent Skills", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "agent skills", @@ -60511,7 +61426,7 @@ "label": "Branch and folder hygiene", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "branch and folder hygiene", @@ -60523,7 +61438,7 @@ "label": "Cursor issue workflow (Agent Skills)", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "cursor issue workflow (agent skills)", @@ -60535,7 +61450,7 @@ "label": "End-to-end flow", "_origin": "ast", "community": 32, - "community_name": "gh", + "community_name": "Cursor issue workflow (Agent Skills)", "file_type": "document", "node_kind": "heading", "norm_label": "end-to-end flow", @@ -60635,6 +61550,42 @@ "source_file": "", "source_location": "" }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_configuration_cellpy_config_new_in_2_1_2", + "label": "Configuration (`cellpy.config`, new in 2.1.2)", + "_origin": "ast", + "community": 35, + "community_name": "cellpy_config.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "configuration (`cellpy.config`, new in 2.1.2)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L67" + }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_resolved_in_2_1_2a3", + "label": "Resolved in 2.1.2a3", + "_origin": "ast", + "community": 35, + "community_name": "cellpy_config.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "resolved in 2.1.2a3", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L84" + }, + { + "id": "issueflows_04_designs_and_guides_mcp_server_design_hard_part_1_state", + "label": "Hard part 1 \u2014 state", + "_origin": "ast", + "community": 35, + "community_name": "cellpy_config.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "hard part 1 \u2014 state", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L75" + }, { "id": "src_cellpy_simple_gui_core_cellpy_config_rationale_1", "label": "Read-only view of cellpy's layered configuration. Answers \"where is cellpy\u2026", @@ -61004,12 +61955,23 @@ "source_file": "docs/issue-workflow.md", "source_location": "L491" }, + { + "id": "tests_conftest_py_fixture", + "label": "fixture", + "_origin": "ast", + "community": 38, + "community_name": "Plan \u2014 Issue #169: Compare selected cells", + "file_type": "code", + "norm_label": "fixture", + "source_file": "", + "source_location": "" + }, { "id": "issueflows_03_solved_issues_issue169_plan", "label": "issue169_plan.md", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "page", "norm_label": "issue169_plan.md", @@ -61021,7 +61983,7 @@ "label": "1. Spec \u2014 `core/models.py`", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "1. spec \u2014 `core/models.py`", @@ -61033,7 +61995,7 @@ "label": "5. UI \u2014 `web/templates/index.html`, `web/static/js/app.js`, `app.css`", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "5. ui \u2014 `web/templates/index.html`, `web/static/js/app.js`, `app.css`", @@ -61045,7 +62007,7 @@ "label": "6. Docs", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "6. docs", @@ -61057,31 +62019,19 @@ "label": "Approach", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "approach", "source_file": ".issueflows/03-solved-issues/issue169_plan.md", "source_location": "L90" }, - { - "id": "issueflows_03_solved_issues_issue169_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L38" - }, { "id": "issueflows_03_solved_issues_issue169_plan_goal", "label": "Goal", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -61093,7 +62043,7 @@ "label": "Open questions", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -61105,7 +62055,7 @@ "label": "Plan \u2014 Issue #169: Compare selected cells", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "plan \u2014 issue #169: compare selected cells", @@ -61113,266 +62063,59 @@ "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue169_plan_what_exists_today_and_the_gap", - "label": "What exists today, and the gap", + "id": "issueflows_03_solved_issues_issue169_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", - "norm_label": "what exists today, and the gap", + "norm_label": "test strategy", "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L13" - }, - { - "id": "issueflows_03_solved_issues_issue186_status", - "label": "issue186_status.md", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue186_status.md", - "source_file": ".issueflows/03-solved-issues/issue186_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue186_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue186_status.md", - "source_location": "L24" - }, - { - "id": "issueflows_03_solved_issues_issue186_status_status_186_y_ranges_ignored_with_group_avg_spread", - "label": "Status \u2014 #186 y ranges ignored with Group avg + Spread", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "document", - "node_kind": "heading", - "norm_label": "status \u2014 #186 y ranges ignored with group avg + spread", - "source_file": ".issueflows/03-solved-issues/issue186_status.md", - "source_location": "L1" + "source_location": "L208" }, { - "id": "issueflows_03_solved_issues_issue186_status_what_s_done", - "label": "What's done", + "id": "issueflows_03_solved_issues_issue169_plan_what_exists_today_and_the_gap", + "label": "What exists today, and the gap", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue186_status.md", - "source_location": "L7" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_774", - "label": "Give spread traces the hover the plain group-average plot already has (#40).\u2026", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "rationale", - "norm_label": "give spread traces the hover the plain group-average plot already has (#40)....", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L774" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_808", - "label": "Match the fields the non-averaged plot shows: series, variable, x, y.", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "rationale", - "norm_label": "match the fields the non-averaged plot shows: series, variable, x, y.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L808" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_816", - "label": "Put the band half-width on the mean trace so hover can show ``\u00b1 std``.", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "rationale", - "norm_label": "put the band half-width on the mean trace so hover can show ``\u00b1 std``.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L816" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_834", - "label": "Traces grouped by the subplot they live on, in figure order.", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "rationale", - "norm_label": "traces grouped by the subplot they live on, in figure order.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L834" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_843", - "label": "The y-axis title for ``y``/``y2``/\u2026 \u2014 what names the facet on screen.", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "rationale", - "norm_label": "the y-axis title for ``y``/``y2``/... \u2014 what names the facet on screen.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L843" - }, - { - "id": "tests_test_core_rationale_1152", - "label": "Two demo cells in one group (so Group avg averages) plus a singleton.", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "rationale", - "norm_label": "two demo cells in one group (so group avg averages) plus a singleton.", - "source_file": "tests/test_core.py", - "source_location": "L1152" - }, - { - "id": "tests_test_core_rationale_1168", - "label": "Layout y-axis whose title contains ``needle`` (case-insensitive).", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "rationale", - "norm_label": "layout y-axis whose title contains ``needle`` (case-insensitive).", - "source_file": "tests/test_core.py", - "source_location": "L1168" - }, - { - "id": "tests_test_core_rationale_1181", - "label": "Group avg + Spread must honour per-panel y_ranges (#186). The spread hover\u2026", - "_origin": "ast", - "community": 38, - "community_name": "_add_spread_hover", - "file_type": "rationale", - "norm_label": "group avg + spread must honour per-panel y_ranges (#186). the spread hover...", - "source_file": "tests/test_core.py", - "source_location": "L1181" + "norm_label": "what exists today, and the gap", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L13" }, { - "id": "tests_test_core_rationale_1218", - "label": "A blank end is filled from the spread panel's own extent (#186).", + "id": "issueflows_03_solved_issues_issue1_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 38, - "community_name": "_add_spread_hover", - "file_type": "rationale", - "norm_label": "a blank end is filled from the spread panel's own extent (#186).", - "source_file": "tests/test_core.py", - "source_location": "L1218" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan", - "label": "issue186_plan.md", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue186_plan.md", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L22" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L30" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", - "label": "Plan \u2014 #186 y ranges ignored with Group avg + Spread", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plan \u2014 #186 y ranges ignored with group avg + spread", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", - "label": "Root cause (reproduced with two demo cells in one group)", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "root cause (reproduced with two demo cells in one group)", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L8" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L95" }, { - "id": "issueflows_03_solved_issues_issue186_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue2_plan_test_strategy", "label": "Test strategy", "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", + "community": 38, + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L36" - }, - { - "id": "issueflows_03_solved_issues_issue54_plan", - "label": "issue54_plan.md", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue54_plan.md", - "source_file": ".issueflows/03-solved-issues/issue54_plan.md", - "source_location": "L1" + "source_file": ".issueflows/03-solved-issues/issue2_plan.md", + "source_location": "L106" }, { "id": "issueflows_03_solved_issues_issue60_original", "label": "issue60_original.md", "_origin": "ast", "community": 39, - "community_name": "_apply_y_ranges", + "community_name": "Original issue text", "file_type": "document", "node_kind": "page", "norm_label": "issue60_original.md", @@ -61384,7 +62127,7 @@ "label": "Acceptance criteria", "_origin": "ast", "community": 39, - "community_name": "_apply_y_ranges", + "community_name": "Original issue text", "file_type": "document", "node_kind": "heading", "norm_label": "acceptance criteria", @@ -61396,7 +62139,7 @@ "label": "Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet", "_origin": "ast", "community": 39, - "community_name": "_apply_y_ranges", + "community_name": "Original issue text", "file_type": "document", "node_kind": "heading", "norm_label": "issue #60: fix: summary y_ranges warn/miss on charge_capacity facet", @@ -61408,7 +62151,7 @@ "label": "Original issue text", "_origin": "ast", "community": 39, - "community_name": "_apply_y_ranges", + "community_name": "Original issue text", "file_type": "document", "node_kind": "heading", "norm_label": "original issue text", @@ -61420,7 +62163,7 @@ "label": "Out of scope", "_origin": "ast", "community": 39, - "community_name": "_apply_y_ranges", + "community_name": "Original issue text", "file_type": "document", "node_kind": "heading", "norm_label": "out of scope", @@ -61432,225 +62175,13 @@ "label": "Problem / context", "_origin": "ast", "community": 39, - "community_name": "_apply_y_ranges", + "community_name": "Original issue text", "file_type": "document", "node_kind": "heading", "norm_label": "problem / context", "source_file": ".issueflows/03-solved-issues/issue60_original.md", "source_location": "L7" }, - { - "id": "issueflows_03_solved_issues_issue60_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L16" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan", - "label": "issue60_plan.md", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue60_plan.md", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L23" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L10" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L36" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_issue_60_plan_summary_y_ranges_facet_miss", - "label": "Issue #60 plan \u2014 summary y_ranges facet miss", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #60 plan \u2014 summary y_ranges facet miss", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L52" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L44" - }, - { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales", - "label": "summary-independent-y-scales.md", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "page", - "norm_label": "summary-independent-y-scales.md", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_alternatives_considered", - "label": "Alternatives considered", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", - "source_location": "L31" - }, - { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_context", - "label": "Context", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", - "source_location": "L3" - }, - { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_decision", - "label": "Decision", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", - "source_location": "L9" - }, - { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_summary_plot_y_scales_2_54", - "label": "Summary plot y-scales (#2, #54)", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "document", - "node_kind": "heading", - "norm_label": "summary plot y-scales (#2, #54)", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_1006", - "label": "Map facet ``variable`` \u2192 ``(xaxis_id, yaxis_id)`` from base traces. Prefer\u2026", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "rationale", - "norm_label": "map facet ``variable`` \u2192 ``(xaxis_id, yaxis_id)`` from base traces. prefer...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1006" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_1025", - "label": "Pull ``variable=`` from a PX hovertemplate, if present.", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "rationale", - "norm_label": "pull ``variable=`` from a px hovertemplate, if present.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1025" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_1041", - "label": "Set per-facet ``[lo, hi]`` on the merged summary figure (#60 / #54). Prefer\u2026", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "rationale", - "norm_label": "set per-facet ``[lo, hi]`` on the merged summary figure (#60 / #54). prefer...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1041" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_745", - "label": "``yaxis`` \u2192 ``y``, ``yaxis2`` \u2192 ``y2``.", - "_origin": "ast", - "community": 39, - "community_name": "_apply_y_ranges", - "file_type": "rationale", - "norm_label": "``yaxis`` \u2192 ``y``, ``yaxis2`` \u2192 ``y2``.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L745" - }, { "id": "issueflows_03_solved_issues_issue168_plan", "label": "issue168_plan.md", @@ -62256,18 +62787,6 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L380" }, - { - "id": "cellpy_painpoints_16_ica_plotter_direction_gaps_line_plots_both", - "label": "16. \ud83d\udfe2 ICA plotter direction gaps (line plots + `both`)", - "_origin": "ast", - "community": 47, - "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "16. \ud83d\udfe2 ica plotter direction gaps (line plots + `both`)", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L400" - }, { "id": "cellpy_painpoints_17_cycles_plotter_ignores_collect_mode_for_x_unit", "label": "17. \ud83d\udfe2 Cycles plotter ignores collect `mode` for `x_unit`", @@ -62316,18 +62835,6 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L508" }, - { - "id": "cellpy_painpoints_21_no_selective_summary_rebuild_after_meta_edits", - "label": "21. \ud83d\udfe0 No selective summary rebuild after meta edits", - "_origin": "ast", - "community": 47, - "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "21. \ud83d\udfe0 no selective summary rebuild after meta edits", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L529" - }, { "id": "cellpy_painpoints_22_model_dump_for_file_wrote_credentials_in_plaintext", "label": "22. \ud83d\udd34 `model_dump_for_file()` wrote credentials in plaintext", @@ -62461,28 +62968,28 @@ "source_location": "L1017" }, { - "id": "cellpy_painpoints_4_curveoptions_can_t_set_capacity_mode_method", - "label": "4. \ud83d\udfe0 `CurveOptions` can't set capacity mode / method", + "id": "cellpy_painpoints_3_silent_all_or_nothing_group_averaging_when_any_group_is_a_singleton", + "label": "3. \ud83d\udfe0 Silent all-or-nothing group-averaging when any group is a singleton", "_origin": "ast", "community": 47, "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", "file_type": "document", "node_kind": "heading", - "norm_label": "4. \ud83d\udfe0 `curveoptions` can't set capacity mode / method", + "norm_label": "3. \ud83d\udfe0 silent all-or-nothing group-averaging when any group is a singleton", "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L209" + "source_location": "L171" }, { - "id": "cellpy_painpoints_5_instrument_discovery_logs_a_warning_per_non_loader_module", - "label": "5. \ud83d\udfe0 Instrument discovery logs a WARNING per non-loader module", + "id": "cellpy_painpoints_4_curveoptions_can_t_set_capacity_mode_method", + "label": "4. \ud83d\udfe0 `CurveOptions` can't set capacity mode / method", "_origin": "ast", "community": 47, "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", "file_type": "document", "node_kind": "heading", - "norm_label": "5. \ud83d\udfe0 instrument discovery logs a warning per non-loader module", + "norm_label": "4. \ud83d\udfe0 `curveoptions` can't set capacity mode / method", "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L219" + "source_location": "L209" }, { "id": "cellpy_painpoints_6_collection_save_only_supports_parquet_csv", @@ -62592,122 +63099,23 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L1049" }, - { - "id": "examples_mcp_server", - "label": "mcp/server.py", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "mcp/server.py", - "source_file": "examples/mcp/server.py", - "source_location": "L1" - }, - { - "id": "fastapi", - "label": "FastAPI", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "fastapi", - "source_file": "", - "source_location": "" - }, { "id": "logrecord", "label": "LogRecord", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "logrecord", "source_file": "", "source_location": "" }, - { - "id": "packaging_smoke_test", - "label": "smoke_test.py", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "smoke_test.py", - "source_file": "packaging/smoke_test.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_app", - "label": "api/app.py", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "api/app.py", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_deps", - "label": "deps.py", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "deps.py", - "source_file": "src/cellpy_simple_gui/api/deps.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_routers_init", - "label": "routers/__init__.py", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "routers/__init__.py", - "source_file": "src/cellpy_simple_gui/api/routers/__init__.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system", - "label": "system.py", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "system.py", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_py_get", - "label": "get", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "get", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_config", - "label": "config.py", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "config.py", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_desktop", "label": "desktop.py", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "desktop.py", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -62718,7 +63126,7 @@ "label": "logging_setup.py", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "logging_setup.py", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62729,7 +63137,7 @@ "label": "Path", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "path", "source_file": "", @@ -62740,7 +63148,7 @@ "label": "__main__.py", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "__main__.py", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -62751,29 +63159,18 @@ "label": "cellpy_simple_gui/server.py", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "code", "norm_label": "cellpy_simple_gui/server.py", "source_file": "src/cellpy_simple_gui/server.py", "source_location": "L1" }, - { - "id": "tests_test_api_py_fixture", - "label": "fixture", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "fixture", - "source_file": "", - "source_location": "" - }, { "id": "issueflows_03_solved_issues_issue12_plan", "label": "issue12_plan.md", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "page", "norm_label": "issue12_plan.md", @@ -62785,7 +63182,7 @@ "label": "Approach", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -62797,7 +63194,7 @@ "label": "Files to touch", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -62809,7 +63206,7 @@ "label": "Goal", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -62821,7 +63218,7 @@ "label": "Plan: Issue #12 \u2014 add logging", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "plan: issue #12 \u2014 add logging", @@ -62833,7 +63230,7 @@ "label": "Test strategy", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -62845,7 +63242,7 @@ "label": "issue12_status.md", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "page", "norm_label": "issue12_status.md", @@ -62857,7 +63254,7 @@ "label": "Done", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "done", @@ -62869,19 +63266,31 @@ "label": "Status: Issue #12 \u2014 add logging", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "status: issue #12 \u2014 add logging", "source_file": ".issueflows/03-solved-issues/issue12_status.md", "source_location": "L1" }, + { + "id": "issueflows_03_solved_issues_issue160_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 48, + "community_name": "logging_setup.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L38" + }, { "id": "issueflows_03_solved_issues_issue48_plan", "label": "issue48_plan.md", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "page", "norm_label": "issue48_plan.md", @@ -62893,7 +63302,7 @@ "label": "Approach", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -62905,7 +63314,7 @@ "label": "Constraints", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -62917,7 +63326,7 @@ "label": "Files to touch", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -62929,7 +63338,7 @@ "label": "Goal", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -62941,7 +63350,7 @@ "label": "Issue #48 \u2014 create gui tests (plan)", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "issue #48 \u2014 create gui tests (plan)", @@ -62953,7 +63362,7 @@ "label": "Open questions", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -62965,7 +63374,7 @@ "label": "Prior art", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", @@ -62977,7 +63386,7 @@ "label": "Test strategy", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -62989,7 +63398,7 @@ "label": "issue48_status.md", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "page", "norm_label": "issue48_status.md", @@ -63001,7 +63410,7 @@ "label": "Issue #48 \u2014 status", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "issue #48 \u2014 status", @@ -63013,7 +63422,7 @@ "label": "Remaining work", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -63025,173 +63434,19 @@ "label": "What's done", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", "source_file": ".issueflows/03-solved-issues/issue48_status.md", "source_location": "L5" }, - { - "id": "examples_mcp_server_rationale_51", - "label": "# NOTE: `mcp.server.mcpserver.Context` \u2014 *not* `mcp.server.context.Context`.", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "# note: `mcp.server.mcpserver.context` \u2014 *not* `mcp.server.context.context`.", - "source_file": "examples/mcp/server.py", - "source_location": "L51" - }, - { - "id": "examples_mcp_server_rationale_9", - "label": "A prototype MCP server for cellpy \u2014 enough to prove or disprove the design.\u2026", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "a prototype mcp server for cellpy \u2014 enough to prove or disprove the design....", - "source_file": "examples/mcp/server.py", - "source_location": "L9" - }, - { - "id": "packaging_smoke_test_rationale_1", - "label": "Smoke-test a built app by driving it over HTTP. Deliberately talks to a\u2026", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "smoke-test a built app by driving it over http. deliberately talks to a...", - "source_file": "packaging/smoke_test.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_app_rationale_1", - "label": "FastAPI application factory.", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "fastapi application factory.", - "source_file": "src/cellpy_simple_gui/api/app.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_deps_rationale_1", - "label": "Shared dependencies: templates and the local-token guard.", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "shared dependencies: templates and the local-token guard.", - "source_file": "src/cellpy_simple_gui/api/deps.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_deps_rationale_37", - "label": "Guard API routes. The index page plants the token as a cookie; the frontend\u2026", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "guard api routes. the index page plants the token as a cookie; the frontend...", - "source_file": "src/cellpy_simple_gui/api/deps.py", - "source_location": "L37" - }, - { - "id": "src_cellpy_simple_gui_api_routers_plots_rationale_142", - "label": "Guard endpoints that only exist in developer mode (#97).", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "guard endpoints that only exist in developer mode (#97).", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L142" - }, - { - "id": "src_cellpy_simple_gui_api_routers_plots_rationale_26", - "label": "Curated summary plot types, with panel ids for the current capacity basis.\u2026", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "curated summary plot types, with panel ids for the current capacity basis....", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L26" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_1", - "label": "System endpoints: capability probe, native file pickers, config diagnostics.", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "system endpoints: capability probe, native file pickers, config diagnostics.", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_109", - "label": "Where cellpy resolves each setting from (read-only; secrets never included).", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "where cellpy resolves each setting from (read-only; secrets never included).", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L109" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_40", - "label": "The active pywebview window, or None when running as a plain server.", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "the active pywebview window, or none when running as a plain server.", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L40" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_85", - "label": "Recent log records \u2014 developer mode (#97). Saves a round trip to\u2026", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "recent log records \u2014 developer mode (#97). saves a round trip to...", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L85" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_99", - "label": "Recent jobs with queue and run times \u2014 developer mode (#97).", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "recent jobs with queue and run times \u2014 developer mode (#97).", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L99" - }, - { - "id": "src_cellpy_simple_gui_config_rationale_1", - "label": "Application settings and paths.", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "application settings and paths.", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_desktop_rationale_1", "label": "Desktop shell: run the local app inside a native window via pywebview.", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "desktop shell: run the local app inside a native window via pywebview.", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -63202,7 +63457,7 @@ "label": "Destroy open windows so webview.start() can return.", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "destroy open windows so webview.start() can return.", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -63213,7 +63468,7 @@ "label": "Make Ctrl+C close the native window (SIGINT alone often never fires in the GUI\u2026", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "make ctrl+c close the native window (sigint alone often never fires in the gui...", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -63224,7 +63479,7 @@ "label": "Stop jobs + uvicorn so the process can exit and free the terminal.", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "stop jobs + uvicorn so the process can exit and free the terminal.", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -63235,7 +63490,7 @@ "label": "Terminal logging via loguru, with a stdlib logging bridge.", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "terminal logging via loguru, with a stdlib logging bridge.", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -63246,7 +63501,7 @@ "label": "Forward stdlib logging records into loguru.", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "forward stdlib logging records into loguru.", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -63257,7 +63512,7 @@ "label": "Configure colorized loguru output on stderr and intercept stdlib logging. Level\u2026", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "configure colorized loguru output on stderr and intercept stdlib logging. level...", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -63268,7 +63523,7 @@ "label": "Where a windowed build writes its log, resolved without app config.\u2026", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "where a windowed build writes its log, resolved without app config....", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -63279,7 +63534,7 @@ "label": "False in a windowed PyInstaller build, where there is no console.\u2026", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "false in a windowed pyinstaller build, where there is no console....", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -63290,29 +63545,18 @@ "label": "Start capturing records for the in-app viewer (idempotent). Also installs the\u2026", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "start capturing records for the in-app viewer (idempotent). also installs the...", "source_file": "src/cellpy_simple_gui/logging_setup.py", "source_location": "L67" }, - { - "id": "src_cellpy_simple_gui_logging_setup_rationale_84", - "label": "Newest-last slice of the ring, optionally filtered to a minimum level.", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "newest-last slice of the ring, optionally filtered to a minimum level.", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L84" - }, { "id": "src_cellpy_simple_gui_main_rationale_1", "label": "Entry point. cellpy-simple-gui -> open in a native desktop window (default)\u2026", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "entry point. cellpy-simple-gui -> open in a native desktop window (default)...", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -63323,7 +63567,7 @@ "label": "Give cellpy's writable directories an absolute home before it picks one.\u2026", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "give cellpy's writable directories an absolute home before it picks one....", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -63334,7 +63578,7 @@ "label": "Server helpers shared by the plain-browser and desktop entry points.", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "server helpers shared by the plain-browser and desktop entry points.", "source_file": "src/cellpy_simple_gui/server.py", @@ -63345,7 +63589,7 @@ "label": "Run uvicorn in a background thread so a desktop window can own the main thread.", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "run uvicorn in a background thread so a desktop window can own the main thread.", "source_file": "src/cellpy_simple_gui/server.py", @@ -63356,45 +63600,12 @@ "label": "Ask uvicorn to exit and briefly wait for the daemon thread.", "_origin": "ast", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "file_type": "rationale", "norm_label": "ask uvicorn to exit and briefly wait for the daemon thread.", "source_file": "src/cellpy_simple_gui/server.py", "source_location": "L63" }, - { - "id": "tests_test_api_rationale_403", - "label": "cellpy logs through stdlib, so the bridge must feed the ring buffer.", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "cellpy logs through stdlib, so the bridge must feed the ring buffer.", - "source_file": "tests/test_api.py", - "source_location": "L403" - }, - { - "id": "tests_test_api_rationale_728", - "label": "A client for an instance bound to a network address.", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "a client for an instance bound to a network address.", - "source_file": "tests/test_api.py", - "source_location": "L728" - }, - { - "id": "tests_test_journal_rationale_84", - "label": "Job must finish with an errors[] payload the UI can toast \u2014 not hang.", - "_origin": "ast", - "community": 48, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "job must finish with an errors[] payload the ui can toast \u2014 not hang.", - "source_file": "tests/test_journal.py", - "source_location": "L84" - }, { "id": "cursor_skills_iflow_pick_skill", "label": "iflow-pick/SKILL.md", @@ -63532,6 +63743,17 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_py_comparepicks", + "label": "ComparePicks", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "code", + "norm_label": "comparepicks", + "source_file": "", + "source_location": "" + }, { "id": "src_cellpy_simple_gui_api_routers_plots_py_get", "label": "get", @@ -63613,18 +63835,6 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L651" }, - { - "id": "cellpy_painpoints_29_an_unknown_layout_is_accepted_silently_fixed_in_2_1_3", - "label": "29. \ud83d\udfe0 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "29. \ud83d\udfe0 an unknown `layout=` is accepted silently *(fixed in 2.1.3)*", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L717" - }, { "id": "cellpy_painpoints_30_spread_plot_traces_carry_no_hover_at_all_open", "label": "30. \ud83d\udfe0 `spread_plot` traces carry no hover at all *(open)*", @@ -63794,52 +64004,16 @@ "source_location": "L451" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cellpy_delegation_inventory_issue_52", - "label": "cellpy delegation inventory (issue #52)", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cellpy delegation inventory (issue #52)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_hover", - "label": "Hover", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "hover", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L150" - }, - { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_incremental_analysis_ica_dva", - "label": "Incremental analysis (ICA / DVA)", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "incremental analysis (ica / dva)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L102" - }, - { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_raw_data_views_developer_mode", - "label": "Raw data views (developer mode)", + "id": "issueflows_03_solved_issues_issue169_plan_constraints", + "label": "Constraints", "_origin": "ast", "community": 52, "community_name": "plots.py", "file_type": "document", "node_kind": "heading", - "norm_label": "raw data views (developer mode)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L123" + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L38" }, { "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_summary_plot_families", @@ -63876,6 +64050,17 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_rationale_113", + "label": "Resolve every pick's cell; a missing one names itself in the 404.", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "rationale", + "norm_label": "resolve every pick's cell; a missing one names itself in the 404.", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L113" + }, { "id": "src_cellpy_simple_gui_api_routers_plots_rationale_126", "label": "Several cells, each with its own cycles, overlaid or side by side (#169).", @@ -63887,6 +64072,17 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L126" }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_rationale_142", + "label": "Guard endpoints that only exist in developer mode (#97).", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "rationale", + "norm_label": "guard endpoints that only exist in developer mode (#97).", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L142" + }, { "id": "src_cellpy_simple_gui_api_routers_plots_rationale_150", "label": "Resolve a cell for a per-cell view.", @@ -63964,39 +64160,6 @@ "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L93" }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_925", - "label": "Raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2\u2026", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "rationale", - "norm_label": "raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L925" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_981", - "label": "Say so when cellpy downsampled \u2014 a silently thinned plot is misleading.\u2026", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "rationale", - "norm_label": "say so when cellpy downsampled \u2014 a silently thinned plot is misleading....", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L981" - }, - { - "id": "src_cellpy_simple_gui_core_plotting_rationale_296", - "label": "Raw time-series traces for one cell \u2014 developer mode.", - "_origin": "ast", - "community": 52, - "community_name": "plots.py", - "file_type": "rationale", - "norm_label": "raw time-series traces for one cell \u2014 developer mode.", - "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L296" - }, { "id": "cursor_skills_iflow_issue_skill", "label": "iflow-issue/SKILL.md", @@ -64310,131 +64473,22 @@ "source_location": "L20" }, { - "id": "docs_api_reference_the_collection", - "label": "The Collection", - "_origin": "ast", - "community": 56, - "community_name": "ea", - "file_type": "document", - "node_kind": "heading", - "norm_label": "the collection", - "source_file": "docs/api-reference.md", - "source_location": "L157" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan", - "label": "issue55_plan.md", - "_origin": "ast", - "community": 56, - "community_name": "ea", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue55_plan.md", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 56, - "community_name": "ea", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L44" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 56, - "community_name": "ea", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L9" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 56, - "community_name": "ea", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L74" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 56, - "community_name": "ea", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_issue_55_plan_cycles_collector_per_cell_per_cycle", - "label": "Issue #55 \u2014 Plan: cycles collector (per cell / per cycle)", - "_origin": "ast", - "community": 56, - "community_name": "ea", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #55 \u2014 plan: cycles collector (per cell / per cycle)", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 56, - "community_name": "ea", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L98" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 56, - "community_name": "ea", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L89" - }, - { - "id": "skills_cellpy_app_reference_api_reference_the_collection", - "label": "The Collection", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_readcallback", + "label": "._readCallback()", "_origin": "ast", - "community": 56, - "community_name": "ea", - "file_type": "document", - "node_kind": "heading", - "norm_label": "the collection", - "source_file": "skills/cellpy-app/reference/api-reference.md", - "source_location": "L157" + "community": 57, + "community_name": "I", + "file_type": "code", + "norm_label": "._readcallback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "context", "label": "Context", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "context", "source_file": "", @@ -64445,7 +64499,7 @@ "label": "ValueError", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "valueerror", "source_file": "", @@ -64456,7 +64510,7 @@ "label": "tool", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "code", "norm_label": "tool", "source_file": "", @@ -64467,7 +64521,7 @@ "label": "cellpy MCP server (prototype)", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "document", "node_kind": "heading", "norm_label": "cellpy mcp server (prototype)", @@ -64479,7 +64533,7 @@ "label": "Four things it does on purpose", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "document", "node_kind": "heading", "norm_label": "four things it does on purpose", @@ -64491,7 +64545,7 @@ "label": "Limits worth knowing before you rely on it", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "document", "node_kind": "heading", "norm_label": "limits worth knowing before you rely on it", @@ -64503,7 +64557,7 @@ "label": "Run it", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "document", "node_kind": "heading", "norm_label": "run it", @@ -64515,7 +64569,7 @@ "label": "The tools", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "document", "node_kind": "heading", "norm_label": "the tools", @@ -64523,35 +64577,35 @@ "source_location": "L45" }, { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_2_target_architecture", - "label": "2. Target architecture", + "id": "issueflows_04_designs_and_guides_mcp_server_design_finding_4_cellpy_new_cannot_currently_be_automated", + "label": "Finding 4 \u2014 `cellpy new` cannot currently be automated", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "document", "node_kind": "heading", - "norm_label": "2. target architecture", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L36" + "norm_label": "finding 4 \u2014 `cellpy new` cannot currently be automated", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L297" }, { - "id": "issueflows_04_designs_and_guides_mcp_server_design_finding_4_cellpy_new_cannot_currently_be_automated", - "label": "Finding 4 \u2014 `cellpy new` cannot currently be automated", + "id": "issueflows_04_designs_and_guides_mcp_server_design_hard_part_2_file_access", + "label": "Hard part 2 \u2014 file access", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "document", "node_kind": "heading", - "norm_label": "finding 4 \u2014 `cellpy new` cannot currently be automated", + "norm_label": "hard part 2 \u2014 file access", "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L297" + "source_location": "L119" }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_tool_surface", "label": "Tool surface", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "document", "node_kind": "heading", "norm_label": "tool surface", @@ -64559,23 +64613,46 @@ "source_location": "L39" }, { - "id": "readme_how_it_is_built", - "label": "How it is built", + "id": "issueflows_04_designs_and_guides_mcp_server_design_what_is_still_open", + "label": "What is still open", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "document", "node_kind": "heading", - "norm_label": "how it is built", - "source_file": "README.md", - "source_location": "L424" + "norm_label": "what is still open", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L402" + }, + { + "id": "issueflows_04_designs_and_guides_mcp_server_design_what_the_prototype_does_not_answer", + "label": "What the prototype does not answer", + "_origin": "ast", + "community": 59, + "community_name": "Refused", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what the prototype does not answer", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L154" + }, + { + "id": "examples_mcp_server_rationale_178", + "label": "Which cellpy loaders exist, and which can actually run on this machine.", + "_origin": "ast", + "community": 59, + "community_name": "Refused", + "file_type": "rationale", + "norm_label": "which cellpy loaders exist, and which can actually run on this machine.", + "source_file": "examples/mcp/server.py", + "source_location": "L178" }, { "id": "examples_mcp_server_rationale_212", "label": "Load one cell file and return a handle plus what the data can support.\u2026", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "load one cell file and return a handle plus what the data can support....", "source_file": "examples/mcp/server.py", @@ -64586,7 +64663,7 @@ "label": "The cells loaded in this session.", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "the cells loaded in this session.", "source_file": "examples/mcp/server.py", @@ -64597,29 +64674,18 @@ "label": "Summary plot families cellpy offers, and whether the loaded cells support them.\u2026", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "summary plot families cellpy offers, and whether the loaded cells support them....", "source_file": "examples/mcp/server.py", "source_location": "L261" }, - { - "id": "examples_mcp_server_rationale_306", - "label": "Build a collection. `kind` is one of: summary, cycles, ica, dva. Returns a\u2026", - "_origin": "ast", - "community": 59, - "community_name": "collect", - "file_type": "rationale", - "norm_label": "build a collection. `kind` is one of: summary, cycles, ica, dva. returns a...", - "source_file": "examples/mcp/server.py", - "source_location": "L306" - }, { "id": "examples_mcp_server_rationale_390", "label": "A few rows, capped. This is the only tool that returns data, on purpose.", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "a few rows, capped. this is the only tool that returns data, on purpose.", "source_file": "examples/mcp/server.py", @@ -64630,7 +64696,7 @@ "label": "Draw a collection and write the figure to `path` (.json or .html).\u2026", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "draw a collection and write the figure to `path` (.json or .html)....", "source_file": "examples/mcp/server.py", @@ -64641,7 +64707,7 @@ "label": "Write the collected frame to `path` (.csv, .parquet or .json).", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "write the collected frame to `path` (.csv, .parquet or .json).", "source_file": "examples/mcp/server.py", @@ -64652,7 +64718,7 @@ "label": "Import as far as the path allows, then getattr the rest \u2014 inside API_ROOTS.", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "import as far as the path allows, then getattr the rest \u2014 inside api_roots.", "source_file": "examples/mcp/server.py", @@ -64663,7 +64729,7 @@ "label": "Resolve a Sphinx cross-reference in `doc` to the docstring it points at. This\u2026", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "resolve a sphinx cross-reference in `doc` to the docstring it points at. this...", "source_file": "examples/mcp/server.py", @@ -64674,7 +64740,7 @@ "label": "Find cellpy calls by name, or by what their first docstring line says. Use this\u2026", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "find cellpy calls by name, or by what their first docstring line says. use this...", "source_file": "examples/mcp/server.py", @@ -64685,7 +64751,7 @@ "label": "What a cellpy call takes and what it does, from the installed package. `name`\u2026", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "what a cellpy call takes and what it does, from the installed package. `name`...", "source_file": "examples/mcp/server.py", @@ -64696,7 +64762,7 @@ "label": "The request is not allowed. The message is meant for the model to read.", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "the request is not allowed. the message is meant for the model to read.", "source_file": "examples/mcp/server.py", @@ -64707,7 +64773,7 @@ "label": "Batch templates available for `new_project`, registered and local. `cellpy new\u2026", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "batch templates available for `new_project`, registered and local. `cellpy new...", "source_file": "examples/mcp/server.py", @@ -64718,7 +64784,7 @@ "label": "Create a batch project from a template \u2014 the `cellpy new` workflow. `project`\u2026", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "create a batch project from a template \u2014 the `cellpy new` workflow. `project`...", "source_file": "examples/mcp/server.py", @@ -64729,383 +64795,521 @@ "label": "Resolve a caller-supplied path inside ROOT, or refuse it. The volume is settled\u2026", "_origin": "ast", "community": 59, - "community_name": "collect", + "community_name": "Refused", "file_type": "rationale", "norm_label": "resolve a caller-supplied path inside root, or refuse it. the volume is settled...", "source_file": "examples/mcp/server.py", "source_location": "L93" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_readcallback", - "label": "._readCallback()", + "id": "src_cellpy_simple_gui_core_library_py_any", + "label": "Any", "_origin": "ast", - "community": 6, - "community_name": "N", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "._readcallback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "any", + "source_file": "", + "source_location": "" }, { - "id": "tests_conftest", - "label": "conftest.py", + "id": "src_cellpy_simple_gui_core_library_py_path", + "label": "Path", "_origin": "ast", "community": 61, - "community_name": "conftest.py", + "community_name": "Library", "file_type": "code", - "norm_label": "conftest.py", - "source_file": "tests/conftest.py", - "source_location": "L1" + "norm_label": "path", + "source_file": "", + "source_location": "" }, { - "id": "tests_conftest_py_fixture", - "label": "fixture", + "id": "cellpy_painpoints_1_no_public_collection_from_in_memory_cells", + "label": "1. \ud83d\udd34 No public \"collection from in-memory cells\"", "_origin": "ast", "community": 61, - "community_name": "conftest.py", - "file_type": "code", - "norm_label": "fixture", - "source_file": "", - "source_location": "" + "community_name": "Library", + "file_type": "document", + "node_kind": "heading", + "norm_label": "1. \ud83d\udd34 no public \"collection from in-memory cells\"", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L126" }, { - "id": "issueflows_03_solved_issues_issue1_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_01_current_issues_issue187_plan", + "label": "issue187_plan.md", "_origin": "ast", "community": 61, - "community_name": "conftest.py", + "community_name": "Library", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue187_plan.md", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_01_current_issues_issue187_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 61, + "community_name": "Library", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", - "source_location": "L95" + "norm_label": "approach", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L17" }, { - "id": "issueflows_03_solved_issues_issue2_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_01_current_issues_issue187_plan_findings", + "label": "Findings", "_origin": "ast", "community": 61, - "community_name": "conftest.py", + "community_name": "Library", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue2_plan.md", - "source_location": "L106" + "norm_label": "findings", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L3" }, { - "id": "tests_conftest_rationale_1", - "label": "Shared test fixtures. The example cells are downloaded from GitHub on first use\u2026", + "id": "issueflows_01_current_issues_issue187_plan_plan_187_name_of_groups", + "label": "Plan \u2014 #187 name of groups", "_origin": "ast", "community": 61, - "community_name": "conftest.py", - "file_type": "rationale", - "norm_label": "shared test fixtures. the example cells are downloaded from github on first use...", - "source_file": "tests/conftest.py", + "community_name": "Library", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan \u2014 #187 name of groups", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue62_plan", - "label": "issue62_plan.md", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_still_app_owned_no_upstream_yet_by_design", + "label": "Still app-owned (no upstream yet / by design)", "_origin": "ast", - "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community": 61, + "community_name": "Library", "file_type": "document", - "node_kind": "page", - "norm_label": "issue62_plan.md", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "still app-owned (no upstream yet / by design)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L178" }, { - "id": "issueflows_03_solved_issues_issue62_plan_approach", - "label": "Approach", + "id": "src_cellpy_simple_gui_core_library_rationale_119", + "label": "Thread-safe ordered collection of :class:`CellRecord`.", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "thread-safe ordered collection of :class:`cellrecord`.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L119" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_167", + "label": "Add a cell while preserving saved organisational metadata. Physical quantities\u2026", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "add a cell while preserving saved organisational metadata. physical quantities...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L167" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_249", + "label": "Record that ``rid``'s data was just written to ``path``.", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "record that ``rid``'s data was just written to ``path``.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L249" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_256", + "label": "The on-disk copy of ``rid``'s data, when it provably still matches. Three\u2026", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "the on-disk copy of ``rid``'s data, when it provably still matches. three...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L256" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_292", + "label": "Name ``group``; an empty / whitespace label restores the default.", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "name ``group``; an empty / whitespace label restores the default.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L292" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_302", + "label": "The custom name of ``group`` (empty when it has none).", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "the custom name of ``group`` (empty when it has none).", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L302" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_307", + "label": "Custom names of the groups that currently hold cells.", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "custom names of the groups that currently hold cells.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L307" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_313", + "label": "One row per group in use: id, custom label, display name, size, colour.", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "one row per group in use: id, custom label, display name, size, colour.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L313" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_36", + "label": "``(size, mtime_ns)`` for ``path``, or ``None`` if it cannot be read. Cheap\u2026", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "``(size, mtime_ns)`` for ``path``, or ``none`` if it cannot be read. cheap...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L36" + }, + { + "id": "tests_test_projects_rationale_232", + "label": "Save-As must produce a complete project, reuse or not (#29).", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "save-as must produce a complete project, reuse or not (#29).", + "source_file": "tests/test_projects.py", + "source_location": "L232" + }, + { + "id": "tests_test_projects_rationale_269", + "label": "The flag itself: clean on open, dirty the moment the cell moves.", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "the flag itself: clean on open, dirty the moment the cell moves.", + "source_file": "tests/test_projects.py", + "source_location": "L269" + }, + { + "id": "tests_test_projects_rationale_317", + "label": "#75: open works for absolute folders and project.json file paths.", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "#75: open works for absolute folders and project.json file paths.", + "source_file": "tests/test_projects.py", + "source_location": "L317" + }, + { + "id": "tests_test_projects_rationale_65", + "label": "Group names live in the manifest and survive save \u2192 open (#187).", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "group names live in the manifest and survive save \u2192 open (#187).", + "source_file": "tests/test_projects.py", + "source_location": "L65" + }, + { + "id": "tests_test_projects_rationale_85", + "label": "Projects saved before group names existed have no ``groups`` key.", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "projects saved before group names existed have no ``groups`` key.", + "source_file": "tests/test_projects.py", + "source_location": "L85" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_constraints", + "label": "Constraints", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L25" + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L13" }, { - "id": "issueflows_03_solved_issues_issue62_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue160_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L35" + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L128" }, { - "id": "issueflows_03_solved_issues_issue62_plan_goal", + "id": "issueflows_03_solved_issues_issue160_plan_goal", "label": "Goal", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue62_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L52" - }, - { - "id": "issueflows_03_solved_issues_issue62_plan_plan_issue_62_group_vs_individual_plotly_legend_muting", - "label": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "id": "issueflows_03_solved_issues_issue160_plan_issue_160_plan_otherpath_remote_loading", + "label": "Issue #160 \u2014 Plan: OtherPath remote loading", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", - "norm_label": "plan \u2014 issue #62: group vs individual plotly legend muting", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "norm_label": "issue #160 \u2014 plan: otherpath remote loading", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue62_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_03_solved_issues_issue160_plan_open_questions", + "label": "Open questions", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L46" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L163" }, { - "id": "issueflows_03_solved_issues_issue67_plan", - "label": "issue67_plan.md", + "id": "issueflows_03_solved_issues_issue160_plan_phase_1_this_pr", + "label": "Phase 1 (this PR)", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", - "node_kind": "page", - "norm_label": "issue67_plan.md", - "source_file": ".issueflows/03-solved-issues/issue67_plan.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "phase 1 (this pr)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L130" }, { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export", - "label": "group-average-and-figure-export.md", + "id": "issueflows_03_solved_issues_issue160_plan_phase_2_filefinder_approx_glob_follow_up_issue_decided", + "label": "Phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", - "node_kind": "page", - "norm_label": "group-average-and-figure-export.md", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L94" }, { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_static_figure_export", - "label": "Group average + static figure export", + "id": "issueflows_03_solved_issues_issue160_plan_phase_2_follow_up_issue", + "label": "Phase 2 (follow-up issue)", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", - "norm_label": "group average + static figure export", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L1" + "norm_label": "phase 2 (follow-up issue)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L142" }, { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_with_mixed_group_sizes", - "label": "Group average with mixed group sizes", + "id": "issueflows_03_solved_issues_issue160_plan_scope_check", + "label": "Scope check", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", - "norm_label": "group average with mixed group sizes", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L5" + "norm_label": "scope check", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L175" }, { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_static_figure_export_png_svg_pdf", - "label": "Static figure export (PNG / SVG / PDF)", + "id": "issueflows_03_solved_issues_issue160_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", - "norm_label": "static figure export (png / svg / pdf)", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L23" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L151" }, { - "id": "issueflows_04_designs_and_guides_plot_sidepane", - "label": "plot-sidepane.md", + "id": "issueflows_03_solved_issues_issue162_original", + "label": "issue162_original.md", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "page", - "norm_label": "plot-sidepane.md", - "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "norm_label": "issue162_original.md", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_plot_sidepane_alternatives_considered", - "label": "Alternatives considered", + "id": "issueflows_03_solved_issues_issue162_original_goal", + "label": "Goal", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", - "source_location": "L30" + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L9" }, { - "id": "issueflows_04_designs_and_guides_plot_sidepane_context", - "label": "Context", + "id": "issueflows_03_solved_issues_issue162_original_issue_162_remote_file_find_via_cellpy_filefinder_otherpath_phase_2", + "label": "Issue #162: Remote file find via cellpy.filefinder (OtherPath phase 2)", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", - "source_location": "L3" + "norm_label": "issue #162: remote file find via cellpy.filefinder (otherpath phase 2)", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_plot_sidepane_decision", - "label": "Decision", + "id": "issueflows_03_solved_issues_issue162_original_original_issue_text", + "label": "Original issue text", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", - "source_location": "L9" + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L5" }, { - "id": "issueflows_04_designs_and_guides_plot_sidepane_plot_side_pane_58_55", - "label": "Plot side pane (#58, #55)", + "id": "issueflows_03_solved_issues_issue162_original_out_of_scope", + "label": "Out of scope", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", "node_kind": "heading", - "norm_label": "plot side pane (#58, #55)", - "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", - "source_location": "L1" + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L20" }, { - "id": "issueflows_04_designs_and_guides_summary_legend_long_names", - "label": "summary-legend-long-names.md", + "id": "issueflows_03_solved_issues_issue162_original_spec", + "label": "Spec", "_origin": "ast", "community": 62, - "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "community_name": ".max_files", "file_type": "document", - "node_kind": "page", - "norm_label": "summary-legend-long-names.md", - "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L13" }, { - "id": "tests_test_agent_docs", - "label": "test_agent_docs.py", + "id": "issueflows_03_solved_issues_issue162_status", + "label": "issue162_status.md", "_origin": "ast", - "community": 64, - "community_name": "test_agent_docs.py", - "file_type": "code", - "norm_label": "test_agent_docs.py", - "source_file": "tests/test_agent_docs.py", + "community": 62, + "community_name": ".max_files", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue162_status.md", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", "source_location": "L1" }, { - "id": "tests_test_agent_docs_py_fixture", - "label": "fixture", - "_origin": "ast", - "community": 64, - "community_name": "test_agent_docs.py", - "file_type": "code", - "norm_label": "fixture", - "source_file": "", - "source_location": "" - }, - { - "id": "tests_test_agent_docs_rationale_1", - "label": "`llms.txt`, `llms-full.txt` and the Claude Skill (#127). These are the\u2026", + "id": "issueflows_03_solved_issues_issue162_status_issue_162_status", + "label": "Issue #162 \u2014 Status", "_origin": "ast", - "community": 64, - "community_name": "test_agent_docs.py", - "file_type": "rationale", - "norm_label": "`llms.txt`, `llms-full.txt` and the claude skill (#127). these are the...", - "source_file": "tests/test_agent_docs.py", + "community": 62, + "community_name": ".max_files", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #162 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", "source_location": "L1" }, { - "id": "tests_test_agent_docs_rationale_100", - "label": "The API listing is the cheap half. These are why the skill exists.", - "_origin": "ast", - "community": 64, - "community_name": "test_agent_docs.py", - "file_type": "rationale", - "norm_label": "the api listing is the cheap half. these are why the skill exists.", - "source_file": "tests/test_agent_docs.py", - "source_location": "L100" - }, - { - "id": "tests_test_agent_docs_rationale_116", - "label": "Installed elsewhere, the skill has no repo to fall back on.", + "id": "issueflows_03_solved_issues_issue162_status_remaining_work", + "label": "Remaining work", "_origin": "ast", - "community": 64, - "community_name": "test_agent_docs.py", - "file_type": "rationale", - "norm_label": "installed elsewhere, the skill has no repo to fall back on.", - "source_file": "tests/test_agent_docs.py", - "source_location": "L116" + "community": 62, + "community_name": ".max_files", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", + "source_location": "L34" }, { - "id": "tests_test_agent_docs_rationale_55", - "label": "A dead link in an index written for machines is silent until it is not.", + "id": "issueflows_03_solved_issues_issue162_status_what_s_done", + "label": "What's done", "_origin": "ast", - "community": 64, - "community_name": "test_agent_docs.py", - "file_type": "rationale", - "norm_label": "a dead link in an index written for machines is silent until it is not.", - "source_file": "tests/test_agent_docs.py", - "source_location": "L55" + "community": 62, + "community_name": ".max_files", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", + "source_location": "L5" }, { - "id": "tests_test_agent_docs_rationale_65", - "label": "Adding a guide without listing it is the easy mistake; catch it here.", + "id": "src_cellpy_simple_gui_config_rationale_71", + "label": "Cap on files pulled in by one glob / load (raised in dev mode).", "_origin": "ast", - "community": 64, - "community_name": "test_agent_docs.py", + "community": 62, + "community_name": ".max_files", "file_type": "rationale", - "norm_label": "adding a guide without listing it is the easy mistake; catch it here.", - "source_file": "tests/test_agent_docs.py", - "source_location": "L65" + "norm_label": "cap on files pulled in by one glob / load (raised in dev mode).", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L71" }, { - "id": "tests_test_agent_docs_rationale_72", - "label": "An index is cheap; the concatenation is what an agent will rely on.", + "id": "src_cellpy_simple_gui_core_paths_rationale_44", + "label": "True when ``raw`` is an ssh/sftp/scp URI (cellpy OtherPath).", "_origin": "ast", - "community": 64, - "community_name": "test_agent_docs.py", + "community": 62, + "community_name": ".max_files", "file_type": "rationale", - "norm_label": "an index is cheap; the concatenation is what an agent will rely on.", - "source_file": "tests/test_agent_docs.py", - "source_location": "L72" + "norm_label": "true when ``raw`` is an ssh/sftp/scp uri (cellpy otherpath).", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L44" }, { "id": "src_cellpy_simple_gui_api_routers_projects_py_delete", @@ -65509,7 +65713,7 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_projects_rationale_104", + "id": "src_cellpy_simple_gui_core_projects_rationale_113", "label": "Accept a project folder, ``project.json`` file, or known slug/name.", "_origin": "ast", "community": 65, @@ -65517,10 +65721,10 @@ "file_type": "rationale", "norm_label": "accept a project folder, ``project.json`` file, or known slug/name.", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L104" + "source_location": "L113" }, { - "id": "src_cellpy_simple_gui_core_projects_rationale_117", + "id": "src_cellpy_simple_gui_core_projects_rationale_126", "label": "Decide whether ``path`` is a portable app project or a batch journal. Rules\u2026", "_origin": "ast", "community": 65, @@ -65528,10 +65732,10 @@ "file_type": "rationale", "norm_label": "decide whether ``path`` is a portable app project or a batch journal. rules...", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L117" + "source_location": "L126" }, { - "id": "src_cellpy_simple_gui_core_projects_rationale_148", + "id": "src_cellpy_simple_gui_core_projects_rationale_157", "label": "Remove leftover staging / backup dirs from interrupted saves.", "_origin": "ast", "community": 65, @@ -65539,25 +65743,58 @@ "file_type": "rationale", "norm_label": "remove leftover staging / backup dirs from interrupted saves.", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L148" + "source_location": "L157" + }, + { + "id": "src_cellpy_simple_gui_core_projects_rationale_65", + "label": "A user-named group (#187). Unnamed groups are not listed.", + "_origin": "ast", + "community": 65, + "community_name": "core/projects.py", + "file_type": "rationale", + "norm_label": "a user-named group (#187). unnamed groups are not listed.", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L65" }, { "id": "request", "label": "Request", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "code", "norm_label": "request", "source_file": "", "source_location": "" }, + { + "id": "src_cellpy_simple_gui_api_routers_system", + "label": "system.py", + "_origin": "ast", + "community": 67, + "community_name": "system.py", + "file_type": "code", + "norm_label": "system.py", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_py_get", + "label": "get", + "_origin": "ast", + "community": 67, + "community_name": "system.py", + "file_type": "code", + "norm_label": "get", + "source_file": "", + "source_location": "" + }, { "id": "src_cellpy_simple_gui_api_routers_system_py_post", "label": "post", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "code", "norm_label": "post", "source_file": "", @@ -65568,7 +65805,7 @@ "label": "issue4_plan.md", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "page", "norm_label": "issue4_plan.md", @@ -65580,7 +65817,7 @@ "label": "Approach", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -65592,7 +65829,7 @@ "label": "Constraints", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -65604,7 +65841,7 @@ "label": "Files to touch", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -65616,7 +65853,7 @@ "label": "Goal", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -65628,7 +65865,7 @@ "label": "Issue #4 plan", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "issue #4 plan", @@ -65640,7 +65877,7 @@ "label": "Open questions", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -65652,7 +65889,7 @@ "label": "Prior art", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", @@ -65664,7 +65901,7 @@ "label": "Test strategy", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -65676,7 +65913,7 @@ "label": "issue4_status.md", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "page", "norm_label": "issue4_status.md", @@ -65688,7 +65925,7 @@ "label": "Issue #4 status", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "issue #4 status", @@ -65700,7 +65937,7 @@ "label": "Remaining work", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -65712,19 +65949,41 @@ "label": "What's done", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", "source_file": ".issueflows/03-solved-issues/issue4_status.md", "source_location": "L5" }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_1", + "label": "System endpoints: capability probe, native file pickers, config diagnostics.", + "_origin": "ast", + "community": 67, + "community_name": "system.py", + "file_type": "rationale", + "norm_label": "system endpoints: capability probe, native file pickers, config diagnostics.", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_109", + "label": "Where cellpy resolves each setting from (read-only; secrets never included).", + "_origin": "ast", + "community": 67, + "community_name": "system.py", + "file_type": "rationale", + "norm_label": "where cellpy resolves each setting from (read-only; secrets never included).", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L109" + }, { "id": "src_cellpy_simple_gui_api_routers_system_rationale_119", "label": "Open a native file-open (or folder) dialog and return chosen absolute paths.", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "rationale", "norm_label": "open a native file-open (or folder) dialog and return chosen absolute paths.", "source_file": "src/cellpy_simple_gui/api/routers/system.py", @@ -65735,12 +65994,56 @@ "label": "Show a native Save As dialog and write the request body to the chosen path.\u2026", "_origin": "ast", "community": 67, - "community_name": "pick", + "community_name": "system.py", "file_type": "rationale", "norm_label": "show a native save as dialog and write the request body to the chosen path....", "source_file": "src/cellpy_simple_gui/api/routers/system.py", "source_location": "L144" }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_40", + "label": "The active pywebview window, or None when running as a plain server.", + "_origin": "ast", + "community": 67, + "community_name": "system.py", + "file_type": "rationale", + "norm_label": "the active pywebview window, or none when running as a plain server.", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L40" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_85", + "label": "Recent log records \u2014 developer mode (#97). Saves a round trip to\u2026", + "_origin": "ast", + "community": 67, + "community_name": "system.py", + "file_type": "rationale", + "norm_label": "recent log records \u2014 developer mode (#97). saves a round trip to...", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L85" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_99", + "label": "Recent jobs with queue and run times \u2014 developer mode (#97).", + "_origin": "ast", + "community": 67, + "community_name": "system.py", + "file_type": "rationale", + "norm_label": "recent jobs with queue and run times \u2014 developer mode (#97).", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L99" + }, + { + "id": "src_cellpy_simple_gui_logging_setup_rationale_84", + "label": "Newest-last slice of the ring, optionally filtered to a minimum level.", + "_origin": "ast", + "community": 67, + "community_name": "system.py", + "file_type": "rationale", + "norm_label": "newest-last slice of the ring, optionally filtered to a minimum level.", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L84" + }, { "id": "issueflows_03_solved_issues_issue56_plan", "label": "issue56_plan.md", @@ -65909,6 +66212,18 @@ "source_file": ".issueflows/03-solved-issues/issue56_status.md", "source_location": "L5" }, + { + "id": "issueflows_03_solved_issues_issue67_plan", + "label": "issue67_plan.md", + "_origin": "ast", + "community": 69, + "community_name": "IcaPlotSpec", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue67_plan.md", + "source_file": ".issueflows/03-solved-issues/issue67_plan.md", + "source_location": "L1" + }, { "id": "issueflows_03_solved_issues_issue67_plan_approach", "label": "Approach", @@ -66054,7 +66369,67 @@ "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_520", + "id": "issueflows_04_designs_and_guides_plot_sidepane", + "label": "plot-sidepane.md", + "_origin": "ast", + "community": 69, + "community_name": "IcaPlotSpec", + "file_type": "document", + "node_kind": "page", + "norm_label": "plot-sidepane.md", + "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_plot_sidepane_alternatives_considered", + "label": "Alternatives considered", + "_origin": "ast", + "community": 69, + "community_name": "IcaPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "source_location": "L30" + }, + { + "id": "issueflows_04_designs_and_guides_plot_sidepane_context", + "label": "Context", + "_origin": "ast", + "community": 69, + "community_name": "IcaPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "source_location": "L3" + }, + { + "id": "issueflows_04_designs_and_guides_plot_sidepane_decision", + "label": "Decision", + "_origin": "ast", + "community": 69, + "community_name": "IcaPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "source_location": "L9" + }, + { + "id": "issueflows_04_designs_and_guides_plot_sidepane_plot_side_pane_58_55", + "label": "Plot side pane (#58, #55)", + "_origin": "ast", + "community": 69, + "community_name": "IcaPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plot side pane (#58, #55)", + "source_file": ".issueflows/04-designs-and-guides/plot-sidepane.md", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_541", "label": "Collect ICA (dQ/dV) curves, both half-cycles (``direction`` column kept).\u2026", "_origin": "ast", "community": 69, @@ -66062,10 +66437,10 @@ "file_type": "rationale", "norm_label": "collect ica (dq/dv) curves, both half-cycles (``direction`` column kept)....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L520" + "source_location": "L541" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_236", + "id": "src_cellpy_simple_gui_core_models_rationale_244", "label": "Drives a cellpy ``collect_ica`` collection for one cell (Cell explorer).", "_origin": "ast", "community": 69, @@ -66073,10 +66448,10 @@ "file_type": "rationale", "norm_label": "drives a cellpy ``collect_ica`` collection for one cell (cell explorer).", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L236" + "source_location": "L244" }, { - "id": "tests_test_core_rationale_1866", + "id": "tests_test_core_rationale_1948", "label": "Thinning must be a no-op below the cap \u2014 no spurious 'every Nth' note.", "_origin": "ast", "community": 69, @@ -66084,7 +66459,7 @@ "file_type": "rationale", "norm_label": "thinning must be a no-op below the cap \u2014 no spurious 'every nth' note.", "source_file": "tests/test_core.py", - "source_location": "L1866" + "source_location": "L1948" }, { "id": "tests_test_core_rationale_358", @@ -66446,17 +66821,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L195" }, - { - "id": "tests_test_packaging_rationale_211", - "label": "A broken probe must not stop the app from starting.", - "_origin": "ast", - "community": 71, - "community_name": "app_main_module", - "file_type": "rationale", - "norm_label": "a broken probe must not stop the app from starting.", - "source_file": "tests/test_packaging.py", - "source_location": "L211" - }, { "id": "issueflows_03_solved_issues_issue58_plan", "label": "issue58_plan.md", @@ -66695,17 +67059,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L1" }, - { - "id": "tests_test_packaging_py_parametrize", - "label": "parametrize", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "code", - "norm_label": "parametrize", - "source_file": "", - "source_location": "" - }, { "id": "src_cellpy_simple_gui_init_rationale_1", "label": "cellpy-simple-gui: a simple desktop GUI for exploring battery data with cellpy.", @@ -66739,17 +67092,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L223" }, - { - "id": "tests_test_packaging_rationale_266", - "label": "The skip must track *both* vocabularies (#124, #143). It originally matched\u2026", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "the skip must track *both* vocabularies (#124, #143). it originally matched...", - "source_file": "tests/test_packaging.py", - "source_location": "L266" - }, { "id": "tests_test_packaging_rationale_279", "label": "The console twin is how a user sees a startup error, and how the smoke test\u2026", @@ -66772,17 +67114,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L291" }, - { - "id": "tests_test_packaging_rationale_30", - "label": "Import packaging/entry.py without it being on sys.path.", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "import packaging/entry.py without it being on sys.path.", - "source_file": "tests/test_packaging.py", - "source_location": "L30" - }, { "id": "tests_test_packaging_rationale_376", "label": "The zip is the installer, not a second build (#173).", @@ -66794,17 +67125,6 @@ "source_file": "tests/test_packaging.py", "source_location": "L376" }, - { - "id": "tests_test_packaging_rationale_38", - "label": "The two are duplicated deliberately; this is the thing keeping them honest.\u2026", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "the two are duplicated deliberately; this is the thing keeping them honest....", - "source_file": "tests/test_packaging.py", - "source_location": "L38" - }, { "id": "tests_test_packaging_rationale_48", "label": "``sys.stderr`` is None in a windowed PyInstaller build. Handing that to\u2026", @@ -66817,135 +67137,147 @@ "source_location": "L48" }, { - "id": "issueflows_03_solved_issues_issue136_plan_approach", - "label": "Approach", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a", + "label": "a", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "a", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "cellpy_painpoints_29_an_unknown_layout_is_accepted_silently_fixed_in_2_1_3", + "label": "29. \ud83d\udfe0 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*", + "_origin": "ast", + "community": 80, + "community_name": "layout", "file_type": "document", "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L89" + "norm_label": "29. \ud83d\udfe0 an unknown `layout=` is accepted silently *(fixed in 2.1.3)*", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L717" }, { - "id": "issueflows_03_solved_issues_issue136_plan_goal", - "label": "Goal", + "id": "docs_api_reference_the_collection", + "label": "The Collection", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "layout", "file_type": "document", "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L7" + "norm_label": "the collection", + "source_file": "docs/api-reference.md", + "source_location": "L157" }, { - "id": "issueflows_03_solved_issues_issue136_plan_issue_136_plan_redesign_the_loading_surface_files_projects_journals_raw_import", - "label": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "id": "issueflows_03_solved_issues_issue55_plan", + "label": "issue55_plan.md", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "layout", "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #136 \u2014 plan: redesign the loading surface (files, projects, journals, raw import)", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "node_kind": "page", + "norm_label": "issue55_plan.md", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue136_plan_open_questions", - "label": "Open questions", + "id": "issueflows_03_solved_issues_issue55_plan_approach", + "label": "Approach", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "layout", "file_type": "document", "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L296" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L44" }, { - "id": "issueflows_03_solved_issues_issue136_plan_scope_check", - "label": "Scope check", + "id": "issueflows_03_solved_issues_issue55_plan_constraints", + "label": "Constraints", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "layout", "file_type": "document", "node_kind": "heading", - "norm_label": "scope check", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L314" + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L9" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_1_sidebar_restructure_template_css", - "label": "Stage 1 \u2014 Sidebar restructure (template + CSS)", + "id": "issueflows_03_solved_issues_issue55_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "layout", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 1 \u2014 sidebar restructure (template + css)", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L95" + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L74" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_2_add_cells_modal_with_source_switcher", - "label": "Stage 2 \u2014 \"Add cells\" modal with source switcher", + "id": "issueflows_03_solved_issues_issue55_plan_goal", + "label": "Goal", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "layout", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 2 \u2014 \"add cells\" modal with source switcher", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L114" + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_4_adaptive_source_zone_drop_browse_paste", - "label": "Stage 4 \u2014 Adaptive source zone (drop / browse / paste)", + "id": "issueflows_03_solved_issues_issue55_plan_issue_55_plan_cycles_collector_per_cell_per_cycle", + "label": "Issue #55 \u2014 Plan: cycles collector (per cell / per cycle)", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "layout", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 4 \u2014 adaptive source zone (drop / browse / paste)", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L174" + "norm_label": "issue #55 \u2014 plan: cycles collector (per cell / per cycle)", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_5_contextual_help_inline_results_recents", - "label": "Stage 5 \u2014 Contextual help, inline results, recents", + "id": "issueflows_03_solved_issues_issue55_plan_open_questions", + "label": "Open questions", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "layout", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 5 \u2014 contextual help, inline results, recents", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L192" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L98" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_6_docs_and_design_record", - "label": "Stage 6 \u2014 Docs and design record", + "id": "issueflows_03_solved_issues_issue55_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "layout", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 6 \u2014 docs and design record", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L213" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L89" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a", - "label": "a", + "id": "skills_cellpy_app_reference_api_reference_the_collection", + "label": "The Collection", "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "a", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "community": 80, + "community_name": "layout", + "file_type": "document", + "node_kind": "heading", + "norm_label": "the collection", + "source_file": "skills/cellpy-app/reference/api-reference.md", + "source_location": "L157" }, { "id": "cursor_skills_iflow_epic_skill", @@ -67162,6 +67494,17 @@ "source_file": "", "source_location": "" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_baseexception", + "label": "BaseException", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "baseexception", + "source_file": "", + "source_location": "" + }, { "id": "src_cellpy_simple_gui_core_files", "label": "files.py", @@ -67264,18 +67607,6 @@ "source_file": ".issueflows/03-solved-issues/issue160_plan.md", "source_location": "L66" }, - { - "id": "issueflows_03_solved_issues_issue160_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L13" - }, { "id": "issueflows_03_solved_issues_issue160_plan_explicitly_deferred_later_than_phase_2", "label": "Explicitly deferred (later than phase 2)", @@ -67288,54 +67619,6 @@ "source_file": ".issueflows/03-solved-issues/issue160_plan.md", "source_location": "L112" }, - { - "id": "issueflows_03_solved_issues_issue160_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L128" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_issue_160_plan_otherpath_remote_loading", - "label": "Issue #160 \u2014 Plan: OtherPath remote loading", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #160 \u2014 plan: otherpath remote loading", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L163" - }, { "id": "issueflows_03_solved_issues_issue160_plan_ordering", "label": "Ordering", @@ -67360,174 +67643,6 @@ "source_file": ".issueflows/03-solved-issues/issue160_plan.md", "source_location": "L68" }, - { - "id": "issueflows_03_solved_issues_issue160_plan_phase_2_filefinder_approx_glob_follow_up_issue_decided", - "label": "Phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L94" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_phase_2_follow_up_issue", - "label": "Phase 2 (follow-up issue)", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase 2 (follow-up issue)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L142" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L38" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_scope_check", - "label": "Scope check", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "scope check", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L175" - }, - { - "id": "issueflows_03_solved_issues_issue160_status", - "label": "issue160_status.md", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue160_status.md", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue160_status_issue_160_status", - "label": "Issue #160 \u2014 Status", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #160 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue160_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue160_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue162_original", - "label": "issue162_original.md", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue162_original.md", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_goal", - "label": "Goal", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L9" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_issue_162_remote_file_find_via_cellpy_filefinder_otherpath_phase_2", - "label": "Issue #162: Remote file find via cellpy.filefinder (OtherPath phase 2)", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #162: remote file find via cellpy.filefinder (otherpath phase 2)", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L20" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L13" - }, { "id": "issueflows_03_solved_issues_issue162_plan", "label": "issue162_plan.md", @@ -67600,54 +67715,6 @@ "source_file": ".issueflows/03-solved-issues/issue162_plan.md", "source_location": "L191" }, - { - "id": "issueflows_03_solved_issues_issue162_status", - "label": "issue162_status.md", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue162_status.md", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue162_status_issue_162_status", - "label": "Issue #162 \u2014 Status", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #162 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue162_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L34" - }, - { - "id": "issueflows_03_solved_issues_issue162_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L5" - }, { "id": "issueflows_04_designs_and_guides_loading_ui", "label": "loading-ui.md", @@ -67805,15 +67872,27 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_config_rationale_71", - "label": "Cap on files pulled in by one glob / load (raised in dev mode).", + "id": "readme_local_vs_served_what_the_app_may_touch", + "label": "Local vs served: what the app may touch", + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "document", + "node_kind": "heading", + "norm_label": "local vs served: what the app may touch", + "source_file": "README.md", + "source_location": "L319" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_206", + "label": "Turn a loader failure into something a user can act on (#143). A raw\u2026", "_origin": "ast", "community": 83, "community_name": "expand_paths", "file_type": "rationale", - "norm_label": "cap on files pulled in by one glob / load (raised in dev mode).", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L71" + "norm_label": "turn a loader failure into something a user can act on (#143). a raw...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L206" }, { "id": "src_cellpy_simple_gui_core_files_rationale_1", @@ -68257,12 +68336,72 @@ "source_file": ".cursor/skills/iflow-yolo/SKILL.md", "source_location": "L36" }, + { + "id": "issueflows_03_solved_issues_issue136_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue136_original.md", + "source_location": "L87" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L89" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_issue_136_plan_redesign_the_loading_surface_files_projects_journals_raw_import", + "label": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #136 \u2014 plan: redesign the loading surface (files, projects, journals, raw import)", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L1" + }, { "id": "issueflows_03_solved_issues_issue136_plan_manual_smoke_checklist_g3_g4_server_mode_csg_token_devtoken", "label": "Manual smoke checklist (G3/G4; server mode, `CSG_TOKEN=devtoken`)", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "manual smoke checklist (g3/g4; server mode, `csg_token=devtoken`)", @@ -68274,19 +68413,103 @@ "label": "New tests (summary)", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "new tests (summary)", "source_file": ".issueflows/03-solved-issues/issue136_plan.md", "source_location": "L288" }, + { + "id": "issueflows_03_solved_issues_issue136_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L296" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_scope_check", + "label": "Scope check", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "scope check", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L314" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_stage_1_sidebar_restructure_template_css", + "label": "Stage 1 \u2014 Sidebar restructure (template + CSS)", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "stage 1 \u2014 sidebar restructure (template + css)", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L95" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_stage_2_add_cells_modal_with_source_switcher", + "label": "Stage 2 \u2014 \"Add cells\" modal with source switcher", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "stage 2 \u2014 \"add cells\" modal with source switcher", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L114" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_stage_4_adaptive_source_zone_drop_browse_paste", + "label": "Stage 4 \u2014 Adaptive source zone (drop / browse / paste)", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "stage 4 \u2014 adaptive source zone (drop / browse / paste)", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L174" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_stage_5_contextual_help_inline_results_recents", + "label": "Stage 5 \u2014 Contextual help, inline results, recents", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "stage 5 \u2014 contextual help, inline results, recents", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L192" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_stage_6_docs_and_design_record", + "label": "Stage 6 \u2014 Docs and design record", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "stage 6 \u2014 docs and design record", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L213" + }, { "id": "issueflows_03_solved_issues_issue136_plan_test_gates_when_to_run_what", "label": "Test gates \u2014 when to run what", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "test gates \u2014 when to run what", @@ -68298,7 +68521,7 @@ "label": "Test strategy", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -68310,7 +68533,7 @@ "label": "issue136_status.md", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "page", "norm_label": "issue136_status.md", @@ -68322,7 +68545,7 @@ "label": "Issue #136 \u2014 Status", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "issue #136 \u2014 status", @@ -68334,7 +68557,7 @@ "label": "Notes / deviations", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "notes / deviations", @@ -68346,7 +68569,7 @@ "label": "Remaining work", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -68358,19 +68581,31 @@ "label": "What's done", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", "source_file": ".issueflows/03-solved-issues/issue136_status.md", "source_location": "L5" }, + { + "id": "issueflows_03_solved_issues_issue175_plan_4_ui_app_js_index_html_app_css", + "label": "4. UI (`app.js`, `index.html`, `app.css`)", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "4. ui (`app.js`, `index.html`, `app.css`)", + "source_file": ".issueflows/03-solved-issues/issue175_plan.md", + "source_location": "L110" + }, { "id": "issueflows_03_solved_issues_issue177_status", "label": "issue177_status.md", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "page", "norm_label": "issue177_status.md", @@ -68382,7 +68617,7 @@ "label": "Remaining work", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -68394,7 +68629,7 @@ "label": "Status \u2014 Issue #177", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "status \u2014 issue #177", @@ -68406,13 +68641,35 @@ "label": "What's done", "_origin": "ast", "community": 87, - "community_name": "test_llms_full_txt_is_current", + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", "source_file": ".issueflows/03-solved-issues/issue177_status.md", "source_location": "L5" }, + { + "id": "tests_test_api_rationale_481", + "label": "A syntax error in app.js breaks the whole UI while Python tests stay green.\u2026", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "rationale", + "norm_label": "a syntax error in app.js breaks the whole ui while python tests stay green....", + "source_file": "tests/test_api.py", + "source_location": "L481" + }, + { + "id": "tests_test_api_rationale_502", + "label": "Every x-model in the template must exist in the component, or Alpine throws.\u2026", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "rationale", + "norm_label": "every x-model in the template must exist in the component, or alpine throws....", + "source_file": "tests/test_api.py", + "source_location": "L502" + }, { "id": "issueflows_03_solved_issues_issue3_plan", "label": "issue3_plan.md", @@ -68461,18 +68718,6 @@ "source_file": ".issueflows/03-solved-issues/issue3_plan.md", "source_location": "L26" }, - { - "id": "issueflows_03_solved_issues_issue3_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 88, - "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L7" - }, { "id": "issueflows_03_solved_issues_issue3_plan_files_to_touch", "label": "Files to touch", @@ -68784,6 +69029,210 @@ "source_file": ".issueflows/03-solved-issues/issue2_plan.md", "source_location": "L21" }, + { + "id": "issueflows_03_solved_issues_issue2_status", + "label": "issue2_status.md", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue2_status.md", + "source_file": ".issueflows/03-solved-issues/issue2_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue2_status_issue_2_status", + "label": "Issue #2 status", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #2 status", + "source_file": ".issueflows/03-solved-issues/issue2_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue2_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue2_status.md", + "source_location": "L20" + }, + { + "id": "issueflows_03_solved_issues_issue2_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue2_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue38_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L38" + }, + { + "id": "issueflows_03_solved_issues_issue38_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L9" + }, + { + "id": "issueflows_03_solved_issues_issue38_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L75" + }, + { + "id": "issueflows_03_solved_issues_issue38_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue38_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L91" + }, + { + "id": "issueflows_03_solved_issues_issue38_plan_plan_issue_38_cellpy_label_builders_for_axis_titles", + "label": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan \u2014 issue #38: cellpy label builders for axis titles", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L18" + }, + { + "id": "issueflows_03_solved_issues_issue38_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L86" + }, + { + "id": "issueflows_03_solved_issues_issue38_status", + "label": "issue38_status.md", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue38_status.md", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_status_issue_38_status", + "label": "Issue #38 status", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #38 status", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue38_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue54_plan", + "label": "issue54_plan.md", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue54_plan.md", + "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_location": "L1" + }, { "id": "issueflows_03_solved_issues_issue54_plan_approach", "label": "Approach", @@ -68880,6 +69329,18 @@ "source_file": ".issueflows/03-solved-issues/issue54_plan.md", "source_location": "L83" }, + { + "id": "issueflows_03_solved_issues_issue60_plan", + "label": "issue60_plan.md", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue60_plan.md", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L1" + }, { "id": "issueflows_03_solved_issues_issue62_original", "label": "issue62_original.md", @@ -68976,6 +69437,90 @@ "source_file": ".issueflows/03-solved-issues/issue62_original.md", "source_location": "L10" }, + { + "id": "issueflows_03_solved_issues_issue62_plan", + "label": "issue62_plan.md", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue62_plan.md", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L25" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L35" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L52" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_plan_issue_62_group_vs_individual_plotly_legend_muting", + "label": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan \u2014 issue #62: group vs individual plotly legend muting", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L46" + }, { "id": "issueflows_03_solved_issues_issue62_status", "label": "issue62_status.md", @@ -69024,6 +69569,54 @@ "source_file": ".issueflows/03-solved-issues/issue62_status.md", "source_location": "L5" }, + { + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export", + "label": "group-average-and-figure-export.md", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "page", + "norm_label": "group-average-and-figure-export.md", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_static_figure_export", + "label": "Group average + static figure export", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "group average + static figure export", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_with_mixed_group_sizes", + "label": "Group average with mixed group sizes", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "group average with mixed group sizes", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L5" + }, + { + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_static_figure_export_png_svg_pdf", + "label": "Static figure export (PNG / SVG / PDF)", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "static figure export (png / svg / pdf)", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L23" + }, { "id": "issueflows_04_designs_and_guides_group_legend_muting", "label": "group-legend-muting.md", @@ -69085,48 +69678,109 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_90", - "label": "Drives a cellpy ``collect_summaries`` collection + its plot/export.", + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales", + "label": "summary-independent-y-scales.md", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "drives a cellpy ``collect_summaries`` collection + its plot/export.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L90" + "file_type": "document", + "node_kind": "page", + "norm_label": "summary-independent-y-scales.md", + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", + "source_location": "L1" }, { - "id": "tests_test_core_rationale_151", - "label": "#62: SummaryPlotSpec.group_legend_muting reaches collection.plot kwargs.", + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_alternatives_considered", + "label": "Alternatives considered", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", + "source_location": "L31" + }, + { + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_context", + "label": "Context", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", + "source_location": "L3" + }, + { + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_decision", + "label": "Decision", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", + "source_location": "L9" + }, + { + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_summary_plot_y_scales_2_54", + "label": "Summary plot y-scales (#2, #54)", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "heading", + "norm_label": "summary plot y-scales (#2, #54)", + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_summary_legend_long_names", + "label": "summary-legend-long-names.md", + "_origin": "ast", + "community": 9, + "community_name": "SummaryPlotSpec", + "file_type": "document", + "node_kind": "page", + "norm_label": "summary-legend-long-names.md", + "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_454", + "label": "``variable \u2192`` unit-bearing axis title via cellpy label builders (#38).", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "rationale", - "norm_label": "#62: summaryplotspec.group_legend_muting reaches collection.plot kwargs.", - "source_file": "tests/test_core.py", - "source_location": "L151" + "norm_label": "``variable \u2192`` unit-bearing axis title via cellpy label builders (#38).", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L454" }, { - "id": "tests_test_core_rationale_1626", - "label": "A family the data cannot support must say so, not render blank (#97).", + "id": "src_cellpy_simple_gui_core_models_rationale_98", + "label": "Drives a cellpy ``collect_summaries`` collection + its plot/export.", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "rationale", - "norm_label": "a family the data cannot support must say so, not render blank (#97).", - "source_file": "tests/test_core.py", - "source_location": "L1626" + "norm_label": "drives a cellpy ``collect_summaries`` collection + its plot/export.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L98" }, { - "id": "tests_test_core_rationale_1649", - "label": "#106 / cellpy #868: collect-time columns must not read as missing data.\u2026", + "id": "tests_test_core_rationale_151", + "label": "#62: SummaryPlotSpec.group_legend_muting reaches collection.plot kwargs.", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "rationale", - "norm_label": "#106 / cellpy #868: collect-time columns must not read as missing data....", + "norm_label": "#62: summaryplotspec.group_legend_muting reaches collection.plot kwargs.", "source_file": "tests/test_core.py", - "source_location": "L1649" + "source_location": "L151" }, { "id": "tests_test_core_rationale_172", @@ -69151,102 +69805,69 @@ "source_location": "L612" }, { - "id": "tests_test_core_rationale_649", - "label": "Avg group + singleton both render on every variable facet (#39/#816). cellpy\u2026", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "avg group + singleton both render on every variable facet (#39/#816). cellpy...", - "source_file": "tests/test_core.py", - "source_location": "L649" - }, - { - "id": "tests_test_core_rationale_735", - "label": "Long journal-style labels must not blow up the summary legend (#1).", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "long journal-style labels must not blow up the summary legend (#1).", - "source_file": "tests/test_core.py", - "source_location": "L735" - }, - { - "id": "tests_test_core_rationale_765", - "label": "Short labels stay intact; right margin stays modest (#1).", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "short labels stay intact; right margin stays modest (#1).", - "source_file": "tests/test_core.py", - "source_location": "L765" - }, - { - "id": "tests_test_core_rationale_805", - "label": "Dark theme tokens land on layout (#32).", + "id": "tests_test_core_rationale_708", + "label": "Summary y-titles use cellpy label builders with units (#38).", "_origin": "ast", "community": 9, "community_name": "SummaryPlotSpec", "file_type": "rationale", - "norm_label": "dark theme tokens land on layout (#32).", + "norm_label": "summary y-titles use cellpy label builders with units (#38).", "source_file": "tests/test_core.py", - "source_location": "L805" + "source_location": "L708" }, { - "id": "tests_test_core_rationale_818", - "label": "safe colorway paints at least one trace from library.PALETTE (#32).", + "id": "src_cellpy_simple_gui_api_deps", + "label": "deps.py", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "safe colorway paints at least one trace from library.palette (#32).", - "source_file": "tests/test_core.py", - "source_location": "L818" + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "deps.py", + "source_file": "src/cellpy_simple_gui/api/deps.py", + "source_location": "L1" }, { - "id": "tests_test_core_rationale_877", - "label": "#40: cellpy's spread_plot sets no hovertemplate at all \u2014 restore it. Turning\u2026", + "id": "src_cellpy_simple_gui_config", + "label": "config.py", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "#40: cellpy's spread_plot sets no hovertemplate at all \u2014 restore it. turning...", - "source_file": "tests/test_core.py", - "source_location": "L877" + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "config.py", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L1" }, { - "id": "tests_test_core_rationale_919", - "label": "No regression: cellpy already gives these paths good hover (#40).", + "id": "tests_test_api_py_fixture", + "label": "fixture", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "no regression: cellpy already gives these paths good hover (#40).", - "source_file": "tests/test_core.py", - "source_location": "L919" + "community": 90, + "community_name": "get_settings", + "file_type": "code", + "norm_label": "fixture", + "source_file": "", + "source_location": "" }, { - "id": "runtimeerror", - "label": "RuntimeError", + "id": "tests_test_core_py_fixture", + "label": "fixture", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", - "norm_label": "runtimeerror", + "norm_label": "fixture", "source_file": "", "source_location": "" }, { - "id": "src_cellpy_simple_gui_core_export", - "label": "core/export.py", + "id": "tests_test_journal", + "label": "test_journal.py", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", - "norm_label": "core/export.py", - "source_file": "src/cellpy_simple_gui/core/export.py", + "norm_label": "test_journal.py", + "source_file": "tests/test_journal.py", "source_location": "L1" }, { @@ -69254,7 +69875,7 @@ "label": "test_uploads.py", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "test_uploads.py", "source_file": "tests/test_uploads.py", @@ -69265,7 +69886,7 @@ "label": "fixture", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "fixture", "source_file": "", @@ -69276,62 +69897,150 @@ "label": "parametrize", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "code", "norm_label": "parametrize", "source_file": "", "source_location": "" }, { - "id": "src_cellpy_simple_gui_core_export_rationale_1", - "label": "Data + static-figure export. Data path: cellpy collections \u2192 csv / xlsx /\u2026", + "id": "src_cellpy_simple_gui_api_deps_rationale_1", + "label": "Shared dependencies: templates and the local-token guard.", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "rationale", - "norm_label": "data + static-figure export. data path: cellpy collections \u2192 csv / xlsx /...", - "source_file": "src/cellpy_simple_gui/core/export.py", + "norm_label": "shared dependencies: templates and the local-token guard.", + "source_file": "src/cellpy_simple_gui/api/deps.py", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_export_rationale_214", - "label": "Stable, filesystem-safe stems; disambiguate duplicates with ``_2``, \u2026", + "id": "src_cellpy_simple_gui_api_deps_rationale_37", + "label": "Guard API routes. The index page plants the token as a cookie; the frontend\u2026", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "rationale", - "norm_label": "stable, filesystem-safe stems; disambiguate duplicates with ``_2``, ...", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L214" + "norm_label": "guard api routes. the index page plants the token as a cookie; the frontend...", + "source_file": "src/cellpy_simple_gui/api/deps.py", + "source_location": "L37" }, { - "id": "src_cellpy_simple_gui_core_export_rationale_52", - "label": "Static figure export failed (often missing kaleido or its browser).", + "id": "src_cellpy_simple_gui_config_rationale_1", + "label": "Application settings and paths.", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "rationale", - "norm_label": "static figure export failed (often missing kaleido or its browser).", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L52" + "norm_label": "application settings and paths.", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_256", - "label": "Differential voltage (dV/dQ vs capacity) for one cell \u2014 developer mode. Same\u2026", + "id": "tests_test_api_rationale_430", + "label": "cellpy logs through stdlib, so the bridge must feed the ring buffer.", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "rationale", - "norm_label": "differential voltage (dv/dq vs capacity) for one cell \u2014 developer mode. same...", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L256" + "norm_label": "cellpy logs through stdlib, so the bridge must feed the ring buffer.", + "source_file": "tests/test_api.py", + "source_location": "L430" + }, + { + "id": "tests_test_api_rationale_755", + "label": "A client for an instance bound to a network address.", + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "a client for an instance bound to a network address.", + "source_file": "tests/test_api.py", + "source_location": "L755" + }, + { + "id": "tests_test_core_rationale_1632", + "label": "Run a block with CSG_DEV_MODE=1 and a fresh settings cache.", + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "run a block with csg_dev_mode=1 and a fresh settings cache.", + "source_file": "tests/test_core.py", + "source_location": "L1632" + }, + { + "id": "tests_test_journal_rationale_1", + "label": "Tests for loading native cellpy batch journals.", + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "tests for loading native cellpy batch journals.", + "source_file": "tests/test_journal.py", + "source_location": "L1" + }, + { + "id": "tests_test_journal_rationale_10", + "label": "Write a real cellpy batch journal referencing the bundled example files.", + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "write a real cellpy batch journal referencing the bundled example files.", + "source_file": "tests/test_journal.py", + "source_location": "L10" + }, + { + "id": "tests_test_journal_rationale_117", + "label": "A journal pointing at non-existent .cellpy files yields no linkable cells.", + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "a journal pointing at non-existent .cellpy files yields no linkable cells.", + "source_file": "tests/test_journal.py", + "source_location": "L117" + }, + { + "id": "tests_test_journal_rationale_149", + "label": "Job must finish with an errors[] payload the UI can toast \u2014 not hang.", + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "job must finish with an errors[] payload the ui can toast \u2014 not hang.", + "source_file": "tests/test_journal.py", + "source_location": "L149" + }, + { + "id": "tests_test_journal_rationale_53", + "label": "The journal's ``group_label`` column names the groups (#187).", + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "the journal's ``group_label`` column names the groups (#187).", + "source_file": "tests/test_journal.py", + "source_location": "L53" + }, + { + "id": "tests_test_journal_rationale_80", + "label": "The journal job names the library's groups from the journal (#187).", + "_origin": "ast", + "community": 90, + "community_name": "get_settings", + "file_type": "rationale", + "norm_label": "the journal job names the library's groups from the journal (#187).", + "source_file": "tests/test_journal.py", + "source_location": "L80" }, { "id": "tests_test_uploads_rationale_1", "label": "Browser upload for served instances (#133). The sandbox (#120) is right to\u2026", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "browser upload for served instances (#133). the sandbox (#120) is right to...", "source_file": "tests/test_uploads.py", @@ -69342,7 +70051,7 @@ "label": "A served instance with its data dir under tmp_path.", "_origin": "ast", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "file_type": "rationale", "norm_label": "a served instance with its data dir under tmp_path.", "source_file": "tests/test_uploads.py", @@ -69598,36 +70307,6 @@ "source_file": ".cursor/skills/iflow-auto/SKILL.md", "source_location": "L1" }, - { - "id": "cursor_skills_iflow_drive_skill", - "label": "iflow-drive/SKILL.md", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "frontmatter": { - "name": "iflow-drive", - "description": ">-", - "disable-model-invocation": "true", - "issue-flow-version": "0.4.2a4" - }, - "node_kind": "page", - "norm_label": "iflow-drive/skill.md", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L1" - }, - { - "id": "agents_command_lifecycle", - "label": "Command lifecycle", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "command lifecycle", - "source_file": "AGENTS.md", - "source_location": "L167" - }, { "id": "cursor_skills_iflow_auto_skill_constraints", "label": "Constraints", @@ -69700,78 +70379,6 @@ "source_file": ".cursor/skills/iflow-auto/SKILL.md", "source_location": "L54" }, - { - "id": "cursor_skills_iflow_drive_skill_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L178" - }, - { - "id": "cursor_skills_iflow_drive_skill_input", - "label": "Input", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "input", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L24" - }, - { - "id": "cursor_skills_iflow_drive_skill_instructions", - "label": "Instructions", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "instructions", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L83" - }, - { - "id": "cursor_skills_iflow_drive_skill_issue_flow_drive_iflow_drive", - "label": "issue-flow \u2014 drive (`/iflow-drive`)", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue-flow \u2014 drive (`/iflow-drive`)", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L11" - }, - { - "id": "cursor_skills_iflow_drive_skill_model_execution_directive", - "label": "MODEL & EXECUTION DIRECTIVE", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "model & execution directive", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L48" - }, - { - "id": "cursor_skills_iflow_drive_skill_resolve_project_root_multi_root_workspaces", - "label": "Resolve project root (multi-root workspaces)", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "resolve project root (multi-root workspaces)", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L62" - }, { "id": "docs_issue_workflow_15_iflow_auto_unattended_large_change_orchestration", "label": "15. `/iflow-auto` \u2014 unattended large-change orchestration", @@ -69784,18 +70391,6 @@ "source_file": "docs/issue-workflow.md", "source_location": "L529" }, - { - "id": "docs_issue_workflow_16_iflow_drive_compose_epic_publish_auto_all", - "label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", - "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", - "source_file": "docs/issue-workflow.md", - "source_location": "L550" - }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_decided_2026_09_05", "label": "Decided (2026-09-05)", @@ -69855,30 +70450,6 @@ "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", "source_location": "L242" }, - { - "id": "issueflows_04_designs_and_guides_mcp_server_design_hard_part_1_state", - "label": "Hard part 1 \u2014 state", - "_origin": "ast", - "community": 97, - "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", - "file_type": "document", - "node_kind": "heading", - "norm_label": "hard part 1 \u2014 state", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L75" - }, - { - "id": "issueflows_04_designs_and_guides_mcp_server_design_hard_part_2_file_access", - "label": "Hard part 2 \u2014 file access", - "_origin": "ast", - "community": 97, - "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", - "file_type": "document", - "node_kind": "heading", - "norm_label": "hard part 2 \u2014 file access", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L119" - }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_prompts_the_part_aimed_at_people_who_are_not_asking_for_tools", "label": "Prompts \u2014 the part aimed at people who are not asking for tools", @@ -70023,30 +70594,6 @@ "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", "source_location": "L279" }, - { - "id": "issueflows_04_designs_and_guides_mcp_server_design_what_is_still_open", - "label": "What is still open", - "_origin": "ast", - "community": 97, - "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what is still open", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L402" - }, - { - "id": "issueflows_04_designs_and_guides_mcp_server_design_what_the_prototype_does_not_answer", - "label": "What the prototype does not answer", - "_origin": "ast", - "community": 97, - "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what the prototype does not answer", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L154" - }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_why_an_mcp_server_at_all", "label": "Why an MCP server at all", @@ -70258,74 +70805,74 @@ "type": "external" }, { - "id": "json", - "label": "json", + "id": "fastapi_staticfiles", + "label": "fastapi_staticfiles", "_origin": "semantic", "community": 0, "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "json", + "norm_label": "fastapi_staticfiles", "source_file": "", "type": "external" }, { - "id": "math", - "label": "math", + "id": "itertools", + "label": "itertools", "_origin": "semantic", "community": 0, "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "math", + "norm_label": "itertools", "source_file": "", "type": "external" }, { - "id": "pydantic", - "label": "pydantic", + "id": "json", + "label": "json", "_origin": "semantic", "community": 0, "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "pydantic", + "norm_label": "json", "source_file": "", "type": "external" }, { - "id": "queue", - "label": "queue", + "id": "logging", + "label": "logging", "_origin": "semantic", "community": 0, "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "queue", + "norm_label": "logging", "source_file": "", "type": "external" }, { - "id": "uuid", - "label": "uuid", + "id": "queue", + "label": "queue", "_origin": "semantic", "community": 0, "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "uuid", + "norm_label": "queue", "source_file": "", "type": "external" }, { - "id": "os", - "label": "os", + "id": "threading", + "label": "threading", "_origin": "semantic", - "community": 101, - "community_name": "test_gui_playwright.py", + "community": 0, + "community_name": "get_library", "external": true, "file_type": "concept", - "norm_label": "os", + "norm_label": "threading", "source_file": "", "type": "external" }, @@ -70342,50 +70889,38 @@ "type": "external" }, { - "id": "collections_abc", - "label": "collections_abc", - "_origin": "semantic", - "community": 107, - "community_name": "plotting.py", - "external": true, - "file_type": "concept", - "norm_label": "collections_abc", - "source_file": "", - "type": "external" - }, - { - "id": "asyncio", - "label": "asyncio", + "id": "math", + "label": "math", "_origin": "semantic", - "community": 114, - "community_name": "test_mcp_prototype.py", + "community": 105, + "community_name": "models.py", "external": true, "file_type": "concept", - "norm_label": "asyncio", + "norm_label": "math", "source_file": "", "type": "external" }, { - "id": "shutil", - "label": "shutil", + "id": "mcp_server_mcpserver", + "label": "mcp_server_mcpserver", "_origin": "semantic", - "community": 114, - "community_name": "test_mcp_prototype.py", + "community": 153, + "community_name": "mcp/server.py", "external": true, "file_type": "concept", - "norm_label": "shutil", + "norm_label": "mcp_server_mcpserver", "source_file": "", "type": "external" }, { - "id": "threading", - "label": "threading", + "id": "typing", + "label": "typing", "_origin": "semantic", - "community": 128, - "community_name": "test_jobs.py", + "community": 153, + "community_name": "mcp/server.py", "external": true, "file_type": "concept", - "norm_label": "threading", + "norm_label": "typing", "source_file": "", "type": "external" }, @@ -70406,25 +70941,121 @@ "label": "multiprocessing", "_origin": "semantic", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "external": true, "file_type": "concept", "norm_label": "multiprocessing", "source_file": "", "type": "external" }, + { + "id": "subprocess", + "label": "subprocess", + "_origin": "semantic", + "community": 166, + "community_name": "smoke_test.py", + "external": true, + "file_type": "concept", + "norm_label": "subprocess", + "source_file": "", + "type": "external" + }, + { + "id": "sys", + "label": "sys", + "_origin": "semantic", + "community": 166, + "community_name": "smoke_test.py", + "external": true, + "file_type": "concept", + "norm_label": "sys", + "source_file": "", + "type": "external" + }, + { + "id": "time", + "label": "time", + "_origin": "semantic", + "community": 166, + "community_name": "smoke_test.py", + "external": true, + "file_type": "concept", + "norm_label": "time", + "source_file": "", + "type": "external" + }, { "id": "traceback", "label": "traceback", "_origin": "semantic", "community": 166, - "community_name": "entry.py", + "community_name": "smoke_test.py", "external": true, "file_type": "concept", "norm_label": "traceback", "source_file": "", "type": "external" }, + { + "id": "urllib_error", + "label": "urllib_error", + "_origin": "semantic", + "community": 166, + "community_name": "smoke_test.py", + "external": true, + "file_type": "concept", + "norm_label": "urllib_error", + "source_file": "", + "type": "external" + }, + { + "id": "urllib_request", + "label": "urllib_request", + "_origin": "semantic", + "community": 166, + "community_name": "smoke_test.py", + "external": true, + "file_type": "concept", + "norm_label": "urllib_request", + "source_file": "", + "type": "external" + }, + { + "id": "collections_abc", + "label": "collections_abc", + "_origin": "semantic", + "community": 17, + "community_name": "cellpy_adapter.py", + "external": true, + "file_type": "concept", + "norm_label": "collections_abc", + "source_file": "", + "type": "external" + }, + { + "id": "asyncio", + "label": "asyncio", + "_origin": "semantic", + "community": 204, + "community_name": "test_mcp_prototype.py", + "external": true, + "file_type": "concept", + "norm_label": "asyncio", + "source_file": "", + "type": "external" + }, + { + "id": "shutil", + "label": "shutil", + "_origin": "semantic", + "community": 204, + "community_name": "test_mcp_prototype.py", + "external": true, + "file_type": "concept", + "norm_label": "shutil", + "source_file": "", + "type": "external" + }, { "id": "exception", "label": "Exception", @@ -70449,122 +71080,122 @@ "type": "external" }, { - "id": "plotly_io", - "label": "plotly_io", + "id": "warnings", + "label": "warnings", "_origin": "semantic", "community": 216, "community_name": "starter/app.py", "external": true, "file_type": "concept", - "norm_label": "plotly_io", + "norm_label": "warnings", "source_file": "", "type": "external" }, { - "id": "uvicorn", - "label": "uvicorn", + "id": "fastapi_testclient", + "label": "fastapi_testclient", "_origin": "semantic", - "community": 216, - "community_name": "starter/app.py", + "community": 277, + "community_name": "test_ingest.py", "external": true, "file_type": "concept", - "norm_label": "uvicorn", + "norm_label": "fastapi_testclient", "source_file": "", "type": "external" }, { - "id": "warnings", - "label": "warnings", + "id": "cellpy_collect", + "label": "cellpy_collect", "_origin": "semantic", - "community": 216, - "community_name": "starter/app.py", + "community": 3, + "community_name": "collect.py", "external": true, "file_type": "concept", - "norm_label": "warnings", + "norm_label": "cellpy_collect", "source_file": "", "type": "external" }, { - "id": "itertools", - "label": "itertools", + "id": "cellpy_collect_options", + "label": "cellpy_collect_options", "_origin": "semantic", - "community": 28, - "community_name": "library.py", + "community": 3, + "community_name": "collect.py", "external": true, "file_type": "concept", - "norm_label": "itertools", + "norm_label": "cellpy_collect_options", "source_file": "", "type": "external" }, { - "id": "logging", - "label": "logging", + "id": "cellpy_exceptions", + "label": "cellpy_exceptions", "_origin": "semantic", - "community": 28, - "community_name": "library.py", + "community": 30, + "community_name": "CyclesPlotSpec", "external": true, "file_type": "concept", - "norm_label": "logging", + "norm_label": "cellpy_exceptions", "source_file": "", "type": "external" }, { - "id": "typing", - "label": "typing", + "id": "cellpy_plotting", + "label": "cellpy_plotting", "_origin": "semantic", - "community": 28, - "community_name": "library.py", + "community": 30, + "community_name": "CyclesPlotSpec", "external": true, "file_type": "concept", - "norm_label": "typing", + "norm_label": "cellpy_plotting", "source_file": "", "type": "external" }, { - "id": "cellpy_collect", - "label": "cellpy_collect", + "id": "io", + "label": "io", "_origin": "semantic", - "community": 3, - "community_name": "collect.py", + "community": 30, + "community_name": "CyclesPlotSpec", "external": true, "file_type": "concept", - "norm_label": "cellpy_collect", + "norm_label": "io", "source_file": "", "type": "external" }, { - "id": "cellpy_collect_options", - "label": "cellpy_collect_options", + "id": "plotly_io", + "label": "plotly_io", "_origin": "semantic", - "community": 3, - "community_name": "collect.py", + "community": 30, + "community_name": "CyclesPlotSpec", "external": true, "file_type": "concept", - "norm_label": "cellpy_collect_options", + "norm_label": "plotly_io", "source_file": "", "type": "external" }, { - "id": "ast", - "label": "ast", + "id": "tempfile", + "label": "tempfile", "_origin": "semantic", - "community": 304, - "community_name": "test_starter.py", + "community": 30, + "community_name": "CyclesPlotSpec", "external": true, "file_type": "concept", - "norm_label": "ast", + "norm_label": "tempfile", "source_file": "", "type": "external" }, { - "id": "fastapi_testclient", - "label": "fastapi_testclient", + "id": "ast", + "label": "ast", "_origin": "semantic", "community": 304, "community_name": "test_starter.py", "external": true, "file_type": "concept", - "norm_label": "fastapi_testclient", + "norm_label": "ast", "source_file": "", "type": "external" }, @@ -70581,14 +71212,14 @@ "type": "external" }, { - "id": "pandas", - "label": "pandas", + "id": "importlib_util", + "label": "importlib_util", "_origin": "semantic", "community": 304, "community_name": "test_starter.py", "external": true, "file_type": "concept", - "norm_label": "pandas", + "norm_label": "importlib_util", "source_file": "", "type": "external" }, @@ -70655,7 +71286,7 @@ "label": "argparse", "_origin": "semantic", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "external": true, "file_type": "concept", "norm_label": "argparse", @@ -70667,115 +71298,31 @@ "label": "collections", "_origin": "semantic", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "external": true, "file_type": "concept", "norm_label": "collections", "source_file": "", "type": "external" }, - { - "id": "fastapi_staticfiles", - "label": "fastapi_staticfiles", - "_origin": "semantic", - "community": 48, - "community_name": "get_settings", - "external": true, - "file_type": "concept", - "norm_label": "fastapi_staticfiles", - "source_file": "", - "type": "external" - }, - { - "id": "fastapi_templating", - "label": "fastapi_templating", - "_origin": "semantic", - "community": 48, - "community_name": "get_settings", - "external": true, - "file_type": "concept", - "norm_label": "fastapi_templating", - "source_file": "", - "type": "external" - }, - { - "id": "functools", - "label": "functools", - "_origin": "semantic", - "community": 48, - "community_name": "get_settings", - "external": true, - "file_type": "concept", - "norm_label": "functools", - "source_file": "", - "type": "external" - }, { "id": "loguru", "label": "loguru", "_origin": "semantic", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "external": true, "file_type": "concept", "norm_label": "loguru", "source_file": "", "type": "external" }, - { - "id": "mcp_server_mcpserver", - "label": "mcp_server_mcpserver", - "_origin": "semantic", - "community": 48, - "community_name": "get_settings", - "external": true, - "file_type": "concept", - "norm_label": "mcp_server_mcpserver", - "source_file": "", - "type": "external" - }, - { - "id": "pathlib", - "label": "pathlib", - "_origin": "semantic", - "community": 48, - "community_name": "get_settings", - "external": true, - "file_type": "concept", - "norm_label": "pathlib", - "source_file": "", - "type": "external" - }, - { - "id": "pydantic_settings", - "label": "pydantic_settings", - "_origin": "semantic", - "community": 48, - "community_name": "get_settings", - "external": true, - "file_type": "concept", - "norm_label": "pydantic_settings", - "source_file": "", - "type": "external" - }, - { - "id": "secrets", - "label": "secrets", - "_origin": "semantic", - "community": 48, - "community_name": "get_settings", - "external": true, - "file_type": "concept", - "norm_label": "secrets", - "source_file": "", - "type": "external" - }, { "id": "signal", "label": "signal", "_origin": "semantic", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "external": true, "file_type": "concept", "norm_label": "signal", @@ -70787,7 +71334,7 @@ "label": "socket", "_origin": "semantic", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "external": true, "file_type": "concept", "norm_label": "socket", @@ -70795,182 +71342,182 @@ "type": "external" }, { - "id": "subprocess", - "label": "subprocess", + "id": "uvicorn", + "label": "uvicorn", "_origin": "semantic", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "external": true, "file_type": "concept", - "norm_label": "subprocess", + "norm_label": "uvicorn", "source_file": "", "type": "external" }, { - "id": "sys", - "label": "sys", + "id": "webbrowser", + "label": "webbrowser", "_origin": "semantic", "community": 48, - "community_name": "get_settings", + "community_name": "logging_setup.py", "external": true, "file_type": "concept", - "norm_label": "sys", + "norm_label": "webbrowser", "source_file": "", "type": "external" }, { - "id": "time", - "label": "time", + "id": "datetime", + "label": "datetime", "_origin": "semantic", - "community": 48, - "community_name": "get_settings", + "community": 65, + "community_name": "core/projects.py", "external": true, "file_type": "concept", - "norm_label": "time", + "norm_label": "datetime", "source_file": "", "type": "external" }, { - "id": "urllib_error", - "label": "urllib_error", + "id": "uuid", + "label": "uuid", "_origin": "semantic", - "community": 48, - "community_name": "get_settings", + "community": 65, + "community_name": "core/projects.py", "external": true, "file_type": "concept", - "norm_label": "urllib_error", + "norm_label": "uuid", "source_file": "", "type": "external" }, { - "id": "urllib_request", - "label": "urllib_request", + "id": "pydantic", + "label": "pydantic", "_origin": "semantic", - "community": 48, - "community_name": "get_settings", + "community": 7, + "community_name": "test_compare.py", "external": true, "file_type": "concept", - "norm_label": "urllib_request", + "norm_label": "pydantic", "source_file": "", "type": "external" }, { - "id": "webbrowser", - "label": "webbrowser", + "id": "fnmatch", + "label": "fnmatch", "_origin": "semantic", - "community": 48, - "community_name": "get_settings", + "community": 75, + "community_name": "test_packaging.py", "external": true, "file_type": "concept", - "norm_label": "webbrowser", + "norm_label": "fnmatch", "source_file": "", "type": "external" }, { - "id": "importlib_util", - "label": "importlib_util", + "id": "yaml", + "label": "yaml", "_origin": "semantic", - "community": 64, - "community_name": "test_agent_docs.py", + "community": 75, + "community_name": "test_packaging.py", "external": true, "file_type": "concept", - "norm_label": "importlib_util", + "norm_label": "yaml", "source_file": "", "type": "external" }, { - "id": "datetime", - "label": "datetime", + "id": "glob", + "label": "glob", "_origin": "semantic", - "community": 65, - "community_name": "core/projects.py", + "community": 83, + "community_name": "expand_paths", "external": true, "file_type": "concept", - "norm_label": "datetime", + "norm_label": "glob", "source_file": "", "type": "external" }, { - "id": "fnmatch", - "label": "fnmatch", + "id": "os", + "label": "os", "_origin": "semantic", - "community": 75, - "community_name": "test_packaging.py", + "community": 83, + "community_name": "expand_paths", "external": true, "file_type": "concept", - "norm_label": "fnmatch", + "norm_label": "os", "source_file": "", "type": "external" }, { - "id": "yaml", - "label": "yaml", + "id": "fastapi_templating", + "label": "fastapi_templating", "_origin": "semantic", - "community": 75, - "community_name": "test_packaging.py", + "community": 90, + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "yaml", + "norm_label": "fastapi_templating", "source_file": "", "type": "external" }, { - "id": "glob", - "label": "glob", + "id": "functools", + "label": "functools", "_origin": "semantic", - "community": 83, - "community_name": "expand_paths", + "community": 90, + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "glob", + "norm_label": "functools", "source_file": "", "type": "external" }, { - "id": "cellpy_exceptions", - "label": "cellpy_exceptions", + "id": "pandas", + "label": "pandas", "_origin": "semantic", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "cellpy_exceptions", + "norm_label": "pandas", "source_file": "", "type": "external" }, { - "id": "cellpy_plotting", - "label": "cellpy_plotting", + "id": "pathlib", + "label": "pathlib", "_origin": "semantic", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "cellpy_plotting", + "norm_label": "pathlib", "source_file": "", "type": "external" }, { - "id": "io", - "label": "io", + "id": "pydantic_settings", + "label": "pydantic_settings", "_origin": "semantic", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "io", + "norm_label": "pydantic_settings", "source_file": "", "type": "external" }, { - "id": "tempfile", - "label": "tempfile", + "id": "secrets", + "label": "secrets", "_origin": "semantic", "community": 90, - "community_name": "core/export.py", + "community_name": "get_settings", "external": true, "file_type": "concept", - "norm_label": "tempfile", + "norm_label": "secrets", "source_file": "", "type": "external" } @@ -71765,7 +72312,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L162", + "source_location": "L173", "weight": 1.0 }, { @@ -71777,7 +72324,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L166", + "source_location": "L177", "weight": 1.0 }, { @@ -71789,7 +72336,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L168", + "source_location": "L179", "weight": 1.0 }, { @@ -71801,7 +72348,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L156", + "source_location": "L167", "weight": 1.0 }, { @@ -71813,7 +72360,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L157", + "source_location": "L168", "weight": 1.0 }, { @@ -71825,7 +72372,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L46", + "source_location": "L48", "weight": 1.0 }, { @@ -71837,7 +72384,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L91", + "source_location": "L93", "weight": 1.0 }, { @@ -71849,7 +72396,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L53", + "source_location": "L55", "weight": 1.0 }, { @@ -71861,7 +72408,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L59", + "source_location": "L61", "weight": 1.0 }, { @@ -71873,7 +72420,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L121", + "source_location": "L123", "weight": 1.0 }, { @@ -71885,7 +72432,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L72", + "source_location": "L74", "weight": 1.0 }, { @@ -71897,7 +72444,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L73", + "source_location": "L75", "weight": 1.0 }, { @@ -71909,7 +72456,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L73", + "source_location": "L75", "weight": 1.0 }, { @@ -71921,7 +72468,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L79", + "source_location": "L81", "weight": 1.0 }, { @@ -71933,7 +72480,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L107", + "source_location": "L109", "weight": 1.0 }, { @@ -71945,7 +72492,31 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L107", + "source_location": "L109", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L155", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "target": "src_cellpy_simple_gui_api_routers_cells_state", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L156", "weight": 1.0 }, { @@ -71957,7 +72528,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L150", + "source_location": "L161", "weight": 1.0 }, { @@ -71969,7 +72540,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L151", + "source_location": "L162", "weight": 1.0 }, { @@ -71981,7 +72552,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L25", + "source_location": "L26", "weight": 1.0 }, { @@ -71993,7 +72564,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L130", + "source_location": "L132", "weight": 1.0 }, { @@ -72005,7 +72576,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L145", + "source_location": "L147", "weight": 1.0 }, { @@ -73133,7 +73704,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L195", + "source_location": "L198", "weight": 1.0 }, { @@ -73145,7 +73716,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L196", + "source_location": "L199", "weight": 1.0 }, { @@ -73157,7 +73728,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L199", + "source_location": "L202", "weight": 1.0 }, { @@ -73169,7 +73740,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L202", + "source_location": "L205", "weight": 1.0 }, { @@ -73181,7 +73752,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L204", + "source_location": "L207", "weight": 1.0 }, { @@ -73193,7 +73764,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L205", + "source_location": "L208", "weight": 1.0 }, { @@ -73241,7 +73812,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L184", + "source_location": "L187", "weight": 1.0 }, { @@ -73253,7 +73824,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L188", + "source_location": "L191", "weight": 1.0 }, { @@ -73270,7 +73841,7 @@ }, { "source": "src_cellpy_simple_gui_api_routers_projects_load_journal_job", - "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", "relation": "calls", "_origin": "ast", "confidence": "EXTRACTED", @@ -73721,7 +74292,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L793", + "source_location": "L817", "weight": 1.0 }, { @@ -73868,6 +74439,18 @@ "source_location": "L346", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L578", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_raw", "target": "src_cellpy_simple_gui_core_cellpy_adapter_filename_for_get", @@ -73913,7 +74496,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L804", + "source_location": "L828", "weight": 1.0 }, { @@ -73925,7 +74508,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L819", + "source_location": "L843", "weight": 1.0 }, { @@ -73937,7 +74520,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L799", + "source_location": "L823", "weight": 1.0 }, { @@ -73949,7 +74532,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L814", + "source_location": "L838", "weight": 1.0 }, { @@ -73961,7 +74544,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L809", + "source_location": "L833", "weight": 1.0 }, { @@ -74165,7 +74748,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L788", + "source_location": "L809", "weight": 1.0 }, { @@ -74177,7 +74760,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L789", + "source_location": "L810", "weight": 1.0 }, { @@ -74189,7 +74772,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L798", + "source_location": "L819", "weight": 1.0 }, { @@ -74201,7 +74784,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L802", + "source_location": "L823", "weight": 1.0 }, { @@ -74213,7 +74796,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1366", + "source_location": "L1390", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect_apply_group_titles", + "target": "src_cellpy_simple_gui_core_collect_truncate_label", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L117", "weight": 1.0 }, { @@ -74225,7 +74820,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L755", + "source_location": "L776", "weight": 1.0 }, { @@ -74237,7 +74832,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1068", + "source_location": "L1092", "weight": 1.0 }, { @@ -74249,7 +74844,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1077", + "source_location": "L1101", "weight": 1.0 }, { @@ -74261,7 +74856,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1084", + "source_location": "L1108", "weight": 1.0 }, { @@ -74273,7 +74868,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1091", + "source_location": "L1115", "weight": 1.0 }, { @@ -74285,7 +74880,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L826", + "source_location": "L847", "weight": 1.0 }, { @@ -74309,7 +74904,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L968", + "source_location": "L992", "weight": 1.0 }, { @@ -74321,7 +74916,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L972", + "source_location": "L996", "weight": 1.0 }, { @@ -74333,7 +74928,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L511", + "source_location": "L532", "weight": 1.0 }, { @@ -74345,7 +74940,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L546", + "source_location": "L567", "weight": 1.0 }, { @@ -74357,7 +74952,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1108", + "source_location": "L1132", "weight": 1.0 }, { @@ -74369,7 +74964,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1115", + "source_location": "L1139", "weight": 1.0 }, { @@ -74381,7 +74976,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1459", + "source_location": "L1483", "weight": 1.0 }, { @@ -74393,7 +74988,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1230", + "source_location": "L1254", "weight": 1.0 }, { @@ -74405,7 +75000,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1232", + "source_location": "L1256", "weight": 1.0 }, { @@ -74417,7 +75012,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1233", + "source_location": "L1257", "weight": 1.0 }, { @@ -74429,7 +75024,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L276", + "source_location": "L297", "weight": 1.0 }, { @@ -74441,7 +75036,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L203", + "source_location": "L224", "weight": 1.0 }, { @@ -74453,7 +75048,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L226", + "source_location": "L247", "weight": 1.0 }, { @@ -74465,7 +75060,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L862", + "source_location": "L884", "weight": 1.0 }, { @@ -74477,7 +75072,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L870", + "source_location": "L892", "weight": 1.0 }, { @@ -74489,7 +75084,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L877", + "source_location": "L899", "weight": 1.0 }, { @@ -74501,7 +75096,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L879", + "source_location": "L901", "weight": 1.0 }, { @@ -74513,7 +75108,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L883", + "source_location": "L905", "weight": 1.0 }, { @@ -74525,7 +75120,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L886", + "source_location": "L908", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect_figure_json", + "target": "src_cellpy_simple_gui_core_collect_apply_group_titles", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L910", "weight": 1.0 }, { @@ -74537,7 +75144,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L888", + "source_location": "L912", "weight": 1.0 }, { @@ -74549,7 +75156,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L890", + "source_location": "L914", "weight": 1.0 }, { @@ -74561,7 +75168,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L891", + "source_location": "L915", "weight": 1.0 }, { @@ -74573,7 +75180,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L894", + "source_location": "L918", "weight": 1.0 }, { @@ -74585,7 +75192,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L527", + "source_location": "L548", "weight": 1.0 }, { @@ -74597,7 +75204,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L266", + "source_location": "L287", "weight": 1.0 }, { @@ -74609,7 +75216,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1277", + "source_location": "L1301", "weight": 1.0 }, { @@ -74621,7 +75228,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1300", + "source_location": "L1324", "weight": 1.0 }, { @@ -74633,7 +75240,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1302", + "source_location": "L1326", "weight": 1.0 }, { @@ -74645,7 +75252,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1261", + "source_location": "L1285", "weight": 1.0 }, { @@ -74657,7 +75264,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L937", + "source_location": "L961", "weight": 1.0 }, { @@ -74669,7 +75276,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L938", + "source_location": "L962", "weight": 1.0 }, { @@ -74681,7 +75288,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L939", + "source_location": "L963", "weight": 1.0 }, { @@ -74693,7 +75300,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L942", + "source_location": "L966", "weight": 1.0 }, { @@ -74705,7 +75312,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L148", + "source_location": "L169", "weight": 1.0 }, { @@ -74717,7 +75324,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L164", + "source_location": "L185", "weight": 1.0 }, { @@ -74729,7 +75336,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L728", + "source_location": "L749", "weight": 1.0 }, { @@ -74741,7 +75348,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1384", + "source_location": "L1408", "weight": 1.0 }, { @@ -74753,7 +75360,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1385", + "source_location": "L1409", "weight": 1.0 }, { @@ -74765,7 +75372,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1388", + "source_location": "L1412", "weight": 1.0 }, { @@ -74777,7 +75384,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1391", + "source_location": "L1415", "weight": 1.0 }, { @@ -74789,7 +75396,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1157", + "source_location": "L1181", "weight": 1.0 }, { @@ -74801,7 +75408,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1158", + "source_location": "L1182", "weight": 1.0 }, { @@ -74813,7 +75420,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L480", + "source_location": "L501", "weight": 1.0 }, { @@ -74825,7 +75432,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L410", + "source_location": "L431", "weight": 1.0 }, { @@ -74837,7 +75444,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L416", + "source_location": "L437", "weight": 1.0 }, { @@ -74849,7 +75456,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L324", + "source_location": "L345", "weight": 1.0 }, { @@ -74861,7 +75468,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L290", + "source_location": "L311", "weight": 1.0 }, { @@ -74873,7 +75480,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L440", + "source_location": "L461", "weight": 1.0 }, { @@ -74885,7 +75492,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L441", + "source_location": "L462", "weight": 1.0 }, { @@ -74897,7 +75504,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L305", + "source_location": "L326", "weight": 1.0 }, { @@ -74909,7 +75516,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L309", + "source_location": "L330", "weight": 1.0 }, { @@ -74921,7 +75528,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L313", + "source_location": "L334", "weight": 1.0 }, { @@ -74933,7 +75540,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L434", + "source_location": "L455", "weight": 1.0 }, { @@ -74945,7 +75552,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1015", + "source_location": "L1039", "weight": 1.0 }, { @@ -75512,6 +76119,30 @@ "source_location": "L86", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_library_cellrecord_group_name", + "target": "src_cellpy_simple_gui_core_library_default_group_label", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L88", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", + "target": "src_cellpy_simple_gui_core_library_cellrecord_group_name", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L102", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", "target": "src_cellpy_simple_gui_core_library_cellrecord_color", @@ -75521,7 +76152,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L90", + "source_location": "L105", "weight": 1.0 }, { @@ -75533,7 +76164,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L303", + "source_location": "L364", "weight": 1.0 }, { @@ -75545,7 +76176,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L120", + "source_location": "L139", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library_groups", + "target": "src_cellpy_simple_gui_core_library_default_group_label", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L322", "weight": 1.0 }, { @@ -75557,7 +76200,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L225", + "source_location": "L244", "weight": 1.0 }, { @@ -75569,7 +76212,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L234", + "source_location": "L253", "weight": 1.0 }, { @@ -75581,7 +76224,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L163", + "source_location": "L182", "weight": 1.0 }, { @@ -75593,7 +76236,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L180", + "source_location": "L199", "weight": 1.0 }, { @@ -75605,7 +76248,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L250", + "source_location": "L269", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library_set_group_label", + "target": "src_cellpy_simple_gui_core_library_default_group_label", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L296", "weight": 1.0 }, { @@ -75617,7 +76272,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L208", + "source_location": "L216", "weight": 1.0 }, { @@ -75629,7 +76284,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L155", + "source_location": "L163", "weight": 1.0 }, { @@ -75641,7 +76296,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L252", + "source_location": "L260", "weight": 1.0 }, { @@ -75653,7 +76308,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L286", + "source_location": "L294", "weight": 1.0 }, { @@ -75665,7 +76320,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L118", + "source_location": "L126", "weight": 1.0 }, { @@ -75845,7 +76500,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L234", + "source_location": "L237", "weight": 1.0 }, { @@ -75857,7 +76512,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L246", + "source_location": "L249", "weight": 1.0 }, { @@ -75869,7 +76524,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L255", + "source_location": "L258", "weight": 1.0 }, { @@ -75881,7 +76536,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L259", + "source_location": "L262", "weight": 1.0 }, { @@ -75893,7 +76548,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L260", + "source_location": "L263", "weight": 1.0 }, { @@ -75905,7 +76560,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L271", + "source_location": "L274", "weight": 1.0 }, { @@ -75917,7 +76572,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L274", + "source_location": "L277", "weight": 1.0 }, { @@ -75929,7 +76584,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L275", + "source_location": "L278", "weight": 1.0 }, { @@ -75941,7 +76596,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L287", + "source_location": "L290", "weight": 1.0 }, { @@ -75953,7 +76608,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L290", + "source_location": "L293", "weight": 1.0 }, { @@ -75965,7 +76620,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L101", + "source_location": "L103", "weight": 1.0 }, { @@ -75977,7 +76632,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L103", + "source_location": "L105", "weight": 1.0 }, { @@ -75989,7 +76644,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L312", + "source_location": "L315", "weight": 1.0 }, { @@ -76001,7 +76656,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L316", + "source_location": "L319", "weight": 1.0 }, { @@ -76013,7 +76668,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L164", + "source_location": "L166", "weight": 1.0 }, { @@ -76025,7 +76680,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L174", + "source_location": "L176", "weight": 1.0 }, { @@ -76037,7 +76692,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L175", + "source_location": "L177", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_plotting_cycles_figure", + "target": "src_cellpy_simple_gui_core_collect_group_titles", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L183", "weight": 1.0 }, { @@ -76049,7 +76716,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L199", + "source_location": "L202", "weight": 1.0 }, { @@ -76061,7 +76728,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L199", + "source_location": "L202", "weight": 1.0 }, { @@ -76073,7 +76740,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L201", + "source_location": "L204", "weight": 1.0 }, { @@ -76085,7 +76752,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L205", + "source_location": "L208", "weight": 1.0 }, { @@ -76097,7 +76764,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L328", + "source_location": "L331", "weight": 1.0 }, { @@ -76109,7 +76776,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L332", + "source_location": "L335", "weight": 1.0 }, { @@ -76121,7 +76788,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L333", + "source_location": "L336", "weight": 1.0 }, { @@ -76133,7 +76800,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L336", + "source_location": "L339", "weight": 1.0 }, { @@ -76145,7 +76812,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L339", + "source_location": "L342", "weight": 1.0 }, { @@ -76157,7 +76824,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L344", + "source_location": "L347", "weight": 1.0 }, { @@ -76169,7 +76836,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L344", + "source_location": "L347", "weight": 1.0 }, { @@ -76181,7 +76848,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L151", + "source_location": "L153", "weight": 1.0 }, { @@ -76193,7 +76860,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L157", + "source_location": "L159", "weight": 1.0 }, { @@ -76205,7 +76872,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L159", + "source_location": "L161", "weight": 1.0 }, { @@ -76217,7 +76884,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L355", + "source_location": "L358", "weight": 1.0 }, { @@ -76229,7 +76896,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L359", + "source_location": "L362", "weight": 1.0 }, { @@ -76241,7 +76908,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L360", + "source_location": "L363", "weight": 1.0 }, { @@ -76253,7 +76920,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L363", + "source_location": "L366", "weight": 1.0 }, { @@ -76265,7 +76932,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L368", + "source_location": "L371", "weight": 1.0 }, { @@ -76277,7 +76944,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L375", + "source_location": "L378", "weight": 1.0 }, { @@ -76289,7 +76956,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L375", + "source_location": "L378", "weight": 1.0 }, { @@ -76301,7 +76968,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L113", + "source_location": "L115", "weight": 1.0 }, { @@ -76313,7 +76980,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L115", + "source_location": "L117", "weight": 1.0 }, { @@ -76325,7 +76992,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L297", + "source_location": "L300", "weight": 1.0 }, { @@ -76337,7 +77004,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L132", + "source_location": "L134", "weight": 1.0 }, { @@ -76349,7 +77016,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L133", + "source_location": "L135", "weight": 1.0 }, { @@ -76436,6 +77103,18 @@ "source_location": "L61", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_plotting_summary_figure", + "target": "src_cellpy_simple_gui_core_collect_group_titles", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L70", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_plotting_summary_figure", "target": "src_cellpy_simple_gui_core_collect_summary_y_label_mapper", @@ -76445,7 +77124,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L72", + "source_location": "L74", "weight": 1.0 }, { @@ -76457,7 +77136,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L313", + "source_location": "L328", "weight": 1.0 }, { @@ -76469,7 +77148,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L313", + "source_location": "L328", "weight": 1.0 }, { @@ -76481,7 +77160,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L294", + "source_location": "L309", "weight": 1.0 }, { @@ -76493,7 +77172,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L299", + "source_location": "L314", "weight": 1.0 }, { @@ -76505,7 +77184,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L303", + "source_location": "L318", "weight": 1.0 }, { @@ -76517,7 +77196,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L262", + "source_location": "L275", "weight": 1.0 }, { @@ -76529,7 +77208,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L263", + "source_location": "L276", "weight": 1.0 }, { @@ -76541,7 +77220,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L274", + "source_location": "L287", "weight": 1.0 }, { @@ -76553,7 +77232,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L89", + "source_location": "L98", "weight": 1.0 }, { @@ -76565,7 +77244,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L110", + "source_location": "L119", "weight": 1.0 }, { @@ -76577,7 +77256,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L110", + "source_location": "L119", "weight": 1.0 }, { @@ -76589,7 +77268,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L320", + "source_location": "L335", "weight": 1.0 }, { @@ -76601,7 +77280,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L163", + "source_location": "L172", "weight": 1.0 }, { @@ -76613,7 +77292,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L164", + "source_location": "L173", "weight": 1.0 }, { @@ -76625,7 +77304,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L166", + "source_location": "L175", "weight": 1.0 }, { @@ -76637,7 +77316,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L169", + "source_location": "L178", "weight": 1.0 }, { @@ -76649,7 +77328,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L173", + "source_location": "L182", "weight": 1.0 }, { @@ -76661,7 +77340,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L200", + "source_location": "L209", "weight": 1.0 }, { @@ -76673,7 +77352,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L202", + "source_location": "L211", "weight": 1.0 }, { @@ -76685,7 +77364,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L213", + "source_location": "L222", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_projects_save_project", + "target": "src_cellpy_simple_gui_core_projects_groupentry", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L224", "weight": 1.0 }, { @@ -78977,7 +79668,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L75", + "source_location": "L76", "weight": 1.0 }, { @@ -150761,7 +151452,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L586", + "source_location": "L613", "weight": 1.0 }, { @@ -150809,7 +151500,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L617", + "source_location": "L644", "weight": 1.0 }, { @@ -150821,7 +151512,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L299", + "source_location": "L326", "weight": 1.0 }, { @@ -150869,7 +151560,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L735", + "source_location": "L762", "weight": 1.0 }, { @@ -150881,7 +151572,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L736", + "source_location": "L763", "weight": 1.0 }, { @@ -150893,7 +151584,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L737", + "source_location": "L764", "weight": 1.0 }, { @@ -150905,7 +151596,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L596", + "source_location": "L623", "weight": 1.0 }, { @@ -150917,7 +151608,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L686", + "source_location": "L713", "weight": 1.0 }, { @@ -150929,7 +151620,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L652", + "source_location": "L679", "weight": 1.0 }, { @@ -150941,7 +151632,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L656", + "source_location": "L683", "weight": 1.0 }, { @@ -150953,7 +151644,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L657", + "source_location": "L684", "weight": 1.0 }, { @@ -150965,7 +151656,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L713", + "source_location": "L740", "weight": 1.0 }, { @@ -150977,7 +151668,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L315", + "source_location": "L342", "weight": 1.0 }, { @@ -151001,7 +151692,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L249", + "source_location": "L276", "weight": 1.0 }, { @@ -151013,7 +151704,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L569", + "source_location": "L596", "weight": 1.0 }, { @@ -151025,7 +151716,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L570", + "source_location": "L597", "weight": 1.0 }, { @@ -151037,7 +151728,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L579", + "source_location": "L606", "weight": 1.0 }, { @@ -151061,7 +151752,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L435", + "source_location": "L462", "weight": 1.0 }, { @@ -151073,7 +151764,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L436", + "source_location": "L463", "weight": 1.0 }, { @@ -151085,7 +151776,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L437", + "source_location": "L464", "weight": 1.0 }, { @@ -151109,7 +151800,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L411", + "source_location": "L438", "weight": 1.0 }, { @@ -151121,7 +151812,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L412", + "source_location": "L439", "weight": 1.0 }, { @@ -151133,7 +151824,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L701", + "source_location": "L728", "weight": 1.0 }, { @@ -151145,7 +151836,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L347", + "source_location": "L374", "weight": 1.0 }, { @@ -151157,7 +151848,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L366", + "source_location": "L393", + "weight": 1.0 + }, + { + "source": "tests_test_api_test_rename_group", + "target": "tests_test_api_wait_for_job", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_api.py", + "source_location": "L244", "weight": 1.0 }, { @@ -151169,7 +151872,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L770", + "source_location": "L797", "weight": 1.0 }, { @@ -151181,7 +151884,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L775", + "source_location": "L802", "weight": 1.0 }, { @@ -151565,7 +152268,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1433", + "source_location": "L1515", "weight": 1.0 }, { @@ -151577,7 +152280,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1464", + "source_location": "L1546", "weight": 1.0 }, { @@ -151589,7 +152292,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1447", + "source_location": "L1529", "weight": 1.0 }, { @@ -151604,6 +152307,30 @@ "source_location": "L398", "weight": 1.0 }, + { + "source": "tests_test_core_test_group_names_caption_ungrouped_legend", + "target": "tests_test_core_spread_library", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_core.py", + "source_location": "L1296", + "weight": 1.0 + }, + { + "source": "tests_test_core_test_group_names_reach_grouped_legend", + "target": "tests_test_core_spread_library", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_core.py", + "source_location": "L1280", + "weight": 1.0 + }, { "source": "tests_test_core_test_ica_figure_charge_differs_from_discharge", "target": "tests_test_core_ica_y_values", @@ -151625,7 +152352,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1283", + "source_location": "L1365", "weight": 1.0 }, { @@ -151637,7 +152364,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1328", + "source_location": "L1410", "weight": 1.0 }, { @@ -151649,7 +152376,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1334", + "source_location": "L1416", "weight": 1.0 }, { @@ -151661,7 +152388,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1338", + "source_location": "L1420", "weight": 1.0 }, { @@ -151709,7 +152436,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1312", + "source_location": "L1394", "weight": 1.0 }, { @@ -152036,6 +152763,30 @@ "source_location": "L236", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright_test_cells_modal_names_groups", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L289", + "weight": 1.0 + }, + { + "source": "tests_test_gui_playwright_test_cells_modal_names_groups", + "target": "tests_test_gui_playwright_load_bundled_cell", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L292", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright_test_data_panel_collapses_after_load", "target": "src_cellpy_simple_gui_core_library_get_library", @@ -152156,6 +152907,18 @@ "source_location": "L35", "weight": 1.0 }, + { + "source": "tests_test_journal_test_api_load_journal_applies_group_labels", + "target": "tests_test_journal_build_journal", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L90", + "weight": 1.0 + }, { "source": "tests_test_journal_test_load_journal_cells", "target": "tests_test_journal_build_journal", @@ -152165,7 +152928,31 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_journal.py", - "source_location": "L36", + "source_location": "L37", + "weight": 1.0 + }, + { + "source": "tests_test_journal_test_load_journal_reads_group_labels", + "target": "tests_test_journal_build_journal", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L57", + "weight": 1.0 + }, + { + "source": "tests_test_journal_test_load_journal_without_group_labels", + "target": "tests_test_journal_build_journal", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L71", "weight": 1.0 }, { @@ -152753,7 +153540,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L347", + "source_location": "L386", "weight": 1.0 }, { @@ -152765,7 +153552,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L348", + "source_location": "L387", "weight": 1.0 }, { @@ -152777,7 +153564,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L341", + "source_location": "L380", "weight": 1.0 }, { @@ -152789,7 +153576,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L342", + "source_location": "L381", "weight": 1.0 }, { @@ -152801,7 +153588,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L314", + "source_location": "L353", "weight": 1.0 }, { @@ -152813,7 +153600,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L315", + "source_location": "L354", "weight": 1.0 }, { @@ -152825,7 +153612,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L316", + "source_location": "L355", "weight": 1.0 }, { @@ -152837,7 +153624,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L318", + "source_location": "L357", "weight": 1.0 }, { @@ -152849,7 +153636,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L427", + "source_location": "L466", "weight": 1.0 }, { @@ -152861,7 +153648,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L439", + "source_location": "L478", "weight": 1.0 }, { @@ -152873,7 +153660,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L388", + "source_location": "L427", "weight": 1.0 }, { @@ -152885,7 +153672,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L407", + "source_location": "L446", "weight": 1.0 }, { @@ -152897,7 +153684,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L120", + "source_location": "L159", "weight": 1.0 }, { @@ -152909,7 +153696,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L144", + "source_location": "L183", "weight": 1.0 }, { @@ -152921,7 +153708,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L166", + "source_location": "L205", "weight": 1.0 }, { @@ -152933,7 +153720,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L183", + "source_location": "L222", "weight": 1.0 }, { @@ -153273,15 +154060,15 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", - "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells_progress", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_progress", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L591", + "source_location": "L608", "weight": 1.0 }, { @@ -155081,7 +155868,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L160", + "source_location": "L171", "weight": 1.0 }, { @@ -155093,7 +155880,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L154", + "source_location": "L165", "weight": 1.0 }, { @@ -155105,7 +155892,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L44", + "source_location": "L46", "weight": 1.0 }, { @@ -155117,7 +155904,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L36", + "source_location": "L38", "weight": 1.0 }, { @@ -155129,7 +155916,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L88", + "source_location": "L90", "weight": 1.0 }, { @@ -155141,7 +155928,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L116", + "source_location": "L118", "weight": 1.0 }, { @@ -155153,7 +155940,19 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L95", + "source_location": "L97", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "target": "src_cellpy_simple_gui_api_routers_cells_py_post", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "decorator", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L150", "weight": 1.0 }, { @@ -155165,7 +155964,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L148", + "source_location": "L159", "weight": 1.0 }, { @@ -155177,7 +155976,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L128", + "source_location": "L130", "weight": 1.0 }, { @@ -155465,7 +156264,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L192", + "source_location": "L195", "weight": 1.0 }, { @@ -155489,7 +156288,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L180", + "source_location": "L183", "weight": 1.0 }, { @@ -155669,7 +156468,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L174", + "source_location": "L182", "weight": 1.0 }, { @@ -155681,7 +156480,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L210", + "source_location": "L218", "weight": 1.0 }, { @@ -155693,7 +156492,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L205", + "source_location": "L213", "weight": 1.0 }, { @@ -155705,7 +156504,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L152", + "source_location": "L160", "weight": 1.0 }, { @@ -155717,7 +156516,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L249", + "source_location": "L257", "weight": 1.0 }, { @@ -155729,7 +156528,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L283", + "source_location": "L291", "weight": 1.0 }, { @@ -155741,7 +156540,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L111", + "source_location": "L119", "weight": 1.0 }, { @@ -155813,7 +156612,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_api.py", - "source_location": "L726", + "source_location": "L753", "weight": 1.0 }, { @@ -155873,7 +156672,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_api.py", - "source_location": "L744", + "source_location": "L771", "weight": 1.0 }, { @@ -155885,7 +156684,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_api.py", - "source_location": "L760", + "source_location": "L787", "weight": 1.0 }, { @@ -156077,7 +156876,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_core.py", - "source_location": "L1548", + "source_location": "L1630", "weight": 1.0 }, { @@ -156101,7 +156900,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_core.py", - "source_location": "L1389", + "source_location": "L1471", "weight": 1.0 }, { @@ -156149,7 +156948,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_core.py", - "source_location": "L1263", + "source_location": "L1345", "weight": 1.0 }, { @@ -156197,7 +156996,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_core.py", - "source_location": "L1375", + "source_location": "L1457", "weight": 1.0 }, { @@ -156284,6 +157083,18 @@ "source_location": "L229", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright_test_cells_modal_names_groups", + "target": "e2e", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "decorator", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L285", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright_test_data_panel_collapses_after_load", "target": "e2e", @@ -156509,7 +157320,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L339", + "source_location": "L378", "weight": 1.0 }, { @@ -156521,7 +157332,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L248", + "source_location": "L287", "weight": 1.0 }, { @@ -156533,7 +157344,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L566", + "source_location": "L605", "weight": 1.0 }, { @@ -156545,7 +157356,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L109", + "source_location": "L148", "weight": 1.0 }, { @@ -156557,7 +157368,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L135", + "source_location": "L174", "weight": 1.0 }, { @@ -156569,7 +157380,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L209", + "source_location": "L248", "weight": 1.0 }, { @@ -156737,7 +157548,7 @@ "confidence_score": 1.0, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L731", + "source_location": "L755", "weight": 1.0 }, { @@ -156764,6 +157575,18 @@ "source_location": "L84", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_py_any", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "generic_arg", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L581", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", "target": "src_cellpy_simple_gui_core_cellpy_adapter_py_any", @@ -156881,7 +157704,7 @@ "confidence_score": 1.0, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L275", + "source_location": "L334", "weight": 1.0 }, { @@ -156893,7 +157716,7 @@ "confidence_score": 1.0, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L289", + "source_location": "L350", "weight": 1.0 }, { @@ -156905,7 +157728,7 @@ "confidence_score": 1.0, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L279", + "source_location": "L341", "weight": 1.0 }, { @@ -156917,7 +157740,7 @@ "confidence_score": 1.0, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L212", + "source_location": "L220", "weight": 1.0 }, { @@ -157340,6 +158163,18 @@ "source_location": "L11", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_api_routers_cells", + "target": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "relation": "imports", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "import", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L12", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_api_routers_cells", "target": "src_cellpy_simple_gui_core_models_journalrowupdate", @@ -157397,7 +158232,7 @@ "confidence_score": 1.0, "context": "import", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L18", + "source_location": "L19", "weight": 1.0 }, { @@ -157409,7 +158244,7 @@ "confidence_score": 1.0, "context": "import", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L18", + "source_location": "L19", "weight": 1.0 }, { @@ -157445,7 +158280,7 @@ "confidence_score": 1.0, "context": "import", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L70", + "source_location": "L72", "weight": 1.0 }, { @@ -157457,7 +158292,7 @@ "confidence_score": 1.0, "context": "import", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L70", + "source_location": "L72", "weight": 1.0 }, { @@ -160181,7 +161016,7 @@ "confidence_score": 1.0, "context": "import", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L18", + "source_location": "L19", "weight": 1.0 }, { @@ -162365,7 +163200,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L760", + "source_location": "L784", "weight": 1.0 }, { @@ -162413,7 +163248,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L731", + "source_location": "L755", "weight": 1.0 }, { @@ -162425,7 +163260,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L724", + "source_location": "L748", "weight": 1.0 }, { @@ -162437,7 +163272,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L724", + "source_location": "L748", "weight": 1.0 }, { @@ -162476,6 +163311,30 @@ "source_location": "L340", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_py_path", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "parameter_type", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L581", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_py_progressfn", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "parameter_type", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L581", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", "target": "src_cellpy_simple_gui_core_cellpy_adapter_py_path", @@ -162533,7 +163392,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L741", + "source_location": "L765", "weight": 1.0 }, { @@ -162557,7 +163416,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L717", + "source_location": "L741", "weight": 1.0 }, { @@ -162569,7 +163428,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L717", + "source_location": "L741", "weight": 1.0 }, { @@ -162581,7 +163440,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L802", + "source_location": "L826", "weight": 1.0 }, { @@ -162593,7 +163452,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L817", + "source_location": "L841", "weight": 1.0 }, { @@ -162605,7 +163464,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L797", + "source_location": "L821", "weight": 1.0 }, { @@ -162617,7 +163476,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L812", + "source_location": "L836", "weight": 1.0 }, { @@ -162629,7 +163488,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L807", + "source_location": "L831", "weight": 1.0 }, { @@ -162689,7 +163548,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L30", + "source_location": "L35", "weight": 1.0 }, { @@ -162701,7 +163560,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L115", + "source_location": "L134", "weight": 1.0 }, { @@ -162713,7 +163572,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L223", + "source_location": "L242", "weight": 1.0 }, { @@ -162725,7 +163584,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L223", + "source_location": "L242", "weight": 1.0 }, { @@ -162737,7 +163596,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L229", + "source_location": "L248", "weight": 1.0 }, { @@ -162749,7 +163608,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L138", + "source_location": "L157", "weight": 1.0 }, { @@ -162761,7 +163620,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L138", + "source_location": "L157", "weight": 1.0 }, { @@ -162809,7 +163668,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L219", + "source_location": "L222", "weight": 1.0 }, { @@ -162821,7 +163680,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L264", + "source_location": "L267", "weight": 1.0 }, { @@ -162833,7 +163692,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L147", + "source_location": "L156", "weight": 1.0 }, { @@ -162845,7 +163704,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L261", + "source_location": "L274", "weight": 1.0 }, { @@ -162857,7 +163716,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L158", + "source_location": "L167", "weight": 1.0 }, { @@ -163385,7 +164244,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L76", + "source_location": "L90", "weight": 1.0 }, { @@ -163397,7 +164256,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L271", + "source_location": "L330", "weight": 1.0 }, { @@ -163409,7 +164268,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L236", + "source_location": "L255", "weight": 1.0 }, { @@ -163421,7 +164280,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L183", + "source_location": "L202", "weight": 1.0 }, { @@ -163457,7 +164316,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L88", + "source_location": "L97", "weight": 1.0 }, { @@ -163469,7 +164328,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L103", + "source_location": "L112", "weight": 1.0 }, { @@ -163989,14 +164848,14 @@ "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue184_status_what_s_done", + "source": "issueflows_03_solved_issues_issue184_status_what_s_done", "target": "tests_test_gui_playwright_test_cells_modal_defers_plot_refresh_until_close", "relation": "references", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "context": "tests/test_gui_playwright.py::test_cells_modal_defers_plot_refresh_until_close", - "source_file": ".issueflows/01-current-issues/issue184_status.md", + "source_file": ".issueflows/03-solved-issues/issue184_status.md", "source_location": "L20", "weight": 1.0 }, @@ -170011,115 +170870,49 @@ "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue184_original", - "target": "issueflows_01_current_issues_issue184_original_184_update_plots_when_cells_modal_closes", + "source": "issueflows_01_current_issues_issue187_original", + "target": "issueflows_01_current_issues_issue187_original_issue_187_name_of_groups", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue184_original.md", + "source_file": ".issueflows/01-current-issues/issue187_original.md", "source_location": "L1", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue184_plan", - "target": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "source": "issueflows_01_current_issues_issue187_plan", + "target": "issueflows_01_current_issues_issue187_plan_plan_187_name_of_groups", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", "source_location": "L1", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", - "target": "issueflows_01_current_issues_issue184_plan_what_happens_today", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L10", - "weight": 1.0 - }, - { - "source": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", - "target": "issueflows_01_current_issues_issue184_plan_approach_front_end_only_app_js_modal_markup", + "source": "issueflows_01_current_issues_issue187_plan_plan_187_name_of_groups", + "target": "issueflows_01_current_issues_issue187_plan_approach", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L21", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L17", "weight": 1.0 }, { - "source": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", - "target": "issueflows_01_current_issues_issue184_plan_goal", + "source": "issueflows_01_current_issues_issue187_plan_plan_187_name_of_groups", + "target": "issueflows_01_current_issues_issue187_plan_findings", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue184_plan.md", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", "source_location": "L3", "weight": 1.0 }, - { - "source": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", - "target": "issueflows_01_current_issues_issue184_plan_files_to_touch", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L37", - "weight": 1.0 - }, - { - "source": "issueflows_01_current_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", - "target": "issueflows_01_current_issues_issue184_plan_test_strategy", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue184_plan.md", - "source_location": "L46", - "weight": 1.0 - }, - { - "source": "issueflows_01_current_issues_issue184_status", - "target": "issueflows_01_current_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue184_status.md", - "source_location": "L1", - "weight": 1.0 - }, - { - "source": "issueflows_01_current_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", - "target": "issueflows_01_current_issues_issue184_status_remaining_work", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue184_status.md", - "source_location": "L30", - "weight": 1.0 - }, - { - "source": "issueflows_01_current_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", - "target": "issueflows_01_current_issues_issue184_status_what_s_done", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": ".issueflows/01-current-issues/issue184_status.md", - "source_location": "L9", - "weight": 1.0 - }, { "source": "issueflows_03_solved_issues_cycle_status_2026_07_30", "target": "issueflows_03_solved_issues_cycle_status_2026_07_30_cycle_status", @@ -172276,6 +173069,116 @@ "source_location": "L5", "weight": 1.0 }, + { + "source": "issueflows_03_solved_issues_issue184_original", + "target": "issueflows_03_solved_issues_issue184_original_184_update_plots_when_cells_modal_closes", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue184_original.md", + "source_location": "L1", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue184_plan", + "target": "issueflows_03_solved_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L1", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_03_solved_issues_issue184_plan_what_happens_today", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L10", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_03_solved_issues_issue184_plan_approach_front_end_only_app_js_modal_markup", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L21", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_03_solved_issues_issue184_plan_goal", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L3", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_03_solved_issues_issue184_plan_files_to_touch", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L37", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_03_solved_issues_issue184_plan_test_strategy", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L46", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue184_status", + "target": "issueflows_03_solved_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue184_status.md", + "source_location": "L1", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_03_solved_issues_issue184_status_remaining_work", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue184_status.md", + "source_location": "L30", + "weight": 1.0 + }, + { + "source": "issueflows_03_solved_issues_issue184_status_status_184_update_plots_when_the_manage_cells_modal_closes", + "target": "issueflows_03_solved_issues_issue184_status_what_s_done", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/03-solved-issues/issue184_status.md", + "source_location": "L9", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue186_original", "target": "issueflows_03_solved_issues_issue186_original_186_y_ranges_not_working_for_cycle_summary_grouped_with_spread", @@ -180149,7 +181052,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L117", + "source_location": "L119", "weight": 1.0 }, { @@ -180160,7 +181063,18 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L129", + "source_location": "L131", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells", + "target": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L151", "weight": 1.0 }, { @@ -180171,7 +181085,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L149", + "source_location": "L160", "weight": 1.0 }, { @@ -180182,7 +181096,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L155", + "source_location": "L166", "weight": 1.0 }, { @@ -180193,7 +181107,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L161", + "source_location": "L172", "weight": 1.0 }, { @@ -180204,7 +181118,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L24", + "source_location": "L25", "weight": 1.0 }, { @@ -180215,7 +181129,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L37", + "source_location": "L39", "weight": 1.0 }, { @@ -180226,7 +181140,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L45", + "source_location": "L47", "weight": 1.0 }, { @@ -180237,7 +181151,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L52", + "source_location": "L54", "weight": 1.0 }, { @@ -180248,7 +181162,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L69", + "source_location": "L71", "weight": 1.0 }, { @@ -180259,7 +181173,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L89", + "source_location": "L91", "weight": 1.0 }, { @@ -180270,7 +181184,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L96", + "source_location": "L98", "weight": 1.0 }, { @@ -180688,7 +181602,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L181", + "source_location": "L184", "weight": 1.0 }, { @@ -180710,7 +181624,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L193", + "source_location": "L196", "weight": 1.0 }, { @@ -181175,6 +182089,17 @@ "source_location": "L569", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L581", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter", "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_example", @@ -181194,7 +182119,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L717", + "source_location": "L741", "weight": 1.0 }, { @@ -181205,7 +182130,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L724", + "source_location": "L748", "weight": 1.0 }, { @@ -181216,7 +182141,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L731", + "source_location": "L755", "weight": 1.0 }, { @@ -181227,7 +182152,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L741", + "source_location": "L765", "weight": 1.0 }, { @@ -181238,7 +182163,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L760", + "source_location": "L784", "weight": 1.0 }, { @@ -181249,7 +182174,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L797", + "source_location": "L821", "weight": 1.0 }, { @@ -181260,7 +182185,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L802", + "source_location": "L826", "weight": 1.0 }, { @@ -181271,7 +182196,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L807", + "source_location": "L831", "weight": 1.0 }, { @@ -181282,40 +182207,40 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L812", + "source_location": "L836", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter", - "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_cycle_mode", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_list_instruments", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L817", + "source_location": "L84", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter", - "target": "src_cellpy_simple_gui_core_cellpy_adapter_cellpy_version", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_cycle_mode", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L822", + "source_location": "L841", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter", - "target": "src_cellpy_simple_gui_core_cellpy_adapter_list_instruments", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_cellpy_version", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L84", + "source_location": "L846", "weight": 1.0 }, { @@ -181494,6 +182419,28 @@ "source_location": "L80", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_collect", + "target": "src_cellpy_simple_gui_core_collect_group_titles", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L100", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect", + "target": "src_cellpy_simple_gui_core_collect_note_downsampling", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1004", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_collect", "target": "src_cellpy_simple_gui_core_collect_variable_axis_map", @@ -181502,7 +182449,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1005", + "source_location": "L1029", "weight": 1.0 }, { @@ -181513,7 +182460,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1024", + "source_location": "L1048", "weight": 1.0 }, { @@ -181524,7 +182471,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1033", + "source_location": "L1057", "weight": 1.0 }, { @@ -181535,7 +182482,18 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1038", + "source_location": "L1062", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect", + "target": "src_cellpy_simple_gui_core_collect_apply_group_titles", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L112", "weight": 1.0 }, { @@ -181546,7 +182504,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1101", + "source_location": "L1125", "weight": 1.0 }, { @@ -181557,7 +182515,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1123", + "source_location": "L1147", "weight": 1.0 }, { @@ -181568,7 +182526,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1129", + "source_location": "L1153", "weight": 1.0 }, { @@ -181579,7 +182537,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1145", + "source_location": "L1169", "weight": 1.0 }, { @@ -181590,7 +182548,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1173", + "source_location": "L1197", "weight": 1.0 }, { @@ -181601,7 +182559,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1185", + "source_location": "L1209", "weight": 1.0 }, { @@ -181612,7 +182570,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1205", + "source_location": "L1229", "weight": 1.0 }, { @@ -181623,7 +182581,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1221", + "source_location": "L1245", "weight": 1.0 }, { @@ -181634,7 +182592,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1245", + "source_location": "L1269", "weight": 1.0 }, { @@ -181645,7 +182603,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1249", + "source_location": "L1273", "weight": 1.0 }, { @@ -181656,73 +182614,73 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1264", + "source_location": "L1288", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_registry_plot_types", + "target": "src_cellpy_simple_gui_core_collect_hex_to_rgba", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L133", + "source_location": "L1356", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_hex_to_rgba", + "target": "src_cellpy_simple_gui_core_collect_apply_colorway", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1332", + "source_location": "L1369", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_apply_colorway", + "target": "src_cellpy_simple_gui_core_collect_restyle", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1345", + "source_location": "L1395", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_restyle", + "target": "src_cellpy_simple_gui_core_collect_export_frame_bytes", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1371", + "source_location": "L1464", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_export_frame_bytes", + "target": "src_cellpy_simple_gui_core_collect_export_bytes", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1440", + "source_location": "L1481", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_export_bytes", + "target": "src_cellpy_simple_gui_core_collect_registry_plot_types", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1457", + "source_location": "L154", "weight": 1.0 }, { @@ -181733,7 +182691,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L182", + "source_location": "L203", "weight": 1.0 }, { @@ -181744,7 +182702,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L209", + "source_location": "L230", "weight": 1.0 }, { @@ -181755,7 +182713,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L218", + "source_location": "L239", "weight": 1.0 }, { @@ -181766,7 +182724,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L236", + "source_location": "L257", "weight": 1.0 }, { @@ -181777,7 +182735,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L258", + "source_location": "L279", "weight": 1.0 }, { @@ -181788,7 +182746,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L272", + "source_location": "L293", "weight": 1.0 }, { @@ -181799,7 +182757,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L282", + "source_location": "L303", "weight": 1.0 }, { @@ -181810,7 +182768,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L293", + "source_location": "L314", "weight": 1.0 }, { @@ -181821,7 +182779,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L316", + "source_location": "L337", "weight": 1.0 }, { @@ -181832,7 +182790,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L365", + "source_location": "L386", "weight": 1.0 }, { @@ -181843,7 +182801,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L375", + "source_location": "L396", "weight": 1.0 }, { @@ -181854,7 +182812,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L380", + "source_location": "L401", "weight": 1.0 }, { @@ -181865,7 +182823,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L406", + "source_location": "L427", "weight": 1.0 }, { @@ -181876,7 +182834,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L432", + "source_location": "L453", "weight": 1.0 }, { @@ -181887,7 +182845,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L437", + "source_location": "L458", "weight": 1.0 }, { @@ -181898,7 +182856,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L445", + "source_location": "L466", "weight": 1.0 }, { @@ -181909,7 +182867,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L463", + "source_location": "L484", "weight": 1.0 }, { @@ -181920,7 +182878,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L496", + "source_location": "L517", "weight": 1.0 }, { @@ -181931,7 +182889,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L514", + "source_location": "L535", "weight": 1.0 }, { @@ -181942,7 +182900,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L530", + "source_location": "L551", "weight": 1.0 }, { @@ -181953,7 +182911,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L549", + "source_location": "L570", "weight": 1.0 }, { @@ -181964,7 +182922,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L578", + "source_location": "L599", "weight": 1.0 }, { @@ -181975,29 +182933,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L613", + "source_location": "L634", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_is_grouped", + "target": "src_cellpy_simple_gui_core_collect_batch_keys", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L642", + "source_location": "L65", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_batch_keys", + "target": "src_cellpy_simple_gui_core_collect_is_grouped", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L65", + "source_location": "L663", "weight": 1.0 }, { @@ -182008,7 +182966,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L653", + "source_location": "L674", "weight": 1.0 }, { @@ -182019,7 +182977,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L675", + "source_location": "L696", "weight": 1.0 }, { @@ -182030,7 +182988,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L714", + "source_location": "L735", "weight": 1.0 }, { @@ -182041,7 +182999,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L744", + "source_location": "L765", "weight": 1.0 }, { @@ -182052,7 +183010,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L753", + "source_location": "L774", "weight": 1.0 }, { @@ -182063,7 +183021,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L773", + "source_location": "L794", "weight": 1.0 }, { @@ -182074,7 +183032,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L807", + "source_location": "L828", "weight": 1.0 }, { @@ -182085,40 +183043,40 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L815", + "source_location": "L836", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_facet_traces", + "target": "src_cellpy_simple_gui_core_collect_batch", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L833", + "source_location": "L85", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_axis_title", + "target": "src_cellpy_simple_gui_core_collect_facet_traces", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L842", + "source_location": "L854", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_batch", + "target": "src_cellpy_simple_gui_core_collect_axis_title", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L85", + "source_location": "L863", "weight": 1.0 }, { @@ -182129,7 +183087,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L851", + "source_location": "L872", "weight": 1.0 }, { @@ -182140,7 +183098,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L901", + "source_location": "L925", "weight": 1.0 }, { @@ -182151,7 +183109,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L915", + "source_location": "L939", "weight": 1.0 }, { @@ -182162,18 +183120,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L947", - "weight": 1.0 - }, - { - "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_note_downsampling", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L980", + "source_location": "L971", "weight": 1.0 }, { @@ -182470,18 +183417,18 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L103", + "source_location": "L118", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_library", - "target": "src_cellpy_simple_gui_core_library_get_library", + "target": "src_cellpy_simple_gui_core_library_default_group_label", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L299", + "source_location": "L30", "weight": 1.0 }, { @@ -182492,7 +183439,18 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L30", + "source_location": "L35", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L360", "weight": 1.0 }, { @@ -182503,7 +183461,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L44", + "source_location": "L49", "weight": 1.0 }, { @@ -182514,7 +183472,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L124", + "source_location": "L132", "weight": 1.0 }, { @@ -182525,7 +183483,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L168", + "source_location": "L176", "weight": 1.0 }, { @@ -182536,7 +183494,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L180", + "source_location": "L188", "weight": 1.0 }, { @@ -182547,7 +183505,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L235", + "source_location": "L243", "weight": 1.0 }, { @@ -182558,7 +183516,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L255", + "source_location": "L263", "weight": 1.0 }, { @@ -182569,7 +183527,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L271", + "source_location": "L279", "weight": 1.0 }, { @@ -182580,7 +183538,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L289", + "source_location": "L297", "weight": 1.0 }, { @@ -182591,7 +183549,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L303", + "source_location": "L311", "weight": 1.0 }, { @@ -182602,7 +183560,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L313", + "source_location": "L321", "weight": 1.0 }, { @@ -182613,7 +183571,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L319", + "source_location": "L327", "weight": 1.0 }, { @@ -182624,7 +183582,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L333", + "source_location": "L341", "weight": 1.0 }, { @@ -182635,7 +183593,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L337", + "source_location": "L345", "weight": 1.0 }, { @@ -182646,7 +183604,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L342", + "source_location": "L350", "weight": 1.0 }, { @@ -182657,7 +183615,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L349", + "source_location": "L357", "weight": 1.0 }, { @@ -182668,7 +183626,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L358", + "source_location": "L366", "weight": 1.0 }, { @@ -182679,7 +183637,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L372", + "source_location": "L380", "weight": 1.0 }, { @@ -182704,6 +183662,17 @@ "source_location": "L67", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_models", + "target": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L91", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_models", "target": "src_cellpy_simple_gui_core_models_summaryplotspec", @@ -182712,7 +183681,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L89", + "source_location": "L97", "weight": 1.0 }, { @@ -182844,7 +183813,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L109", + "source_location": "L111", "weight": 1.0 }, { @@ -182855,7 +183824,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L118", + "source_location": "L120", "weight": 1.0 }, { @@ -182866,7 +183835,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L136", + "source_location": "L138", "weight": 1.0 }, { @@ -182877,7 +183846,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L162", + "source_location": "L164", "weight": 1.0 }, { @@ -182888,7 +183857,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L219", + "source_location": "L222", "weight": 1.0 }, { @@ -182899,7 +183868,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L264", + "source_location": "L267", "weight": 1.0 }, { @@ -182921,7 +183890,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L295", + "source_location": "L298", "weight": 1.0 }, { @@ -182932,7 +183901,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L308", + "source_location": "L311", "weight": 1.0 }, { @@ -182943,7 +183912,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L324", + "source_location": "L327", "weight": 1.0 }, { @@ -182954,7 +183923,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L352", + "source_location": "L355", "weight": 1.0 }, { @@ -182965,12 +183934,12 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L97", + "source_location": "L99", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_resolve_project_path", + "target": "src_cellpy_simple_gui_core_projects_slugify", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -182979,6 +183948,28 @@ "source_location": "L103", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_projects", + "target": "src_cellpy_simple_gui_core_projects_now", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L108", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_projects", + "target": "src_cellpy_simple_gui_core_projects_resolve_project_path", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L112", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_projects", "target": "src_cellpy_simple_gui_core_projects_classify_import_path", @@ -182987,7 +183978,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L116", + "source_location": "L125", "weight": 1.0 }, { @@ -182998,7 +183989,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L147", + "source_location": "L156", "weight": 1.0 }, { @@ -183009,7 +184000,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L158", + "source_location": "L167", "weight": 1.0 }, { @@ -183020,7 +184011,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L261", + "source_location": "L274", "weight": 1.0 }, { @@ -183031,7 +184022,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L292", + "source_location": "L307", "weight": 1.0 }, { @@ -183042,7 +184033,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L312", + "source_location": "L327", "weight": 1.0 }, { @@ -183053,7 +184044,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L318", + "source_location": "L333", "weight": 1.0 }, { @@ -183069,7 +184060,7 @@ }, { "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_projectmanifest", + "target": "src_cellpy_simple_gui_core_projects_groupentry", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -183080,46 +184071,35 @@ }, { "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_projectsummary", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L75", - "weight": 1.0 - }, - { - "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_projects_root", + "target": "src_cellpy_simple_gui_core_projects_projectmanifest", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L88", + "source_location": "L71", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_slugify", + "target": "src_cellpy_simple_gui_core_projects_projectsummary", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L94", + "source_location": "L84", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_now", + "target": "src_cellpy_simple_gui_core_projects_projects_root", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L99", + "source_location": "L97", "weight": 1.0 }, { @@ -192683,7 +193663,7 @@ }, { "source": "tests_test_api", - "target": "tests_test_api_test_export_cells_requires_selection", + "target": "tests_test_api_test_rename_group", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -192694,24 +193674,35 @@ }, { "source": "tests_test_api", - "target": "tests_test_api_test_export_cells_cellpy", + "target": "tests_test_api_wait_for_job", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L247", + "source_location": "L25", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_wait_for_job", + "target": "tests_test_api_test_export_cells_requires_selection", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L25", + "source_location": "L268", + "weight": 1.0 + }, + { + "source": "tests_test_api", + "target": "tests_test_api_test_export_cells_cellpy", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_api.py", + "source_location": "L274", "weight": 1.0 }, { @@ -192722,7 +193713,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L258", + "source_location": "L285", "weight": 1.0 }, { @@ -192733,7 +193724,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L265", + "source_location": "L292", "weight": 1.0 }, { @@ -192744,7 +193735,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L280", + "source_location": "L307", "weight": 1.0 }, { @@ -192755,7 +193746,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L297", + "source_location": "L324", "weight": 1.0 }, { @@ -192766,7 +193757,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L308", + "source_location": "L335", "weight": 1.0 }, { @@ -192777,29 +193768,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L328", + "source_location": "L355", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_raw_and_cycle_info_are_dev_only", + "target": "tests_test_api_test_healthz", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L344", + "source_location": "L36", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_healthz", + "target": "tests_test_api_test_raw_and_cycle_info_are_dev_only", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L36", + "source_location": "L371", "weight": 1.0 }, { @@ -192810,29 +193801,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L363", + "source_location": "L390", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_diagnostics_are_dev_only", + "target": "tests_test_api_test_branding_static_assets", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L388", + "source_location": "L40", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_branding_static_assets", + "target": "tests_test_api_test_diagnostics_are_dev_only", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L40", + "source_location": "L415", "weight": 1.0 }, { @@ -192843,7 +193834,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L402", + "source_location": "L429", "weight": 1.0 }, { @@ -192854,7 +193845,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L429", + "source_location": "L456", "weight": 1.0 }, { @@ -192865,7 +193856,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L453", + "source_location": "L480", "weight": 1.0 }, { @@ -192876,29 +193867,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L474", + "source_location": "L501", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_template_html", + "target": "tests_test_api_test_index_uses_cellpy_logo", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L517", + "source_location": "L52", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_index_uses_cellpy_logo", + "target": "tests_test_api_template_html", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L52", + "source_location": "L544", "weight": 1.0 }, { @@ -192909,7 +193900,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L523", + "source_location": "L550", "weight": 1.0 }, { @@ -192920,7 +193911,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L539", + "source_location": "L566", "weight": 1.0 }, { @@ -192931,29 +193922,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L561", + "source_location": "L588", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_add_cells_modal_html", + "target": "tests_test_api_test_system_capabilities_no_file_picker", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L585", + "source_location": "L59", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_system_capabilities_no_file_picker", + "target": "tests_test_api_add_cells_modal_html", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L59", + "source_location": "L612", "weight": 1.0 }, { @@ -192964,7 +193955,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L592", + "source_location": "L619", "weight": 1.0 }, { @@ -192975,29 +193966,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L604", + "source_location": "L631", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_default_visible_hint_budget", + "target": "tests_test_api_test_system_pick_rejected_without_webview", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L646", + "source_location": "L66", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_system_pick_rejected_without_webview", + "target": "tests_test_api_test_default_visible_hint_budget", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L66", + "source_location": "L673", "weight": 1.0 }, { @@ -193008,7 +193999,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L670", + "source_location": "L697", "weight": 1.0 }, { @@ -193019,7 +194010,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L680", + "source_location": "L707", "weight": 1.0 }, { @@ -193030,40 +194021,40 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L699", + "source_location": "L726", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_desktop_import_failure_names_the_extra", + "target": "tests_test_api_test_cellpy_config_diagnostics_endpoint", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L711", + "source_location": "L73", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_served_client", + "target": "tests_test_api_test_desktop_import_failure_names_the_extra", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L727", + "source_location": "L738", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_cellpy_config_diagnostics_endpoint", + "target": "tests_test_api_served_client", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L73", + "source_location": "L754", "weight": 1.0 }, { @@ -193074,7 +194065,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L745", + "source_location": "L772", "weight": 1.0 }, { @@ -193085,7 +194076,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L761", + "source_location": "L788", "weight": 1.0 }, { @@ -193096,7 +194087,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L778", + "source_location": "L805", "weight": 1.0 }, { @@ -193107,7 +194098,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L796", + "source_location": "L823", "weight": 1.0 }, { @@ -193118,7 +194109,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L821", + "source_location": "L848", "weight": 1.0 }, { @@ -193129,7 +194120,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L826", + "source_location": "L853", "weight": 1.0 }, { @@ -193140,7 +194131,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L839", + "source_location": "L866", "weight": 1.0 }, { @@ -193162,7 +194153,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L616", + "source_location": "L643", "weight": 1.0 }, { @@ -193173,7 +194164,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L622", + "source_location": "L649", "weight": 1.0 }, { @@ -193184,7 +194175,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L636", + "source_location": "L663", "weight": 1.0 }, { @@ -193871,46 +194862,79 @@ }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_panels_for_capacity_ce", + "target": "tests_test_core_test_library_group_names", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1238", + "source_location": "L1243", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_summary_facet_titles_top_to_bottom", + "target": "tests_test_core_test_group_names_reach_grouped_legend", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1249", + "source_location": "L1278", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_capacity_ce_facet_order_stable", + "target": "tests_test_core_test_summary_collection_and_figure", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1264", + "source_location": "L128", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_collection_and_figure", + "target": "tests_test_core_test_group_names_caption_ungrouped_legend", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L128", + "source_location": "L1294", + "weight": 1.0 + }, + { + "source": "tests_test_core", + "target": "tests_test_core_test_summary_panels_for_capacity_ce", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L1320", + "weight": 1.0 + }, + { + "source": "tests_test_core", + "target": "tests_test_core_summary_facet_titles_top_to_bottom", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L1331", + "weight": 1.0 + }, + { + "source": "tests_test_core", + "target": "tests_test_core_test_summary_capacity_ce_facet_order_stable", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L1346", "weight": 1.0 }, { @@ -193921,194 +194945,194 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1290", + "source_location": "L1372", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_figure_ce_outlier_does_not_crush_capacity", + "target": "tests_test_core_test_summary_figure_via_plotting", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1317", + "source_location": "L138", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_export_all_formats", + "target": "tests_test_core_test_summary_figure_ce_outlier_does_not_crush_capacity", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1351", + "source_location": "L1399", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cycles_export_csv", + "target": "tests_test_core_test_read_meta", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1360", + "source_location": "L14", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_kaleido_available", + "target": "tests_test_core_test_summary_export_all_formats", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1367", + "source_location": "L1433", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_figure_export_svg", + "target": "tests_test_core_test_cycles_export_csv", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1376", + "source_location": "L1442", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_figure_via_plotting", + "target": "tests_test_core_kaleido_available", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L138", + "source_location": "L1449", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_figure_export_unknown_format_raises", + "target": "tests_test_core_test_summary_figure_empty", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1384", + "source_location": "L145", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_read_meta", + "target": "tests_test_core_test_summary_figure_export_svg", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L14", + "source_location": "L1458", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_figure_export_names_the_actual_missing_piece", + "target": "tests_test_core_test_figure_export_unknown_format_raises", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1401", + "source_location": "L1466", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_rate_library", + "target": "tests_test_core_test_figure_export_names_the_actual_missing_piece", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1419", + "source_location": "L1483", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cells_export_cellpy_and_xlsx", + "target": "tests_test_core_test_summary_figure_forwards_group_legend_muting", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1432", + "source_location": "L150", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cells_export_two_cells_zip", + "target": "tests_test_core_rate_library", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1444", + "source_location": "L1501", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_figure_empty", + "target": "tests_test_core_test_cells_export_cellpy_and_xlsx", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L145", + "source_location": "L1514", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cells_export_csv_is_zip", + "target": "tests_test_core_test_cells_export_two_cells_zip", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1463", + "source_location": "L1526", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_config_diagnostics_shape", + "target": "tests_test_core_test_cells_export_csv_is_zip", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1479", + "source_location": "L1545", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_config_diagnostics_masks_credentialish_values", + "target": "tests_test_core_test_config_diagnostics_shape", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1495", + "source_location": "L1561", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_figure_forwards_group_legend_muting", + "target": "tests_test_core_test_config_diagnostics_masks_credentialish_values", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L150", + "source_location": "L1577", "weight": 1.0 }, { @@ -194119,7 +195143,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1513", + "source_location": "L1595", "weight": 1.0 }, { @@ -194130,7 +195154,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1532", + "source_location": "L1614", "weight": 1.0 }, { @@ -194141,7 +195165,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1549", + "source_location": "L1631", "weight": 1.0 }, { @@ -194152,7 +195176,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1559", + "source_location": "L1641", "weight": 1.0 }, { @@ -194163,7 +195187,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1572", + "source_location": "L1654", "weight": 1.0 }, { @@ -194174,7 +195198,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1583", + "source_location": "L1665", "weight": 1.0 }, { @@ -194185,7 +195209,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1597", + "source_location": "L1679", "weight": 1.0 }, { @@ -194196,7 +195220,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1614", + "source_location": "L1696", "weight": 1.0 }, { @@ -194207,73 +195231,73 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1625", + "source_location": "L1707", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_registry_menu_holds_only_summary_families", + "target": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1641", + "source_location": "L171", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", + "target": "tests_test_core_test_registry_menu_holds_only_summary_families", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1648", + "source_location": "L1723", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_family_options_carry_cv_split", + "target": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1675", + "source_location": "L1730", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_curated_plot_types_unaffected", + "target": "tests_test_core_test_family_options_carry_cv_split", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1685", + "source_location": "L1757", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_dva_figure_directions", + "target": "tests_test_core_test_curated_plot_types_unaffected", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1697", + "source_location": "L1767", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", + "target": "tests_test_core_test_dva_figure_directions", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L171", + "source_location": "L1779", "weight": 1.0 }, { @@ -194284,7 +195308,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1712", + "source_location": "L1794", "weight": 1.0 }, { @@ -194295,7 +195319,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1729", + "source_location": "L1811", "weight": 1.0 }, { @@ -194306,7 +195330,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1742", + "source_location": "L1824", "weight": 1.0 }, { @@ -194317,7 +195341,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1751", + "source_location": "L1833", "weight": 1.0 }, { @@ -194328,7 +195352,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1772", + "source_location": "L1854", "weight": 1.0 }, { @@ -194339,7 +195363,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1786", + "source_location": "L1868", "weight": 1.0 }, { @@ -194350,7 +195374,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1811", + "source_location": "L1893", "weight": 1.0 }, { @@ -194361,7 +195385,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1834", + "source_location": "L1916", "weight": 1.0 }, { @@ -194372,62 +195396,62 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1845", + "source_location": "L1927", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cycle_info_needs_cycles", + "target": "tests_test_core_test_cycles_figure", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1856", + "source_location": "L193", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_thin_traces_leaves_small_figures_alone", + "target": "tests_test_core_test_cycle_info_needs_cycles", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1865", + "source_location": "L1938", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_meta_edit_uses_selective_refresh", + "target": "tests_test_core_test_thin_traces_leaves_small_figures_alone", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1875", + "source_location": "L1947", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_meta_edit_falls_back_without_refresh_after", + "target": "tests_test_core_test_meta_edit_uses_selective_refresh", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1900", + "source_location": "L1957", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cycles_figure", + "target": "tests_test_core_test_meta_edit_falls_back_without_refresh_after", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L193", + "source_location": "L1982", "weight": 1.0 }, { @@ -194977,7 +196001,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1406", + "source_location": "L1488", "weight": 1.0 }, { @@ -194988,7 +196012,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1790", + "source_location": "L1872", "weight": 1.0 }, { @@ -194999,7 +196023,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1794", + "source_location": "L1876", "weight": 1.0 }, { @@ -195123,6 +196147,17 @@ "source_location": "L230", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright", + "target": "tests_test_gui_playwright_test_cells_modal_names_groups", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_gui_playwright.py", + "source_location": "L286", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright", "target": "tests_test_gui_playwright_chromium_available", @@ -195486,6 +196521,39 @@ "source_location": "L126", "weight": 1.0 }, + { + "source": "tests_test_journal", + "target": "tests_test_journal_test_load_journal_missing_files_returns_empty", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_journal.py", + "source_location": "L116", + "weight": 1.0 + }, + { + "source": "tests_test_journal", + "target": "tests_test_journal_test_load_corrupt_journal_raises_clear_error", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_journal.py", + "source_location": "L138", + "weight": 1.0 + }, + { + "source": "tests_test_journal", + "target": "tests_test_journal_test_api_load_corrupt_journal_reports_error", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_journal.py", + "source_location": "L148", + "weight": 1.0 + }, { "source": "tests_test_journal", "target": "tests_test_journal_test_load_journal_cells", @@ -195494,40 +196562,40 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L32", + "source_location": "L33", "weight": 1.0 }, { "source": "tests_test_journal", - "target": "tests_test_journal_test_load_journal_missing_files_returns_empty", + "target": "tests_test_journal_test_load_journal_reads_group_labels", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L51", + "source_location": "L52", "weight": 1.0 }, { "source": "tests_test_journal", - "target": "tests_test_journal_test_load_corrupt_journal_raises_clear_error", + "target": "tests_test_journal_test_load_journal_without_group_labels", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L73", + "source_location": "L67", "weight": 1.0 }, { "source": "tests_test_journal", - "target": "tests_test_journal_test_api_load_corrupt_journal_reports_error", + "target": "tests_test_journal_test_api_load_journal_applies_group_labels", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L83", + "source_location": "L79", "weight": 1.0 }, { @@ -196478,40 +197546,40 @@ }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_resave_reuses_unchanged_cells", + "target": "tests_test_projects_test_failed_resave_keeps_previous_project", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L110", + "source_location": "L103", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_resave_rewrites_cells_whose_data_changed", + "target": "tests_test_projects_counting_save_cell", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L136", + "source_location": "L135", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_reuse_declines_when_file_changed_on_disk", + "target": "tests_test_projects_test_resave_reuses_unchanged_cells", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L152", + "source_location": "L149", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_reuse_declines_when_file_is_missing", + "target": "tests_test_projects_test_resave_rewrites_cells_whose_data_changed", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -196533,40 +197601,40 @@ }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_save_as_new_project_still_copies_every_cell", + "target": "tests_test_projects_test_reuse_declines_when_file_changed_on_disk", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L190", + "source_location": "L191", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_reused_project_reopens_intact", + "target": "tests_test_projects_test_reuse_declines_when_file_is_missing", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L210", + "source_location": "L214", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_opened_cells_start_clean_and_dirty_on_edit", + "target": "tests_test_projects_test_save_as_new_project_still_copies_every_cell", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L227", + "source_location": "L229", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_open_missing_raises", + "target": "tests_test_projects_test_reused_project_reopens_intact", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -196586,6 +197654,28 @@ "source_location": "L25", "weight": 1.0 }, + { + "source": "tests_test_projects", + "target": "tests_test_projects_test_opened_cells_start_clean_and_dirty_on_edit", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_projects.py", + "source_location": "L266", + "weight": 1.0 + }, + { + "source": "tests_test_projects", + "target": "tests_test_projects_test_open_missing_raises", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_projects.py", + "source_location": "L288", + "weight": 1.0 + }, { "source": "tests_test_projects", "target": "tests_test_projects_test_classify_import_path", @@ -196594,7 +197684,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L254", + "source_location": "L293", "weight": 1.0 }, { @@ -196605,7 +197695,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L277", + "source_location": "L316", "weight": 1.0 }, { @@ -196616,7 +197706,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L303", + "source_location": "L342", "weight": 1.0 }, { @@ -196627,7 +197717,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L313", + "source_location": "L352", "weight": 1.0 }, { @@ -196638,7 +197728,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L340", + "source_location": "L379", "weight": 1.0 }, { @@ -196649,7 +197739,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L346", + "source_location": "L385", "weight": 1.0 }, { @@ -196660,7 +197750,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L373", + "source_location": "L412", "weight": 1.0 }, { @@ -196671,7 +197761,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L382", + "source_location": "L421", "weight": 1.0 }, { @@ -196682,7 +197772,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L401", + "source_location": "L440", "weight": 1.0 }, { @@ -196693,7 +197783,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L421", + "source_location": "L460", "weight": 1.0 }, { @@ -196704,7 +197794,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L436", + "source_location": "L475", "weight": 1.0 }, { @@ -196715,7 +197805,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L450", + "source_location": "L489", "weight": 1.0 }, { @@ -196726,7 +197816,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L476", + "source_location": "L515", "weight": 1.0 }, { @@ -196737,7 +197827,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L497", + "source_location": "L536", "weight": 1.0 }, { @@ -196748,7 +197838,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L527", + "source_location": "L566", "weight": 1.0 }, { @@ -196759,7 +197849,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L534", + "source_location": "L573", "weight": 1.0 }, { @@ -196770,7 +197860,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L543", + "source_location": "L582", "weight": 1.0 }, { @@ -196781,7 +197871,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L556", + "source_location": "L595", "weight": 1.0 }, { @@ -196792,12 +197882,12 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L567", + "source_location": "L606", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_failed_resave_keeps_previous_project", + "target": "tests_test_projects_test_group_names_saved_and_restored", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -196808,13 +197898,13 @@ }, { "source": "tests_test_projects", - "target": "tests_test_projects_counting_save_cell", + "target": "tests_test_projects_test_manifest_without_groups_still_opens", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L96", + "source_location": "L84", "weight": 1.0 }, { @@ -197551,7 +198641,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L313", + "source_location": "L321", "weight": 1.0 }, { @@ -197562,7 +198652,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L168", + "source_location": "L176", "weight": 1.0 }, { @@ -197573,7 +198663,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L180", + "source_location": "L188", "weight": 1.0 }, { @@ -197584,7 +198674,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L289", + "source_location": "L297", "weight": 1.0 }, { @@ -197595,7 +198685,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L124", + "source_location": "L132", "weight": 1.0 }, { @@ -197606,7 +198696,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L255", + "source_location": "L263", "weight": 1.0 }, { @@ -197617,7 +198707,18 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L303", + "source_location": "L311", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "target": "src_cellpy_simple_gui_core_models_py_basemodel", + "relation": "inherits", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L91", "weight": 1.0 }, { @@ -197628,7 +198729,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L235", + "source_location": "L243", "weight": 1.0 }, { @@ -197639,7 +198740,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L372", + "source_location": "L380", "weight": 1.0 }, { @@ -197650,7 +198751,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L358", + "source_location": "L366", "weight": 1.0 }, { @@ -197661,7 +198762,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L319", + "source_location": "L327", "weight": 1.0 }, { @@ -197672,7 +198773,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L333", + "source_location": "L341", "weight": 1.0 }, { @@ -197683,7 +198784,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L337", + "source_location": "L345", "weight": 1.0 }, { @@ -197694,7 +198795,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L342", + "source_location": "L350", "weight": 1.0 }, { @@ -197705,7 +198806,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L271", + "source_location": "L279", "weight": 1.0 }, { @@ -197716,7 +198817,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L349", + "source_location": "L357", "weight": 1.0 }, { @@ -197727,7 +198828,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L89", + "source_location": "L97", "weight": 1.0 }, { @@ -197753,7 +198854,7 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_projects_projectmanifest", + "source": "src_cellpy_simple_gui_core_projects_groupentry", "target": "src_cellpy_simple_gui_core_projects_py_basemodel", "relation": "inherits", "_origin": "ast", @@ -197763,6 +198864,17 @@ "source_location": "L64", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_projects_projectmanifest", + "target": "src_cellpy_simple_gui_core_projects_py_basemodel", + "relation": "inherits", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L71", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_projects_projectsummary", "target": "src_cellpy_simple_gui_core_projects_py_basemodel", @@ -197771,7 +198883,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L75", + "source_location": "L84", "weight": 1.0 }, { @@ -198170,6 +199282,17 @@ "source_location": "L54", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_library_cellrecord", + "target": "src_cellpy_simple_gui_core_library_cellrecord_apply_physical_meta", + "relation": "method", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L108", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_library_cellrecord", "target": "src_cellpy_simple_gui_core_library_cellrecord_color", @@ -198178,29 +199301,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L73", + "source_location": "L83", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_library_cellrecord", - "target": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", + "target": "src_cellpy_simple_gui_core_library_cellrecord_group_name", "relation": "method", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L76", + "source_location": "L86", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_library_cellrecord", - "target": "src_cellpy_simple_gui_core_library_cellrecord_apply_physical_meta", + "target": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", "relation": "method", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L93", + "source_location": "L90", "weight": 1.0 }, { @@ -198211,7 +199334,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L106", + "source_location": "L121", "weight": 1.0 }, { @@ -198222,7 +199345,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L115", + "source_location": "L134", "weight": 1.0 }, { @@ -198233,7 +199356,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L138", + "source_location": "L157", "weight": 1.0 }, { @@ -198244,7 +199367,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L183", + "source_location": "L202", "weight": 1.0 }, { @@ -198255,7 +199378,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L223", + "source_location": "L242", "weight": 1.0 }, { @@ -198266,7 +199389,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L229", + "source_location": "L248", "weight": 1.0 }, { @@ -198277,7 +199400,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L236", + "source_location": "L255", "weight": 1.0 }, { @@ -198288,7 +199411,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L255", + "source_location": "L274", "weight": 1.0 }, { @@ -198299,7 +199422,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L259", + "source_location": "L278", "weight": 1.0 }, { @@ -198310,7 +199433,51 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L265", + "source_location": "L285", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library", + "target": "src_cellpy_simple_gui_core_library_library_set_group_label", + "relation": "method", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L291", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "method", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L301", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library", + "target": "src_cellpy_simple_gui_core_library_library_group_labels", + "relation": "method", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L306", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library", + "target": "src_cellpy_simple_gui_core_library_library_groups", + "relation": "method", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L312", "weight": 1.0 }, { @@ -198321,7 +199488,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L271", + "source_location": "L330", "weight": 1.0 }, { @@ -198332,7 +199499,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L275", + "source_location": "L334", "weight": 1.0 }, { @@ -198343,7 +199510,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L279", + "source_location": "L341", "weight": 1.0 }, { @@ -198354,7 +199521,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L283", + "source_location": "L344", "weight": 1.0 }, { @@ -198365,7 +199532,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L286", + "source_location": "L347", "weight": 1.0 }, { @@ -198376,7 +199543,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L289", + "source_location": "L350", "weight": 1.0 }, { @@ -198387,7 +199554,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L292", + "source_location": "L353", "weight": 1.0 }, { @@ -198398,7 +199565,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L176", + "source_location": "L184", "weight": 1.0 }, { @@ -198409,7 +199576,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L207", + "source_location": "L215", "weight": 1.0 }, { @@ -198420,7 +199587,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L212", + "source_location": "L220", "weight": 1.0 }, { @@ -198431,7 +199598,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L230", + "source_location": "L238", "weight": 1.0 }, { @@ -198442,7 +199609,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L154", + "source_location": "L162", "weight": 1.0 }, { @@ -198453,7 +199620,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L251", + "source_location": "L259", "weight": 1.0 }, { @@ -198464,7 +199631,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L285", + "source_location": "L293", "weight": 1.0 }, { @@ -198475,7 +199642,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L113", + "source_location": "L121", "weight": 1.0 }, { @@ -217861,14 +219028,25 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_api_routers_cells_rationale_97", + "source": "src_cellpy_simple_gui_api_routers_cells_rationale_152", + "target": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L152", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells_rationale_99", "target": "src_cellpy_simple_gui_api_routers_cells_preview_files", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L97", + "source_location": "L99", "weight": 1.0 }, { @@ -218476,6 +219654,17 @@ "source_location": "L573", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_585", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L585", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_61", "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_example", @@ -218488,113 +219677,113 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_718", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_742", "target": "src_cellpy_simple_gui_core_cellpy_adapter_save_cell", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L718", + "source_location": "L742", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_725", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_749", "target": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_excel", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L725", + "source_location": "L749", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_732", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_756", "target": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_csv", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L732", + "source_location": "L756", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_742", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_766", "target": "src_cellpy_simple_gui_core_cellpy_adapter_remake_summary", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L742", + "source_location": "L766", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_769", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_793", "target": "src_cellpy_simple_gui_core_cellpy_adapter_apply_physical_meta", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L769", + "source_location": "L793", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_798", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_822", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_mass", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L798", + "source_location": "L822", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_803", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_827", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_area", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L803", + "source_location": "L827", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_808", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_832", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_nominal_capacity", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L808", + "source_location": "L832", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_813", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_837", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_nom_cap_specifics", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L813", + "source_location": "L837", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_818", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_842", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_cycle_mode", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L818", + "source_location": "L842", "weight": 1.0 }, { @@ -218741,564 +219930,575 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1006", + "source": "src_cellpy_simple_gui_core_collect_rationale_1005", + "target": "src_cellpy_simple_gui_core_collect_note_downsampling", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1005", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect_rationale_101", + "target": "src_cellpy_simple_gui_core_collect_group_titles", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L101", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect_rationale_1030", "target": "src_cellpy_simple_gui_core_collect_variable_axis_map", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1006", + "source_location": "L1030", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1025", + "source": "src_cellpy_simple_gui_core_collect_rationale_1049", "target": "src_cellpy_simple_gui_core_collect_trace_variable", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1025", + "source_location": "L1049", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1034", + "source": "src_cellpy_simple_gui_core_collect_rationale_1058", "target": "src_cellpy_simple_gui_core_collect_layout_key_for_y_id", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1034", + "source_location": "L1058", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1041", + "source": "src_cellpy_simple_gui_core_collect_rationale_1065", "target": "src_cellpy_simple_gui_core_collect_apply_y_ranges", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1041", + "source_location": "L1065", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1130", + "source": "src_cellpy_simple_gui_core_collect_rationale_1154", "target": "src_cellpy_simple_gui_core_collect_preserve_full_name_on_hover", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1130", + "source_location": "L1154", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1146", + "source": "src_cellpy_simple_gui_core_collect_rationale_1170", "target": "src_cellpy_simple_gui_core_collect_shorten_legend", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1146", + "source_location": "L1170", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1174", + "source": "src_cellpy_simple_gui_core_collect_rationale_1198", "target": "src_cellpy_simple_gui_core_collect_has_right_facet_strips", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1174", + "source_location": "L1198", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1186", + "source": "src_cellpy_simple_gui_core_collect_rationale_1210", "target": "src_cellpy_simple_gui_core_collect_tidy_facet_annotations", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1186", + "source_location": "L1210", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1206", + "source": "src_cellpy_simple_gui_core_collect_rationale_1230", "target": "src_cellpy_simple_gui_core_collect_trace_cell_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1206", + "source_location": "L1230", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1222", + "source": "src_cellpy_simple_gui_core_collect_rationale_1246", "target": "src_cellpy_simple_gui_core_collect_facet_labels_by_axes", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1222", + "source_location": "L1246", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1250", + "source": "src_cellpy_simple_gui_core_collect_rationale_1274", "target": "src_cellpy_simple_gui_core_collect_overlay_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1250", + "source_location": "L1274", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1265", + "source": "src_cellpy_simple_gui_core_collect_rationale_1289", "target": "src_cellpy_simple_gui_core_collect_overlay_facets", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1265", + "source_location": "L1289", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1333", + "source": "src_cellpy_simple_gui_core_collect_rationale_1357", "target": "src_cellpy_simple_gui_core_collect_hex_to_rgba", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1333", + "source_location": "L1357", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_134", - "target": "src_cellpy_simple_gui_core_collect_registry_plot_types", + "source": "src_cellpy_simple_gui_core_collect_rationale_1370", + "target": "src_cellpy_simple_gui_core_collect_apply_colorway", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L134", + "source_location": "L1370", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1346", - "target": "src_cellpy_simple_gui_core_collect_apply_colorway", + "source": "src_cellpy_simple_gui_core_collect_rationale_1401", + "target": "src_cellpy_simple_gui_core_collect_restyle", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1346", + "source_location": "L1401", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1377", - "target": "src_cellpy_simple_gui_core_collect_restyle", + "source": "src_cellpy_simple_gui_core_collect_rationale_1465", + "target": "src_cellpy_simple_gui_core_collect_export_frame_bytes", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1377", + "source_location": "L1465", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1441", - "target": "src_cellpy_simple_gui_core_collect_export_frame_bytes", + "source": "src_cellpy_simple_gui_core_collect_rationale_1482", + "target": "src_cellpy_simple_gui_core_collect_export_bytes", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1441", + "source_location": "L1482", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1458", - "target": "src_cellpy_simple_gui_core_collect_export_bytes", + "source": "src_cellpy_simple_gui_core_collect_rationale_155", + "target": "src_cellpy_simple_gui_core_collect_registry_plot_types", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1458", + "source_location": "L155", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_183", + "source": "src_cellpy_simple_gui_core_collect_rationale_204", "target": "src_cellpy_simple_gui_core_collect_family_required_columns", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L183", + "source_location": "L204", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_210", + "source": "src_cellpy_simple_gui_core_collect_rationale_231", "target": "src_cellpy_simple_gui_core_collect_pre_collect_column", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L210", + "source_location": "L231", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_219", + "source": "src_cellpy_simple_gui_core_collect_rationale_240", "target": "src_cellpy_simple_gui_core_collect_family_summary_options", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L219", + "source_location": "L240", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_237", + "source": "src_cellpy_simple_gui_core_collect_rationale_258", "target": "src_cellpy_simple_gui_core_collect_summary_schema", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L237", + "source_location": "L258", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_261", + "source": "src_cellpy_simple_gui_core_collect_rationale_282", "target": "src_cellpy_simple_gui_core_collect_missing_summary_columns", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L261", + "source_location": "L282", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_273", + "source": "src_cellpy_simple_gui_core_collect_rationale_294", "target": "src_cellpy_simple_gui_core_collect_family_columns", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L273", + "source_location": "L294", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_283", + "source": "src_cellpy_simple_gui_core_collect_rationale_304", "target": "src_cellpy_simple_gui_core_collect_summary_options_for", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L283", + "source_location": "L304", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_296", + "source": "src_cellpy_simple_gui_core_collect_rationale_317", "target": "src_cellpy_simple_gui_core_collect_summary_required_columns", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L296", + "source_location": "L317", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_366", + "source": "src_cellpy_simple_gui_core_collect_rationale_387", "target": "src_cellpy_simple_gui_core_collect_panel_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L366", + "source_location": "L387", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_376", + "source": "src_cellpy_simple_gui_core_collect_rationale_397", "target": "src_cellpy_simple_gui_core_collect_pretty_unit_text", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L376", + "source_location": "L397", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_381", + "source": "src_cellpy_simple_gui_core_collect_rationale_402", "target": "src_cellpy_simple_gui_core_collect_capacity_mode_from_column", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L381", + "source_location": "L402", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_407", + "source": "src_cellpy_simple_gui_core_collect_rationale_428", "target": "src_cellpy_simple_gui_core_collect_summary_column_axis_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L407", + "source_location": "L428", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_433", + "source": "src_cellpy_simple_gui_core_collect_rationale_454", "target": "src_cellpy_simple_gui_core_collect_summary_y_label_mapper", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L433", + "source_location": "L454", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_438", + "source": "src_cellpy_simple_gui_core_collect_rationale_459", "target": "src_cellpy_simple_gui_core_collect_summary_panels_for", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L438", + "source_location": "L459", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_446", + "source": "src_cellpy_simple_gui_core_collect_rationale_467", "target": "src_cellpy_simple_gui_core_collect_summary_columns", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L446", + "source_location": "L467", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_471", + "source": "src_cellpy_simple_gui_core_collect_rationale_492", "target": "src_cellpy_simple_gui_core_collect_summary_collection", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L471", + "source_location": "L492", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_520", + "source": "src_cellpy_simple_gui_core_collect_rationale_541", "target": "src_cellpy_simple_gui_core_collect_ica_collection", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L520", + "source_location": "L541", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_536", + "source": "src_cellpy_simple_gui_core_collect_rationale_557", "target": "src_cellpy_simple_gui_core_collect_dva_collection", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L536", + "source_location": "L557", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_550", + "source": "src_cellpy_simple_gui_core_collect_rationale_571", "target": "src_cellpy_simple_gui_core_collect_select_ica_direction", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L550", + "source_location": "L571", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_579", + "source": "src_cellpy_simple_gui_core_collect_rationale_600", "target": "src_cellpy_simple_gui_core_collect_restrict_to_cycle_pairs", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L579", + "source_location": "L600", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_614", + "source": "src_cellpy_simple_gui_core_collect_rationale_635", "target": "src_cellpy_simple_gui_core_collect_present_cycle_pairs", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L614", + "source_location": "L635", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_643", - "target": "src_cellpy_simple_gui_core_collect_is_grouped", + "source": "src_cellpy_simple_gui_core_collect_rationale_66", + "target": "src_cellpy_simple_gui_core_collect_batch_keys", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L643", + "source_location": "L66", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_654", - "target": "src_cellpy_simple_gui_core_collect_inject_app_chrome", + "source": "src_cellpy_simple_gui_core_collect_rationale_664", + "target": "src_cellpy_simple_gui_core_collect_is_grouped", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L654", + "source_location": "L664", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_66", - "target": "src_cellpy_simple_gui_core_collect_batch_keys", + "source": "src_cellpy_simple_gui_core_collect_rationale_675", + "target": "src_cellpy_simple_gui_core_collect_inject_app_chrome", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L66", + "source_location": "L675", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_681", + "source": "src_cellpy_simple_gui_core_collect_rationale_702", "target": "src_cellpy_simple_gui_core_collect_trace_axis_extent", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L681", + "source_location": "L702", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_721", + "source": "src_cellpy_simple_gui_core_collect_rationale_742", "target": "src_cellpy_simple_gui_core_collect_resolve_axis_range", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L721", + "source_location": "L742", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_745", + "source": "src_cellpy_simple_gui_core_collect_rationale_766", "target": "src_cellpy_simple_gui_core_collect_y_id_from_layout_key", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L745", + "source_location": "L766", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_754", + "source": "src_cellpy_simple_gui_core_collect_rationale_775", "target": "src_cellpy_simple_gui_core_collect_apply_xy_ranges", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L754", + "source_location": "L775", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_774", + "source": "src_cellpy_simple_gui_core_collect_rationale_795", "target": "src_cellpy_simple_gui_core_collect_add_spread_hover", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L774", + "source_location": "L795", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_808", + "source": "src_cellpy_simple_gui_core_collect_rationale_829", "target": "src_cellpy_simple_gui_core_collect_spread_hovertemplate", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L808", + "source_location": "L829", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_816", + "source": "src_cellpy_simple_gui_core_collect_rationale_837", "target": "src_cellpy_simple_gui_core_collect_attach_spread", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L816", + "source_location": "L837", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_834", + "source": "src_cellpy_simple_gui_core_collect_rationale_855", "target": "src_cellpy_simple_gui_core_collect_facet_traces", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L834", - "weight": 1.0 - }, - { - "source": "src_cellpy_simple_gui_core_collect_rationale_843", - "target": "src_cellpy_simple_gui_core_collect_axis_title", - "relation": "rationale_for", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L843", + "source_location": "L855", "weight": 1.0 }, { @@ -219313,47 +220513,47 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_902", - "target": "src_cellpy_simple_gui_core_collect_stamp_warnings", + "source": "src_cellpy_simple_gui_core_collect_rationale_864", + "target": "src_cellpy_simple_gui_core_collect_axis_title", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L902", + "source_location": "L864", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_925", - "target": "src_cellpy_simple_gui_core_collect_raw_figure_json", + "source": "src_cellpy_simple_gui_core_collect_rationale_926", + "target": "src_cellpy_simple_gui_core_collect_stamp_warnings", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L925", + "source_location": "L926", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_954", - "target": "src_cellpy_simple_gui_core_collect_cycle_info_figure_json", + "source": "src_cellpy_simple_gui_core_collect_rationale_949", + "target": "src_cellpy_simple_gui_core_collect_raw_figure_json", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L954", + "source_location": "L949", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_981", - "target": "src_cellpy_simple_gui_core_collect_note_downsampling", + "source": "src_cellpy_simple_gui_core_collect_rationale_978", + "target": "src_cellpy_simple_gui_core_collect_cycle_info_figure_json", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L981", + "source_location": "L978", "weight": 1.0 }, { @@ -219522,63 +220722,85 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_104", + "source": "src_cellpy_simple_gui_core_library_rationale_119", "target": "src_cellpy_simple_gui_core_library_library", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L104", + "source_location": "L119", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_148", + "source": "src_cellpy_simple_gui_core_library_rationale_167", "target": "src_cellpy_simple_gui_core_library_library_restore_cell", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L148", + "source_location": "L167", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_230", + "source": "src_cellpy_simple_gui_core_library_rationale_249", "target": "src_cellpy_simple_gui_core_library_library_mark_saved", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L230", + "source_location": "L249", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_237", + "source": "src_cellpy_simple_gui_core_library_rationale_256", "target": "src_cellpy_simple_gui_core_library_library_reusable_data_file", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L237", + "source_location": "L256", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_300", - "target": "src_cellpy_simple_gui_core_library_get_library", + "source": "src_cellpy_simple_gui_core_library_rationale_292", + "target": "src_cellpy_simple_gui_core_library_library_set_group_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L300", + "source_location": "L292", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_302", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L302", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_307", + "target": "src_cellpy_simple_gui_core_library_library_group_labels", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L307", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_library_rationale_31", - "target": "src_cellpy_simple_gui_core_library_file_stat", + "target": "src_cellpy_simple_gui_core_library_default_group_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", @@ -219588,14 +220810,58 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_45", + "source": "src_cellpy_simple_gui_core_library_rationale_313", + "target": "src_cellpy_simple_gui_core_library_library_groups", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L313", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_36", + "target": "src_cellpy_simple_gui_core_library_file_stat", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L36", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_361", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L361", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_50", "target": "src_cellpy_simple_gui_core_library_cellrecord", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L45", + "source_location": "L50", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_87", + "target": "src_cellpy_simple_gui_core_library_cellrecord_group_name", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L87", "weight": 1.0 }, { @@ -219610,157 +220876,157 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_125", + "source": "src_cellpy_simple_gui_core_models_rationale_133", "target": "src_cellpy_simple_gui_core_models_cyclesplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L125", + "source_location": "L133", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_169", + "source": "src_cellpy_simple_gui_core_models_rationale_177", "target": "src_cellpy_simple_gui_core_models_comparepick", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L169", + "source_location": "L177", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_181", + "source": "src_cellpy_simple_gui_core_models_rationale_189", "target": "src_cellpy_simple_gui_core_models_compareplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L181", + "source_location": "L189", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_231", + "source": "src_cellpy_simple_gui_core_models_rationale_239", "target": "src_cellpy_simple_gui_core_models_compareplotspec_pairs", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L231", + "source_location": "L239", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_236", + "source": "src_cellpy_simple_gui_core_models_rationale_244", "target": "src_cellpy_simple_gui_core_models_icaplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L236", + "source_location": "L244", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_256", + "source": "src_cellpy_simple_gui_core_models_rationale_264", "target": "src_cellpy_simple_gui_core_models_dvaplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L256", + "source_location": "L264", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_272", + "source": "src_cellpy_simple_gui_core_models_rationale_280", "target": "src_cellpy_simple_gui_core_models_rawplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L272", + "source_location": "L280", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_290", + "source": "src_cellpy_simple_gui_core_models_rationale_298", "target": "src_cellpy_simple_gui_core_models_cycleinfoplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L290", + "source_location": "L298", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_304", + "source": "src_cellpy_simple_gui_core_models_rationale_312", "target": "src_cellpy_simple_gui_core_models_exportspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L304", + "source_location": "L312", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_314", + "source": "src_cellpy_simple_gui_core_models_rationale_322", "target": "src_cellpy_simple_gui_core_models_cellsexportspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L314", + "source_location": "L322", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_320", + "source": "src_cellpy_simple_gui_core_models_rationale_328", "target": "src_cellpy_simple_gui_core_models_journalrowupdate", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L320", + "source_location": "L328", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_343", + "source": "src_cellpy_simple_gui_core_models_rationale_351", "target": "src_cellpy_simple_gui_core_models_previewrequest", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L343", + "source_location": "L351", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_350", + "source": "src_cellpy_simple_gui_core_models_rationale_358", "target": "src_cellpy_simple_gui_core_models_remotefindrequest", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L350", + "source_location": "L358", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_359", + "source": "src_cellpy_simple_gui_core_models_rationale_367", "target": "src_cellpy_simple_gui_core_models_ingestrequest", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L359", + "source_location": "L367", "weight": 1.0 }, { @@ -219786,14 +221052,25 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_90", + "source": "src_cellpy_simple_gui_core_models_rationale_92", + "target": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L92", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_models_rationale_98", "target": "src_cellpy_simple_gui_core_models_summaryplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L90", + "source_location": "L98", "weight": 1.0 }, { @@ -219929,102 +221206,102 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_100", + "source": "src_cellpy_simple_gui_core_plotting_rationale_102", "target": "src_cellpy_simple_gui_core_plotting_cycle_availability", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L100", + "source_location": "L102", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_112", + "source": "src_cellpy_simple_gui_core_plotting_rationale_114", "target": "src_cellpy_simple_gui_core_plotting_nothing_to_draw_json", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L112", + "source_location": "L114", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_124", + "source": "src_cellpy_simple_gui_core_plotting_rationale_126", "target": "src_cellpy_simple_gui_core_plotting_single_cell_reports", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L124", + "source_location": "L126", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_143", + "source": "src_cellpy_simple_gui_core_plotting_rationale_145", "target": "src_cellpy_simple_gui_core_plotting_guard_no_cycles", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L143", + "source_location": "L145", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_222", + "source": "src_cellpy_simple_gui_core_plotting_rationale_225", "target": "src_cellpy_simple_gui_core_plotting_compare_collection", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L222", + "source_location": "L225", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_265", + "source": "src_cellpy_simple_gui_core_plotting_rationale_268", "target": "src_cellpy_simple_gui_core_plotting_compare_figure", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L265", + "source_location": "L268", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_296", + "source": "src_cellpy_simple_gui_core_plotting_rationale_299", "target": "src_cellpy_simple_gui_core_plotting_raw_figure", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L296", + "source_location": "L299", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_309", + "source": "src_cellpy_simple_gui_core_plotting_rationale_312", "target": "src_cellpy_simple_gui_core_plotting_cycle_info_figure", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L309", + "source_location": "L312", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_325", + "source": "src_cellpy_simple_gui_core_plotting_rationale_328", "target": "src_cellpy_simple_gui_core_plotting_dva_figure", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L325", + "source_location": "L328", "weight": 1.0 }, { @@ -220039,36 +221316,47 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_projects_rationale_104", + "source": "src_cellpy_simple_gui_core_projects_rationale_113", "target": "src_cellpy_simple_gui_core_projects_resolve_project_path", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L104", + "source_location": "L113", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_projects_rationale_117", + "source": "src_cellpy_simple_gui_core_projects_rationale_126", "target": "src_cellpy_simple_gui_core_projects_classify_import_path", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L117", + "source_location": "L126", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_projects_rationale_148", + "source": "src_cellpy_simple_gui_core_projects_rationale_157", "target": "src_cellpy_simple_gui_core_projects_cleanup_save_artifacts", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L148", + "source_location": "L157", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_projects_rationale_65", + "target": "src_cellpy_simple_gui_core_projects_groupentry", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L65", "weight": 1.0 }, { @@ -220435,289 +221723,300 @@ "weight": 1.0 }, { - "source": "tests_test_api_rationale_259", + "source": "tests_test_api_rationale_242", + "target": "tests_test_api_test_rename_group", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_api.py", + "source_location": "L242", + "weight": 1.0 + }, + { + "source": "tests_test_api_rationale_286", "target": "tests_test_api_test_pin_config_requires_a_project", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L259", + "source_location": "L286", "weight": 1.0 }, { - "source": "tests_test_api_rationale_266", + "source": "tests_test_api_rationale_293", "target": "tests_test_api_test_plot_types_curated_by_default", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L266", + "source_location": "L293", "weight": 1.0 }, { - "source": "tests_test_api_rationale_298", + "source": "tests_test_api_rationale_325", "target": "tests_test_api_dva_spec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L298", + "source_location": "L325", "weight": 1.0 }, { - "source": "tests_test_api_rationale_309", + "source": "tests_test_api_rationale_336", "target": "tests_test_api_test_dva_endpoints_need_no_dev_mode", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L309", + "source_location": "L336", "weight": 1.0 }, { - "source": "tests_test_api_rationale_329", + "source": "tests_test_api_rationale_356", "target": "tests_test_api_test_dva_missing_cell_is_404_not_403", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L329", + "source_location": "L356", "weight": 1.0 }, { - "source": "tests_test_api_rationale_403", + "source": "tests_test_api_rationale_430", "target": "tests_test_api_test_log_viewer_captures_stdlib_records", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L403", + "source_location": "L430", "weight": 1.0 }, { - "source": "tests_test_api_rationale_454", + "source": "tests_test_api_rationale_481", "target": "tests_test_api_test_app_js_parses", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L454", + "source_location": "L481", "weight": 1.0 }, { - "source": "tests_test_api_rationale_475", + "source": "tests_test_api_rationale_502", "target": "tests_test_api_test_index_alpine_state_is_defined", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L475", + "source_location": "L502", "weight": 1.0 }, { - "source": "tests_test_api_rationale_524", + "source": "tests_test_api_rationale_551", "target": "tests_test_api_component_names", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L524", + "source_location": "L551", "weight": 1.0 }, { - "source": "tests_test_api_rationale_540", + "source": "tests_test_api_rationale_567", "target": "tests_test_api_free_identifiers", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L540", + "source_location": "L567", "weight": 1.0 }, { - "source": "tests_test_api_rationale_562", + "source": "tests_test_api_rationale_589", "target": "tests_test_api_test_index_click_and_show_targets_exist", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L562", + "source_location": "L589", "weight": 1.0 }, { - "source": "tests_test_api_rationale_593", - "target": "tests_test_api_test_add_cells_modal_has_one_primary_action", + "source": "tests_test_api_rationale_60", + "target": "tests_test_api_test_system_capabilities_no_file_picker", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L593", + "source_location": "L60", "weight": 1.0 }, { - "source": "tests_test_api_rationale_60", - "target": "tests_test_api_test_system_capabilities_no_file_picker", + "source": "tests_test_api_rationale_620", + "target": "tests_test_api_test_add_cells_modal_has_one_primary_action", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L60", + "source_location": "L620", "weight": 1.0 }, { - "source": "tests_test_api_rationale_605", + "source": "tests_test_api_rationale_632", "target": "tests_test_api_default_visible_hints", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L605", + "source_location": "L632", "weight": 1.0 }, { - "source": "tests_test_api_rationale_647", + "source": "tests_test_api_rationale_674", "target": "tests_test_api_test_default_visible_hint_budget", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L647", + "source_location": "L674", "weight": 1.0 }, { - "source": "tests_test_api_rationale_671", + "source": "tests_test_api_rationale_698", "target": "tests_test_api_without_webview", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L671", + "source_location": "L698", "weight": 1.0 }, { - "source": "tests_test_api_rationale_681", + "source": "tests_test_api_rationale_708", "target": "tests_test_api_test_api_works_without_pywebview", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L681", + "source_location": "L708", "weight": 1.0 }, { - "source": "tests_test_api_rationale_700", + "source": "tests_test_api_rationale_727", "target": "tests_test_api_test_native_dialogs_refuse_without_pywebview", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L700", + "source_location": "L727", "weight": 1.0 }, { - "source": "tests_test_api_rationale_712", + "source": "tests_test_api_rationale_739", "target": "tests_test_api_test_desktop_import_failure_names_the_extra", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L712", + "source_location": "L739", "weight": 1.0 }, { - "source": "tests_test_api_rationale_728", - "target": "tests_test_api_served_client", + "source": "tests_test_api_rationale_74", + "target": "tests_test_api_test_cellpy_config_diagnostics_endpoint", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L728", + "source_location": "L74", "weight": 1.0 }, { - "source": "tests_test_api_rationale_74", - "target": "tests_test_api_test_cellpy_config_diagnostics_endpoint", + "source": "tests_test_api_rationale_755", + "target": "tests_test_api_served_client", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L74", + "source_location": "L755", "weight": 1.0 }, { - "source": "tests_test_api_rationale_746", + "source": "tests_test_api_rationale_773", "target": "tests_test_api_test_served_instance_refuses_paths_outside_its_data_dir", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L746", + "source_location": "L773", "weight": 1.0 }, { - "source": "tests_test_api_rationale_762", + "source": "tests_test_api_rationale_789", "target": "tests_test_api_test_served_instance_will_not_load_files_from_the_host", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L762", + "source_location": "L789", "weight": 1.0 }, { - "source": "tests_test_api_rationale_797", + "source": "tests_test_api_rationale_824", "target": "tests_test_api_test_files_preview_literal_missing_and_glob", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L797", + "source_location": "L824", "weight": 1.0 }, { - "source": "tests_test_api_rationale_827", + "source": "tests_test_api_rationale_854", "target": "tests_test_api_test_files_preview_honours_served_sandbox", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L827", + "source_location": "L854", "weight": 1.0 }, { - "source": "tests_test_api_rationale_840", + "source": "tests_test_api_rationale_867", "target": "tests_test_api_test_local_instance_keeps_its_freedom", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L840", + "source_location": "L867", "weight": 1.0 }, { @@ -221095,322 +222394,344 @@ "weight": 1.0 }, { - "source": "tests_test_core_rationale_1250", + "source": "tests_test_core_rationale_1279", + "target": "tests_test_core_test_group_names_reach_grouped_legend", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L1279", + "weight": 1.0 + }, + { + "source": "tests_test_core_rationale_1295", + "target": "tests_test_core_test_group_names_caption_ungrouped_legend", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L1295", + "weight": 1.0 + }, + { + "source": "tests_test_core_rationale_1332", "target": "tests_test_core_summary_facet_titles_top_to_bottom", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1250", + "source_location": "L1332", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1265", + "source": "tests_test_core_rationale_1347", "target": "tests_test_core_test_summary_capacity_ce_facet_order_stable", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1265", + "source_location": "L1347", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1291", + "source": "tests_test_core_rationale_1373", "target": "tests_test_core_test_summary_figure_share_y_with_group_avg_and_spread", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1291", + "source_location": "L1373", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1318", + "source": "tests_test_core_rationale_1400", "target": "tests_test_core_test_summary_figure_ce_outlier_does_not_crush_capacity", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1318", + "source_location": "L1400", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1480", - "target": "tests_test_core_test_config_diagnostics_shape", + "source": "tests_test_core_rationale_151", + "target": "tests_test_core_test_summary_figure_forwards_group_legend_muting", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1480", + "source_location": "L151", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1496", - "target": "tests_test_core_test_config_diagnostics_masks_credentialish_values", + "source": "tests_test_core_rationale_1562", + "target": "tests_test_core_test_config_diagnostics_shape", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1496", + "source_location": "L1562", "weight": 1.0 }, { - "source": "tests_test_core_rationale_151", - "target": "tests_test_core_test_summary_figure_forwards_group_legend_muting", + "source": "tests_test_core_rationale_1578", + "target": "tests_test_core_test_config_diagnostics_masks_credentialish_values", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L151", + "source_location": "L1578", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1514", + "source": "tests_test_core_rationale_1596", "target": "tests_test_core_test_config_diagnostics_warns_on_legacy_fallback", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1514", + "source_location": "L1596", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1533", + "source": "tests_test_core_rationale_1615", "target": "tests_test_core_test_config_diagnostics_survives_broken_provenance", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1533", + "source_location": "L1615", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1550", + "source": "tests_test_core_rationale_1632", "target": "tests_test_core_dev_mode", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1550", + "source_location": "L1632", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1584", + "source": "tests_test_core_rationale_1666", "target": "tests_test_core_test_regular_mode_clamps_file_request", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1584", + "source_location": "L1666", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1598", + "source": "tests_test_core_rationale_1680", "target": "tests_test_core_test_registry_plot_types_mark_availability", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1598", + "source_location": "L1680", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1626", + "source": "tests_test_core_rationale_1708", "target": "tests_test_core_test_unavailable_family_explains_itself", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1626", + "source_location": "L1708", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1642", - "target": "tests_test_core_test_registry_menu_holds_only_summary_families", + "source": "tests_test_core_rationale_172", + "target": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1642", + "source_location": "L172", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1649", - "target": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", + "source": "tests_test_core_rationale_1724", + "target": "tests_test_core_test_registry_menu_holds_only_summary_families", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1649", + "source_location": "L1724", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1676", - "target": "tests_test_core_test_family_options_carry_cv_split", + "source": "tests_test_core_rationale_1731", + "target": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1676", + "source_location": "L1731", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1686", - "target": "tests_test_core_test_curated_plot_types_unaffected", + "source": "tests_test_core_rationale_1758", + "target": "tests_test_core_test_family_options_carry_cv_split", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1686", + "source_location": "L1758", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1698", - "target": "tests_test_core_test_dva_figure_directions", + "source": "tests_test_core_rationale_1768", + "target": "tests_test_core_test_curated_plot_types_unaffected", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1698", + "source_location": "L1768", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1713", - "target": "tests_test_core_test_dva_both_distinguishes_half_cycles", + "source": "tests_test_core_rationale_1780", + "target": "tests_test_core_test_dva_figure_directions", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1713", + "source_location": "L1780", "weight": 1.0 }, { - "source": "tests_test_core_rationale_172", - "target": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", + "source": "tests_test_core_rationale_1795", + "target": "tests_test_core_test_dva_both_distinguishes_half_cycles", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L172", + "source_location": "L1795", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1730", + "source": "tests_test_core_rationale_1812", "target": "tests_test_core_test_dva_collection_spans_cells", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1730", + "source_location": "L1812", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1752", + "source": "tests_test_core_rationale_1834", "target": "tests_test_core_test_dva_export_matches_chart", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1752", + "source_location": "L1834", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1773", + "source": "tests_test_core_rationale_1855", "target": "tests_test_core_test_registry_plot_types_without_cells_says_so", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1773", + "source_location": "L1855", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1787", + "source": "tests_test_core_rationale_1869", "target": "tests_test_core_test_summary_schema_unions_across_cells", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1787", + "source_location": "L1869", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1812", + "source": "tests_test_core_rationale_1894", "target": "tests_test_core_test_raw_figure_is_downsampled_for_transport", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1812", + "source_location": "L1894", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1846", + "source": "tests_test_core_rationale_1928", "target": "tests_test_core_test_cycle_info_figure", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1846", + "source_location": "L1928", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1866", + "source": "tests_test_core_rationale_1948", "target": "tests_test_core_test_thin_traces_leaves_small_figures_alone", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1866", + "source_location": "L1948", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1876", + "source": "tests_test_core_rationale_1958", "target": "tests_test_core_test_meta_edit_uses_selective_refresh", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1876", + "source_location": "L1958", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1901", + "source": "tests_test_core_rationale_1983", "target": "tests_test_core_test_meta_edit_falls_back_without_refresh_after", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1901", + "source_location": "L1983", "weight": 1.0 }, { @@ -221842,6 +223163,17 @@ "source_location": "L231", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright_rationale_287", + "target": "tests_test_gui_playwright_test_cells_modal_names_groups", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_gui_playwright.py", + "source_location": "L287", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright_rationale_42", "target": "tests_test_gui_playwright_live_server", @@ -222008,25 +223340,47 @@ "weight": 1.0 }, { - "source": "tests_test_journal_rationale_52", + "source": "tests_test_journal_rationale_117", "target": "tests_test_journal_test_load_journal_missing_files_returns_empty", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L52", + "source_location": "L117", "weight": 1.0 }, { - "source": "tests_test_journal_rationale_84", + "source": "tests_test_journal_rationale_149", "target": "tests_test_journal_test_api_load_corrupt_journal_reports_error", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L84", + "source_location": "L149", + "weight": 1.0 + }, + { + "source": "tests_test_journal_rationale_53", + "target": "tests_test_journal_test_load_journal_reads_group_labels", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_journal.py", + "source_location": "L53", + "weight": 1.0 + }, + { + "source": "tests_test_journal_rationale_80", + "target": "tests_test_journal_test_api_load_journal_applies_group_labels", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_journal.py", + "source_location": "L80", "weight": 1.0 }, { @@ -222525,195 +223879,217 @@ "weight": 1.0 }, { - "source": "tests_test_projects_rationale_111", + "source": "tests_test_projects_rationale_104", + "target": "tests_test_projects_test_failed_resave_keeps_previous_project", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_projects.py", + "source_location": "L104", + "weight": 1.0 + }, + { + "source": "tests_test_projects_rationale_136", + "target": "tests_test_projects_counting_save_cell", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_projects.py", + "source_location": "L136", + "weight": 1.0 + }, + { + "source": "tests_test_projects_rationale_150", "target": "tests_test_projects_test_resave_reuses_unchanged_cells", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L111", + "source_location": "L150", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_139", + "source": "tests_test_projects_rationale_178", "target": "tests_test_projects_test_resave_rewrites_cells_whose_data_changed", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L139", + "source_location": "L178", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_155", + "source": "tests_test_projects_rationale_194", "target": "tests_test_projects_test_reuse_declines_when_file_changed_on_disk", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L155", + "source_location": "L194", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_193", + "source": "tests_test_projects_rationale_232", "target": "tests_test_projects_test_save_as_new_project_still_copies_every_cell", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L193", + "source_location": "L232", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_211", + "source": "tests_test_projects_rationale_250", "target": "tests_test_projects_test_reused_project_reopens_intact", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L211", + "source_location": "L250", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_230", + "source": "tests_test_projects_rationale_269", "target": "tests_test_projects_test_opened_cells_start_clean_and_dirty_on_edit", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L230", + "source_location": "L269", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_278", + "source": "tests_test_projects_rationale_317", "target": "tests_test_projects_test_open_via_project_json_file_and_absolute_path", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L278", + "source_location": "L317", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_383", + "source": "tests_test_projects_rationale_422", "target": "tests_test_projects_test_project_config_activates_and_restores", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L383", + "source_location": "L422", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_402", + "source": "tests_test_projects_rationale_441", "target": "tests_test_projects_test_project_without_config_drops_previous", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L402", + "source_location": "L441", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_422", + "source": "tests_test_projects_rationale_461", "target": "tests_test_projects_test_broken_project_config_does_not_block_open", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L422", + "source_location": "L461", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_451", + "source": "tests_test_projects_rationale_490", "target": "tests_test_projects_test_pin_project_config_writes_safe_sections", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L451", + "source_location": "L490", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_477", + "source": "tests_test_projects_rationale_516", "target": "tests_test_projects_test_pin_project_config_round_trips", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L477", + "source_location": "L516", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_498", + "source": "tests_test_projects_rationale_537", "target": "tests_test_projects_test_discovery_reports_shadowed_legacy", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L498", + "source_location": "L537", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_535", + "source": "tests_test_projects_rationale_574", "target": "tests_test_projects_test_data_dir_follows_the_env", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L535", + "source_location": "L574", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_544", + "source": "tests_test_projects_rationale_583", "target": "tests_test_projects_test_data_dir_expands_user_and_relative", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L544", + "source_location": "L583", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_557", + "source": "tests_test_projects_rationale_596", "target": "tests_test_projects_test_reading_settings_creates_nothing", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L557", + "source_location": "L596", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_568", + "source": "tests_test_projects_rationale_607", "target": "tests_test_projects_test_projects_land_under_the_configured_data_dir", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L568", + "source_location": "L607", "weight": 1.0 }, { "source": "tests_test_projects_rationale_65", - "target": "tests_test_projects_test_failed_resave_keeps_previous_project", + "target": "tests_test_projects_test_group_names_saved_and_restored", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", @@ -222723,14 +224099,14 @@ "weight": 1.0 }, { - "source": "tests_test_projects_rationale_97", - "target": "tests_test_projects_counting_save_cell", + "source": "tests_test_projects_rationale_85", + "target": "tests_test_projects_test_manifest_without_groups_still_opens", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L97", + "source_location": "L85", "weight": 1.0 }, { @@ -223755,7 +225131,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L91", + "source_location": "L93", "weight": 1.0 }, { @@ -223767,7 +225143,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L121", + "source_location": "L123", "weight": 1.0 }, { @@ -223803,7 +225179,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L188", + "source_location": "L191", "weight": 1.0 }, { @@ -245751,7 +247127,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "tests/test_core.py", - "source_location": "L1409", + "source_location": "L1491", "weight": 1.0 }, { @@ -246087,7 +247463,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "tests/test_projects.py", - "source_location": "L105", + "source_location": "L144", "weight": 1.0 }, { @@ -246099,7 +247475,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "tests/test_projects.py", - "source_location": "L79", + "source_location": "L118", "weight": 1.0 }, { @@ -246139,7 +247515,7 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", "target": "examples_mcp_server_load_cell", "relation": "calls", "_origin": "ast", @@ -246147,7 +247523,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L642", + "source_location": "L659", "weight": 1.0 }, { @@ -246159,7 +247535,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L964", + "source_location": "L988", "weight": 1.0 }, { @@ -246171,7 +247547,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L934", + "source_location": "L958", "weight": 1.0 }, { @@ -246183,7 +247559,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1555", + "source_location": "L1637", "weight": 1.0 }, { @@ -246243,7 +247619,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1565", + "source_location": "L1647", "weight": 1.0 }, { @@ -246255,7 +247631,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1579", + "source_location": "L1661", "weight": 1.0 }, { @@ -246267,7 +247643,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1591", + "source_location": "L1673", "weight": 1.0 }, { @@ -246291,7 +247667,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_journal.py", - "source_location": "L96", + "source_location": "L161", "weight": 1.0 }, { @@ -246303,7 +247679,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_journal.py", - "source_location": "L97", + "source_location": "L162", "weight": 1.0 }, { @@ -246315,7 +247691,43 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_journal.py", - "source_location": "L98", + "source_location": "L163", + "weight": 1.0 + }, + { + "source": "tests_test_journal_test_api_load_journal_applies_group_labels", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "calls", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.85, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L94", + "weight": 1.0 + }, + { + "source": "tests_test_journal_test_api_load_journal_applies_group_labels", + "target": "src_cellpy_simple_gui_api_app_create_app", + "relation": "calls", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.85, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L95", + "weight": 1.0 + }, + { + "source": "tests_test_journal_test_api_load_journal_applies_group_labels", + "target": "src_cellpy_simple_gui_config_get_settings", + "relation": "calls", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.85, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L96", "weight": 1.0 }, { @@ -251103,7 +252515,7 @@ "confidence_score": 0.85, "context": "getattr", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L621", + "source_location": "L642", "weight": 1.0 }, { @@ -251115,7 +252527,7 @@ "confidence_score": 0.85, "context": "getattr", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L587", + "source_location": "L608", "weight": 1.0 }, { @@ -251127,7 +252539,7 @@ "confidence_score": 0.85, "context": "getattr", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L558", + "source_location": "L579", "weight": 1.0 }, { @@ -251262,6 +252674,18 @@ "source_location": "L30", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_cellrecord_group_name", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "CellRecord.group_name()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L25", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue169_plan_files_to_touch", "target": "src_cellpy_simple_gui_core_models_comparepick", @@ -251706,6 +253130,18 @@ "source_location": "L41", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_library", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "Library", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L19", + "weight": 1.0 + }, { "source": "issueflows_04_designs_and_guides_cellprocessor_v2_design_3_technology_choices_design_vs_mvp", "target": "src_cellpy_simple_gui_core_library_library", @@ -252546,6 +253982,18 @@ "source_location": "L25", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_collect_batch", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "_batch", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L27", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue169_plan_2_core_core_collect_py", "target": "src_cellpy_simple_gui_core_collect_batch", @@ -253206,6 +254654,18 @@ "source_location": "L32", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_api_routers_cells_state", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "_state()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L31", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue169_plan_prior_art", "target": "src_cellpy_simple_gui_core_collect_tidy_facet_annotations", @@ -253650,6 +255110,18 @@ "source_location": "L30", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "cellpy_adapter.load_journal()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L35", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue52_plan_phase_c_implement_delegate_now", "target": "src_cellpy_simple_gui_core_cellpy_adapter_read_file_meta", @@ -253902,6 +255374,18 @@ "source_location": "L11", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_findings", + "target": "src_cellpy_simple_gui_core_collect_batch", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "collect._batch", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L5", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue169_plan_what_exists_today_and_the_gap", "target": "src_cellpy_simple_gui_core_collect_facet_traces", @@ -255627,7 +257111,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L497", + "source_location": "L518", "weight": 0.8 }, { @@ -255639,7 +257123,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L531", + "source_location": "L552", "weight": 0.8 }, { @@ -255651,7 +257135,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L272", + "source_location": "L293", "weight": 0.8 }, { @@ -255663,7 +257147,19 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L218", + "source_location": "L239", + "weight": 0.8 + }, + { + "source": "src_cellpy_simple_gui_core_collect_group_titles", + "target": "src_cellpy_simple_gui_core_library_cellrecord", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "generic_arg", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L100", "weight": 0.8 }, { @@ -255675,7 +257171,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L515", + "source_location": "L536", "weight": 0.8 }, { @@ -255687,7 +257183,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L259", + "source_location": "L280", "weight": 0.8 }, { @@ -255699,7 +257195,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L133", + "source_location": "L154", "weight": 0.8 }, { @@ -255711,7 +257207,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L464", + "source_location": "L485", "weight": 0.8 }, { @@ -255723,7 +257219,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L317", + "source_location": "L338", "weight": 0.8 }, { @@ -255735,7 +257231,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L282", + "source_location": "L303", "weight": 0.8 }, { @@ -255747,7 +257243,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L294", + "source_location": "L315", "weight": 0.8 }, { @@ -255759,7 +257255,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L236", + "source_location": "L257", "weight": 0.8 }, { @@ -255843,7 +257339,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L221", + "source_location": "L224", "weight": 0.8 }, { @@ -255855,7 +257351,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L98", + "source_location": "L100", "weight": 0.8 }, { @@ -255867,7 +257363,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L162", + "source_location": "L164", "weight": 0.8 }, { @@ -255879,7 +257375,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L137", + "source_location": "L139", "weight": 0.8 }, { @@ -255891,7 +257387,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L110", + "source_location": "L112", "weight": 0.8 }, { @@ -255903,7 +257399,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L119", + "source_location": "L121", "weight": 0.8 }, { @@ -255915,7 +257411,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L123", + "source_location": "L125", "weight": 0.8 }, { @@ -256542,6 +258038,78 @@ "source_location": "L33", "weight": 1.0 }, + { + "source": "cellpy_painpoints_1_no_public_collection_from_in_memory_cells", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_label", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L131", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_findings", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_label", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L7", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_label()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L22", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_findings", + "target": "src_cellpy_simple_gui_core_library_library_group_labels", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_labels", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L5", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_library_group_labels", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_labels()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L22", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_library_groups", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "groups()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L22", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue136_plan_prior_art", "target": "src_cellpy_simple_gui_core_paths_host_paths_allowed", @@ -257286,6 +258854,18 @@ "source_location": "L7", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "load_journal_cells()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L37", + "weight": 1.0 + }, { "source": "cellpy_painpoints_14_h5_auto_picks_cellpy_format_over_raw_instrument_loaders", "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_raw", @@ -257679,7 +259259,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L89", + "source_location": "L91", "weight": 0.8 }, { @@ -257691,7 +259271,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L52", + "source_location": "L54", "weight": 0.8 }, { @@ -257703,7 +259283,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L117", + "source_location": "L119", "weight": 0.8 }, { @@ -257715,7 +259295,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L69", + "source_location": "L71", "weight": 0.8 }, { @@ -257727,7 +259307,19 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L96", + "source_location": "L98", + "weight": 0.8 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "target": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "parameter_type", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L151", "weight": 0.8 }, { @@ -257739,7 +259331,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L129", + "source_location": "L131", "weight": 0.8 }, { @@ -258267,7 +259859,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L220", + "source_location": "L223", "weight": 0.8 }, { @@ -258279,7 +259871,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L264", + "source_location": "L267", "weight": 0.8 }, { @@ -258291,7 +259883,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L308", + "source_location": "L311", "weight": 0.8 }, { @@ -258303,7 +259895,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L308", + "source_location": "L311", "weight": 0.8 }, { @@ -258315,7 +259907,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L162", + "source_location": "L164", "weight": 0.8 }, { @@ -258327,7 +259919,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L324", + "source_location": "L327", "weight": 0.8 }, { @@ -258339,7 +259931,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L324", + "source_location": "L327", "weight": 0.8 }, { @@ -258351,7 +259943,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L352", + "source_location": "L355", "weight": 0.8 }, { @@ -258363,7 +259955,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L352", + "source_location": "L355", "weight": 0.8 }, { @@ -258375,7 +259967,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L295", + "source_location": "L298", "weight": 0.8 }, { @@ -258387,7 +259979,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L295", + "source_location": "L298", "weight": 0.8 }, { @@ -258411,7 +260003,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L261", + "source_location": "L274", "weight": 0.8 }, { @@ -258423,7 +260015,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L158", + "source_location": "L167", "weight": 0.8 }, { @@ -259830,6 +261422,18 @@ "source_location": "L40", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_library_set_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "set_group_label()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L21", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue69_plan_approach", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_mass", @@ -260737,7 +262341,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L76", + "source_location": "L90", "weight": 0.8 }, { @@ -260748,7 +262352,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L289", + "source_location": "L350", "weight": 0.8 }, { @@ -260847,7 +262451,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1427", + "source_location": "L1509", "weight": 0.8 }, { @@ -260869,7 +262473,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1670", + "source_location": "L1752", "weight": 0.8 }, { @@ -260880,7 +262484,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1851", + "source_location": "L1933", "weight": 0.8 }, { @@ -260891,7 +262495,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1860", + "source_location": "L1942", "weight": 0.8 }, { @@ -260924,7 +262528,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1362", + "source_location": "L1444", "weight": 0.8 }, { @@ -261034,7 +262638,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1719", + "source_location": "L1801", "weight": 0.8 }, { @@ -261045,7 +262649,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1756", + "source_location": "L1838", "weight": 0.8 }, { @@ -261056,7 +262660,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1705", + "source_location": "L1787", "weight": 0.8 }, { @@ -261067,7 +262671,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1746", + "source_location": "L1828", "weight": 0.8 }, { @@ -261078,7 +262682,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1621", + "source_location": "L1703", "weight": 0.8 }, { @@ -261125,6 +262729,39 @@ "source_location": "L670", "weight": 0.8 }, + { + "source": "tests_test_core_test_group_names_caption_ungrouped_legend", + "target": "src_cellpy_simple_gui_core_models_summaryplotspec", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "tests/test_core.py", + "source_location": "L1302", + "weight": 0.8 + }, + { + "source": "tests_test_core_test_group_names_caption_ungrouped_legend", + "target": "src_cellpy_simple_gui_core_models_cyclesplotspec", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "tests/test_core.py", + "source_location": "L1311", + "weight": 0.8 + }, + { + "source": "tests_test_core_test_group_names_reach_grouped_legend", + "target": "src_cellpy_simple_gui_core_models_summaryplotspec", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "tests/test_core.py", + "source_location": "L1285", + "weight": 0.8 + }, { "source": "tests_test_core_test_grouped_summary_renders", "target": "src_cellpy_simple_gui_core_library_library", @@ -261254,7 +262891,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1819", + "source_location": "L1901", "weight": 0.8 }, { @@ -261265,7 +262902,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1840", + "source_location": "L1922", "weight": 0.8 }, { @@ -261331,7 +262968,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1276", + "source_location": "L1358", "weight": 0.8 }, { @@ -261342,7 +262979,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1353", + "source_location": "L1435", "weight": 0.8 }, { @@ -261375,7 +263012,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1378", + "source_location": "L1460", "weight": 0.8 }, { @@ -261452,7 +263089,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1304", + "source_location": "L1386", "weight": 0.8 }, { @@ -261562,7 +263199,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1870", + "source_location": "L1952", "weight": 0.8 }, { @@ -261573,7 +263210,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1632", + "source_location": "L1714", "weight": 0.8 }, { @@ -261595,7 +263232,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L531", + "source_location": "L570", "weight": 0.8 }, { @@ -261606,7 +263243,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L548", + "source_location": "L587", "weight": 0.8 }, { @@ -261617,7 +263254,29 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L540", + "source_location": "L579", + "weight": 0.8 + }, + { + "source": "tests_test_projects_test_group_names_saved_and_restored", + "target": "src_cellpy_simple_gui_core_library_library", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "tests/test_projects.py", + "source_location": "L77", + "weight": 0.8 + }, + { + "source": "tests_test_projects_test_manifest_without_groups_still_opens", + "target": "src_cellpy_simple_gui_core_library_library", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "tests/test_projects.py", + "source_location": "L96", "weight": 0.8 }, { @@ -261628,7 +263287,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L251", + "source_location": "L290", "weight": 0.8 }, { @@ -261639,7 +263298,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L287", + "source_location": "L326", "weight": 0.8 }, { @@ -261650,7 +263309,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L234", + "source_location": "L273", "weight": 0.8 }, { @@ -261661,7 +263320,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L583", + "source_location": "L622", "weight": 0.8 }, { @@ -261672,7 +263331,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L562", + "source_location": "L601", "weight": 0.8 }, { @@ -261683,7 +263342,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L216", + "source_location": "L255", "weight": 0.8 }, { @@ -261694,7 +263353,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L204", + "source_location": "L243", "weight": 0.8 }, { @@ -261710,5 +263369,5 @@ } ], "hyperedges": [], - "built_at_commit": "6b32234ed5a43f741b96f8c16ca7ce8c7912a236" + "built_at_commit": "0a646c6653d570ed406d97f0d83490318b54d15c" } \ No newline at end of file diff --git a/graphify-out/2026-10-04/manifest.json b/graphify-out/2026-10-04/manifest.json index f1d6713..4c22147 100644 --- a/graphify-out/2026-10-04/manifest.json +++ b/graphify-out/2026-10-04/manifest.json @@ -96,9 +96,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/api/routers/cells.py": { - "mtime": 1791060643.0, - "seen": 1791065546.3203712, - "ast_hash": "5027fc25dc368704151d2c7575d580b0", + "mtime": 1791067027.7202623, + "seen": 1791067603.3824728, + "ast_hash": "5fafa262f14761ab4653320832ba5911", "semantic_hash": "" }, "src/cellpy_simple_gui/api/routers/export.py": { @@ -126,9 +126,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/api/routers/projects.py": { - "mtime": 1791060643.0, - "seen": 1791065546.3203743, - "ast_hash": "66130f8759561b0a57110bdff5f06503", + "mtime": 1791067130.419058, + "seen": 1791067603.3824768, + "ast_hash": "8b2bd339883bf7b6b8a6d38cdb1ed9a0", "semantic_hash": "" }, "src/cellpy_simple_gui/api/routers/remote.py": { @@ -162,9 +162,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/core/cellpy_adapter.py": { - "mtime": 1791060643.0, - "seen": 1791065546.3203778, - "ast_hash": "a8c3ea4b288db0b8a324a957a92a2ff8", + "mtime": 1791067118.4026072, + "seen": 1791067603.3824813, + "ast_hash": "f796b43e873eeb50ab87ee9281a09e45", "semantic_hash": "" }, "src/cellpy_simple_gui/core/cellpy_config.py": { @@ -174,9 +174,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/core/collect.py": { - "mtime": 1791065494.2869134, - "seen": 1791065546.320379, - "ast_hash": "aa1420c6365c4185df824020c9b21ff7", + "mtime": 1791067054.1237276, + "seen": 1791067603.3824835, + "ast_hash": "d26a3529653cfa7c7fdc3eec75663bb7", "semantic_hash": "" }, "src/cellpy_simple_gui/core/export.py": { @@ -192,15 +192,15 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/core/library.py": { - "mtime": 1791060643.0, - "seen": 1791065546.3203824, - "ast_hash": "527cbf6d9421c28d8de8469c768bb183", + "mtime": 1791067003.704743, + "seen": 1791067603.3824866, + "ast_hash": "126e1580fb3cf51f1eb5657b7612ad4c", "semantic_hash": "" }, "src/cellpy_simple_gui/core/models.py": { - "mtime": 1791060643.0, - "seen": 1791065546.3203833, - "ast_hash": "a078877b6262b317d7cf829a06ac326b", + "mtime": 1791067011.0565963, + "seen": 1791067603.3824873, + "ast_hash": "27342b210b04bc31025e19a3d0e7d6f7", "semantic_hash": "" }, "src/cellpy_simple_gui/core/paths.py": { @@ -210,15 +210,15 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/core/plotting.py": { - "mtime": 1791060643.0, - "seen": 1791065546.3203847, - "ast_hash": "056cb88a524fff4ed59395b1de327e25", + "mtime": 1791067067.8474472, + "seen": 1791067603.3824885, + "ast_hash": "1ef99d82e28a213f4174671025f82cb4", "semantic_hash": "" }, "src/cellpy_simple_gui/core/projects.py": { - "mtime": 1791060643.0, - "seen": 1791065546.3203855, - "ast_hash": "a827286e2276bb59b714df9bd6eb5b0d", + "mtime": 1791067088.2750273, + "seen": 1791067603.3824892, + "ast_hash": "1bfd2dccbe9d66b50da76769bf0331ec", "semantic_hash": "" }, "src/cellpy_simple_gui/core/uploads.py": { @@ -252,9 +252,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/web/static/js/app.js": { - "mtime": 1791065900.1998394, - "seen": 1791066515.7277255, - "ast_hash": "48753f2f7e2e5599600e4cfb4c2eb499", + "mtime": 1791067181.7008193, + "seen": 1791067603.3824933, + "ast_hash": "6e0198af9fb8fa6aa272500d18ab3900", "semantic_hash": "" }, "src/cellpy_simple_gui/web/static/js/plotly.min.js": { @@ -276,9 +276,9 @@ "semantic_hash": "" }, "tests/test_api.py": { - "mtime": 1791060643.0, - "seen": 1791065546.3203921, - "ast_hash": "637bc8b66260b0854da12cad414e4252", + "mtime": 1791067392.4257245, + "seen": 1791067603.3824964, + "ast_hash": "469aabca175a93e4deff955c30e0e8c4", "semantic_hash": "" }, "tests/test_api_reference.py": { @@ -288,9 +288,9 @@ "semantic_hash": "" }, "tests/test_core.py": { - "mtime": 1791065485.083216, - "seen": 1791065546.3203948, - "ast_hash": "f896b2e7e0c041ff978b3efaa5a6e9c6", + "mtime": 1791067286.00767, + "seen": 1791067603.3824987, + "ast_hash": "aecb520843fad7e9883d5c3587f328c0", "semantic_hash": "" }, "tests/test_files.py": { @@ -300,9 +300,9 @@ "semantic_hash": "" }, "tests/test_gui_playwright.py": { - "mtime": 1791065876.852518, - "seen": 1791066515.7277324, - "ast_hash": "569e797e4061aade92a02610d5deee85", + "mtime": 1791067431.8703003, + "seen": 1791067603.3825004, + "ast_hash": "3620a2d16ce9013acc6d8a0b5b42c106", "semantic_hash": "" }, "tests/test_guides.py": { @@ -324,9 +324,9 @@ "semantic_hash": "" }, "tests/test_journal.py": { - "mtime": 1791060643.0, - "seen": 1791065546.320399, - "ast_hash": "e5160d16ce8fd70aa69ed1f487e114de", + "mtime": 1791067322.4404616, + "seen": 1791067603.3825033, + "ast_hash": "075d95d6e668f1379d9b70f6c2d75c3c", "semantic_hash": "" }, "tests/test_loader_availability.py": { @@ -354,9 +354,9 @@ "semantic_hash": "" }, "tests/test_projects.py": { - "mtime": 1791060643.0, - "seen": 1791065546.3204024, - "ast_hash": "c7d0f1ad4cdfc7e7863a84ecec098f2a", + "mtime": 1791067298.2919476, + "seen": 1791067603.3825061, + "ast_hash": "243b2433f3efac69d3abdef2241826bb", "semantic_hash": "" }, "tests/test_remote_find.py": { @@ -1500,9 +1500,9 @@ "semantic_hash": "" }, "README.md": { - "mtime": 1791060643.0, - "seen": 1791065546.3205376, - "ast_hash": "fb543115c36360dde146ad28e19bcb32", + "mtime": 1791067459.4186492, + "seen": 1791067603.382656, + "ast_hash": "d0b2cbb677f065e8ad8121c3ddfae10b", "semantic_hash": "" }, "docker-compose.yml": { @@ -1512,8 +1512,8 @@ "semantic_hash": "" }, "docs/api-reference.md": { - "mtime": 1791060643.0, - "seen": 1791065546.320539, + "mtime": 1791067477.2788534, + "seen": 1791067603.3826575, "ast_hash": "16518720b423e9aabd7aa651b2a93ec9", "semantic_hash": "" }, @@ -1602,14 +1602,14 @@ "semantic_hash": "" }, "llms-full.txt": { - "mtime": 1791060643.0, - "seen": 1791065546.3205483, - "ast_hash": "bbbd18f020f16bb299a5162321fc056b", + "mtime": 1791067459.47065, + "seen": 1791067603.3826678, + "ast_hash": "c2ca45eded88691aeac927738cf3bbd6", "semantic_hash": "" }, "llms.txt": { - "mtime": 1791060643.0, - "seen": 1791065546.3205488, + "mtime": 1791067459.47065, + "seen": 1791067603.3826685, "ast_hash": "52a82eefd8a8c310c58974d746398432", "semantic_hash": "" }, @@ -1632,15 +1632,15 @@ "semantic_hash": "" }, "skills/cellpy-app/reference/api-reference.md": { - "mtime": 1791060643.0, - "seen": 1791065546.3205514, + "mtime": 1791067525.615324, + "seen": 1791067603.3826714, "ast_hash": "16518720b423e9aabd7aa651b2a93ec9", "semantic_hash": "" }, "src/cellpy_simple_gui/web/templates/index.html": { - "mtime": 1791065834.841673, - "seen": 1791066515.7279058, - "ast_hash": "a66e02dd9d8f9b9da94cba63dba30c37", + "mtime": 1791067237.5184584, + "seen": 1791067603.382672, + "ast_hash": "c0e03f29bf1e4778e6b3417f9482835a", "semantic_hash": "" }, "assets/cellpy-icon-bw.png": { @@ -1901,24 +1901,6 @@ "ast_hash": "16076aed0e04c9a86040b080b48cd143", "semantic_hash": "" }, - ".issueflows/01-current-issues/issue184_original.md": { - "mtime": 1791065746.0076878, - "seen": 1791066515.7277706, - "ast_hash": "b483ff80c288e8696ed39f372e43454f", - "semantic_hash": "" - }, - ".issueflows/01-current-issues/issue184_plan.md": { - "mtime": 1791065763.8073456, - "seen": 1791066515.7277718, - "ast_hash": "00553469235a2b17de1193b31e754d47", - "semantic_hash": "" - }, - ".issueflows/01-current-issues/issue184_status.md": { - "mtime": 1791066454.5959675, - "seen": 1791066515.7277725, - "ast_hash": "c9c175bb780e1fc771c14bd59d3d98fc", - "semantic_hash": "" - }, ".issueflows/03-solved-issues/issue186_original.md": { "mtime": 1791065421.3608186, "seen": 1791066515.7278008, @@ -1936,5 +1918,35 @@ "seen": 1791066515.727802, "ast_hash": "09a2311e0ce760529092e6197de9bb53", "semantic_hash": "" + }, + ".issueflows/01-current-issues/issue187_original.md": { + "mtime": 1791066940.625975, + "seen": 1791067603.382538, + "ast_hash": "b214727ef412e929b81260fad5f693cd", + "semantic_hash": "" + }, + ".issueflows/01-current-issues/issue187_plan.md": { + "mtime": 1791066958.1776369, + "seen": 1791067603.382539, + "ast_hash": "aec42c42ccbef6da62773e07290f0666", + "semantic_hash": "" + }, + ".issueflows/03-solved-issues/issue184_original.md": { + "mtime": 1791065746.0076878, + "seen": 1791067603.3825667, + "ast_hash": "b483ff80c288e8696ed39f372e43454f", + "semantic_hash": "" + }, + ".issueflows/03-solved-issues/issue184_plan.md": { + "mtime": 1791065763.8073456, + "seen": 1791067603.3825674, + "ast_hash": "00553469235a2b17de1193b31e754d47", + "semantic_hash": "" + }, + ".issueflows/03-solved-issues/issue184_status.md": { + "mtime": 1791066454.5959675, + "seen": 1791067603.382568, + "ast_hash": "c9c175bb780e1fc771c14bd59d3d98fc", + "semantic_hash": "" } } \ No newline at end of file diff --git a/graphify-out/GRAPH_REPORT.md b/graphify-out/GRAPH_REPORT.md index 78ca4a1..e3ada75 100644 --- a/graphify-out/GRAPH_REPORT.md +++ b/graphify-out/GRAPH_REPORT.md @@ -1,145 +1,134 @@ # Graph Report - workspace (2026-10-04) ## Corpus Check -- 291 files · ~392,181 words +- 294 files · ~394,929 words - Verdict: corpus is large enough that graph structure adds value. - Unclassified: 22 file(s) not represented in the graph (top: (none) 13, .mdc 2, .toml 1) ## Summary -- 5935 nodes · 16347 edges · 286 communities (205 shown, 81 thin omitted) -- Extraction: 81% EXTRACTED · 19% INFERRED · 0% AMBIGUOUS · INFERRED: 3172 edges (avg confidence: 0.88) +- 5988 nodes · 16466 edges · 265 communities (194 shown, 71 thin omitted) +- Extraction: 80% EXTRACTED · 20% INFERRED · 0% AMBIGUOUS · INFERRED: 3213 edges (avg confidence: 0.88) - Token cost: 0 input · 0 output ## Graph Freshness -- Built from commit: `0a646c66` +- Built from commit: `e63144ab` - Run `git rev-parse HEAD` and compare to check if the graph is stale. - Run `graphify update .` after code changes (no API cost). ## Community Hubs (Navigation) -- get_library -- a +- cells.py +- CellProcessor 2.0 — design guide (for agents) - ni - collect.py - ss - i -- N +- .get - test_compare.py - $ -- SummaryPlotSpec -- select_ica_direction +- summary_figure +- a - vn - test_api.py - wo -- Uc +- oa - e -- get_settings +- get_library - cellpy_adapter.py -- g +- constructor - issue-flow — issue comments triage -- pi +- Settings - na -- .get +- ve - test_projects.py -- oa +- instrument_meta_schema - eu -- .push +- E - issue-flow — issue plan (`/iflow-plan`) - core/uploads.py -- xi +- Plan — Issue #62: Group vs individual Plotly legend muting - core/export.py - issue-flow — issue close (`/iflow-close`) - gh -- .emplaceBack +- Ku - .createVertexBuffer - cellpy_config.py - test_paths.py - .resume -- test_summary_figure_y_ranges_apply_with_group_avg_and_spread -- figure_json +- Plan — Issue #169: Compare selected cells +- test_journal.py - Dt - Plan — Issue #168: Create installer using CI - Instructions - issue-flow — history update - Job - resize -- ho +- o - cellpy pain-points & wishlist (from building cellpy-simple-gui) -- mcp/server.py -- hi +- config.py +- ii - Instructions - .reset -- CyclesPlotSpec +- plots.py - issue-flow — create a normal issue (`/iflow-issue`) - issue-flow — version bump -- ca -- .evaluate -- I -- .renderLayer +- .cancel +- kn +- r +- vr - collect -- .parse -- conftest.py -- xr +- .push +- Library +- load_raw - ti -- .draw - core/projects.py -- .constructor -- system.py -- fo +- Original issue text +- pick - IcaPlotSpec - Issue #73: Job progress pane: Cancel/Dismiss overlap long status text - app_main_module -- de - Issue #58 plan: plot side pane + top bar blend - Issue #5 plan - test_packaging.py - ah -- _default_visible_hints -- Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import) -- .cancel -- essential +- da +- Tn +- de +- CyclesPlotSpec - issue-flow — epic planning (`/iflow-epic`) - issue-flow — review and label issues (`/iflow-review`) - expand_paths - cellpy API surface -- Issue #48 — create gui tests (plan) - issue-flow — issue yolo (`/iflow-yolo`) -- Library +- Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import) +- Plan — Issue #3: Manage cells in an expanded editor - .render -- Hl -- Original issue text +- test_uploads.py - Issue #60 status - Be token greedy - as a caveman -- ii +- Si - alpine.min.js - .status - An MCP server for cellpy — design, and what a prototype found - issue-flow — issue build (`/iflow-build`) - Issue #67: Cell explorer dQ/dV: Charge/Discharge direction has no effect (and joins half-cycles) -- Do +- fo - test_gui_playwright.py -- _tidy_facet_annotations +- select_ica_direction - test_core.py - .destroy -- RawPlotSpec -- rh +- _clean_axis_range - CellRecord -- dh +- ho - Issue #36: Chart card stays white under dark figure theme; default figure theme to Match app -- ri - Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet -- .add +- .remove - Issue #3: Make the Cells list workable for many cells (modal or expanded editor) -- test_mcp_prototype.py -- gen_llms_txt.py - Issue #4: Replace deprecated pywebview OPEN_DIALOG with FileDialog.OPEN -- _without_webview +- The Windows installer - Original issue text -- Mn -- Plan — #184 update plots when the Manage cells modal closes - Issue #5: Add cellpy logo and app icon - Issue #73 status - Essential tests (pytest) -- Original issue text - issue-flow — archive solved issues (`/iflow-archive`) - issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`) - issue-flow — issue pause (`/iflow-pause`) @@ -148,7 +137,6 @@ - wn - Deploying cellpy simple GUI as a server - Issue #48: create gui tests -- .populate - Plan: Issue #13 — add workflows - Ei - Issue #55: need to add collector plot for cycles @@ -163,35 +151,31 @@ - test_loader_availability.py - Issue #56: add single cell dqdv plot - issue-flow — graph rebuild (`/iflow-graphify`) -- bn +- di - Issue #63: Iterative fixes: plot bottom clipping - Issue #27: Iterative fixes: group average checkbox - Issue #31: Iterative fixes: export download location - Issue #63 status -- The prompts - `00-tools/` — shared helper tools - playwright-gui-tests.md - Cycle status -- _client_config_path - Issue #15: update readme - mt - oi - Development information - gen_api_reference.py - Status — Issue #3: Manage cells expanded editor -- gh-ci — wait on GitHub CI with `gh` +- summary_columns_for - Issue #47 — Status - entry.py - Issue #50 — Status -- Client -- se +- Issue #32: Plot appearance options: color scheme and figure theme - Issue #58 status - Issue #5 status - 6. Process state and threading - Plan — Issue #73: Job progress Cancel/Dismiss overlap - Journal load diagnostics & desktop exit - Issue #12: add logging -- te - Issue #13: add workflows - Status: Issue #13 — add workflows - Issue #14: make saving and closing more obvious @@ -202,12 +186,11 @@ - Issue #18: improve manage cells modal - Status: Issue #18 — improve manage cells modal - Issue #19: stale loading of cellpy batch journal -- pl +- Ic - issue-flow — issue cleanup (`/iflow-cleanup`) - Issue #28: add ability to export cellpy cell -- test_index_click_and_show_targets_exist - Status — Issue #36 -- 5. Configuration +- cellpy API surface - Status — Issue #39 - Issue #47: Iterative fixes: share-y-scale - Issue #50: Iterative fixes: journal-load-logging @@ -215,82 +198,75 @@ - branding-assets.md - ur - cellpy-simple-gui -- _load_entry - m -- steps +- test_mcp_prototype.py - README.md - Kt - gr -- Issue #31 status — Iterative fixes: export download location - ft - k - zip_installer.py -- drive -- test_smoke_test_skips_only_a_missing_reader +- Plan — #184 update plots when the Manage cells modal closes - Instructions -- Next phase — deployment routes and app-builder documentation +- starter/app.py - Continuous Windows installer from `main` - Issue #168: Create installer using CI - Pt - U - _restyle -- CellProcessor 2.0 — design guide (for agents) -- .fire +- cellpy-simple-gui - Plan — Issue #177: GUI color scheme and layout - Issue #72: Cycles tab: Mode change does not update x-axis capacity units -- Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute) -- LaunchedApp +- apply_physical_meta - issue-flow — harness init (`/iflow-init`) - Releasing - bt - Guides: what belongs upstream in cellpy - describe_api - Ki -- test_startup_survives_an_unreadable_cellpy_config - 1. Getting cells into memory - get -- issue184_original.md -- Issue #54 status -- Ic +- save_cell +- xr +- .evaluate - Issue #55 — Status - Issue #72 status - En - Issue #169: Compare selected cells +- _load_entry - Zi - issue-flow — PR queue sync (`/iflow-pr-sync`) - 4. Exporting data and figures -- Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5` - Issue #81: Keep CE summary panel order consistent (prefer CE on top) -- Xe -- test_a_default_direction_plot_says_it_drew_less +- Plan: Issue #19 — journal load error surfacing - _t -- test_writes_are_sandboxed_too -- test_unknown_handles_and_kinds_are_told_what_to_do -- test_describe_api_follows_the_reference_the_docstring_points_at - issue-flow — ops / no-PR (`/iflow-ops`) -- th - 2. Cells into a Collection - 7. What cellpy will and will not do for you +- Status — Issue #169: Compare selected cells - Issue #173 status -- test_describe_api_renders_a_method_the_way_you_would_call_it - Issue #173: Create also a zip file with the installer during release. - Issue #175: missing or bad cycles not reported -- p +- N - Issue #177: gui color scheme and layout -- test_search_api_points_at_the_module_that_defines_the_call - test_stderr_usable_rejects_a_broken_handle +- test_smoke_test_skips_only_a_missing_reader - test_ingest.py - qn - issue186_original.md +- Any - Xt +- test_startup_survives_an_unreadable_cellpy_config +- issue187_original.md - Building on cellpy - Issue #69: edit meta data - ge - Issue #86 — Status -- ht +- issue184_original.md +- .fire - Issue #160: Add option to use OtherPath for loading files from remote directory - wi -- test_starter.py +- mcp/server.py - jh - docker-entrypoint.sh - xt @@ -312,25 +288,25 @@ .issueflows/03-solved-issues/issue54_status.md → examples/mcp/server.py - `Spec` --references--> `collect()` [INFERRED] .issueflows/03-solved-issues/issue72_original.md → examples/mcp/server.py +- `Resolved in 2.1.2a3` --references--> `instruments()` [INFERRED] + .issueflows/04-designs-and-guides/cellpy-delegation-inventory.md → examples/starter/app.py - `Configuration and threads` --references--> `instruments()` [INFERRED] skills/cellpy-app/SKILL.md → examples/starter/app.py -- `Raw data views (developer mode)` --references--> `raw_plot()` [INFERRED] - .issueflows/04-designs-and-guides/cellpy-delegation-inventory.md → src/cellpy_simple_gui/api/routers/plots.py -- `Strong — general cellpy knowledge, no app in it` --references--> `cycle_info_plot()` [INFERRED] - .issueflows/04-designs-and-guides/guides-upstream-candidates.md → src/cellpy_simple_gui/api/routers/plots.py +- `Milestone 2 — Two ways to run it` --references--> `export()` [INFERRED] + .issueflows/05-epics/next-phase-deployment-and-docs.md → examples/starter/app.py ## Import Cycles - None detected. -## Communities (286 total, 81 thin omitted) +## Communities (265 total, 71 thin omitted) -### Community 0 - "get_library" -Cohesion: 0.04 -Nodes (48): Decision, guard_path(), Cancelled, get_job_manager(), Progress, clear(), delete_cell(), get_state() (+40 more) +### Community 0 - "cells.py" +Cohesion: 0.03 +Nodes (48): Decision, guard_path(), Cancelled, get_job_manager(), Progress, get_state(), list_examples(), load_example() (+40 more) -### Community 1 - "a" -Cohesion: 0.07 -Nodes (88): Be(), g(), h(), Dc(), E(), a(), o(), s() (+80 more) +### Community 1 - "CellProcessor 2.0 — design guide (for agents)" +Cohesion: 0.17 +Nodes (12): 10. Risks & open questions, 11. Sibling repos (context only), 1. Goals & locked decisions, 3. Technology choices (design vs MVP), 4. Package layout, 5. Core layer rules, 7. Frontend pages (parity map), 8. Packaging, native deps & updates (still open) (+4 more) ### Community 2 - "ni" Cohesion: 0.08 @@ -338,19 +314,19 @@ Nodes (3): Hi(), gi(), ni() ### Community 3 - "collect.py" Cohesion: 0.04 -Nodes (41): What to add next, and where to look, 1. Spec — `core/models.py`, 5. UI — `web/templates/index.html`, `web/static/js/app.js`, `app.css`, 6. Docs, Approach, Constraints, Goal, Open questions (+33 more) +Nodes (47): Comparing picked cycles across cells, Say when a cycle is not there, Prior art, What exists today, and the gap, Approach, Files to touch, Goal, Plan — #186 y ranges ignored with Group avg + Spread (+39 more) ### Community 4 - "ss" Cohesion: 0.06 -Nodes (31): al(), As(), bs(), cl(), cs(), ds(), el(), Es() (+23 more) +Nodes (30): As(), bs(), cl(), cs(), ds(), el(), Es(), fs() (+22 more) ### Community 5 - "i" -Cohesion: 0.03 -Nodes (88): ae(), an(), ar(), e(), c(), Br(), r(), ce() (+80 more) +Cohesion: 0.04 +Nodes (142): ae(), ar(), e(), c(), Be(), Br(), r(), g() (+134 more) -### Community 6 - "N" -Cohesion: 0.07 -Nodes (13): N(), h(), M(), e(), n(), Un(), ve(), h() (+5 more) +### Community 6 - ".get" +Cohesion: 0.05 +Nodes (23): an(), bn(), cn(), Dn(), fn(), getPaintProperty(), gn(), hn() (+15 more) ### Community 7 - "test_compare.py" Cohesion: 0.06 @@ -358,67 +334,71 @@ Nodes (36): _ids(), picks(), _spec(), test_api_compare_differentials(), test_api ### Community 8 - "$" Cohesion: 0.02 -Nodes (78): $, addControl(), addImage(), addLayer(), addSprite(), bh(), clearMetrics(), completeTask() (+70 more) +Nodes (74): $, addControl(), addImage(), addLayer(), addSprite(), ch(), clearMetrics(), _createDelegatedListener() (+66 more) -### Community 9 - "SummaryPlotSpec" -Cohesion: 0.03 -Nodes (74): Issue #27 status — Iterative fixes: group average checkbox, Iterative fixes log, Acceptance criteria, Issue #2: Allow independent y-limits on multi-panel summary plots, Original issue text, Out of scope, Problem / context, Spec (+66 more) +### Community 9 - "summary_figure" +Cohesion: 0.05 +Nodes (39): Approach, Approach, Constraints, Files to touch, Goal, Issue #2 plan: Independent y-limits on multi-panel summary plots, Open questions, Prior art (+31 more) -### Community 10 - "select_ica_direction" -Cohesion: 0.10 -Nodes (19): 16. 🟢 ICA plotter direction gaps (line plots + `both`), Prior art, cellpy delegation inventory (issue #52), Cycles pane curve kinds (#95), Incremental analysis (ICA / DVA), Raw data views (developer mode), Release-gating note (resolved for #816/#818/#819), Removed in the 2.1.2a2 cleanup (+11 more) +### Community 10 - "a" +Cohesion: 0.12 +Nodes (5): a(), c(), o(), r(), s() ### Community 12 - "test_api.py" -Cohesion: 0.07 -Nodes (15): _dva_spec(), test_dva_endpoints_need_no_dev_mode(), test_dva_missing_cell_is_404_not_403(), test_export_cells_cellpy(), test_files_preview_honours_served_sandbox(), test_files_preview_literal_missing_and_glob(), test_job_cancel_running_load(), test_local_instance_keeps_its_freedom() (+7 more) +Cohesion: 0.03 +Nodes (41): Issue #31 status — Iterative fixes: export download location, Iterative fixes log, Constraints, Prior art, _add_cells_modal_html(), _component_names(), _default_visible_hints(), __init__() (+33 more) ### Community 13 - "wo" -Cohesion: 0.06 -Nodes (14): Ao(), bo(), Co(), Eo(), jo(), ko(), Lo(), Mo() (+6 more) +Cohesion: 0.07 +Nodes (11): Ao(), bo(), Co(), Eo(), feature(), ko(), Lo(), Mo() (+3 more) -### Community 14 - "Uc" -Cohesion: 0.12 -Nodes (3): hc(), Uc(), zu +### Community 14 - "oa" +Cohesion: 0.04 +Nodes (7): Bu(), hc(), nu(), oa(), Uc(), Yl(), zu ### Community 15 - "e" -Cohesion: 0.05 -Nodes (50): c(), d(), E(), f(), o(), p(), r(), S() (+42 more) - -### Community 16 - "get_settings" Cohesion: 0.04 -Nodes (29): create_app(), require_token(), plot_types(), get_settings(), client(), served_client(), test_job_timings_reported(), test_log_viewer_captures_stdlib_records() (+21 more) +Nodes (68): u(), c(), d(), E(), f(), h(), o(), p() (+60 more) + +### Community 16 - "get_library" +Cohesion: 0.05 +Nodes (35): create_app(), require_token(), clear(), delete_cell(), rename_group(), select_all(), _state(), update_cell() (+27 more) ### Community 17 - "cellpy_adapter.py" -Cohesion: 0.02 -Nodes (72): add_cells(), clear_cells(), load_example(), load_file(), _remember(), Files to touch, Approach, Goal (+64 more) +Cohesion: 0.05 +Nodes (31): 5. 🟠 Instrument discovery logs a WARNING per non-loader module, Approach, Constraints, Files to touch, Goal, Issue #162 — Plan: remote file find via `cellpy.filefinder` (OtherPath phase 2), Open questions, Prior art (+23 more) -### Community 18 - "g" -Cohesion: 0.07 -Nodes (16): a(), c(), l(), f(), u(), o(), r(), s() (+8 more) +### Community 18 - "constructor" +Cohesion: 0.09 +Nodes (17): completeTask(), constructor(), _createButton(), _createCanvas(), finish(), g(), isMoving(), isRotating() (+9 more) ### Community 19 - "issue-flow — issue comments triage" Cohesion: 0.14 Nodes (12): Constraints, Instructions, issue-flow — issue capture (`/iflow-capture`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), Constraints, Edge cases, Inputs (+4 more) -### Community 22 - ".get" +### Community 20 - "Settings" +Cohesion: 0.09 +Nodes (13): Decisions taken up front, Issues, Milestone 1 — Headless-ready, Milestone 2 — Two ways to run it, Milestone 3 — Build your own cellpy app, Next phase — deployment routes and app-builder documentation, Risks, Sequencing (+5 more) + +### Community 22 - "ve" Cohesion: 0.15 -Nodes (3): stream(), wt(), u() +Nodes (3): ve(), ye(), u() ### Community 23 - "test_projects.py" -Cohesion: 0.04 -Nodes (28): Settings, _counting_save_cell(), _make_project_dir(), test_api_save_and_open(), test_broken_project_config_does_not_block_open(), test_data_dir_defaults_to_home(), test_data_dir_expands_user_and_relative(), test_data_dir_follows_the_env() (+20 more) - -### Community 24 - "oa" -Cohesion: 0.08 -Nodes (3): Bu(), nu(), oa() +Cohesion: 0.05 +Nodes (25): _counting_save_cell(), _make_project_dir(), test_broken_project_config_does_not_block_open(), test_data_dir_defaults_to_home(), test_diagnostics_reports_project_as_source(), test_discovery_reports_shadowed_legacy(), test_failed_resave_keeps_previous_project(), test_group_names_saved_and_restored() (+17 more) -### Community 25 - "eu" +### Community 24 - "instrument_meta_schema" Cohesion: 0.12 -Nodes (3): eu(), qc(), tu +Nodes (16): Approach, Constraints, Files to touch, Goal, Issue #52 — Plan: bump cellpy post4 + delegate app glue, Open questions, Phase A — bump + smoke, Phase C — implement “delegate now” (+8 more) -### Community 26 - ".push" +### Community 25 - "eu" Cohesion: 0.06 -Nodes (17): a(), b(), getFeatureState(), u(), e(), T(), m(), c() (+9 more) +Nodes (13): au(), bh(), bl(), cu(), dh(), du(), eu(), kh (+5 more) + +### Community 26 - "E" +Cohesion: 0.09 +Nodes (7): a(), E(), a(), kr(), loadGeometry(), c(), S() ### Community 27 - "issue-flow — issue plan (`/iflow-plan`)" Cohesion: 0.15 @@ -428,25 +408,29 @@ Nodes (11): Activation, Boundaries, Grill me — relentless planning interview, Cohesion: 0.10 Nodes (12): clear_uploads(), list_uploads(), upload(), clear(), max_upload_bytes(), safe_name(), save(), Saved (+4 more) +### Community 29 - "Plan — Issue #62: Group vs individual Plotly legend muting" +Cohesion: 0.13 +Nodes (12): Approach, Files to touch, Goal, Open questions, Plan — Issue #62: Group vs individual Plotly legend muting, Test strategy, Group average + static figure export, Group average with mixed group sizes (+4 more) + ### Community 30 - "core/export.py" -Cohesion: 0.06 -Nodes (35): 4. API — `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`, 2026-10-02 — built, 2026-10-02 — picked, captured, planned, Remaining, Status — Issue #169: Compare selected cells, 4. UI (`app.js`, `index.html`, `app.css`), _check_data_fmt(), _check_figure_fmt() (+27 more) +Cohesion: 0.07 +Nodes (27): _check_data_fmt(), _check_figure_fmt(), _cycles_records(), export_cells(), export_compare(), export_cycles(), export_dva(), export_ica() (+19 more) ### Community 31 - "issue-flow — issue close (`/iflow-close`)" Cohesion: 0.15 Nodes (12): Branch switch tokens (command input), Changelog update tokens (command input), Constraints, Draft PR token (command input), Hands-off token (command input), Instructions, issue-flow — issue close (`/iflow-close`), MODEL & EXECUTION DIRECTIVE (+4 more) ### Community 32 - "gh" -Cohesion: 0.07 -Nodes (36): Constraints, Input, Instructions, issue-flow — guided project setup (`/iflow-setup`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), Constraints, Instructions (+28 more) +Cohesion: 0.06 +Nodes (41): Fallback (workflow runs), gh-ci — wait on GitHub CI with `gh`, Primary (PR-attached checks), Semantics, Where this fits, Constraints, Input, Instructions (+33 more) -### Community 33 - ".emplaceBack" -Cohesion: 0.13 -Nodes (7): au(), bl(), cu(), lu(), ou(), su(), uu() +### Community 33 - "Ku" +Cohesion: 0.15 +Nodes (3): eh(), Ku(), Qu() ### Community 35 - "cellpy_config.py" -Cohesion: 0.07 -Nodes (28): Configuration, Never write the user's config file, instruments(), Configuration (`cellpy.config`, new in 2.1.2), Resolved in 2.1.2a3, Find files in a remote folder, Moving the data directory, Per-project cellpy settings (+20 more) +Cohesion: 0.10 +Nodes (19): Configuration (`cellpy.config`, new in 2.1.2), Resolved in 2.1.2a3, activate_project_config(), active_project_config(), _config_dump(), _deactivate_locked(), deactivate_project_config(), diagnostics() (+11 more) ### Community 36 - "test_paths.py" Cohesion: 0.06 @@ -456,13 +440,17 @@ Nodes (7): local(), served(), test_another_volume_is_refused_without_touching_th Cohesion: 0.18 Nodes (10): All yolo issues + merge conflicts, Constraints, Input — queue spec, Instructions, issue-flow — issue cycle (`/iflow-cycle`), MODEL & EXECUTION DIRECTIVE, Parallel dispatch (experimental, opt-in), Resolve project root (multi-root workspaces) (+2 more) -### Community 38 - "test_summary_figure_y_ranges_apply_with_group_avg_and_spread" -Cohesion: 0.20 -Nodes (7): Remaining work, Status — #186 y ranges ignored with Group avg + Spread, What's done, _spread_library(), test_summary_figure_y_ranges_apply_with_group_avg_and_spread(), test_summary_figure_y_ranges_one_sided_with_spread(), _yaxis_for_title_text() +### Community 38 - "Plan — Issue #169: Compare selected cells" +Cohesion: 0.15 +Nodes (12): 1. Spec — `core/models.py`, 5. UI — `web/templates/index.html`, `web/static/js/app.js`, `app.css`, 6. Docs, Approach, Goal, Open questions, Plan — Issue #169: Compare selected cells, Test strategy (+4 more) -### Community 39 - "figure_json" -Cohesion: 0.05 -Nodes (37): Approach, Files to touch, Goal, Plan — #186 y ranges ignored with Group avg + Spread, Root cause (reproduced with two demo cells in one group), Test strategy, Acceptance criteria, Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet (+29 more) +### Community 39 - "test_journal.py" +Cohesion: 0.21 +Nodes (5): _build_journal(), test_load_journal_cells(), test_load_journal_missing_files_returns_empty(), test_load_journal_reads_group_labels(), test_load_journal_without_group_labels() + +### Community 40 - "Dt" +Cohesion: 0.06 +Nodes (3): Dt(), r(), ht() ### Community 41 - "Plan — Issue #168: Create installer using CI" Cohesion: 0.14 @@ -477,36 +465,36 @@ Cohesion: 0.18 Nodes (10): A. No version bump — append to `[Unreleased]`, B. Version bump happened — promote `[Unreleased]` to a new release section, Conflict resolution — keep both bullet sets, Constraints, Inputs from `/iflow-close`, issue-flow — history update, MODEL & EXECUTION DIRECTIVE, Operation modes (+2 more) ### Community 44 - "Job" -Cohesion: 0.09 -Nodes (6): Stack / runtime, _DaemonPool, Job, _job_result_errors(), _job_result_summary(), JobManager +Cohesion: 0.11 +Nodes (5): Stack / runtime, Job, _job_result_errors(), _job_result_summary(), JobManager -### Community 46 - "ho" -Cohesion: 0.09 -Nodes (5): Ga(), ho(), ja, Wa(), Za() +### Community 45 - "resize" +Cohesion: 0.03 +Nodes (22): ca(), _containerDimensions(), ea(), fa, _getClampedPixelRatio(), getPixelRatio(), ia(), ka (+14 more) ### Community 47 - "cellpy pain-points & wishlist (from building cellpy-simple-gui)" Cohesion: 0.06 -Nodes (34): 10. 🟢 No per-instrument metadata schema, 11. 🟢 Collected figures aren't app-friendly by default, 12. 🟢 Per-panel y-limits on collected summary facets, 12b. 🟠 `spread_plot` ignores `share_y` / `match_axes`, 13. 🟠 No app-friendly static figure export on the collect path, 14. 🟠 `.h5` auto-picks cellpy format over raw instrument loaders, 15. 🟢 Cycles collector facet strips still use raw `cycle_num=` / `cell=`, 17. 🟢 Cycles plotter ignores collect `mode` for `x_unit` (+26 more) +Nodes (32): 10. 🟢 No per-instrument metadata schema, 11. 🟢 Collected figures aren't app-friendly by default, 12. 🟢 Per-panel y-limits on collected summary facets, 12b. 🟠 `spread_plot` ignores `share_y` / `match_axes`, 13. 🟠 No app-friendly static figure export on the collect path, 15. 🟢 Cycles collector facet strips still use raw `cycle_num=` / `cell=`, 17. 🟢 Cycles plotter ignores collect `mode` for `x_unit`, 18. 🟢 Summary default y-labels omit units (CE / C-rate unit hooks) (+24 more) -### Community 48 - "mcp/server.py" +### Community 48 - "config.py" Cohesion: 0.04 -Nodes (30): Approach, Files to touch, Goal, Plan: Issue #12 — add logging, Test strategy, Done, Status: Issue #12 — add logging, Approach (+22 more) +Nodes (32): Approach, Files to touch, Goal, Plan: Issue #12 — add logging, Test strategy, Done, Status: Issue #12 — add logging, Approach (+24 more) -### Community 49 - "hi" -Cohesion: 0.09 -Nodes (8): Vi(), g(), hi(), r(), isRotating(), redraw(), _render(), c() +### Community 49 - "ii" +Cohesion: 0.04 +Nodes (13): Vi(), Ai(), ci(), i(), n(), hi(), r(), ii() (+5 more) ### Community 50 - "Instructions" Cohesion: 0.20 Nodes (9): Constraints, Input, Instructions, issue-flow — pick next issue (`/iflow-pick`), MODEL & EXECUTION DIRECTIVE, Phase 1 — choose the issue, Phase 2 — create the branch, Phase 3 — hand off (+1 more) ### Community 51 - ".reset" -Cohesion: 0.06 -Nodes (4): gn(), vi(), xn(), s() +Cohesion: 0.04 +Nodes (5): ji(), vi(), xi(), xn(), s() -### Community 52 - "CyclesPlotSpec" -Cohesion: 0.07 -Nodes (36): 25. 🟠 `dva_plot(direction="both")` drew both half-cycles identically, 26. 🟠 No `collect_dva`, 27. 🟠 `raw_plot` has no way to limit points *(fixed in 2.1.2)*, 28. 🔴 Seven registered families cannot be collected at all *(fixed in 2.1.2)*, 29. 🟠 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*, 30. 🟠 `spread_plot` traces carry no hover at all *(open)*, Round 4 — DVA and raw data, 3. Plotting a collection (+28 more) +### Community 52 - "plots.py" +Cohesion: 0.06 +Nodes (38): 25. 🟠 `dva_plot(direction="both")` drew both half-cycles identically, 26. 🟠 No `collect_dva`, 27. 🟠 `raw_plot` has no way to limit points *(fixed in 2.1.2)*, 28. 🔴 Seven registered families cannot be collected at all *(fixed in 2.1.2)*, 30. 🟠 `spread_plot` traces carry no hover at all *(open)*, Round 4 — DVA and raw data, 3. Plotting a collection, Asked-for columns are not drawn columns (+30 more) ### Community 53 - "issue-flow — create a normal issue (`/iflow-issue`)" Cohesion: 0.22 @@ -516,53 +504,45 @@ Nodes (8): Constraints, Input, Instructions, issue-flow — create a normal issu Cohesion: 0.12 Nodes (15): Bump levels (both strategies), Choosing the level, Constraints, issue-flow — version bump, MODEL & EXECUTION DIRECTIVE, Resolve the release strategy first, Strategy: git-tag derived, Strategy: static version (uv) (+7 more) -### Community 55 - "ca" -Cohesion: 0.03 -Nodes (13): aa(), ca(), da(), fa, ha(), ka, la(), ma (+5 more) - -### Community 56 - ".evaluate" -Cohesion: 0.06 -Nodes (9): ea(), Fl(), hu(), ia(), no(), paint(), pu(), Ra() (+1 more) - -### Community 57 - "I" -Cohesion: 0.06 -Nodes (15): Dn(), a(), hn(), I(), r(), In(), jt(), a() (+7 more) +### Community 55 - ".cancel" +Cohesion: 0.22 +Nodes (8): Command lifecycle, Constraints, Input, Instructions, issue-flow — drive (`/iflow-drive`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), 16. `/iflow-drive` — compose epic → publish → auto-all -### Community 58 - ".renderLayer" +### Community 57 - "r" Cohesion: 0.15 -Nodes (4): getPaintProperty(), on(), Tn(), yr() +Nodes (3): r(), i(), n() ### Community 59 - "collect" Cohesion: 0.08 -Nodes (27): cellpy MCP server (prototype), Four things it does on purpose, Limits worth knowing before you rely on it, Run it, The tools, _cell(), collect(), _collection() (+19 more) - -### Community 60 - ".parse" -Cohesion: 0.22 -Nodes (5): dt(), r(), ct(), ht(), ut() +Nodes (24): Grouping and averaging, Four things it does on purpose, The tools, _cell(), collect(), _collection(), describe_plot_families(), export_collection() (+16 more) -### Community 61 - "conftest.py" -Cohesion: 0.28 -Nodes (5): Test strategy, Test strategy, Test strategy, example_cell(), loaded_library() +### Community 60 - ".push" +Cohesion: 0.05 +Nodes (37): dt(), at(), ct(), Et(), f(), Dt(), g(), Rt() (+29 more) -### Community 62 - "xr" -Cohesion: 0.12 -Nodes (4): jr(), Wr(), xr(), zr() +### Community 62 - "load_raw" +Cohesion: 0.05 +Nodes (36): 14. 🟠 `.h5` auto-picks cellpy format over raw instrument loaders, Approach, Explicitly deferred (later than phase 2), Files to touch, Goal, Issue #160 — Plan: OtherPath remote loading, Open questions, Ordering (+28 more) ### Community 63 - "ti" -Cohesion: 0.17 -Nodes (5): mr(), ti(), a(), i(), o() +Cohesion: 0.09 +Nodes (7): mr(), ri(), a(), ti(), a(), i(), o() ### Community 65 - "core/projects.py" Cohesion: 0.06 -Nodes (38): Acceptance criteria, Issue #75: Refresh project list and open portable projects from the import path, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+30 more) +Nodes (41): Acceptance criteria, Issue #75: Refresh project list and open portable projects from the import path, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+33 more) -### Community 67 - "system.py" -Cohesion: 0.07 -Nodes (23): Approach, Constraints, Files to touch, Goal, Issue #4 plan, Open questions, Prior art, Test strategy (+15 more) +### Community 66 - "Original issue text" +Cohesion: 0.29 +Nodes (6): Acceptance criteria, Comments (curated summary), Issue #62: Add checkbox for group vs individual Plotly legend muting on summary plots, Original issue text, Out of scope, Problem / context + +### Community 67 - "pick" +Cohesion: 0.10 +Nodes (15): Approach, Constraints, Files to touch, Goal, Issue #4 plan, Open questions, Prior art, Test strategy (+7 more) ### Community 69 - "IcaPlotSpec" Cohesion: 0.06 -Nodes (35): Approach, Constraints, Files to touch, Goal, Grill decisions (locked), Issue #56 — Plan: single-cell dQ/dV in Cell explorer, Open questions, Prior art (+27 more) +Nodes (36): Approach, Constraints, Files to touch, Goal, Grill decisions (locked), Issue #56 — Plan: single-cell dQ/dV in Cell explorer, Open questions, Prior art (+28 more) ### Community 70 - "Issue #73: Job progress pane: Cancel/Dismiss overlap long status text" Cohesion: 0.29 @@ -572,10 +552,6 @@ Nodes (6): Acceptance criteria, Issue #73: Job progress pane: Cancel/Dismiss ove Cohesion: 0.26 Nodes (8): Test strategy, app_main_module(), _clear_overrides(), _fake_cellpy_config(), reload(), test_absolute_cellpy_dirs_are_created_but_not_overridden(), test_relative_cellpy_dirs_are_anchored_at_home_not_cwd(), test_remote_paths_are_never_touched() -### Community 72 - "de" -Cohesion: 0.06 -Nodes (7): de(), getGlyphs(), _getMapId(), getSource(), isSourceLoaded(), loaded(), removeFeatureState() - ### Community 73 - "Issue #58 plan: plot side pane + top bar blend" Cohesion: 0.22 Nodes (8): Approach, Constraints, Files to touch, Goal, Issue #58 plan: plot side pane + top bar blend, Open questions, Prior art, Test strategy @@ -589,24 +565,20 @@ Cohesion: 0.12 Nodes (7): _load_zip_installer(), test_installer_removes_its_own_directory_but_never_user_data(), test_installer_version_resource_stays_numeric(), test_setup_logging_survives_a_windowed_build(), test_spec_ships_both_a_windowed_and_a_console_executable(), test_zip_installer_refuses_a_directory_with_no_exe(), test_zip_installer_wraps_each_exe() ### Community 76 - "ah" -Cohesion: 0.11 -Nodes (8): ah, feature(), ih, lh(), nh, pop(), push(), sh() - -### Community 77 - "_default_visible_hints" -Cohesion: 0.20 -Nodes (6): _add_cells_modal_html(), _default_visible_hints(), __init__(), _template_html(), test_add_cells_modal_has_one_primary_action(), test_default_visible_hint_budget() +Cohesion: 0.10 +Nodes (8): aa(), ah, ih, lh(), nh, pop(), push(), sh() -### Community 78 - "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)" -Cohesion: 0.12 -Nodes (18): Approach, Goal, Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import), Manual smoke checklist (G3/G4; server mode, `CSG_TOKEN=devtoken`), New tests (summary), Open questions, Scope check, Stage 1 — Sidebar restructure (template + CSS) (+10 more) +### Community 77 - "da" +Cohesion: 0.06 +Nodes (6): da(), Ga(), ha(), ja, la(), qa -### Community 79 - ".cancel" -Cohesion: 0.22 -Nodes (8): Command lifecycle, Constraints, Input, Instructions, issue-flow — drive (`/iflow-drive`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), 16. `/iflow-drive` — compose epic → publish → auto-all +### Community 79 - "de" +Cohesion: 0.05 +Nodes (11): de(), getGlyphs(), getLayer(), getLayoutProperty(), _getMapId(), getSource(), isSourceLoaded(), loaded() (+3 more) -### Community 80 - "essential" -Cohesion: 0.20 -Nodes (6): test_cellpy_config_diagnostics_endpoint(), test_examples(), test_healthz(), test_served_instance_refuses_paths_outside_its_data_dir(), test_served_instance_will_not_load_files_from_the_host(), test_token_required() +### Community 80 - "CyclesPlotSpec" +Cohesion: 0.05 +Nodes (30): 29. 🟠 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*, The Collection, Approach, Constraints, Files to touch, Goal, Issue #55 — Plan: cycles collector (per cell / per cycle), Open questions (+22 more) ### Community 81 - "issue-flow — epic planning (`/iflow-epic`)" Cohesion: 0.25 @@ -617,32 +589,28 @@ Cohesion: 0.25 Nodes (7): Constraints, Input, Instructions, issue-flow — review and label issues (`/iflow-review`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), Review kinds (extendable) ### Community 83 - "expand_paths" -Cohesion: 0.03 -Nodes (71): Prior art, Stage 3 — Staged file list + glob preview endpoint, Approach, Constraints, Explicitly deferred (later than phase 2), Files to touch, Goal, Issue #160 — Plan: OtherPath remote loading (+63 more) +Cohesion: 0.07 +Nodes (28): Prior art, Stage 3 — Staged file list + glob preview endpoint, Constraints, Prior art, Alternatives considered, Context, Decision, Links (+20 more) ### Community 84 - "cellpy API surface" -Cohesion: 0.06 -Nodes (34): Attributes worth knowing, cellpy API surface, Cells into a Collection, Collect options, Figures to bytes, Loading, One cell, Single-cell plots (+26 more) - -### Community 85 - "Issue #48 — create gui tests (plan)" -Cohesion: 0.22 -Nodes (8): Constraints, Files to touch, Goal, Issue #48 — create gui tests (plan), Open questions, Prior art, Test strategy, test_load_and_plot_flow() +Cohesion: 0.12 +Nodes (15): Attributes worth knowing, cellpy API surface, Cells into a Collection, Collect options, Figures to bytes, Loading, One cell, Single-cell plots (+7 more) ### Community 86 - "issue-flow — issue yolo (`/iflow-yolo`)" Cohesion: 0.25 Nodes (7): Chain, Constraints, issue-flow — issue yolo (`/iflow-yolo`), MODEL & EXECUTION DIRECTIVE, Post-run, Preflight (abort on any failure), Resolve project root (multi-root workspaces) -### Community 88 - "Library" -Cohesion: 0.04 -Nodes (34): 1. 🔴 No public "collection from in-memory cells", state(), Approach, Backend, Chrome decision: **centered modal** (not drawer / not resizable sidebar), Constraints, Files to touch, Goal (+26 more) +### Community 87 - "Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)" +Cohesion: 0.05 +Nodes (38): Acceptance criteria, Issue #136: Redesign the loading surface: one "Add cells" flow, staged file list, contextual help, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+30 more) -### Community 90 - "Hl" -Cohesion: 0.25 -Nodes (3): Hl(), ql(), tc() +### Community 88 - "Plan — Issue #3: Manage cells in an expanded editor" +Cohesion: 0.14 +Nodes (14): Approach, Backend, Chrome decision: **centered modal** (not drawer / not resizable sidebar), Constraints, Files to touch, Goal, Niceties in scope, Open questions (+6 more) -### Community 91 - "Original issue text" -Cohesion: 0.13 -Nodes (11): Acceptance criteria, Issue #136: Redesign the loading surface: one "Add cells" flow, staged file list, contextual help, Original issue text, Out of scope, Problem / context, Spec, Issue #136 — Status, Notes / deviations (+3 more) +### Community 90 - "test_uploads.py" +Cohesion: 0.12 +Nodes (6): client(), served(), test_capabilities_advertise_the_cap(), test_safe_name_reduces_a_path_to_a_filename(), test_safe_name_refuses_what_is_left_of_nothing(), test_upload_needs_the_token() ### Community 92 - "Issue #60 status" Cohesion: 0.50 @@ -652,21 +620,17 @@ Nodes (3): Issue #60 status, Remaining work, What's done Cohesion: 0.29 Nodes (6): Auto-Clarity, Be token greedy - as a caveman, Boundaries, Intensity, Persistence, Rules -### Community 94 - "ii" -Cohesion: 0.06 -Nodes (10): Ai(), ci(), i(), n(), getCanvas(), ii(), o(), isZooming() (+2 more) - ### Community 95 - "alpine.min.js" Cohesion: 0.07 Nodes (21): Ae(), bi(), effect(), Gt(), ht(), _i(), Ji(), Jt() (+13 more) ### Community 96 - ".status" -Cohesion: 0.10 -Nodes (19): Constraints, Input, Instructions, issue-flow — advanced auto (`/iflow-auto`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), 15. `/iflow-auto` — unattended large-change orchestration, Decided (2026-09-05) (+11 more) +Cohesion: 0.13 +Nodes (13): Constraints, Input, Instructions, issue-flow — advanced auto (`/iflow-auto`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces), 15. `/iflow-auto` — unattended large-change orchestration, Alternatives considered (+5 more) ### Community 97 - "An MCP server for cellpy — design, and what a prototype found" -Cohesion: 0.15 -Nodes (13): An MCP server for cellpy — design, and what a prototype found, Hard part 1 — state, Prompts — the part aimed at people who are not asking for tools, Proposed: `cellpy mcp`, not `cellpy server mcp`, Proposed upstream, Proposed upstream — round two, Recommendation, Recommendation, restated (+5 more) +Cohesion: 0.09 +Nodes (19): cellpy MCP server (prototype), Limits worth knowing before you rely on it, Run it, new_project(), An MCP server for cellpy — design, and what a prototype found, Finding 4 — `cellpy new` cannot currently be automated, Hard part 1 — state, Prompts — the part aimed at people who are not asking for tools (+11 more) ### Community 98 - "issue-flow — issue build (`/iflow-build`)" Cohesion: 0.29 @@ -676,33 +640,29 @@ Nodes (6): Constraints, Early PR tokens (command input), Instructions, issue-flo Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #67: Cell explorer dQ/dV: Charge/Discharge direction has no effect (and joins half-cycles), Original issue text, Out of scope, Problem / context, Spec -### Community 100 - "Do" -Cohesion: 0.16 -Nodes (3): Do, Io(), Oo() +### Community 100 - "fo" +Cohesion: 0.11 +Nodes (5): Do, fo(), Io(), jo(), Oo() ### Community 101 - "test_gui_playwright.py" -Cohesion: 0.07 -Nodes (25): Constraints, Files to touch, Remaining work, Status — #184 update plots when the Manage cells modal closes, What's done, Alternatives considered, Context, Decision (+17 more) +Cohesion: 0.11 +Nodes (14): Remaining work, Status — #184 update plots when the Manage cells modal closes, What's done, browser_page(), _bundled_cellpy_file(), _chromium_available(), live_server(), _load_bundled_cell() (+6 more) -### Community 102 - "_tidy_facet_annotations" -Cohesion: 0.12 -Nodes (14): Acceptance criteria, Issue #38: Use cellpy label builders for summary/cycle axis titles, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+6 more) +### Community 102 - "select_ica_direction" +Cohesion: 0.08 +Nodes (23): 16. 🟢 ICA plotter direction gaps (line plots + `both`), What to add next, and where to look, Prior art, cellpy delegation inventory (issue #52), Cycles pane curve kinds (#95), Incremental analysis (ICA / DVA), Raw data views (developer mode), Release-gating note (resolved for #816/#818/#819) (+15 more) ### Community 103 - "test_core.py" Cohesion: 0.02 -Nodes (88): dev_mode(), _hover_variable(), _ica_y_values(), _numeric_y_values(), _rate_library(), _summary_facet_titles_top_to_bottom(), test_build_reports_without_a_frame_never_calls_cycles_unreadable(), test_cells_export_cellpy_and_xlsx() (+80 more) - -### Community 105 - "RawPlotSpec" -Cohesion: 0.15 -Nodes (4): _clean_axis_range(), ComparePick, RawPlotSpec, test_raw_figure_is_downsampled_for_transport() +Nodes (101): Issue #27 status — Iterative fixes: group average checkbox, Iterative fixes log, Acceptance criteria, Issue #2: Allow independent y-limits on multi-panel summary plots, Original issue text, Out of scope, Problem / context, Spec (+93 more) ### Community 107 - "CellRecord" Cohesion: 0.05 -Nodes (54): 3. Core — `core/plotting.py`, Files to touch, 1. Core — a small, pure cycle report (`core/cycle_report.py`, new), 2. `collect.py`, 3. `plotting.py`, 5. Docs, Approach, Constraints (+46 more) +Nodes (58): 3. Core — `core/plotting.py`, 4. API — `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`, Files to touch, 2026-10-02 — built, 1. Core — a small, pure cycle report (`core/cycle_report.py`, new), 2. `collect.py`, 3. `plotting.py`, 5. Docs (+50 more) -### Community 108 - "dh" -Cohesion: 0.06 -Nodes (14): ba, ch(), dh(), fh(), hh(), mh(), mu(), ph() (+6 more) +### Community 108 - "ho" +Cohesion: 0.07 +Nodes (7): ba, ho(), mu(), qo(), ro, su(), zo() ### Community 109 - "Issue #36: Chart card stays white under dark figure theme; default figure theme to Match app" Cohesion: 0.29 @@ -712,42 +672,26 @@ Nodes (6): Acceptance criteria, Issue #36: Chart card stays white under dark fig Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #39: Group-avg merge puts singleton CE traces on the wrong summary facet, Original issue text, Out of scope, Problem / context, Spec -### Community 112 - ".add" -Cohesion: 0.07 -Nodes (4): _createButton(), qi(), h(), yi() +### Community 112 - ".remove" +Cohesion: 0.06 +Nodes (4): Li(), qi(), lt(), yi() ### Community 113 - "Issue #3: Make the Cells list workable for many cells (modal or expanded editor)" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #3: Make the Cells list workable for many cells (modal or expanded editor), Original issue text, Out of scope, Problem / context, Spec -### Community 114 - "test_mcp_prototype.py" -Cohesion: 0.20 -Nodes (3): prototype(), test_describe_api_will_not_import_outside_cellpy(), steps() - -### Community 115 - "gen_llms_txt.py" -Cohesion: 0.36 -Nodes (5): describe_guide(), guide_files(), main(), render_full(), render_index() - ### Community 116 - "Issue #4: Replace deprecated pywebview OPEN_DIALOG with FileDialog.OPEN" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #4: Replace deprecated pywebview OPEN_DIALOG with FileDialog.OPEN, Original issue text, Out of scope, Problem / context, Spec -### Community 117 - "_without_webview" -Cohesion: 0.25 -Nodes (4): test_api_works_without_pywebview(), test_desktop_import_failure_names_the_extra(), test_native_dialogs_refuse_without_pywebview(), _without_webview() +### Community 117 - "The Windows installer" +Cohesion: 0.20 +Nodes (10): Arbin `.res` needs a Microsoft ODBC driver, Building it yourself, Downloading, Installing, Static figure export needs Chrome, The Windows installer, Uninstalling, WebView2 (+2 more) ### Community 118 - "Original issue text" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #58: Add a plot side pane and match the top bar to the app background, Original issue text, Out of scope, Problem / context, Spec -### Community 119 - "Mn" -Cohesion: 0.18 -Nodes (3): An(), Mn(), setMaxBounds() - -### Community 120 - "Plan — #184 update plots when the Manage cells modal closes" -Cohesion: 0.29 -Nodes (6): Approach (front-end only, `app.js` + modal markup), Files to touch, Goal, Plan — #184 update plots when the Manage cells modal closes, Test strategy, What happens today - ### Community 121 - "Issue #5: Add cellpy logo and app icon" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #5: Add cellpy logo and app icon, Original issue text, Out of scope, Problem / context, Spec @@ -760,10 +704,6 @@ Nodes (3): Issue #73 status, Remaining work, What's done Cohesion: 0.29 Nodes (5): CI recipe (copy-paste), Contract, Essential tests (pytest), Non-goals (v1), Test registry -### Community 124 - "Original issue text" -Cohesion: 0.29 -Nodes (6): Acceptance criteria, Comments (curated summary), Issue #62: Add checkbox for group vs individual Plotly legend muting on summary plots, Original issue text, Out of scope, Problem / context - ### Community 125 - "issue-flow — archive solved issues (`/iflow-archive`)" Cohesion: 0.33 Nodes (5): Constraints, Input, Instructions, issue-flow — archive solved issues (`/iflow-archive`), MODEL & EXECUTION DIRECTIVE @@ -784,10 +724,6 @@ Nodes (6): test_jobs_do_not_depend_on_private_stdlib_internals(), test_manager_r Cohesion: 0.33 Nodes (5): Constraints, Instructions, issue-flow — iflow smart dispatcher (`/iflow`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) -### Community 130 - "wn" -Cohesion: 0.09 -Nodes (3): kn(), ln(), wn() - ### Community 131 - "Deploying cellpy simple GUI as a server" Cohesion: 0.08 Nodes (21): Behind a reverse proxy, Build it yourself, cellpy's own directories are separate from the app's, Container, Deploying cellpy simple GUI as a server, Environment reference, Getting files in, Or with compose (+13 more) @@ -797,8 +733,8 @@ Cohesion: 0.33 Nodes (5): Approach, Files to touch, Goal, Plan: Issue #13 — add workflows, Test strategy ### Community 135 - "Ei" -Cohesion: 0.07 -Nodes (10): calculateCameraOptionsFromTo(), _cancelRenderFrame(), Ei(), i(), project(), _requestRenderFrame(), setMaxPitch(), setMaxZoom() (+2 more) +Cohesion: 0.06 +Nodes (11): calculateCameraOptionsFromTo(), _cancelRenderFrame(), Ei(), i(), project(), _requestRenderFrame(), setMaxPitch(), setMaxZoom() (+3 more) ### Community 137 - "Plan: Issue #14 — make saving and closing more obvious" Cohesion: 0.33 @@ -840,10 +776,6 @@ Nodes (5): test_an_unrecognised_error_is_passed_through_unchanged(), test_availa Cohesion: 0.40 Nodes (4): Constraints, Instructions, issue-flow — graph rebuild (`/iflow-graphify`), MODEL & EXECUTION DIRECTIVE -### Community 148 - "bn" -Cohesion: 0.11 -Nodes (3): bn(), qr(), Qu() - ### Community 150 - "Issue #27: Iterative fixes: group average checkbox" Cohesion: 0.40 Nodes (4): First reported bug, Interactive `/iflow-fix` session, Issue #27: Iterative fixes: group average checkbox, Original issue text @@ -852,10 +784,6 @@ Nodes (4): First reported bug, Interactive `/iflow-fix` session, Issue #27: Iter Cohesion: 0.40 Nodes (4): First reported bug, Interactive `/iflow-fix` session, Issue #31: Iterative fixes: export download location, Original issue text -### Community 153 - "The prompts" -Cohesion: 0.32 -Nodes (4): The prompts, analyse_cell(), explain_call(), start_batch_project() - ### Community 154 - "`00-tools/` — shared helper tools" Cohesion: 0.50 Nodes (3): `00-tools/` — shared helper tools, Tool index, When working an issue @@ -869,12 +797,12 @@ Cohesion: 0.50 Nodes (3): Comments (curated summary), Issue #15: update readme, Original issue text ### Community 159 - "mt" -Cohesion: 0.20 +Cohesion: 0.22 Nodes (9): ct(), kn(), kr(), lt(), mt(), nr(), P(), tr() (+1 more) ### Community 160 - "oi" -Cohesion: 0.09 -Nodes (9): bi(), oi(), a(), i(), n(), r(), s(), querySourceFeatures() (+1 more) +Cohesion: 0.07 +Nodes (10): bi(), oi(), a(), i(), n(), r(), s(), querySourceFeatures() (+2 more) ### Community 161 - "Development information" Cohesion: 0.10 @@ -888,9 +816,9 @@ Nodes (13): If you run it again, Protocol, Results, The cold-context agent test, Cohesion: 0.50 Nodes (3): Remaining work, Status — Issue #3: Manage cells expanded editor, What's done -### Community 164 - "gh-ci — wait on GitHub CI with `gh`" -Cohesion: 0.33 -Nodes (5): Fallback (workflow runs), gh-ci — wait on GitHub CI with `gh`, Primary (PR-attached checks), Semantics, Where this fits +### Community 164 - "summary_columns_for" +Cohesion: 0.08 +Nodes (22): Acceptance criteria, Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet, Original issue text, Out of scope, Problem / context, Spec, Approach, Constraints (+14 more) ### Community 165 - "Issue #47 — Status" Cohesion: 0.50 @@ -904,9 +832,9 @@ Nodes (4): _log_dir(), main(), _report_crash(), _show_dialog() Cohesion: 0.50 Nodes (3): Issue #50 — Status, Iterative fixes log, Remaining work -### Community 168 - "Client" -Cohesion: 0.18 -Nodes (6): Client, main(), run_checks(), skip(), test_the_tool_surface_is_small_and_named_as_documented(), main() +### Community 168 - "Issue #32: Plot appearance options: color scheme and figure theme" +Cohesion: 0.25 +Nodes (7): Acceptance criteria, Comments (curated summary), Issue #32: Plot appearance options: color scheme and figure theme, Original issue text, Out of scope, Problem / context, Spec ### Community 170 - "Issue #58 status" Cohesion: 0.50 @@ -917,8 +845,8 @@ Cohesion: 0.50 Nodes (3): Issue #5 status, Remaining work, What's done ### Community 172 - "6. Process state and threading" -Cohesion: 0.25 -Nodes (7): 6. Process state and threading, A worker pool that survives its workers, `override` is per thread; `reload` is not, Progress and cancellation, The short answer, Where to go next, Your own singletons are the real constraint +Cohesion: 0.14 +Nodes (8): 6. Process state and threading, A worker pool that survives its workers, `override` is per thread; `reload` is not, Progress and cancellation, The short answer, Where to go next, Your own singletons are the real constraint, _DaemonPool ### Community 173 - "Plan — Issue #73: Job progress Cancel/Dismiss overlap" Cohesion: 0.15 @@ -928,73 +856,61 @@ Nodes (11): Approach, Constraints, Files to touch, Goal, Open questions, Plan Cohesion: 0.50 Nodes (3): Desktop exit / terminal prompt, Journal load diagnostics & desktop exit, Journal / project load -### Community 187 - "pl" -Cohesion: 0.09 -Nodes (5): jl(), pl, Ul(), xc(), Yl() +### Community 187 - "Ic" +Cohesion: 0.06 +Nodes (10): al(), Go(), Ic(), il(), jl(), nl(), Ns(), pl (+2 more) ### Community 188 - "issue-flow — issue cleanup (`/iflow-cleanup`)" Cohesion: 0.29 Nodes (6): Constraints, Input, Instructions, issue-flow — issue cleanup (`/iflow-cleanup`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) -### Community 190 - "test_index_click_and_show_targets_exist" -Cohesion: 0.33 -Nodes (3): _component_names(), _free_identifiers(), test_index_click_and_show_targets_exist() - -### Community 192 - "5. Configuration" -Cohesion: 0.29 -Nodes (7): 5. Configuration, Changing settings, Credentials, The layers, The relative-path trap, Where to go next, Which file actually won, and where each value came from +### Community 192 - "cellpy API surface" +Cohesion: 0.08 +Nodes (25): Attributes worth knowing, cellpy API surface, Cells into a Collection, Collect options, Configuration, Figures to bytes, Loading, One cell (+17 more) ### Community 199 - "ur" -Cohesion: 0.07 -Nodes (8): cr(), dr(), fr(), Je(), lr(), sr(), ur(), o() - -### Community 202 - "_load_entry" -Cohesion: 0.33 -Nodes (4): _load_entry(), test_crash_goes_to_stderr_when_there_is_a_console(), test_crash_report_is_written_and_the_dialog_names_it(), test_crash_reporter_agrees_with_the_app_on_where_logs_go() +Cohesion: 0.09 +Nodes (7): cr(), dr(), fr(), Je(), lr(), ur(), o() ### Community 203 - "m" -Cohesion: 0.13 -Nodes (19): A(), cn(), d(), E(), has(), he(), ie(), Ir() (+11 more) +Cohesion: 0.14 +Nodes (18): A(), d(), E(), has(), he(), ie(), Ir(), je() (+10 more) -### Community 204 - "steps" -Cohesion: 0.23 -Nodes (9): main(), call(), test_availability_is_answered_rather_than_discovered_by_drawing(), steps(), test_new_project_refuses_before_it_writes_anything(), steps(), test_paths_outside_the_sandbox_are_refused(), steps() (+1 more) +### Community 204 - "test_mcp_prototype.py" +Cohesion: 0.06 +Nodes (31): Client, drive(), main(), call(), prototype(), test_a_default_direction_plot_says_it_drew_less(), steps(), test_availability_is_answered_rather_than_discovered_by_drawing() (+23 more) ### Community 205 - "README.md" -Cohesion: 0.15 +Cohesion: 0.18 Nodes (12): Building your own cellpy app, Development, Features, Future plans, If you are a coding agent, Install, License, Some examples (+4 more) ### Community 206 - "Kt" -Cohesion: 0.38 -Nodes (7): It(), Kt(), oi(), Ot(), qn(), xe(), ze() +Cohesion: 0.32 +Nodes (8): cn(), It(), Kt(), oi(), Ot(), qn(), xe(), ze() ### Community 207 - "gr" Cohesion: 0.22 Nodes (14): br(), dr(), er(), Et(), gr(), mr(), pe(), S() (+6 more) -### Community 209 - "Issue #31 status — Iterative fixes: export download location" -Cohesion: 0.50 -Nodes (3): Issue #31 status — Iterative fixes: export download location, Iterative fixes log, test_system_save_rejected_without_webview() - ### Community 210 - "ft" Cohesion: 0.15 Nodes (4): ft(), off(), onRemove(), removeControl() ### Community 211 - "k" -Cohesion: 0.03 -Nodes (17): A(), Dt(), getImage(), j(), c(), k(), l(), s() (+9 more) +Cohesion: 0.10 +Nodes (5): getImage(), k(), l(), loadImage(), updateImage() -### Community 213 - "drive" +### Community 214 - "Plan — #184 update plots when the Manage cells modal closes" Cohesion: 0.29 -Nodes (4): drive(), test_no_tool_returns_a_frame(), steps(), test_the_whole_arc_over_the_protocol() +Nodes (6): Approach (front-end only, `app.js` + modal markup), Files to touch, Goal, Plan — #184 update plots when the Manage cells modal closes, Test strategy, What happens today ### Community 215 - "Instructions" Cohesion: 0.20 Nodes (9): Constraints, Input, Instructions, issue-flow — split an over-large issue (`/iflow-split`), MODEL & EXECUTION DIRECTIVE, Phase 1 — draft children, Phase 2 — create and link, Phase 3 — optional handoff (+1 more) -### Community 216 - "Next phase — deployment routes and app-builder documentation" -Cohesion: 0.08 -Nodes (18): collection_for(), export(), export_csv(), figure(), figure_json(), index(), _missing(), 6. API sketch (design) (+10 more) +### Community 216 - "starter/app.py" +Cohesion: 0.09 +Nodes (16): add_cells(), clear_cells(), collection_for(), export(), export_csv(), figure(), figure_json(), index() (+8 more) ### Community 217 - "Continuous Windows installer from `main`" Cohesion: 0.40 @@ -1006,27 +922,23 @@ Nodes (8): en(), ki(), q(), qr(), tn(), U(), zi(), zr() ### Community 221 - "_restyle" Cohesion: 0.03 -Nodes (72): 2. Core — `core/collect.py`, Acceptance criteria, Issue #1: Fix Plotly summary legend when cell names are very long, Original issue text, Out of scope, Problem / context, Spec, Approach (+64 more) - -### Community 222 - "CellProcessor 2.0 — design guide (for agents)" -Cohesion: 0.07 -Nodes (24): 10. Risks & open questions, 11. Sibling repos (context only), 1. Goals & locked decisions, 3. Technology choices (design vs MVP), 4. Package layout, 5. Core layer rules, 7. Frontend pages (parity map), 8. Packaging, native deps & updates (still open) (+16 more) +Nodes (68): 2. Core — `core/collect.py`, Acceptance criteria, Issue #1: Fix Plotly summary legend when cell names are very long, Original issue text, Out of scope, Problem / context, Spec, Constraints (+60 more) -### Community 223 - ".fire" -Cohesion: 0.09 -Nodes (7): addSource(), getLayer(), getLayoutProperty(), hasImage(), resolveURL(), setLayoutProperty(), setPaintProperty() +### Community 222 - "cellpy-simple-gui" +Cohesion: 0.11 +Nodes (12): Cross-repo guidance, Default for lifecycle commands, Members, Multi-root workspace — cellpyapp, Toolchain disambiguation, cellpy-simple-gui, Conventions, How to run / test (+4 more) ### Community 224 - "Plan — Issue #177: GUI color scheme and layout" Cohesion: 0.17 Nodes (11): A — Quiet lab (recommended), Approach, B — Plot-first, C — Top strip, Constraints, Files to touch, Goal, Open questions (+3 more) ### Community 225 - "Issue #72: Cycles tab: Mode change does not update x-axis capacity units" -Cohesion: 0.29 -Nodes (6): Acceptance criteria, Issue #72: Cycles tab: Mode change does not update x-axis capacity units, Original issue text, Out of scope, Problem / context, Spec +Cohesion: 0.16 +Nodes (9): Issue #54 status, Remaining work, What's done, Acceptance criteria, Issue #72: Cycles tab: Mode change does not update x-axis capacity units, Original issue text, Out of scope, Problem / context (+1 more) -### Community 226 - "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)" -Cohesion: 0.33 -Nodes (5): Acceptance criteria, Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute), Original issue text, Out of scope, Problem / context +### Community 226 - "apply_physical_meta" +Cohesion: 0.06 +Nodes (36): 1. 🔴 No public "collection from in-memory cells", 21. 🟠 No selective summary rebuild after meta edits, Approach, Constraints, Files to touch, Goal, Issue #69 — Plan: edit cell metadata, Open questions (+28 more) ### Community 228 - "issue-flow — harness init (`/iflow-init`)" Cohesion: 0.22 @@ -1034,15 +946,19 @@ Nodes (8): Constraints, Instructions, issue-flow — harness init (`/iflow-init` ### Community 229 - "Releasing" Cohesion: 0.09 -Nodes (19): Cutting a release, One-time: let PyPI trust this repository, One-time: make the container image public, Rehearsal log, Rehearse on TestPyPI, Releasing, The rolling `continuous` release, Things that will bite (+11 more) +Nodes (20): Cutting a release, One-time: let PyPI trust this repository, One-time: make the container image public, Rehearsal log, Rehearse on TestPyPI, Releasing, The rolling `continuous` release, Things that will bite (+12 more) + +### Community 230 - "bt" +Cohesion: 0.06 +Nodes (7): Ye(), bt(), r(), isParsed(), removeSource(), setMethods(), Xe() ### Community 231 - "Guides: what belongs upstream in cellpy" Cohesion: 0.22 Nodes (8): Candidates, by strength, Guides: what belongs upstream in cellpy, Medium — general, but shaped by a decision an app has to make, New finding to file separately, Stays here — about building an app, not about cellpy, Strong — general cellpy knowledge, no app in it, Suggested shape of the proposal, Why not upstream first ### Community 232 - "describe_api" -Cohesion: 0.13 -Nodes (10): describe_api(), _follow_reference(), _index(), _resolve_dotted(), search_api(), _summarise(), And a boundary, Finding 3 — the documentation is usually there, one hop away (+2 more) +Cohesion: 0.14 +Nodes (9): describe_api(), _follow_reference(), _index(), _resolve_dotted(), _summarise(), And a boundary, Finding 3 — the documentation is usually there, one hop away, The API family — and what it measured (+1 more) ### Community 235 - "1. Getting cells into memory" Cohesion: 0.25 @@ -1052,13 +968,17 @@ Nodes (8): 1. Getting cells into memory, Asking the user for the right metadata, Cohesion: 0.40 Nodes (5): Bn(), fr(), get(), Gi(), Oe() -### Community 240 - "Issue #54 status" -Cohesion: 0.50 -Nodes (3): Issue #54 status, Remaining work, What's done - -### Community 241 - "Ic" +### Community 238 - "save_cell" Cohesion: 0.14 -Nodes (3): Go(), Ic(), Ns() +Nodes (11): Approach, Constraints, Goal, Issue #28 plan — Export cells from Manage cells, Open questions, Test strategy, Behaviour, Manage cells modal (+3 more) + +### Community 240 - "xr" +Cohesion: 0.12 +Nodes (4): sr(), Wr(), xr(), zr() + +### Community 241 - ".evaluate" +Cohesion: 0.08 +Nodes (7): Fl(), hu(), no(), pu(), Ra(), rh, zh() ### Community 242 - "Issue #55 — Status" Cohesion: 0.50 @@ -1070,7 +990,11 @@ Nodes (3): Issue #72 status, Remaining work, What's done ### Community 244 - "En" Cohesion: 0.05 -Nodes (3): Pn(), di(), En() +Nodes (5): An(), Pn(), En(), Mn(), setMaxBounds() + +### Community 249 - "_load_entry" +Cohesion: 0.33 +Nodes (4): _load_entry(), test_crash_goes_to_stderr_when_there_is_a_console(), test_crash_report_is_written_and_the_dialog_names_it(), test_crash_reporter_agrees_with_the_app_on_where_logs_go() ### Community 251 - "issue-flow — PR queue sync (`/iflow-pr-sync`)" Cohesion: 0.29 @@ -1080,14 +1004,14 @@ Nodes (6): Constraints, Input, Instructions, issue-flow — PR queue sync (`/ifl Cohesion: 0.29 Nodes (7): 4. Exporting data and figures, "kaleido is installed" and "figure export works" are different facts, Matching the chart, in practice, The figure, The numbers, Where to go next, Whole cells -### Community 253 - "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`" -Cohesion: 0.29 -Nodes (6): Acceptance criteria, Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`, Original issue text, Out of scope, Problem / context, Spec - ### Community 254 - "Issue #81: Keep CE summary panel order consistent (prefer CE on top)" Cohesion: 0.29 Nodes (6): Acceptance criteria, Issue #81: Keep CE summary panel order consistent (prefer CE on top), Original issue text, Out of scope, Problem / context, Spec +### Community 256 - "Plan: Issue #19 — journal load error surfacing" +Cohesion: 0.40 +Nodes (4): Approach, Goal, Plan: Issue #19 — journal load error surfacing, Test strategy + ### Community 257 - "_t" Cohesion: 0.20 Nodes (9): Gn(), Ln(), Re(), _t(), te(), Un(), Wn(), x() (+1 more) @@ -1096,30 +1020,34 @@ Nodes (9): Gn(), Ln(), Re(), _t(), te(), Un(), Wn(), x() (+1 more) Cohesion: 0.33 Nodes (5): Constraints, Instructions, issue-flow — ops / no-PR (`/iflow-ops`), MODEL & EXECUTION DIRECTIVE, Resolve project root (multi-root workspaces) -### Community 264 - "th" -Cohesion: 0.13 -Nodes (3): eh(), Ku(), th() - ### Community 265 - "2. Cells into a Collection" -Cohesion: 0.18 -Nodes (9): 3. 🟠 Silent all-or-nothing group-averaging when any group is a singleton, 2. Cells into a Collection, Collecting, Grouping and averaging, polars here, pandas there, Two things that go wrong, What a Collection is, Where to go next (+1 more) +Cohesion: 0.33 +Nodes (6): 2. Cells into a Collection, Collecting, polars here, pandas there, Two things that go wrong, What a Collection is, Where to go next ### Community 266 - "7. What cellpy will and will not do for you" Cohesion: 0.33 Nodes (6): 7. What cellpy will and will not do for you, cellpy does not do these, and probably should not, cellpy owns these — do not reimplement them, Currently worth working around, How to keep the list shrinking, The shape that turned out right +### Community 267 - "Status — Issue #169: Compare selected cells" +Cohesion: 0.50 +Nodes (3): 2026-10-02 — picked, captured, planned, Remaining, Status — Issue #169: Compare selected cells + ### Community 268 - "Issue #173 status" Cohesion: 0.50 Nodes (3): Done, Issue #173 status, Remaining -### Community 272 - "p" +### Community 272 - "N" Cohesion: 0.04 -Nodes (96): J(), R(), at(), i(), K(), cn(), D(), y() (+88 more) +Nodes (116): J(), R(), l(), f(), b(), i(), K(), D() (+108 more) ### Community 277 - "test_ingest.py" -Cohesion: 0.10 +Cohesion: 0.11 Nodes (12): _client(), test_adapter_load_raw_pec(), test_ingest_bad_instrument_400(), test_ingest_example_neware(), test_instruments_endpoint(), test_load_file_passes_remote_uri(), test_load_file_remote_missing_raises(), test_load_raw_passes_instrument() (+4 more) +### Community 280 - "Any" +Cohesion: 0.07 +Nodes (22): Approach, Findings, Plan — #187 name of groups, Remaining, Status — #187 name of groups, Tests, What was done, Done (+14 more) + ### Community 285 - "Building on cellpy" Cohesion: 0.50 Nodes (4): Building on cellpy, Every Python block here runs, If something here is wrong, Two things worth knowing before you start @@ -1136,28 +1064,32 @@ Nodes (10): ci(), ei(), ge(), ii(), jn(), me(), ni(), Pr() (+2 more) Cohesion: 0.50 Nodes (3): Issue #86 — Status, Remaining work, What's done -### Community 304 - "test_starter.py" -Cohesion: 0.03 -Nodes (26): generator(), test_every_path_the_index_points_at_exists(), test_llms_full_actually_contains_the_documents(), test_the_index_lists_every_guide(), test_the_skill_reference_is_bundled(), test_the_skill_states_the_traps_that_produce_plausible_output(), generated_against(), generator() (+18 more) +### Community 293 - ".fire" +Cohesion: 0.10 +Nodes (3): addSource(), hasImage(), resolveURL() + +### Community 304 - "mcp/server.py" +Cohesion: 0.02 +Nodes (41): The prompts, analyse_cell(), _client_config_path(), explain_call(), _install(), start_batch_project(), LaunchedApp, main() (+33 more) ### Community 318 - "xt" Cohesion: 0.27 Nodes (10): B(), Ce(), fe(), Fn(), k(), $n(), Ne(), xt() (+2 more) ## Knowledge Gaps -- **710 isolated node(s):** `docker-entrypoint.sh script`, `cellpy-simple-gui`, `PLOTLY_CONFIG`, `RECENT_KINDS`, `Persistence` (+705 more) - These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 2328 node(s) total have ≤1 connection when file, concept and rationale nodes are included.) -- **81 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. +- **712 isolated node(s):** `docker-entrypoint.sh script`, `cellpy-simple-gui`, `PLOTLY_CONFIG`, `RECENT_KINDS`, `Persistence` (+707 more) + These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 2352 node(s) total have ≤1 connection when file, concept and rationale nodes are included.) +- **71 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. ## Suggested Questions _Questions this graph is uniquely positioned to answer:_ -- **Why does `$` connect `$` to `a`, `ni`, `ss`, `i`, `N`, `vn`, `wo`, `Uc`, `e`, `g`, `pi`, `na`, `.get`, `oa`, `eu`, `.push`, `xi`, `gh`, `.emplaceBack`, `.createVertexBuffer`, `.resume`, `Dt`, `resize`, `ho`, `hi`, `.reset`, `issue-flow — version bump`, `ca`, `.evaluate`, `I`, `.renderLayer`, `.parse`, `xr`, `ti`, `.draw`, `.constructor`, `fo`, `de`, `ah`, `cellpy API surface`, `.render`, `Hl`, `ii`, `alpine.min.js`, `Do`, `.destroy`, `rh`, `dh`, `ri`, `.add`, `Mn`, `wn`, `.populate`, `Ei`, `bn`, `mt`, `oi`, `se`, `te`, `pl`, `ur`, `Kt`, `gr`, `ft`, `k`, `Pt`, `.fire`, `bt`, `Ki`, `Ic`, `En`, `Zi`, `Xe`, `_t`, `th`, `p`, `qn`, `Xt`, `ge`, `ht`, `wi`, `jh`?** - _High betweenness centrality (0.397) - this node is a cross-community bridge._ -- **Why does `gh()` connect `gh` to `issue-flow — iflow smart dispatcher (`/iflow`)`, `a`, `i`, `issue-flow — ops / no-PR (`/iflow-ops`)`, `$`, `issue-flow — issue comments triage`, `issue-flow — issue plan (`/iflow-plan`)`, `issue-flow — issue close (`/iflow-close`)`, `Development information`, `gh-ci — wait on GitHub CI with `gh``, `.resume`, `Instructions`, `Job`, `Instructions`, `issue-flow — create a normal issue (`/iflow-issue`)`, `issue-flow — issue cleanup (`/iflow-cleanup`)`, `.cancel`, `issue-flow — epic planning (`/iflow-epic`)`, `issue-flow — review and label issues (`/iflow-review`)`, `issue-flow — issue yolo (`/iflow-yolo`)`, `Instructions`, `Original issue text`, `CellProcessor 2.0 — design guide (for agents)`, `.status`, `issue-flow — issue build (`/iflow-build`)`, `issue-flow — harness init (`/iflow-init`)`, `dh`, `issue-flow — PR queue sync (`/iflow-pr-sync`)`, `issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`)`, `issue-flow — issue pause (`/iflow-pause`)`?** - _High betweenness centrality (0.277) - this node is a cross-community bridge._ -- **Why does `Stack / runtime` connect `Job` to `Library`, `gh`, `_restyle`, `CellProcessor 2.0 — design guide (for agents)`?** - _High betweenness centrality (0.178) - this node is a cross-community bridge._ +- **Why does `$` connect `$` to `_t`, `ni`, `wn`, `ss`, `i`, `.get`, `Ei`, `a`, `vn`, `wo`, `oa`, `e`, `N`, `constructor`, `di`, `na`, `qn`, `ve`, `eu`, `E`, `Xt`, `mt`, `ge`, `oi`, `.createVertexBuffer`, `Ku`, `gh`, `.fire`, `.resume`, `Dt`, `resize`, `o`, `wi`, `ii`, `jh`, `.reset`, `issue-flow — version bump`, `kn`, `r`, `vr`, `Ic`, `.push`, `ti`, `.load`, `ur`, `ah`, `da`, `Kt`, `gr`, `de`, `CyclesPlotSpec`, `ft`, `k`, `Tn`, `.render`, `Pt`, `Si`, `alpine.min.js`, `fo`, `bt`, `.destroy`, `Ki`, `ho`, `.remove`, `.evaluate`, `xr`, `En`, `Zi`?** + _High betweenness centrality (0.386) - this node is a cross-community bridge._ +- **Why does `gh()` connect `gh` to `issue-flow — iflow smart dispatcher (`/iflow`)`, `i`, `issue-flow — ops / no-PR (`/iflow-ops`)`, `$`, `issue-flow — issue comments triage`, `eu`, `issue-flow — issue plan (`/iflow-plan`)`, `issue-flow — issue close (`/iflow-close`)`, `Development information`, `.resume`, `Instructions`, `Job`, `Instructions`, `issue-flow — create a normal issue (`/iflow-issue`)`, `.cancel`, `issue-flow — issue cleanup (`/iflow-cleanup`)`, `issue-flow — epic planning (`/iflow-epic`)`, `issue-flow — review and label issues (`/iflow-review`)`, `issue-flow — issue yolo (`/iflow-yolo`)`, `Instructions`, `Issue #136 — Plan: redesign the loading surface (files, projects, journals, raw import)`, `cellpy-simple-gui`, `.status`, `issue-flow — issue build (`/iflow-build`)`, `issue-flow — harness init (`/iflow-init`)`, `issue-flow — PR queue sync (`/iflow-pr-sync`)`, `issue-flow — doctor (`.issueflows/` health) (`/iflow-doctor`)`, `issue-flow — issue pause (`/iflow-pause`)`?** + _High betweenness centrality (0.259) - this node is a cross-community bridge._ +- **Why does `Stack / runtime` connect `Job` to `gh`, `Library`, `_restyle`, `cellpy-simple-gui`?** + _High betweenness centrality (0.158) - this node is a cross-community bridge._ - **Are the 45 inferred relationships involving `$` (e.g. with `J()` and `Jt()`) actually correct?** _`$` has 45 INFERRED edges - model-reasoned connections that need verification._ - **Are the 132 inferred relationships involving `e()` (e.g. with `u()` and `r()`) actually correct?** diff --git a/graphify-out/graph.json b/graphify-out/graph.json index 601d199..4c649f2 100644 --- a/graphify-out/graph.json +++ b/graphify-out/graph.json @@ -10,7 +10,7 @@ "_callable_class": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "cancelled", "source_file": "src/cellpy_simple_gui/api/jobs.py", @@ -23,50 +23,37 @@ "_callable_class": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "progress", "source_file": "src/cellpy_simple_gui/api/jobs.py", "source_location": "L27" }, { - "id": "src_cellpy_simple_gui_core_models_cellsexportspec", - "label": "CellsExportSpec", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "cellsexportspec", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L313" - }, - { - "id": "src_cellpy_simple_gui_core_models_cycleinfoplotspec", - "label": "CycleInfoPlotSpec", + "id": "src_cellpy_simple_gui_core_models_exportspec", + "label": "ExportSpec", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", - "norm_label": "cycleinfoplotspec", + "norm_label": "exportspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L289" + "source_location": "L311" }, { - "id": "src_cellpy_simple_gui_core_models_exportspec", - "label": "ExportSpec", + "id": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "label": "GroupLabelUpdate", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", - "norm_label": "exportspec", + "norm_label": "grouplabelupdate", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L303" + "source_location": "L91" }, { "id": "src_cellpy_simple_gui_core_models_ingestexamplerequest", @@ -75,11 +62,11 @@ "_callable_class": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "ingestexamplerequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L372" + "source_location": "L380" }, { "id": "src_cellpy_simple_gui_core_models_ingestrequest", @@ -88,24 +75,11 @@ "_callable_class": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "ingestrequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L358" - }, - { - "id": "src_cellpy_simple_gui_core_models_journalrowupdate", - "label": "JournalRowUpdate", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "journalrowupdate", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L319" + "source_location": "L366" }, { "id": "src_cellpy_simple_gui_core_models_loadexamplerequest", @@ -114,11 +88,11 @@ "_callable_class": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "loadexamplerequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L333" + "source_location": "L341" }, { "id": "src_cellpy_simple_gui_core_models_loadfilesrequest", @@ -127,11 +101,11 @@ "_callable_class": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "loadfilesrequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L337" + "source_location": "L345" }, { "id": "src_cellpy_simple_gui_core_models_previewrequest", @@ -140,11 +114,11 @@ "_callable_class": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "previewrequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L342" + "source_location": "L350" }, { "id": "src_cellpy_simple_gui_core_models_remotefindrequest", @@ -153,113 +127,48 @@ "_callable_class": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "remotefindrequest", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L349" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be", - "label": "Be()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "be()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e", - "label": "E()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc", - "label": "Lc()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "lc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me", - "label": "Me()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "me()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe", - "label": "qe()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "qe()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "source_location": "L357" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ru", - "label": "ru()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a", + "label": "a()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "ru()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ts", - "label": "ts()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do", + "label": "Do", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "ts()", + "norm_label": "do", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do", - "label": "Do", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo", + "label": "fo()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 100, - "community_name": "Do", + "community_name": "fo", "file_type": "code", - "norm_label": "do", + "norm_label": "fo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -270,7 +179,7 @@ "_callable_class": true, "_origin": "ast", "community": 100, - "community_name": "Do", + "community_name": "fo", "file_type": "code", "norm_label": "io()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -283,50 +192,37 @@ "_callable_class": true, "_origin": "ast", "community": 100, - "community_name": "Do", + "community_name": "fo", "file_type": "code", "norm_label": "oo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_comparepick", - "label": "ComparePick", + "id": "src_cellpy_simple_gui_core_models_summaryplotspec", + "label": "SummaryPlotSpec", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 105, - "community_name": "RawPlotSpec", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "comparepick", + "norm_label": "summaryplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L168" + "source_location": "L97" }, { - "id": "src_cellpy_simple_gui_core_models_rawplotspec", - "label": "RawPlotSpec", + "id": "src_cellpy_simple_gui_core_models_comparepick", + "label": "ComparePick", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", - "norm_label": "rawplotspec", + "norm_label": "comparepick", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L271" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh", - "label": "rh", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 106, - "community_name": "rh", - "file_type": "code", - "norm_label": "rh", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "source_location": "L176" }, { "id": "src_cellpy_simple_gui_core_cycle_report_cyclereport", @@ -352,7 +248,20 @@ "file_type": "code", "norm_label": "cellrecord", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L44" + "source_location": "L49" + }, + { + "id": "src_cellpy_simple_gui_core_models_compareplotspec", + "label": "ComparePlotSpec", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": "compareplotspec", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L188" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba", @@ -361,12 +270,25 @@ "_callable_class": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": "ba", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho", + "label": "ho()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 108, + "community_name": "ho", + "file_type": "code", + "norm_label": "ho()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu", "label": "mu()", @@ -374,7 +296,7 @@ "_callable_class": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": "mu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -387,22 +309,35 @@ "_callable_class": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": "ro", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uh", - "label": "uh", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su", + "label": "su()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": "uh", + "norm_label": "su()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo", + "label": "zo()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 108, + "community_name": "ho", + "file_type": "code", + "norm_label": "zo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -433,15 +368,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri", - "label": "ri()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li", + "label": "Li()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 110, - "community_name": "ri", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": "ri()", + "norm_label": "li()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -452,7 +387,7 @@ "_callable_class": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": "qi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -465,25 +400,12 @@ "_callable_class": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": "yi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn", - "label": "Mn()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 119, - "community_name": "Mn", - "file_type": "code", - "norm_label": "mn()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ao", "label": "Ao()", @@ -549,19 +471,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po", - "label": "Po()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 13, - "community_name": "wo", - "file_type": "code", - "norm_label": "po()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_so", "label": "So()", @@ -602,80 +511,80 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo", - "label": "zo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wn", + "label": "wn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 13, - "community_name": "wo", + "community": 130, + "community_name": "wn", "file_type": "code", - "norm_label": "zo()", + "norm_label": "wn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn", - "label": "kn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei", + "label": "Ei()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 130, - "community_name": "wn", + "community": 135, + "community_name": "Ei", "file_type": "code", - "norm_label": "kn()", + "norm_label": "ei()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln", - "label": "ln()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu", + "label": "nu()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 130, - "community_name": "wn", + "community": 14, + "community_name": "oa", "file_type": "code", - "norm_label": "ln()", + "norm_label": "nu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wn", - "label": "wn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa", + "label": "oa()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 130, - "community_name": "wn", + "community": 14, + "community_name": "oa", "file_type": "code", - "norm_label": "wn()", + "norm_label": "oa()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei", - "label": "Ei()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uc", + "label": "Uc()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 135, - "community_name": "Ei", + "community": 14, + "community_name": "oa", "file_type": "code", - "norm_label": "ei()", + "norm_label": "uc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uc", - "label": "Uc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl", + "label": "Yl()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", - "norm_label": "uc()", + "norm_label": "yl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -686,48 +595,48 @@ "_callable_class": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": "zu", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr", - "label": "qr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di", + "label": "di()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": "qr()", + "norm_label": "di()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu", - "label": "Qu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c", + "label": "c()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 148, - "community_name": "bn", + "community": 15, + "community_name": "e", "file_type": "code", - "norm_label": "qu()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee", + "label": "ee()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "c()", + "norm_label": "ee()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -745,28 +654,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se", + "label": "se()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "h()", + "norm_label": "se()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji", - "label": "ji()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te", + "label": "te()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "ji()", + "norm_label": "te()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua", + "label": "ua()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "ua()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -797,28 +719,15 @@ "source_location": "L8" }, { - "id": "packaging_smoke_test_client", - "label": "Client", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 168, - "community_name": "Client", - "file_type": "code", - "norm_label": "client", - "source_file": "packaging/smoke_test.py", - "source_location": "L91" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se", - "label": "se()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th", + "label": "th()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 169, - "community_name": "se", + "community": 160, + "community_name": "oi", "file_type": "code", - "norm_label": "se()", + "norm_label": "th()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -836,67 +745,41 @@ "source_location": "L370" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te", - "label": "te()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 176, - "community_name": "te", - "file_type": "code", - "norm_label": "te()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a", - "label": "a()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 18, - "community_name": "g", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g", - "label": "g()", + "id": "src_cellpy_simple_gui_api_jobs_daemonpool", + "label": "_DaemonPool", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 172, + "community_name": "6. Process state and threading", "file_type": "code", - "norm_label": "g()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_daemonpool", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L120" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt", - "label": "kt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic", + "label": "Ic()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "kt()", + "norm_label": "ic()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl", + "label": "nl()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "o()", + "norm_label": "nl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -907,7 +790,7 @@ "_callable_class": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", "norm_label": "pl", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -920,25 +803,12 @@ "_callable_class": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", "norm_label": "xc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl", - "label": "Yl()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 187, - "community_name": "pl", - "file_type": "code", - "norm_label": "yl()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cr", "label": "cr()", @@ -991,19 +861,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr", - "label": "sr()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": "sr()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur", "label": "ur()", @@ -1044,30 +901,30 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li", - "label": "Li()", + "id": "src_cellpy_simple_gui_config_settings", + "label": "Settings", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 20, - "community_name": "pi", + "community_name": "Settings", "file_type": "code", - "norm_label": "li()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "settings", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L18" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi", - "label": "pi()", + "id": "packaging_smoke_test_client", + "label": "Client", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 20, - "community_name": "pi", + "community": 204, + "community_name": "test_mcp_prototype.py", "file_type": "code", - "norm_label": "pi()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "client", + "source_file": "packaging/smoke_test.py", + "source_location": "L91" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na", @@ -1095,19 +952,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j", - "label": "j()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": "j()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k", "label": "k()", @@ -1122,93 +966,93 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt", - "label": "rt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt", + "label": "Pt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 219, + "community_name": "Pt", "file_type": "code", - "norm_label": "rt()", + "norm_label": "pt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt", - "label": "tt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve", + "label": "ve()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": "tt()", + "norm_label": "ve()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt", - "label": "Pt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye", + "label": "ye()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 219, - "community_name": "Pt", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": "pt()", + "norm_label": "ye()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt", - "label": "wt()", + "id": "src_cellpy_simple_gui_core_models_cellmeta", + "label": "CellMeta", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "wt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cellmeta", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L67" }, { - "id": "packaging_smoke_test_launchedapp", - "label": "LaunchedApp", + "id": "src_cellpy_simple_gui_core_models_journalrowupdate", + "label": "JournalRowUpdate", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 227, - "community_name": "LaunchedApp", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "launchedapp", - "source_file": "packaging/smoke_test.py", - "source_location": "L140" + "norm_label": "journalrowupdate", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L327" }, { - "id": "src_cellpy_simple_gui_config_settings", - "label": "Settings", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt", + "label": "bt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "settings", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L18" + "norm_label": "bt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt", - "label": "bt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe", + "label": "Xe()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 230, "community_name": "bt", "file_type": "code", - "norm_label": "bt()", + "norm_label": "xe()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1226,54 +1070,106 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu", - "label": "nu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr", + "label": "sr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "nu()", + "norm_label": "sr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa", - "label": "oa()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr", + "label": "Wr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "oa()", + "norm_label": "wr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic", - "label": "Ic()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr", + "label": "xr()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 240, + "community_name": "xr", + "file_type": "code", + "norm_label": "xr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr", + "label": "zr()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 240, + "community_name": "xr", + "file_type": "code", + "norm_label": "zr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_no", + "label": "no()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 241, - "community_name": "Ic", + "community_name": ".evaluate", "file_type": "code", - "norm_label": "ic()", + "norm_label": "no()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di", - "label": "di()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu", + "label": "pu()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "di()", + "norm_label": "pu()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra", + "label": "Ra()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 241, + "community_name": ".evaluate", + "file_type": "code", + "norm_label": "ra()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh", + "label": "rh", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 241, + "community_name": ".evaluate", + "file_type": "code", + "norm_label": "rh", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1291,132 +1187,132 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu", - "label": "eu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn", + "label": "Mn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "eu()", + "norm_label": "mn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qc", - "label": "qc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu", + "label": "eu()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": "qc()", + "norm_label": "eu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu", - "label": "tu", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kh", + "label": "kh", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 25, "community_name": "eu", "file_type": "code", - "norm_label": "tu", + "norm_label": "kh", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zi", - "label": "Zi()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qc", + "label": "qc()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 250, - "community_name": "Zi", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "zi()", + "norm_label": "qc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe", - "label": "Xe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu", + "label": "tu", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 255, - "community_name": "Xe", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "xe()", + "norm_label": "tu", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b", - "label": "b()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu", + "label": "uu()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "b()", + "norm_label": "uu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt", - "label": "qt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zi", + "label": "Zi()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 250, + "community_name": "Zi", "file_type": "code", - "norm_label": "qt()", + "norm_label": "zi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku", - "label": "Ku()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e", + "label": "E()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": "ku()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th", - "label": "th()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr", + "label": "kr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": "th()", + "norm_label": "kr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn", - "label": "cn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b", + "label": "b()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "cn()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1427,87 +1323,74 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f", - "label": "f()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "f()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt", - "label": "gt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g", + "label": "g()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "gt()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it", - "label": "it()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h", + "label": "h()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "it()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt", - "label": "lt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i", + "label": "I()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "lt()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt", - "label": "nt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j", + "label": "j()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "nt()", + "norm_label": "j()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot", - "label": "ot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n", + "label": "N()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "ot()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1518,7 +1401,7 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -1531,25 +1414,12 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st", - "label": "St()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "st()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t", "label": "T()", @@ -1557,7 +1427,7 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -1570,7 +1440,7 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -1583,48 +1453,48 @@ "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "ut()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w", - "label": "w()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt", + "label": "vt()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "w()", + "norm_label": "vt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x", - "label": "x()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w", + "label": "w()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "x()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt", - "label": "yt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x", + "label": "x()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "yt()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1680,45 +1550,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa", - "label": "sa()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": "sa()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi", - "label": "xi()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": "xi()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht", - "label": "ht()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": "ht()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_core_export_figureexporterror", "label": "FigureExportError", @@ -1733,17 +1564,17 @@ "source_location": "L51" }, { - "id": "src_cellpy_simple_gui_core_models_compareplotspec", - "label": "ComparePlotSpec", + "id": "src_cellpy_simple_gui_core_models_cellsexportspec", + "label": "CellsExportSpec", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "code", - "norm_label": "compareplotspec", + "norm_label": "cellsexportspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L180" + "source_location": "L321" }, { "id": "src_cellpy_simple_gui_core_models_dvaplotspec", @@ -1756,7 +1587,7 @@ "file_type": "code", "norm_label": "dvaplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L255" + "source_location": "L263" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wi", @@ -1771,6 +1602,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "packaging_smoke_test_launchedapp", + "label": "LaunchedApp", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "launchedapp", + "source_file": "packaging/smoke_test.py", + "source_location": "L140" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh", "label": "jh", @@ -1785,28 +1629,28 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su", - "label": "su()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku", + "label": "Ku()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": "su()", + "norm_label": "ku()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu", - "label": "uu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu", + "label": "Qu()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": "uu()", + "norm_label": "qu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1849,6 +1693,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl", + "label": "Hl()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 4, + "community_name": "ss", + "file_type": "code", + "norm_label": "hl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls", "label": "ls()", @@ -1863,15 +1720,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl", - "label": "nl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po", + "label": "Po()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "nl()", + "norm_label": "po()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -1902,17 +1759,17 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_jobs_daemonpool", - "label": "_DaemonPool", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht", + "label": "ht()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 44, - "community_name": "Job", + "community": 40, + "community_name": "Dt", "file_type": "code", - "norm_label": "_daemonpool", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L120" + "norm_label": "ht()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_api_jobs_job", @@ -1941,132 +1798,301 @@ "source_location": "L170" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga", - "label": "Ga()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca", + "label": "ca()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "ga()", + "norm_label": "ca()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho", - "label": "ho()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea", + "label": "ea()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "ho()", + "norm_label": "ea()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja", - "label": "ja", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa", + "label": "fa", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "ja", + "norm_label": "fa", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa", - "label": "Wa()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia", + "label": "ia()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "wa()", + "norm_label": "ia()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za", - "label": "Za()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka", + "label": "ka", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "za()", + "norm_label": "ka", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_logging_setup_intercepthandler", - "label": "_InterceptHandler", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma", + "label": "ma", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "_intercepthandler", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L103" + "norm_label": "ma", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_server_serverthread", - "label": "ServerThread", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa", + "label": "pa()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "serverthread", - "source_file": "src/cellpy_simple_gui/server.py", - "source_location": "L28" + "norm_label": "pa()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi", - "label": "hi()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa", + "label": "sa()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "hi()", + "norm_label": "sa()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae", - "label": "ae()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta", + "label": "ta()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "ae()", + "norm_label": "ta()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an", - "label": "an()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va", + "label": "va", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 45, + "community_name": "resize", + "file_type": "code", + "norm_label": "va", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa", + "label": "Wa()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 45, + "community_name": "resize", + "file_type": "code", + "norm_label": "wa()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa", + "label": "xa", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 45, + "community_name": "resize", + "file_type": "code", + "norm_label": "xa", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya", + "label": "ya", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 45, + "community_name": "resize", + "file_type": "code", + "norm_label": "ya", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za", + "label": "Za()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 45, + "community_name": "resize", + "file_type": "code", + "norm_label": "za()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o", + "label": "o()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 46, + "community_name": "o", + "file_type": "code", + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_logging_setup_intercepthandler", + "label": "_InterceptHandler", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 48, + "community_name": "config.py", + "file_type": "code", + "norm_label": "_intercepthandler", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L103" + }, + { + "id": "src_cellpy_simple_gui_server_serverthread", + "label": "ServerThread", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 48, + "community_name": "config.py", + "file_type": "code", + "norm_label": "serverthread", + "source_file": "src/cellpy_simple_gui/server.py", + "source_location": "L28" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ai", + "label": "Ai()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 49, + "community_name": "ii", + "file_type": "code", + "norm_label": "ai()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci", + "label": "ci()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 49, + "community_name": "ii", + "file_type": "code", + "norm_label": "ci()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi", + "label": "hi()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 49, + "community_name": "ii", + "file_type": "code", + "norm_label": "hi()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii", + "label": "ii()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 49, + "community_name": "ii", + "file_type": "code", + "norm_label": "ii()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi", + "label": "pi()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 49, + "community_name": "ii", + "file_type": "code", + "norm_label": "pi()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae", + "label": "ae()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "an()", + "norm_label": "ae()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2084,41 +2110,41 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br", - "label": "Br()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be", + "label": "Be()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "br()", + "norm_label": "be()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce", - "label": "ce()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br", + "label": "Br()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "ce()", + "norm_label": "br()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee", - "label": "ee()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce", + "label": "ce()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "ee()", + "norm_label": "ce()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2201,15 +2227,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr", - "label": "kr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc", + "label": "Lc()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "kr()", + "norm_label": "lc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2226,6 +2252,19 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me", + "label": "Me()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "me()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nr", "label": "nr()", @@ -2266,15 +2305,28 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr", - "label": "Pr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe", + "label": "qe()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "pr()", + "norm_label": "qe()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt", + "label": "qt()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 5, + "community_name": "i", + "file_type": "code", + "norm_label": "qt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2305,15 +2357,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn", - "label": "sn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ru", + "label": "ru()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "sn()", + "norm_label": "ru()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2331,15 +2383,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua", - "label": "ua()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ts", + "label": "ts()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "ua()", + "norm_label": "ts()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2357,15 +2409,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt", - "label": "vt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un", + "label": "Un()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "vt()", + "norm_label": "un()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2382,19 +2434,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye", - "label": "ye()", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 5, - "community_name": "i", - "file_type": "code", - "norm_label": "ye()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze", "label": "ze()", @@ -2409,15 +2448,15 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn", - "label": "gn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji", + "label": "ji()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 51, "community_name": ".reset", "file_type": "code", - "norm_label": "gn()", + "norm_label": "ji()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2435,511 +2474,472 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn", - "label": "xn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi", + "label": "xi()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 51, "community_name": ".reset", "file_type": "code", - "norm_label": "xn()", + "norm_label": "xi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_cyclesplotspec", - "label": "CyclesPlotSpec", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", - "file_type": "code", - "norm_label": "cyclesplotspec", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L124" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa", - "label": "aa()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn", + "label": "xn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "aa()", + "norm_label": "xn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca", - "label": "ca()", + "id": "src_cellpy_simple_gui_core_models_cycleinfoplotspec", + "label": "CycleInfoPlotSpec", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": "ca()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cycleinfoplotspec", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L297" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da", - "label": "da()", + "id": "src_cellpy_simple_gui_core_models_rawplotspec", + "label": "RawPlotSpec", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": "da()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "rawplotspec", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L279" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa", - "label": "fa", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn", + "label": "kn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 56, + "community_name": "kn", "file_type": "code", - "norm_label": "fa", + "norm_label": "kn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha", - "label": "ha()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r", + "label": "r()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 57, + "community_name": "r", "file_type": "code", - "norm_label": "ha()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka", - "label": "ka", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr", + "label": "vr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 58, + "community_name": "vr", "file_type": "code", - "norm_label": "ka", + "norm_label": "vr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la", - "label": "la()", + "id": "examples_mcp_server_refused", + "label": "Refused", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 59, + "community_name": "collect", "file_type": "code", - "norm_label": "la()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "refused", + "source_file": "examples/mcp/server.py", + "source_location": "L83" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma", - "label": "ma", + "id": "examples_mcp_server_session", + "label": "Session", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 59, + "community_name": "collect", "file_type": "code", - "norm_label": "ma", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "session", + "source_file": "examples/mcp/server.py", + "source_location": "L124" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa", - "label": "pa()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an", + "label": "an()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "pa()", + "norm_label": "an()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa", - "label": "qa", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn", + "label": "cn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "qa", + "norm_label": "cn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va", - "label": "va", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn", + "label": "gn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "va", + "norm_label": "gn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa", - "label": "xa", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn", + "label": "hn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "xa", + "norm_label": "hn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya", - "label": "ya", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr", + "label": "jr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "ya", + "norm_label": "jr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea", - "label": "ea()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln", + "label": "ln()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "ea()", + "norm_label": "ln()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia", - "label": "ia()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn", + "label": "nn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "ia()", + "norm_label": "nn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_no", - "label": "no()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr", + "label": "Pr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "no()", + "norm_label": "pr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu", - "label": "pu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr", + "label": "qr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "pu()", + "norm_label": "qr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra", - "label": "Ra()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn", + "label": "rn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "ra()", + "norm_label": "rn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta", - "label": "ta()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn", + "label": "sn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "ta()", + "norm_label": "sn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn", - "label": "hn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt", + "label": "wt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "hn()", + "norm_label": "wt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i", - "label": "I()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn", + "label": "yn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "i()", + "norm_label": "yn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt", - "label": "jt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr", + "label": "yr()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "jt()", + "norm_label": "yr()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn", - "label": "nn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f", + "label": "f()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "nn()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt", + "label": "gt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "r()", + "norm_label": "gt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn", - "label": "rn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it", + "label": "it()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "rn()", + "norm_label": "it()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn", - "label": "Tn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt", + "label": "jt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "tn()", + "norm_label": "jt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr", - "label": "yr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt", + "label": "kt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "yr()", + "norm_label": "kt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "examples_mcp_server_refused", - "label": "Refused", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 59, - "community_name": "collect", - "file_type": "code", - "norm_label": "refused", - "source_file": "examples/mcp/server.py", - "source_location": "L83" - }, - { - "id": "examples_mcp_server_session", - "label": "Session", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "community": 59, - "community_name": "collect", - "file_type": "code", - "norm_label": "session", - "source_file": "examples/mcp/server.py", - "source_location": "L124" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n", - "label": "N()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt", + "label": "lt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 6, - "community_name": "N", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "n()", + "norm_label": "lt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un", - "label": "Un()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt", + "label": "nt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 6, - "community_name": "N", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "un()", + "norm_label": "nt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve", - "label": "ve()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot", + "label": "ot()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 6, - "community_name": "N", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "ve()", + "norm_label": "ot()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn", - "label": "yn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt", + "label": "rt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 6, - "community_name": "N", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "yn()", + "norm_label": "rt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr", - "label": "jr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st", + "label": "St()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "jr()", + "norm_label": "st()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr", - "label": "Wr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt", + "label": "tt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "wr()", + "norm_label": "tt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr", - "label": "xr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt", + "label": "yt()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "xr()", + "norm_label": "yt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr", - "label": "zr()", + "id": "src_cellpy_simple_gui_core_library_library", + "label": "Library", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "zr()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "library", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L118" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr", @@ -2955,28 +2955,28 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti", - "label": "ti()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri", + "label": "ri()", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 63, "community_name": "ti", "file_type": "code", - "norm_label": "ti()", + "norm_label": "ri()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr", - "label": "vr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti", + "label": "ti()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "vr()", + "norm_label": "ti()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -2994,43 +2994,43 @@ "source_location": "L50" }, { - "id": "src_cellpy_simple_gui_core_projects_projectmanifest", - "label": "ProjectManifest", + "id": "src_cellpy_simple_gui_core_projects_groupentry", + "label": "GroupEntry", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 65, "community_name": "core/projects.py", "file_type": "code", - "norm_label": "projectmanifest", + "norm_label": "groupentry", "source_file": "src/cellpy_simple_gui/core/projects.py", "source_location": "L64" }, { - "id": "src_cellpy_simple_gui_core_projects_projectsummary", - "label": "ProjectSummary", + "id": "src_cellpy_simple_gui_core_projects_projectmanifest", + "label": "ProjectManifest", "_callable": true, "_callable_class": true, "_origin": "ast", "community": 65, "community_name": "core/projects.py", "file_type": "code", - "norm_label": "projectsummary", + "norm_label": "projectmanifest", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L75" + "source_location": "L71" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo", - "label": "fo()", + "id": "src_cellpy_simple_gui_core_projects_projectsummary", + "label": "ProjectSummary", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "fo()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "projectsummary", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L84" }, { "id": "src_cellpy_simple_gui_core_models_icaplotspec", @@ -3043,18 +3043,18 @@ "file_type": "code", "norm_label": "icaplotspec", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L235" + "source_location": "L243" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de", - "label": "de()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa", + "label": "aa()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "de()", + "norm_label": "aa()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -3098,158 +3098,184 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min", - "label": "$", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da", + "label": "da()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "$", + "norm_label": "da()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kh", - "label": "kh", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga", + "label": "Ga()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "kh", + "norm_label": "ga()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_files_expansion", - "label": "Expansion", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha", + "label": "ha()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "expansion", - "source_file": "src/cellpy_simple_gui/core/files.py", - "source_location": "L33" + "norm_label": "ha()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_pathnotallowed", - "label": "PathNotAllowed", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja", + "label": "ja", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "pathnotallowed", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L39" + "norm_label": "ja", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library", - "label": "Library", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la", + "label": "la()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "library", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L103" + "norm_label": "la()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_cellmeta", - "label": "CellMeta", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa", + "label": "qa", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "cellmeta", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L67" + "norm_label": "qa", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju", - "label": "ju()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn", + "label": "Tn()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "ju()", + "norm_label": "tn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_summaryplotspec", - "label": "SummaryPlotSpec", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de", + "label": "de()", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "summaryplotspec", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L89" + "norm_label": "de()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl", - "label": "Hl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min", + "label": "$", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 90, - "community_name": "Hl", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "hl()", + "norm_label": "$", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ai", - "label": "Ai()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uh", + "label": "uh", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "ai()", + "norm_label": "uh", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci", - "label": "ci()", + "id": "src_cellpy_simple_gui_core_models_cyclesplotspec", + "label": "CyclesPlotSpec", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "code", - "norm_label": "ci()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cyclesplotspec", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L132" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii", - "label": "ii()", + "id": "src_cellpy_simple_gui_core_files_expansion", + "label": "Expansion", "_callable": true, "_callable_class": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 83, + "community_name": "expand_paths", "file_type": "code", - "norm_label": "ii()", + "norm_label": "expansion", + "source_file": "src/cellpy_simple_gui/core/files.py", + "source_location": "L33" + }, + { + "id": "src_cellpy_simple_gui_core_paths_pathnotallowed", + "label": "PathNotAllowed", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "pathnotallowed", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L39" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju", + "label": "ju()", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": "ju()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -3260,7 +3286,7 @@ "_callable_class": true, "_origin": "ast", "community": 94, - "community_name": "ii", + "community_name": "Si", "file_type": "code", "norm_label": "si()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -3272,7 +3298,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "_asset_version()", "source_file": "src/cellpy_simple_gui/api/app.py", @@ -3284,7 +3310,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "guard_path()", "source_file": "src/cellpy_simple_gui/api/deps.py", @@ -3296,7 +3322,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "get_job_manager()", "source_file": "src/cellpy_simple_gui/api/jobs.py", @@ -3308,7 +3334,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": ".check_cancel()", "source_file": "src/cellpy_simple_gui/api/jobs.py", @@ -3320,47 +3346,23 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/api/jobs.py", "source_location": "L32" }, - { - "id": "src_cellpy_simple_gui_api_routers_cells_clear", - "label": "clear()", - "_callable": true, - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "clear()", - "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L161" - }, - { - "id": "src_cellpy_simple_gui_api_routers_cells_delete_cell", - "label": "delete_cell()", - "_callable": true, - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "delete_cell()", - "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L155" - }, { "id": "src_cellpy_simple_gui_api_routers_cells_get_state", "label": "get_state()", "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "get_state()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L45" + "source_location": "L47" }, { "id": "src_cellpy_simple_gui_api_routers_cells_list_examples", @@ -3368,11 +3370,11 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "list_examples()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L37" + "source_location": "L39" }, { "id": "src_cellpy_simple_gui_api_routers_cells_load_example", @@ -3380,11 +3382,11 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "load_example()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L89" + "source_location": "L91" }, { "id": "src_cellpy_simple_gui_api_routers_cells_load_examples_job", @@ -3392,11 +3394,11 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "_load_examples_job()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L52" + "source_location": "L54" }, { "id": "src_cellpy_simple_gui_api_routers_cells_load_files", @@ -3404,11 +3406,11 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "load_files()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L117" + "source_location": "L119" }, { "id": "src_cellpy_simple_gui_api_routers_cells_load_files_job", @@ -3416,11 +3418,11 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "_load_files_job()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L69" + "source_location": "L71" }, { "id": "src_cellpy_simple_gui_api_routers_cells_preview_files", @@ -3428,47 +3430,11 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "preview_files()", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L96" - }, - { - "id": "src_cellpy_simple_gui_api_routers_cells_select_all", - "label": "select_all()", - "_callable": true, - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "select_all()", - "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L149" - }, - { - "id": "src_cellpy_simple_gui_api_routers_cells_state", - "label": "_state()", - "_callable": true, - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "_state()", - "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L24" - }, - { - "id": "src_cellpy_simple_gui_api_routers_cells_update_cell", - "label": "update_cell()", - "_callable": true, - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "update_cell()", - "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L129" + "source_location": "L98" }, { "id": "src_cellpy_simple_gui_api_routers_ingest_ingest", @@ -3476,7 +3442,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "ingest()", "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", @@ -3488,7 +3454,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "ingest_example()", "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", @@ -3500,7 +3466,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "_ingest_example_job()", "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", @@ -3512,7 +3478,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "_ingest_job()", "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", @@ -3524,7 +3490,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "job_cancel()", "source_file": "src/cellpy_simple_gui/api/routers/jobs.py", @@ -3536,7 +3502,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "job_events()", "source_file": "src/cellpy_simple_gui/api/routers/jobs.py", @@ -3548,7 +3514,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "event_stream()", "source_file": "src/cellpy_simple_gui/api/routers/jobs.py", @@ -3560,47 +3526,35 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "job_status()", "source_file": "src/cellpy_simple_gui/api/routers/jobs.py", "source_location": "L17" }, { - "id": "src_cellpy_simple_gui_api_routers_projects_classify_import", - "label": "classify_import()", - "_callable": true, - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "classify_import()", - "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L116" - }, - { - "id": "src_cellpy_simple_gui_api_routers_projects_current_state", - "label": "_current_state()", + "id": "src_cellpy_simple_gui_api_routers_plots_require_dev_mode", + "label": "require_dev_mode()", "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", - "norm_label": "_current_state()", - "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L19" + "norm_label": "require_dev_mode()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L141" }, { - "id": "src_cellpy_simple_gui_api_routers_projects_list_projects", - "label": "list_projects()", + "id": "src_cellpy_simple_gui_api_routers_projects_classify_import", + "label": "classify_import()", "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", - "norm_label": "list_projects()", + "norm_label": "classify_import()", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L30" + "source_location": "L116" }, { "id": "src_cellpy_simple_gui_api_routers_projects_load_journal", @@ -3608,11 +3562,11 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "load_journal()", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L181" + "source_location": "L184" }, { "id": "src_cellpy_simple_gui_api_routers_projects_load_journal_job", @@ -3620,7 +3574,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "_load_journal_job()", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", @@ -3632,7 +3586,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "_open_job()", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", @@ -3644,7 +3598,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "open_project()", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", @@ -3656,7 +3610,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "pin_config()", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", @@ -3668,7 +3622,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "_save_job()", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", @@ -3680,7 +3634,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "save_project()", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", @@ -3692,7 +3646,7 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "remote_find()", "source_file": "src/cellpy_simple_gui/api/routers/remote.py", @@ -3704,1811 +3658,1079 @@ "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "_remote_find_job()", "source_file": "src/cellpy_simple_gui/api/routers/remote.py", "source_location": "L23" }, { - "id": "src_cellpy_simple_gui_core_files_effective_max_files", - "label": "effective_max_files()", + "id": "src_cellpy_simple_gui_api_routers_system_capabilities", + "label": "capabilities()", "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", - "norm_label": "effective_max_files()", - "source_file": "src/cellpy_simple_gui/core/files.py", - "source_location": "L20" - }, + "norm_label": "capabilities()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L66" + }, { - "id": "src_cellpy_simple_gui_core_library_get_library", - "label": "get_library()", + "id": "src_cellpy_simple_gui_api_routers_system_cellpy_config_diagnostics", + "label": "cellpy_config_diagnostics()", "_callable": true, "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", - "norm_label": "get_library()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L299" + "norm_label": "cellpy_config_diagnostics()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L108" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_g", - "label": "g()", + "id": "src_cellpy_simple_gui_api_routers_system_job_timings", + "label": "job_timings()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 0, + "community_name": "cells.py", "file_type": "code", - "norm_label": "g()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "job_timings()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L98" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_h", - "label": "h()", + "id": "src_cellpy_simple_gui_api_routers_system_logs", + "label": "logs()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 0, + "community_name": "cells.py", "file_type": "code", - "norm_label": "h()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "logs()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L84" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dc", - "label": "Dc()", + "id": "src_cellpy_simple_gui_api_routers_system_webview_window", + "label": "_webview_window()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 0, + "community_name": "cells.py", "file_type": "code", - "norm_label": "dc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_webview_window()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L39" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_a", - "label": "a()", + "id": "src_cellpy_simple_gui_core_files_effective_max_files", + "label": "effective_max_files()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 0, + "community_name": "cells.py", "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "effective_max_files()", + "source_file": "src/cellpy_simple_gui/core/files.py", + "source_location": "L20" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_logging_setup_recent_logs", + "label": "recent_logs()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 0, + "community_name": "cells.py", "file_type": "code", - "norm_label": ".eachchild()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "recent_logs()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L83" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_o", - "label": "o()", + "id": "src_cellpy_simple_gui_logging_setup_ring_enabled", + "label": "ring_enabled()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 0, + "community_name": "cells.py", "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ring_enabled()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L99" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_outputdefined", - "label": ".outputDefined()", + "id": "tests_test_core_test_dev_mode_raises_file_ceiling", + "label": "test_dev_mode_raises_file_ceiling()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 0, + "community_name": "cells.py", "file_type": "code", - "norm_label": ".outputdefined()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_dev_mode_raises_file_ceiling()", + "source_file": "tests/test_core.py", + "source_location": "L1654" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_s", - "label": "s()", + "id": "tests_test_core_test_regular_mode_clamps_file_request", + "label": "test_regular_mode_clamps_file_request()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 0, + "community_name": "cells.py", "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_regular_mode_clamps_file_request()", + "source_file": "tests/test_core.py", + "source_location": "L1665" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_seturl", - "label": ".setURL()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_aborttile", + "label": ".abortTile()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": ".seturl()", + "norm_label": ".aborttile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_c", + "label": "c()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": ".update()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_x", - "label": "x()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "x()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "a()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_flip", + "label": ".flip()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "l()", + "norm_label": ".flip()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_rt", - "label": "Rt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "rt()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fc", - "label": "fc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "fc()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frameasync", - "label": "frameAsync()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "frameasync()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "f()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "i()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_reloadtile", + "label": ".reloadTile()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "l()", + "norm_label": ".reloadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_removetile", + "label": ".removeTile()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "s()", + "norm_label": ".removetile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_s_v", - "label": "v()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "v()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loadvectortile", + "label": ".loadVectorTile()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "p()", + "norm_label": ".loadvectortile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_x", - "label": "x()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setexpirydata", + "label": ".setExpiryData()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "x()", + "norm_label": ".setexpirydata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_from", + "label": ".from()", "_callable": true, "_origin": "ast", - "community": 1, + "community": 10, "community_name": "a", "file_type": "code", - "norm_label": "a()", + "norm_label": ".from()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_k", - "label": "k()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "k()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "p()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loadgeometry", - "label": "loadGeometry()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "loadgeometry()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_d", - "label": "d()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_populatepaintarray", + "label": ".populatePaintArray()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "d()", + "norm_label": ".populatepaintarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_e", - "label": "E()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_setpaintvalue", + "label": "._setPaintValue()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "e()", + "norm_label": "._setpaintvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_k", - "label": "k()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_setuniform", + "label": ".setUniform()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "k()", + "norm_label": ".setuniform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_updatepaintarray", + "label": ".updatePaintArray()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "m()", + "norm_label": ".updatepaintarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_upload", + "label": ".upload()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "o()", + "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "p()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_defines", + "label": ".defines()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "r()", + "norm_label": ".defines()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getbinderattributes", + "label": ".getBinderAttributes()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "s()", + "norm_label": ".getbinderattributes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_v_s", - "label": "S()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getbinderuniforms", + "label": ".getBinderUniforms()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "s()", + "norm_label": ".getbinderuniforms()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_b", - "label": "b()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getuniforms", + "label": ".getUniforms()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "b()", + "norm_label": ".getuniforms()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_setuniforms", + "label": ".setUniforms()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".setuniforms()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jo", + "label": "jo()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "u()", + "norm_label": "jo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nc", - "label": "nc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "nc()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_h_t", - "label": "T()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "t()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_populatepaintarray", + "label": ".populatePaintArray()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "f()", + "norm_label": ".populatepaintarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oc", - "label": "Oc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_setpaintvalue", + "label": "._setPaintValue()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "oc()", + "norm_label": "._setpaintvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_updatepaintarray", + "label": ".updatePaintArray()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "o()", + "norm_label": ".updatepaintarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_os", - "label": "Os()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_upload", + "label": ".upload()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 100, + "community_name": "fo", "file_type": "code", - "norm_label": "os()", + "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_d", - "label": "d()", + "id": "tests_test_gui_playwright_browser_page", + "label": "browser_page()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "d()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "browser_page()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L65" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_m", - "label": "m()", + "id": "tests_test_gui_playwright_bundled_cellpy_file", + "label": "_bundled_cellpy_file()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "m()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_bundled_cellpy_file()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L120" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pc", - "label": "Pc()", + "id": "tests_test_gui_playwright_chromium_available", + "label": "_chromium_available()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "pc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_chromium_available()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L30" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn_a", - "label": "a()", + "id": "tests_test_gui_playwright_live_server", + "label": "live_server()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "live_server()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L41" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_i", - "label": "i()", + "id": "tests_test_gui_playwright_load_bundled_cell", + "label": "_load_bundled_cell()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "i()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_load_bundled_cell()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L214" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_o", - "label": "o()", + "id": "tests_test_gui_playwright_test_add_cells_modal_stages_and_loads", + "label": "test_add_cells_modal_stages_and_loads()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_add_cells_modal_stages_and_loads()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L159" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_s", - "label": "s()", + "id": "tests_test_gui_playwright_test_cells_modal_defers_plot_refresh_until_close", + "label": "test_cells_modal_defers_plot_refresh_until_close()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_cells_modal_defers_plot_refresh_until_close()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L230" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_x_n", - "label": "n()", + "id": "tests_test_gui_playwright_test_cells_modal_names_groups", + "label": "test_cells_modal_names_groups()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "n()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_cells_modal_names_groups()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L286" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a", - "label": "a()", + "id": "tests_test_gui_playwright_test_data_panel_collapses_after_load", + "label": "test_data_panel_collapses_after_load()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_data_panel_collapses_after_load()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L128" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a_a", - "label": "a()", + "id": "tests_test_gui_playwright_test_load_demo_cells_and_summary_plot", + "label": "test_load_demo_cells_and_summary_plot()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_load_demo_cells_and_summary_plot()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L93" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a_s", - "label": "s()", + "id": "tests_test_gui_playwright_test_shell_loads", + "label": "test_shell_loads()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 101, + "community_name": "test_gui_playwright.py", "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_shell_loads()", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L84" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_core_collect_export_bytes", + "label": "export_bytes()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": ".bind()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "export_bytes()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1481" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_core_collect_export_frame_bytes", + "label": "export_frame_bytes()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "export_frame_bytes()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1464" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_core_collect_family_required_columns", + "label": "_family_required_columns()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_family_required_columns()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L203" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_p", - "label": "p()", + "id": "src_cellpy_simple_gui_core_collect_family_summary_options", + "label": "family_summary_options()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": "p()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "family_summary_options()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L239" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_u", - "label": "u()", + "id": "src_cellpy_simple_gui_core_collect_missing_summary_columns", + "label": "missing_summary_columns()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "missing_summary_columns()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L279" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rc", - "label": "Rc()", + "id": "src_cellpy_simple_gui_core_collect_pre_collect_column", + "label": "_pre_collect_column()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": "rc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_pre_collect_column()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L230" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_h", - "label": "h()", + "id": "src_cellpy_simple_gui_core_collect_registry_plot_types", + "label": "registry_plot_types()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": "h()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "registry_plot_types()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L154" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ru_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_core_collect_select_ica_direction", + "label": "select_ica_direction()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "select_ica_direction()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L570" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s", - "label": "s()", + "id": "src_cellpy_simple_gui_core_collect_summary_collection", + "label": "summary_collection()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "summary_collection()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L484" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_a", - "label": "a()", + "id": "src_cellpy_simple_gui_core_collect_summary_options_for", + "label": "summary_options_for()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "summary_options_for()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L303" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_c", - "label": "c()", + "id": "src_cellpy_simple_gui_core_collect_summary_required_columns", + "label": "summary_required_columns()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": "c()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "summary_required_columns()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L314" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_castup", - "label": ".castUp()", + "id": "src_cellpy_simple_gui_core_collect_summary_schema", + "label": "_summary_schema()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": ".castup()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_summary_schema()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L257" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_d", - "label": "d()", + "id": "src_cellpy_simple_gui_core_export_cycles_export", + "label": "cycles_export()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": "d()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cycles_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L80" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_dispose", - "label": ".dispose()", + "id": "src_cellpy_simple_gui_core_export_summary_export", + "label": "summary_export()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 102, + "community_name": "select_ica_direction", "file_type": "code", - "norm_label": ".dispose()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "summary_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L59" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_e", - "label": "e()", + "id": "tests_test_core_hover_variable", + "label": "_hover_variable()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_hover_variable()", + "source_file": "tests/test_core.py", + "source_location": "L963" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_f", - "label": "f()", + "id": "tests_test_core_ica_y_values", + "label": "_ica_y_values()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "f()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_ica_y_values()", + "source_file": "tests/test_core.py", + "source_location": "L487" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_l", - "label": "l()", + "id": "tests_test_core_kaleido_available", + "label": "_kaleido_available()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_kaleido_available()", + "source_file": "tests/test_core.py", + "source_location": "L1449" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_m", - "label": "m()", + "id": "tests_test_core_numeric_y_values", + "label": "_numeric_y_values()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "m()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_numeric_y_values()", + "source_file": "tests/test_core.py", + "source_location": "L939" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_o", - "label": "o()", + "id": "tests_test_core_rate_library", + "label": "_rate_library()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_rate_library()", + "source_file": "tests/test_core.py", + "source_location": "L1501" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_p", - "label": "p()", + "id": "tests_test_core_spread_library", + "label": "_spread_library()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "p()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_spread_library()", + "source_file": "tests/test_core.py", + "source_location": "L1151" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_u", - "label": "u()", + "id": "tests_test_core_summary_facet_titles_top_to_bottom", + "label": "_summary_facet_titles_top_to_bottom()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_summary_facet_titles_top_to_bottom()", + "source_file": "tests/test_core.py", + "source_location": "L1331" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v", - "label": "v()", + "id": "tests_test_core_test_apply_physical_meta_updates_and_summary", + "label": "test_apply_physical_meta_updates_and_summary()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "v()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_apply_physical_meta_updates_and_summary()", + "source_file": "tests/test_core.py", + "source_location": "L25" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v_r", - "label": "r()", + "id": "tests_test_core_test_build_reports_without_a_frame_never_calls_cycles_unreadable", + "label": "test_build_reports_without_a_frame_never_calls_cycles_unreadable()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_build_reports_without_a_frame_never_calls_cycles_unreadable()", + "source_file": "tests/test_core.py", + "source_location": "L454" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_y", - "label": "y()", + "id": "tests_test_core_test_cells_export_cellpy_and_xlsx", + "label": "test_cells_export_cellpy_and_xlsx()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "y()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_cells_export_cellpy_and_xlsx()", + "source_file": "tests/test_core.py", + "source_location": "L1514" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_d", - "label": "d()", + "id": "tests_test_core_test_cells_export_csv_is_zip", + "label": "test_cells_export_csv_is_zip()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "d()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_cells_export_csv_is_zip()", + "source_file": "tests/test_core.py", + "source_location": "L1545" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_n", - "label": "n()", + "id": "tests_test_core_test_cells_export_two_cells_zip", + "label": "test_cells_export_two_cells_zip()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "n()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_cells_export_two_cells_zip()", + "source_file": "tests/test_core.py", + "source_location": "L1526" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_s", - "label": "S()", + "id": "tests_test_core_test_compress_ranges", + "label": "test_compress_ranges()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compress_ranges()", + "source_file": "tests/test_core.py", + "source_location": "L427" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_f", - "label": "f()", + "id": "tests_test_core_test_config_diagnostics_masks_credentialish_values", + "label": "test_config_diagnostics_masks_credentialish_values()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "f()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_config_diagnostics_masks_credentialish_values()", + "source_file": "tests/test_core.py", + "source_location": "L1577" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_c", - "label": "c()", + "id": "tests_test_core_test_config_diagnostics_shape", + "label": "test_config_diagnostics_shape()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "c()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_config_diagnostics_shape()", + "source_file": "tests/test_core.py", + "source_location": "L1561" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_h", - "label": "h()", + "id": "tests_test_core_test_config_diagnostics_survives_broken_provenance", + "label": "test_config_diagnostics_survives_broken_provenance()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", + "community": 103, + "community_name": "test_core.py", "file_type": "code", - "norm_label": "h()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_config_diagnostics_survives_broken_provenance()", + "source_file": "tests/test_core.py", + "source_location": "L1614" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_u", - "label": "u()", + "id": "tests_test_core_test_config_diagnostics_warns_on_legacy_fallback", + "label": "test_config_diagnostics_warns_on_legacy_fallback()", "_callable": true, "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_s", - "label": "S()", - "_callable": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wc", - "label": "wc()", - "_callable": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "wc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_f", - "label": "f()", - "_callable": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "f()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_h", - "label": "h()", - "_callable": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "h()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xo", - "label": "xo()", - "_callable": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "xo()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y", - "label": "y()", - "_callable": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "y()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_o", - "label": "o()", - "_callable": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yo", - "label": "yo()", - "_callable": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "yo()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zc", - "label": "zc()", - "_callable": true, - "_origin": "ast", - "community": 1, - "community_name": "a", - "file_type": "code", - "norm_label": "zc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_core_collect_export_bytes", - "label": "export_bytes()", - "_callable": true, - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "code", - "norm_label": "export_bytes()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1457" - }, - { - "id": "src_cellpy_simple_gui_core_collect_export_frame_bytes", - "label": "export_frame_bytes()", - "_callable": true, - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "code", - "norm_label": "export_frame_bytes()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1440" - }, - { - "id": "src_cellpy_simple_gui_core_collect_inject_app_chrome", - "label": "_inject_app_chrome()", - "_callable": true, - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "code", - "norm_label": "_inject_app_chrome()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L653" - }, - { - "id": "src_cellpy_simple_gui_core_collect_select_ica_direction", - "label": "select_ica_direction()", - "_callable": true, - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "code", - "norm_label": "select_ica_direction()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L549" - }, - { - "id": "src_cellpy_simple_gui_core_collect_summary_collection", - "label": "summary_collection()", - "_callable": true, - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "code", - "norm_label": "summary_collection()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L463" - }, - { - "id": "src_cellpy_simple_gui_core_export_cycles_export", - "label": "cycles_export()", - "_callable": true, - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "code", - "norm_label": "cycles_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L80" - }, - { - "id": "src_cellpy_simple_gui_core_export_summary_export", - "label": "summary_export()", - "_callable": true, - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "code", - "norm_label": "summary_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L59" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_destroy", - "label": ".destroy()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_populatepaintarray", - "label": ".populatePaintArray()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".populatepaintarray()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_setpaintvalue", - "label": "._setPaintValue()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": "._setpaintvalue()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_setuniform", - "label": ".setUniform()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".setuniform()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_updatepaintarray", - "label": ".updatePaintArray()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".updatepaintarray()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_do_upload", - "label": ".upload()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".upload()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_destroy", - "label": ".destroy()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_populatepaintarray", - "label": ".populatePaintArray()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".populatepaintarray()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_setpaintvalue", - "label": "._setPaintValue()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": "._setpaintvalue()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_updatepaintarray", - "label": ".updatePaintArray()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".updatepaintarray()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oo_upload", - "label": ".upload()", - "_callable": true, - "_origin": "ast", - "community": 100, - "community_name": "Do", - "file_type": "code", - "norm_label": ".upload()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app_api", - "label": "api()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "api()", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app_app", - "label": "app()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "app()", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L56" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app_loadrecent", - "label": "loadRecent()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "loadrecent()", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L46" - }, - { - "id": "tests_test_gui_playwright_browser_page", - "label": "browser_page()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "browser_page()", - "source_file": "tests/test_gui_playwright.py", - "source_location": "L65" - }, - { - "id": "tests_test_gui_playwright_bundled_cellpy_file", - "label": "_bundled_cellpy_file()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "_bundled_cellpy_file()", - "source_file": "tests/test_gui_playwright.py", - "source_location": "L120" - }, - { - "id": "tests_test_gui_playwright_chromium_available", - "label": "_chromium_available()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "_chromium_available()", - "source_file": "tests/test_gui_playwright.py", - "source_location": "L30" - }, - { - "id": "tests_test_gui_playwright_live_server", - "label": "live_server()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "live_server()", - "source_file": "tests/test_gui_playwright.py", - "source_location": "L41" - }, - { - "id": "tests_test_gui_playwright_load_bundled_cell", - "label": "_load_bundled_cell()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "_load_bundled_cell()", - "source_file": "tests/test_gui_playwright.py", - "source_location": "L214" - }, - { - "id": "tests_test_gui_playwright_test_add_cells_modal_stages_and_loads", - "label": "test_add_cells_modal_stages_and_loads()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "test_add_cells_modal_stages_and_loads()", - "source_file": "tests/test_gui_playwright.py", - "source_location": "L159" - }, - { - "id": "tests_test_gui_playwright_test_cells_modal_defers_plot_refresh_until_close", - "label": "test_cells_modal_defers_plot_refresh_until_close()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "test_cells_modal_defers_plot_refresh_until_close()", - "source_file": "tests/test_gui_playwright.py", - "source_location": "L230" - }, - { - "id": "tests_test_gui_playwright_test_data_panel_collapses_after_load", - "label": "test_data_panel_collapses_after_load()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "test_data_panel_collapses_after_load()", - "source_file": "tests/test_gui_playwright.py", - "source_location": "L128" - }, - { - "id": "tests_test_gui_playwright_test_load_demo_cells_and_summary_plot", - "label": "test_load_demo_cells_and_summary_plot()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "test_load_demo_cells_and_summary_plot()", - "source_file": "tests/test_gui_playwright.py", - "source_location": "L93" - }, - { - "id": "tests_test_gui_playwright_test_shell_loads", - "label": "test_shell_loads()", - "_callable": true, - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "test_shell_loads()", - "source_file": "tests/test_gui_playwright.py", - "source_location": "L84" - }, - { - "id": "src_cellpy_simple_gui_core_collect_tidy_facet_annotations", - "label": "_tidy_facet_annotations()", - "_callable": true, - "_origin": "ast", - "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "code", - "norm_label": "_tidy_facet_annotations()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1185" - }, - { - "id": "tests_test_core_dev_mode", - "label": "dev_mode()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "dev_mode()", - "source_file": "tests/test_core.py", - "source_location": "L1549" - }, - { - "id": "tests_test_core_hover_variable", - "label": "_hover_variable()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "_hover_variable()", - "source_file": "tests/test_core.py", - "source_location": "L963" - }, - { - "id": "tests_test_core_ica_y_values", - "label": "_ica_y_values()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "_ica_y_values()", - "source_file": "tests/test_core.py", - "source_location": "L487" - }, - { - "id": "tests_test_core_kaleido_available", - "label": "_kaleido_available()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "_kaleido_available()", - "source_file": "tests/test_core.py", - "source_location": "L1367" - }, - { - "id": "tests_test_core_numeric_y_values", - "label": "_numeric_y_values()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "_numeric_y_values()", - "source_file": "tests/test_core.py", - "source_location": "L939" - }, - { - "id": "tests_test_core_rate_library", - "label": "_rate_library()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "_rate_library()", - "source_file": "tests/test_core.py", - "source_location": "L1419" - }, - { - "id": "tests_test_core_summary_facet_titles_top_to_bottom", - "label": "_summary_facet_titles_top_to_bottom()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "_summary_facet_titles_top_to_bottom()", - "source_file": "tests/test_core.py", - "source_location": "L1249" - }, - { - "id": "tests_test_core_test_apply_physical_meta_updates_and_summary", - "label": "test_apply_physical_meta_updates_and_summary()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_apply_physical_meta_updates_and_summary()", - "source_file": "tests/test_core.py", - "source_location": "L25" - }, - { - "id": "tests_test_core_test_build_reports_without_a_frame_never_calls_cycles_unreadable", - "label": "test_build_reports_without_a_frame_never_calls_cycles_unreadable()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_build_reports_without_a_frame_never_calls_cycles_unreadable()", - "source_file": "tests/test_core.py", - "source_location": "L454" - }, - { - "id": "tests_test_core_test_cells_export_cellpy_and_xlsx", - "label": "test_cells_export_cellpy_and_xlsx()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cells_export_cellpy_and_xlsx()", - "source_file": "tests/test_core.py", - "source_location": "L1432" - }, - { - "id": "tests_test_core_test_cells_export_csv_is_zip", - "label": "test_cells_export_csv_is_zip()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cells_export_csv_is_zip()", - "source_file": "tests/test_core.py", - "source_location": "L1463" - }, - { - "id": "tests_test_core_test_cells_export_two_cells_zip", - "label": "test_cells_export_two_cells_zip()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cells_export_two_cells_zip()", - "source_file": "tests/test_core.py", - "source_location": "L1444" - }, - { - "id": "tests_test_core_test_compress_ranges", - "label": "test_compress_ranges()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_compress_ranges()", - "source_file": "tests/test_core.py", - "source_location": "L427" - }, - { - "id": "tests_test_core_test_config_diagnostics_masks_credentialish_values", - "label": "test_config_diagnostics_masks_credentialish_values()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_config_diagnostics_masks_credentialish_values()", - "source_file": "tests/test_core.py", - "source_location": "L1495" - }, - { - "id": "tests_test_core_test_config_diagnostics_shape", - "label": "test_config_diagnostics_shape()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_config_diagnostics_shape()", - "source_file": "tests/test_core.py", - "source_location": "L1479" - }, - { - "id": "tests_test_core_test_config_diagnostics_survives_broken_provenance", - "label": "test_config_diagnostics_survives_broken_provenance()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_config_diagnostics_survives_broken_provenance()", - "source_file": "tests/test_core.py", - "source_location": "L1532" - }, - { - "id": "tests_test_core_test_config_diagnostics_warns_on_legacy_fallback", - "label": "test_config_diagnostics_warns_on_legacy_fallback()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", + "community": 103, + "community_name": "test_core.py", "file_type": "code", "norm_label": "test_config_diagnostics_warns_on_legacy_fallback()", "source_file": "tests/test_core.py", - "source_location": "L1513" + "source_location": "L1595" }, { "id": "tests_test_core_test_curated_plot_types_unaffected", @@ -5520,7 +4742,7 @@ "file_type": "code", "norm_label": "test_curated_plot_types_unaffected()", "source_file": "tests/test_core.py", - "source_location": "L1685" + "source_location": "L1767" }, { "id": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", @@ -5532,19 +4754,7 @@ "file_type": "code", "norm_label": "test_cv_split_and_fullcell_families_are_plottable()", "source_file": "tests/test_core.py", - "source_location": "L1648" - }, - { - "id": "tests_test_core_test_cycle_info_figure", - "label": "test_cycle_info_figure()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cycle_info_figure()", - "source_file": "tests/test_core.py", - "source_location": "L1845" + "source_location": "L1730" }, { "id": "tests_test_core_test_cycle_info_needs_cycles", @@ -5556,31 +4766,7 @@ "file_type": "code", "norm_label": "test_cycle_info_needs_cycles()", "source_file": "tests/test_core.py", - "source_location": "L1856" - }, - { - "id": "tests_test_core_test_cycles_collector_layouts", - "label": "test_cycles_collector_layouts()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cycles_collector_layouts()", - "source_file": "tests/test_core.py", - "source_location": "L404" - }, - { - "id": "tests_test_core_test_cycles_collector_xy_ranges_per_cycle", - "label": "test_cycles_collector_xy_ranges_per_cycle()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cycles_collector_xy_ranges_per_cycle()", - "source_file": "tests/test_core.py", - "source_location": "L282" + "source_location": "L1938" }, { "id": "tests_test_core_test_cycles_export_csv", @@ -5592,19 +4778,7 @@ "file_type": "code", "norm_label": "test_cycles_export_csv()", "source_file": "tests/test_core.py", - "source_location": "L1360" - }, - { - "id": "tests_test_core_test_cycles_export_follows_curve_kind", - "label": "test_cycles_export_follows_curve_kind()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cycles_export_follows_curve_kind()", - "source_file": "tests/test_core.py", - "source_location": "L246" + "source_location": "L1442" }, { "id": "tests_test_core_test_cycles_figure", @@ -5642,54 +4816,6 @@ "source_file": "tests/test_core.py", "source_location": "L388" }, - { - "id": "tests_test_core_test_cycles_figure_xy_ranges", - "label": "test_cycles_figure_xy_ranges()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cycles_figure_xy_ranges()", - "source_file": "tests/test_core.py", - "source_location": "L259" - }, - { - "id": "tests_test_core_test_cycles_figure_xy_ranges_one_sided", - "label": "test_cycles_figure_xy_ranges_one_sided()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cycles_figure_xy_ranges_one_sided()", - "source_file": "tests/test_core.py", - "source_location": "L300" - }, - { - "id": "tests_test_core_test_cycles_film_layout_is_a_density_plot", - "label": "test_cycles_film_layout_is_a_density_plot()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cycles_film_layout_is_a_density_plot()", - "source_file": "tests/test_core.py", - "source_location": "L213" - }, - { - "id": "tests_test_core_test_cycles_pane_plots_differentials", - "label": "test_cycles_pane_plots_differentials()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_cycles_pane_plots_differentials()", - "source_file": "tests/test_core.py", - "source_location": "L200" - }, { "id": "tests_test_core_test_dev_mode_off_by_default", "label": "test_dev_mode_off_by_default()", @@ -5700,31 +4826,7 @@ "file_type": "code", "norm_label": "test_dev_mode_off_by_default()", "source_file": "tests/test_core.py", - "source_location": "L1559" - }, - { - "id": "tests_test_core_test_dev_mode_raises_file_ceiling", - "label": "test_dev_mode_raises_file_ceiling()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_dev_mode_raises_file_ceiling()", - "source_file": "tests/test_core.py", - "source_location": "L1572" - }, - { - "id": "tests_test_core_test_dva_both_distinguishes_half_cycles", - "label": "test_dva_both_distinguishes_half_cycles()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_dva_both_distinguishes_half_cycles()", - "source_file": "tests/test_core.py", - "source_location": "L1712" + "source_location": "L1641" }, { "id": "tests_test_core_test_dva_collection_spans_cells", @@ -5736,31 +4838,7 @@ "file_type": "code", "norm_label": "test_dva_collection_spans_cells()", "source_file": "tests/test_core.py", - "source_location": "L1729" - }, - { - "id": "tests_test_core_test_dva_export_matches_chart", - "label": "test_dva_export_matches_chart()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_dva_export_matches_chart()", - "source_file": "tests/test_core.py", - "source_location": "L1751" - }, - { - "id": "tests_test_core_test_dva_figure_directions", - "label": "test_dva_figure_directions()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_dva_figure_directions()", - "source_file": "tests/test_core.py", - "source_location": "L1697" + "source_location": "L1811" }, { "id": "tests_test_core_test_dva_figure_needs_cycles", @@ -5772,7 +4850,7 @@ "file_type": "code", "norm_label": "test_dva_figure_needs_cycles()", "source_file": "tests/test_core.py", - "source_location": "L1742" + "source_location": "L1824" }, { "id": "tests_test_core_test_family_options_carry_cv_split", @@ -5784,7 +4862,7 @@ "file_type": "code", "norm_label": "test_family_options_carry_cv_split()", "source_file": "tests/test_core.py", - "source_location": "L1675" + "source_location": "L1757" }, { "id": "tests_test_core_test_family_plot_type_renders", @@ -5796,7 +4874,7 @@ "file_type": "code", "norm_label": "test_family_plot_type_renders()", "source_file": "tests/test_core.py", - "source_location": "L1614" + "source_location": "L1696" }, { "id": "tests_test_core_test_figure_export_names_the_actual_missing_piece", @@ -5808,7 +4886,7 @@ "file_type": "code", "norm_label": "test_figure_export_names_the_actual_missing_piece()", "source_file": "tests/test_core.py", - "source_location": "L1401" + "source_location": "L1483" }, { "id": "tests_test_core_test_figure_export_names_the_actual_missing_piece_boom", @@ -5820,7 +4898,7 @@ "file_type": "code", "norm_label": "boom()", "source_file": "tests/test_core.py", - "source_location": "L1406" + "source_location": "L1488" }, { "id": "tests_test_core_test_figure_export_unknown_format_raises", @@ -5832,7 +4910,19 @@ "file_type": "code", "norm_label": "test_figure_export_unknown_format_raises()", "source_file": "tests/test_core.py", - "source_location": "L1384" + "source_location": "L1466" + }, + { + "id": "tests_test_core_test_group_average_keeps_singleton_traces", + "label": "test_group_average_keeps_singleton_traces()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_group_average_keeps_singleton_traces()", + "source_file": "tests/test_core.py", + "source_location": "L611" }, { "id": "tests_test_core_test_group_average_singleton_traces_on_correct_facet", @@ -5846,6 +4936,30 @@ "source_file": "tests/test_core.py", "source_location": "L648" }, + { + "id": "tests_test_core_test_group_names_caption_ungrouped_legend", + "label": "test_group_names_caption_ungrouped_legend()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_group_names_caption_ungrouped_legend()", + "source_file": "tests/test_core.py", + "source_location": "L1294" + }, + { + "id": "tests_test_core_test_group_names_reach_grouped_legend", + "label": "test_group_names_reach_grouped_legend()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_group_names_reach_grouped_legend()", + "source_file": "tests/test_core.py", + "source_location": "L1278" + }, { "id": "tests_test_core_test_ica_figure_charge_differs_from_discharge", "label": "test_ica_figure_charge_differs_from_discharge()", @@ -5906,6 +5020,18 @@ "source_file": "tests/test_core.py", "source_location": "L73" }, + { + "id": "tests_test_core_test_library_group_names", + "label": "test_library_group_names()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_library_group_names()", + "source_file": "tests/test_core.py", + "source_location": "L1243" + }, { "id": "tests_test_core_test_list_instruments_dynamic", "label": "test_list_instruments_dynamic()", @@ -5928,7 +5054,7 @@ "file_type": "code", "norm_label": "test_meta_edit_falls_back_without_refresh_after()", "source_file": "tests/test_core.py", - "source_location": "L1900" + "source_location": "L1982" }, { "id": "tests_test_core_test_meta_edit_uses_selective_refresh", @@ -5940,7 +5066,19 @@ "file_type": "code", "norm_label": "test_meta_edit_uses_selective_refresh()", "source_file": "tests/test_core.py", - "source_location": "L1875" + "source_location": "L1957" + }, + { + "id": "tests_test_core_test_non_spread_hover_is_left_to_cellpy", + "label": "test_non_spread_hover_is_left_to_cellpy()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_non_spread_hover_is_left_to_cellpy()", + "source_file": "tests/test_core.py", + "source_location": "L918" }, { "id": "tests_test_core_test_plot_type_renders_end_voltages", @@ -5964,7 +5102,7 @@ "file_type": "code", "norm_label": "test_raw_figure_plot_types()", "source_file": "tests/test_core.py", - "source_location": "L1834" + "source_location": "L1916" }, { "id": "tests_test_core_test_read_meta", @@ -5988,7 +5126,7 @@ "file_type": "code", "norm_label": "test_registry_menu_holds_only_summary_families()", "source_file": "tests/test_core.py", - "source_location": "L1641" + "source_location": "L1723" }, { "id": "tests_test_core_test_registry_plot_types_mark_availability", @@ -6000,7 +5138,7 @@ "file_type": "code", "norm_label": "test_registry_plot_types_mark_availability()", "source_file": "tests/test_core.py", - "source_location": "L1597" + "source_location": "L1679" }, { "id": "tests_test_core_test_registry_plot_types_without_cells_says_so", @@ -6012,19 +5150,7 @@ "file_type": "code", "norm_label": "test_registry_plot_types_without_cells_says_so()", "source_file": "tests/test_core.py", - "source_location": "L1772" - }, - { - "id": "tests_test_core_test_regular_mode_clamps_file_request", - "label": "test_regular_mode_clamps_file_request()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_regular_mode_clamps_file_request()", - "source_file": "tests/test_core.py", - "source_location": "L1583" + "source_location": "L1854" }, { "id": "tests_test_core_test_select_ica_direction_for_export", @@ -6074,18 +5200,6 @@ "source_file": "tests/test_core.py", "source_location": "L793" }, - { - "id": "tests_test_core_test_single_cell_cycles_figure_reports_missing", - "label": "test_single_cell_cycles_figure_reports_missing()", - "_callable": true, - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "code", - "norm_label": "test_single_cell_cycles_figure_reports_missing()", - "source_file": "tests/test_core.py", - "source_location": "L467" - }, { "id": "tests_test_core_test_spread_fillcolor_has_alpha", "label": "test_spread_fillcolor_has_alpha()", @@ -6120,7 +5234,7 @@ "file_type": "code", "norm_label": "test_summary_capacity_ce_facet_order_stable()", "source_file": "tests/test_core.py", - "source_location": "L1264" + "source_location": "L1346" }, { "id": "tests_test_core_test_summary_columns_for_types", @@ -6156,7 +5270,7 @@ "file_type": "code", "norm_label": "test_summary_export_all_formats()", "source_file": "tests/test_core.py", - "source_location": "L1351" + "source_location": "L1433" }, { "id": "tests_test_core_test_summary_figure_ce_outlier_does_not_crush_capacity", @@ -6168,7 +5282,7 @@ "file_type": "code", "norm_label": "test_summary_figure_ce_outlier_does_not_crush_capacity()", "source_file": "tests/test_core.py", - "source_location": "L1317" + "source_location": "L1399" }, { "id": "tests_test_core_test_summary_figure_dark_theme", @@ -6194,6 +5308,18 @@ "source_file": "tests/test_core.py", "source_location": "L145" }, + { + "id": "tests_test_core_test_summary_figure_export_svg", + "label": "test_summary_figure_export_svg()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_summary_figure_export_svg()", + "source_file": "tests/test_core.py", + "source_location": "L1458" + }, { "id": "tests_test_core_test_summary_figure_independent_y_by_default", "label": "test_summary_figure_independent_y_by_default()", @@ -6230,6 +5356,18 @@ "source_file": "tests/test_core.py", "source_location": "L707" }, + { + "id": "tests_test_core_test_summary_figure_safe_color_scheme", + "label": "test_summary_figure_safe_color_scheme()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_summary_figure_safe_color_scheme()", + "source_file": "tests/test_core.py", + "source_location": "L817" + }, { "id": "tests_test_core_test_summary_figure_share_y_matches_axes", "label": "test_summary_figure_share_y_matches_axes()", @@ -6252,7 +5390,7 @@ "file_type": "code", "norm_label": "test_summary_figure_share_y_with_group_avg_and_spread()", "source_file": "tests/test_core.py", - "source_location": "L1290" + "source_location": "L1372" }, { "id": "tests_test_core_test_summary_figure_short_names_unchanged", @@ -6278,6 +5416,18 @@ "source_file": "tests/test_core.py", "source_location": "L138" }, + { + "id": "tests_test_core_test_summary_figure_y_ranges_apply_with_group_avg_and_spread", + "label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", + "source_file": "tests/test_core.py", + "source_location": "L1180" + }, { "id": "tests_test_core_test_summary_figure_y_ranges_charge_on_multipart_group_avg", "label": "test_summary_figure_y_ranges_charge_on_multipart_group_avg()", @@ -6314,6 +5464,18 @@ "source_file": "tests/test_core.py", "source_location": "L1063" }, + { + "id": "tests_test_core_test_summary_figure_y_ranges_one_sided_with_spread", + "label": "test_summary_figure_y_ranges_one_sided_with_spread()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "test_summary_figure_y_ranges_one_sided_with_spread()", + "source_file": "tests/test_core.py", + "source_location": "L1217" + }, { "id": "tests_test_core_test_summary_figure_y_ranges_sets_panel_limits", "label": "test_summary_figure_y_ranges_sets_panel_limits()", @@ -6360,7 +5522,7 @@ "file_type": "code", "norm_label": "test_summary_schema_unions_across_cells()", "source_file": "tests/test_core.py", - "source_location": "L1786" + "source_location": "L1868" }, { "id": "tests_test_core_test_summary_schema_unions_across_cells_schema", @@ -6372,7 +5534,7 @@ "file_type": "code", "norm_label": "schema()", "source_file": "tests/test_core.py", - "source_location": "L1794" + "source_location": "L1876" }, { "id": "tests_test_core_test_unavailable_family_explains_itself", @@ -6384,7 +5546,7 @@ "file_type": "code", "norm_label": "test_unavailable_family_explains_itself()", "source_file": "tests/test_core.py", - "source_location": "L1625" + "source_location": "L1707" }, { "id": "tests_test_core_xaxis_title", @@ -6410,6 +5572,18 @@ "source_file": "tests/test_core.py", "source_location": "L1008" }, + { + "id": "tests_test_core_yaxis_for_title_text", + "label": "_yaxis_for_title_text()", + "_callable": true, + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "code", + "norm_label": "_yaxis_for_title_text()", + "source_file": "tests/test_core.py", + "source_location": "L1167" + }, { "id": "tests_test_core_yaxis_for_variable", "label": "_yaxis_for_variable()", @@ -6446,6 +5620,18 @@ "source_file": "tests/test_core.py", "source_location": "L694" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_haslayer", + "label": ".hasLayer()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".haslayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_destroy", "label": ".destroy()", @@ -6495,72 +5681,216 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_unloadtile", - "label": ".unloadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_loadvectordata", + "label": ".loadVectorData()", "_callable": true, "_origin": "ast", "community": 104, "community_name": ".destroy", "file_type": "code", - "norm_label": ".unloadtile()", + "norm_label": ".loadvectordata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_unloadtile", - "label": ".unloadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setfeaturestate", + "label": ".setFeatureState()", "_callable": true, "_origin": "ast", "community": 104, "community_name": ".destroy", "file_type": "code", - "norm_label": ".unloadtile()", + "norm_label": ".setfeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_destruct", - "label": ".destruct()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_unloadvectordata", + "label": ".unloadVectorData()", "_callable": true, "_origin": "ast", "community": 104, "community_name": ".destroy", "file_type": "code", - "norm_label": ".destruct()", + "norm_label": ".unloadvectordata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aborttile", + "label": ".abortTile()", "_callable": true, "_origin": "ast", "community": 104, "community_name": ".destroy", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".aborttile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_savetiletexture", - "label": ".saveTileTexture()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aftertileloadworkerresponse", + "label": "._afterTileLoadWorkerResponse()", "_callable": true, "_origin": "ast", "community": 104, "community_name": ".destroy", "file_type": "code", - "norm_label": ".savetiletexture()", + "norm_label": "._aftertileloadworkerresponse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_models_clean_axis_range", - "label": "_clean_axis_range()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loadtile", + "label": ".loadTile()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".loadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_unloadtile", + "label": ".unloadTile()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".unloadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_unloadtile", + "label": ".unloadTile()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".unloadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_unloadtile", + "label": ".unloadTile()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".unloadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_destruct", + "label": ".destruct()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".destruct()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sendasync", + "label": "sendAsync()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": "sendasync()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_destroy", + "label": ".destroy()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_overscalefactor", + "label": ".overscaleFactor()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".overscalefactor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_savetiletexture", + "label": ".saveTileTexture()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".savetiletexture()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loadtile", + "label": ".loadTile()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".loadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_unloadtile", + "label": ".unloadTile()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".unloadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_queryradius", + "label": ".queryRadius()", + "_callable": true, + "_origin": "ast", + "community": 104, + "community_name": ".destroy", + "file_type": "code", + "norm_label": ".queryradius()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_core_models_clean_axis_range", + "label": "_clean_axis_range()", "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", "norm_label": "_clean_axis_range()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -6572,7 +5902,7 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", "norm_label": "_one()", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -6584,11 +5914,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", "norm_label": "._unique_sorted()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L176" + "source_location": "L184" }, { "id": "src_cellpy_simple_gui_core_models_compareplotspec_bounded_curves", @@ -6596,11 +5926,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", "norm_label": "._bounded_curves()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L212" + "source_location": "L220" }, { "id": "src_cellpy_simple_gui_core_models_compareplotspec_clean_xy_range", @@ -6608,11 +5938,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L207" + "source_location": "L215" }, { "id": "src_cellpy_simple_gui_core_models_cyclesplotspec_clean_xy_range", @@ -6620,11 +5950,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L154" + "source_location": "L162" }, { "id": "src_cellpy_simple_gui_core_models_icaplotspec_clean_xy_range", @@ -6632,11 +5962,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L251" + "source_location": "L259" }, { "id": "src_cellpy_simple_gui_core_models_rawplotspec_clean_xy_range", @@ -6644,11 +5974,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", "norm_label": "._clean_xy_range()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L285" + "source_location": "L293" }, { "id": "src_cellpy_simple_gui_core_models_summaryplotspec_clean_y_ranges", @@ -6656,107 +5986,11 @@ "_callable": true, "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", "norm_label": "._clean_y_ranges()", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L113" - }, - { - "id": "tests_test_core_test_raw_figure_is_downsampled_for_transport", - "label": "test_raw_figure_is_downsampled_for_transport()", - "_callable": true, - "_origin": "ast", - "community": 105, - "community_name": "RawPlotSpec", - "file_type": "code", - "norm_label": "test_raw_figure_is_downsampled_for_transport()", - "source_file": "tests/test_core.py", - "source_location": "L1811" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_backfillborder", - "label": ".backfillBorder()", - "_callable": true, - "_origin": "ast", - "community": 106, - "community_name": "rh", - "file_type": "code", - "norm_label": ".backfillborder()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 106, - "community_name": "rh", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_get", - "label": ".get()", - "_callable": true, - "_origin": "ast", - "community": 106, - "community_name": "rh", - "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getpixels", - "label": ".getPixels()", - "_callable": true, - "_origin": "ast", - "community": 106, - "community_name": "rh", - "file_type": "code", - "norm_label": ".getpixels()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getunpackvector", - "label": ".getUnpackVector()", - "_callable": true, - "_origin": "ast", - "community": 106, - "community_name": "rh", - "file_type": "code", - "norm_label": ".getunpackvector()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_idx", - "label": "._idx()", - "_callable": true, - "_origin": "ast", - "community": 106, - "community_name": "rh", - "file_type": "code", - "norm_label": "._idx()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_unpack", - "label": ".unpack()", - "_callable": true, - "_origin": "ast", - "community": 106, - "community_name": "rh", - "file_type": "code", - "norm_label": ".unpack()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "source_location": "L121" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_cycle_numbers", @@ -6804,7 +6038,7 @@ "file_type": "code", "norm_label": "cycle_info_figure_json()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L947" + "source_location": "L971" }, { "id": "src_cellpy_simple_gui_core_collect_cycles_collection", @@ -6816,7 +6050,7 @@ "file_type": "code", "norm_label": "cycles_collection()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L496" + "source_location": "L517" }, { "id": "src_cellpy_simple_gui_core_collect_dva_collection", @@ -6828,7 +6062,7 @@ "file_type": "code", "norm_label": "dva_collection()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L530" + "source_location": "L551" }, { "id": "src_cellpy_simple_gui_core_collect_empty_figure_json", @@ -6840,31 +6074,31 @@ "file_type": "code", "norm_label": "_empty_figure_json()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1101" + "source_location": "L1125" }, { - "id": "src_cellpy_simple_gui_core_collect_present_cycle_pairs", - "label": "present_cycle_pairs()", + "id": "src_cellpy_simple_gui_core_collect_group_titles", + "label": "group_titles()", "_callable": true, "_origin": "ast", "community": 107, "community_name": "CellRecord", "file_type": "code", - "norm_label": "present_cycle_pairs()", + "norm_label": "group_titles()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L613" + "source_location": "L100" }, { - "id": "src_cellpy_simple_gui_core_collect_raw_figure_json", - "label": "raw_figure_json()", + "id": "src_cellpy_simple_gui_core_collect_present_cycle_pairs", + "label": "present_cycle_pairs()", "_callable": true, "_origin": "ast", "community": 107, "community_name": "CellRecord", "file_type": "code", - "norm_label": "raw_figure_json()", + "norm_label": "present_cycle_pairs()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L915" + "source_location": "L634" }, { "id": "src_cellpy_simple_gui_core_collect_restrict_to_cycle_pairs", @@ -6876,7 +6110,7 @@ "file_type": "code", "norm_label": "restrict_to_cycle_pairs()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L578" + "source_location": "L599" }, { "id": "src_cellpy_simple_gui_core_cycle_report_build_reports", @@ -6962,6 +6196,42 @@ "source_file": "src/cellpy_simple_gui/core/cycle_report.py", "source_location": "L34" }, + { + "id": "src_cellpy_simple_gui_core_export_compare_export", + "label": "compare_export()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": "compare_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L111" + }, + { + "id": "src_cellpy_simple_gui_core_export_compare_figure_export", + "label": "compare_figure_export()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": "compare_figure_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L128" + }, + { + "id": "src_cellpy_simple_gui_core_models_compareplotspec_pairs", + "label": ".pairs()", + "_callable": true, + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": ".pairs()", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L238" + }, { "id": "src_cellpy_simple_gui_core_plotting_compare_collection", "label": "compare_collection()", @@ -6972,7 +6242,7 @@ "file_type": "code", "norm_label": "compare_collection()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L219" + "source_location": "L222" }, { "id": "src_cellpy_simple_gui_core_plotting_compare_figure", @@ -6984,7 +6254,7 @@ "file_type": "code", "norm_label": "compare_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L264" + "source_location": "L267" }, { "id": "src_cellpy_simple_gui_core_plotting_cycle_availability", @@ -6996,7 +6266,7 @@ "file_type": "code", "norm_label": "_cycle_availability()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L97" + "source_location": "L99" }, { "id": "src_cellpy_simple_gui_core_plotting_cycle_info_figure", @@ -7008,7 +6278,7 @@ "file_type": "code", "norm_label": "cycle_info_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L308" + "source_location": "L311" }, { "id": "src_cellpy_simple_gui_core_plotting_cycles_figure", @@ -7020,7 +6290,7 @@ "file_type": "code", "norm_label": "cycles_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L162" + "source_location": "L164" }, { "id": "src_cellpy_simple_gui_core_plotting_dva_figure", @@ -7032,7 +6302,7 @@ "file_type": "code", "norm_label": "dva_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L324" + "source_location": "L327" }, { "id": "src_cellpy_simple_gui_core_plotting_guard_no_cycles", @@ -7044,7 +6314,7 @@ "file_type": "code", "norm_label": "_guard_no_cycles()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L136" + "source_location": "L138" }, { "id": "src_cellpy_simple_gui_core_plotting_ica_figure", @@ -7056,7 +6326,7 @@ "file_type": "code", "norm_label": "ica_figure()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L352" + "source_location": "L355" }, { "id": "src_cellpy_simple_gui_core_plotting_nothing_to_draw_json", @@ -7068,19 +6338,7 @@ "file_type": "code", "norm_label": "_nothing_to_draw_json()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L109" - }, - { - "id": "src_cellpy_simple_gui_core_plotting_raw_figure", - "label": "raw_figure()", - "_callable": true, - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "code", - "norm_label": "raw_figure()", - "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L295" + "source_location": "L111" }, { "id": "src_cellpy_simple_gui_core_plotting_single_cell_reports", @@ -7092,7 +6350,7 @@ "file_type": "code", "norm_label": "_single_cell_reports()", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L118" + "source_location": "L120" }, { "id": "tests_test_core_test_build_reports_splits_missing_from_unreadable", @@ -7116,7 +6374,7 @@ "file_type": "code", "norm_label": "data()", "source_file": "tests/test_core.py", - "source_location": "L1790" + "source_location": "L1872" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ba_emplace", @@ -7124,7 +6382,7 @@ "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7136,7 +6394,7 @@ "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7148,213 +6406,141 @@ "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ch", - "label": "ch()", - "_callable": true, - "_origin": "ast", - "community": 108, - "community_name": "dh", - "file_type": "code", - "norm_label": "ch()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dh", - "label": "dh()", - "_callable": true, - "_origin": "ast", - "community": 108, - "community_name": "dh", - "file_type": "code", - "norm_label": "dh()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addtolinevertexarray", - "label": ".addToLineVertexArray()", - "_callable": true, - "_origin": "ast", - "community": 108, - "community_name": "dh", - "file_type": "code", - "norm_label": ".addtolinevertexarray()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addtosortkeyranges", - "label": ".addToSortKeyRanges()", - "_callable": true, - "_origin": "ast", - "community": 108, - "community_name": "dh", - "file_type": "code", - "norm_label": ".addtosortkeyranges()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fh", - "label": "fh()", - "_callable": true, - "_origin": "ast", - "community": 108, - "community_name": "dh", - "file_type": "code", - "norm_label": "fh()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_populatepaintarrays", "label": ".populatePaintArrays()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": ".populatepaintarrays()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_updatepaintarrays", - "label": ".updatePaintArrays()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": ".updatepaintarrays()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hh", - "label": "hh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": "hh()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_getvalue", - "label": ".getValue()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": ".getvalue()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mh", - "label": "mh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": "mh()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_equals", - "label": ".equals()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": ".equals()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_destroy", - "label": ".destroy()", - "_callable": true, - "_origin": "ast", - "community": 108, - "community_name": "dh", - "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mu_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_isstatedependent", + "label": ".isStateDependent()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": ".isstatedependent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ph", - "label": "ph()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": "ph()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qh", - "label": "qh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qo", + "label": "qo()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": "qh()", + "norm_label": "qo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -7364,7 +6550,7 @@ "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7376,7 +6562,7 @@ "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7388,7 +6574,7 @@ "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": ".populatepaintarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7400,7 +6586,7 @@ "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": "._setpaintvalues()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7412,7 +6598,7 @@ "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": ".updatepaintarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -7424,81 +6610,81 @@ "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uh_clone", - "label": ".clone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": ".clone()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uh_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vh", - "label": "Vh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": "vh()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_getpositions", - "label": ".getPositions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": ".getpositions()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yh", - "label": "yh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setconstantpatternpositions", + "label": ".setConstantPatternPositions()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": "yh()", + "norm_label": ".setconstantpatternpositions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zh", - "label": "zh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setuniform", + "label": ".setUniform()", "_callable": true, "_origin": "ast", "community": 108, - "community_name": "dh", + "community_name": "ho", "file_type": "code", - "norm_label": "zh()", + "norm_label": ".setuniform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -7731,326 +6917,266 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 110, - "community_name": "ri", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 110, - "community_name": "ri", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_createobject", - "label": "._createObject()", - "_callable": true, - "_origin": "ast", - "community": 110, - "community_name": "ri", - "file_type": "code", - "norm_label": "._createobject()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeallobjects", - "label": ".freeAllObjects()", - "_callable": true, - "_origin": "ast", - "community": 110, - "community_name": "ri", - "file_type": "code", - "norm_label": ".freeallobjects()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeobject", - "label": ".freeObject()", - "_callable": true, - "_origin": "ast", - "community": 110, - "community_name": "ri", - "file_type": "code", - "norm_label": ".freeobject()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getobjectforid", - "label": ".getObjectForId()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_contains", + "label": ".contains()", "_callable": true, "_origin": "ast", - "community": 110, - "community_name": "ri", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": ".getobjectforid()", + "norm_label": ".contains()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getorcreatefreeobject", - "label": ".getOrCreateFreeObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_setmaxbounds", + "label": ".setMaxBounds()", "_callable": true, "_origin": "ast", - "community": 110, - "community_name": "ri", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": ".getorcreatefreeobject()", + "norm_label": ".setmaxbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_isfull", - "label": ".isFull()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 110, - "community_name": "ri", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": ".isfull()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 110, - "community_name": "ri", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": "r()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_stampobject", - "label": ".stampObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 110, - "community_name": "ri", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": ".stampobject()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_useobject", - "label": ".useObject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", - "community": 110, - "community_name": "ri", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": ".useobject()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createbutton", - "label": "_createButton()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": "_createbutton()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_cameraforbounds", - "label": ".cameraForBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_getdefaultposition", + "label": ".getDefaultPosition()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".cameraforbounds()", + "norm_label": ".getdefaultposition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_cameraforboxandbearing", - "label": "._cameraForBoxAndBearing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": "._cameraforboxandbearing()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_setmaxbounds", - "label": ".setMaxBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".setmaxbounds()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousemovewindow", - "label": ".mousemoveWindow()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_setelementtitle", + "label": "._setElementTitle()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".mousemovewindow()", + "norm_label": "._setelementtitle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_updateattributions", + "label": "._updateAttributions()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".enable()", + "norm_label": "._updateattributions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_createns", + "label": ".createNS()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".createns()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_settransform", + "label": ".setTransform()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".settransform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_addclassname", + "label": ".addClassName()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".addclassname()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_setupui", - "label": "._setupUI()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_addto", + "label": ".addTo()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": "._setupui()", + "norm_label": ".addto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_create", - "label": ".create()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".create()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_settransform", - "label": ".setTransform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_isopen", + "label": ".isOpen()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".settransform()", + "norm_label": ".isopen()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_addclassname", - "label": ".addClassName()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setlnglat", + "label": ".setLngLat()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".addclassname()", + "norm_label": ".setlnglat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_trackpointer", + "label": ".trackPointer()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".trackpointer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_trackpointer", - "label": ".trackPointer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_add", + "label": ".add()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".trackpointer()", + "norm_label": ".add()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_add", - "label": ".add()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".add()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -8060,7 +7186,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": "._clearwatch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8072,7 +7198,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8084,7 +7210,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".interpolate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8096,31 +7222,19 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": "._isoutofmapmaxbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_onadd", - "label": ".onAdd()", - "_callable": true, - "_origin": "ast", - "community": 112, - "community_name": ".add", - "file_type": "code", - "norm_label": ".onadd()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_onremove", "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8132,7 +7246,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": "._seterrorstate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8144,7 +7258,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".trigger()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8156,7 +7270,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": "._updatecircleradius()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8168,33 +7282,21 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".distanceto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_h", - "label": "h()", - "_callable": true, - "_origin": "ast", - "community": 112, - "community_name": ".add", - "file_type": "code", - "norm_label": "h()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_setupui", - "label": "._setupUI()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_lt", + "label": "lt()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": "._setupui()", + "norm_label": "lt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -8204,7 +7306,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".geteast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8216,7 +7318,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".getnorth()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8228,7 +7330,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".getnortheast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8240,7 +7342,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".getnorthwest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8252,7 +7354,7 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".getsouth()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8264,31 +7366,19 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".getsoutheast()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getsouthwest", - "label": ".getSouthWest()", - "_callable": true, - "_origin": "ast", - "community": 112, - "community_name": ".add", - "file_type": "code", - "norm_label": ".getsouthwest()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getwest", "label": ".getWest()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".getwest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -8300,359 +7390,323 @@ "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".addclassname()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".disable()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_removeclassname", + "label": ".removeClassName()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".enable()", + "norm_label": ".removeclassname()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setopacity", + "label": ".setOpacity()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": ".setopacity()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_togglepopup", + "label": ".togglePopup()", "_callable": true, "_origin": "ast", "community": 112, - "community_name": ".add", + "community_name": ".remove", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": ".togglepopup()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_prototype", - "label": "prototype()", - "_callable": true, - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "code", - "norm_label": "prototype()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L32" - }, - { - "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy", - "label": "test_describe_api_will_not_import_outside_cellpy()", - "_callable": true, - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "code", - "norm_label": "test_describe_api_will_not_import_outside_cellpy()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L275" - }, - { - "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_updateopacity", + "label": "._updateOpacity()", "_callable": true, "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L283" + "norm_label": "._updateopacity()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tools_gen_llms_txt_describe_guide", - "label": "describe_guide()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 115, - "community_name": "gen_llms_txt.py", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": "describe_guide()", - "source_file": "tools/gen_llms_txt.py", - "source_location": "L98" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tools_gen_llms_txt_guide_files", - "label": "guide_files()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 115, - "community_name": "gen_llms_txt.py", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": "guide_files()", - "source_file": "tools/gen_llms_txt.py", - "source_location": "L94" + "norm_label": ".disable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tools_gen_llms_txt_main", - "label": "main()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 115, - "community_name": "gen_llms_txt.py", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": "main()", - "source_file": "tools/gen_llms_txt.py", - "source_location": "L176" + "norm_label": ".enable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tools_gen_llms_txt_render_full", - "label": "render_full()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 115, - "community_name": "gen_llms_txt.py", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": "render_full()", - "source_file": "tools/gen_llms_txt.py", - "source_location": "L152" + "norm_label": ".isactive()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tools_gen_llms_txt_render_index", - "label": "render_index()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 115, - "community_name": "gen_llms_txt.py", + "community": 112, + "community_name": ".remove", "file_type": "code", - "norm_label": "render_index()", - "source_file": "tools/gen_llms_txt.py", - "source_location": "L118" + "norm_label": ".isenabled()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_api_works_without_pywebview", - "label": "test_api_works_without_pywebview()", + "id": "tests_test_api_add_cells_modal_html", + "label": "_add_cells_modal_html()", "_callable": true, "_origin": "ast", - "community": 117, - "community_name": "_without_webview", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": "test_api_works_without_pywebview()", + "norm_label": "_add_cells_modal_html()", "source_file": "tests/test_api.py", - "source_location": "L680" + "source_location": "L612" }, { - "id": "tests_test_api_test_desktop_import_failure_names_the_extra", - "label": "test_desktop_import_failure_names_the_extra()", + "id": "tests_test_api_component_names", + "label": "_component_names()", "_callable": true, "_origin": "ast", - "community": 117, - "community_name": "_without_webview", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": "test_desktop_import_failure_names_the_extra()", + "norm_label": "_component_names()", "source_file": "tests/test_api.py", - "source_location": "L711" + "source_location": "L550" }, { - "id": "tests_test_api_test_native_dialogs_refuse_without_pywebview", - "label": "test_native_dialogs_refuse_without_pywebview()", + "id": "tests_test_api_default_visible_hints", + "label": "_default_visible_hints()", "_callable": true, "_origin": "ast", - "community": 117, - "community_name": "_without_webview", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": "test_native_dialogs_refuse_without_pywebview()", + "norm_label": "_default_visible_hints()", "source_file": "tests/test_api.py", - "source_location": "L699" + "source_location": "L631" }, { - "id": "tests_test_api_without_webview", - "label": "_without_webview()", + "id": "tests_test_api_default_visible_hints_handle_endtag", + "label": "handle_endtag()", "_callable": true, "_origin": "ast", - "community": 117, - "community_name": "_without_webview", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": "_without_webview()", + "norm_label": "handle_endtag()", "source_file": "tests/test_api.py", - "source_location": "L670" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_an", - "label": "An()", - "_callable": true, - "_origin": "ast", - "community": 119, - "community_name": "Mn", - "file_type": "code", - "norm_label": "an()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "source_location": "L663" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_constructor", - "label": ".constructor()", + "id": "tests_test_api_default_visible_hints_handle_starttag", + "label": "handle_starttag()", "_callable": true, "_origin": "ast", - "community": 119, - "community_name": "Mn", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "handle_starttag()", + "source_file": "tests/test_api.py", + "source_location": "L649" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_clone", - "label": ".clone()", + "id": "tests_test_api_default_visible_hints_init", + "label": "__init__()", "_callable": true, "_origin": "ast", - "community": 119, - "community_name": "Mn", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": ".clone()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "__init__()", + "source_file": "tests/test_api.py", + "source_location": "L643" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_constructor", - "label": ".constructor()", + "id": "tests_test_api_dva_spec", + "label": "_dva_spec()", "_callable": true, "_origin": "ast", - "community": 119, - "community_name": "Mn", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_dva_spec()", + "source_file": "tests/test_api.py", + "source_location": "L324" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_evaluate", - "label": ".evaluate()", + "id": "tests_test_api_free_identifiers", + "label": "_free_identifiers()", "_callable": true, "_origin": "ast", - "community": 119, - "community_name": "Mn", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_free_identifiers()", + "source_file": "tests/test_api.py", + "source_location": "L566" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_evaluatewithouterrorhandling", - "label": ".evaluateWithoutErrorHandling()", + "id": "tests_test_api_template_html", + "label": "_template_html()", "_callable": true, "_origin": "ast", - "community": 119, - "community_name": "Mn", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": ".evaluatewithouterrorhandling()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_template_html()", + "source_file": "tests/test_api.py", + "source_location": "L544" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_getcenter", - "label": ".getCenter()", + "id": "tests_test_api_test_add_cells_modal_has_one_primary_action", + "label": "test_add_cells_modal_has_one_primary_action()", "_callable": true, "_origin": "ast", - "community": 119, - "community_name": "Mn", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": ".getcenter()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_add_cells_modal_has_one_primary_action()", + "source_file": "tests/test_api.py", + "source_location": "L619" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_interpolate", - "label": ".interpolate()", + "id": "tests_test_api_test_api_works_without_pywebview", + "label": "test_api_works_without_pywebview()", "_callable": true, "_origin": "ast", - "community": 119, - "community_name": "Mn", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": ".interpolate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_api_works_without_pywebview()", + "source_file": "tests/test_api.py", + "source_location": "L707" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_tojson", - "label": ".toJSON()", + "id": "tests_test_api_test_branding_static_assets", + "label": "test_branding_static_assets()", "_callable": true, "_origin": "ast", - "community": 119, - "community_name": "Mn", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": ".tojson()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_branding_static_assets()", + "source_file": "tests/test_api.py", + "source_location": "L40" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmaxbounds", - "label": "setMaxBounds()", + "id": "tests_test_api_test_cellpy_config_diagnostics_endpoint", + "label": "test_cellpy_config_diagnostics_endpoint()", "_callable": true, "_origin": "ast", - "community": 119, - "community_name": "Mn", + "community": 12, + "community_name": "test_api.py", "file_type": "code", - "norm_label": "setmaxbounds()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_cellpy_config_diagnostics_endpoint()", + "source_file": "tests/test_api.py", + "source_location": "L73" }, { - "id": "tests_test_api_dva_spec", - "label": "_dva_spec()", + "id": "tests_test_api_test_default_visible_hint_budget", + "label": "test_default_visible_hint_budget()", "_callable": true, "_origin": "ast", "community": 12, "community_name": "test_api.py", "file_type": "code", - "norm_label": "_dva_spec()", + "norm_label": "test_default_visible_hint_budget()", "source_file": "tests/test_api.py", - "source_location": "L297" + "source_location": "L673" }, { - "id": "tests_test_api_test_branding_static_assets", - "label": "test_branding_static_assets()", + "id": "tests_test_api_test_desktop_import_failure_names_the_extra", + "label": "test_desktop_import_failure_names_the_extra()", "_callable": true, "_origin": "ast", "community": 12, "community_name": "test_api.py", "file_type": "code", - "norm_label": "test_branding_static_assets()", + "norm_label": "test_desktop_import_failure_names_the_extra()", "source_file": "tests/test_api.py", - "source_location": "L40" + "source_location": "L738" }, { "id": "tests_test_api_test_diagnostics_are_dev_only", @@ -8664,7 +7718,7 @@ "file_type": "code", "norm_label": "test_diagnostics_are_dev_only()", "source_file": "tests/test_api.py", - "source_location": "L388" + "source_location": "L415" }, { "id": "tests_test_api_test_dva_endpoints_need_no_dev_mode", @@ -8676,7 +7730,7 @@ "file_type": "code", "norm_label": "test_dva_endpoints_need_no_dev_mode()", "source_file": "tests/test_api.py", - "source_location": "L308" + "source_location": "L335" }, { "id": "tests_test_api_test_dva_missing_cell_is_404_not_403", @@ -8688,7 +7742,19 @@ "file_type": "code", "norm_label": "test_dva_missing_cell_is_404_not_403()", "source_file": "tests/test_api.py", - "source_location": "L328" + "source_location": "L355" + }, + { + "id": "tests_test_api_test_examples", + "label": "test_examples()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_examples()", + "source_file": "tests/test_api.py", + "source_location": "L143" }, { "id": "tests_test_api_test_export_cells_cellpy", @@ -8700,7 +7766,7 @@ "file_type": "code", "norm_label": "test_export_cells_cellpy()", "source_file": "tests/test_api.py", - "source_location": "L247" + "source_location": "L274" }, { "id": "tests_test_api_test_export_cells_requires_selection", @@ -8712,7 +7778,7 @@ "file_type": "code", "norm_label": "test_export_cells_requires_selection()", "source_file": "tests/test_api.py", - "source_location": "L241" + "source_location": "L268" }, { "id": "tests_test_api_test_files_preview_honours_served_sandbox", @@ -8724,7 +7790,7 @@ "file_type": "code", "norm_label": "test_files_preview_honours_served_sandbox()", "source_file": "tests/test_api.py", - "source_location": "L826" + "source_location": "L853" }, { "id": "tests_test_api_test_files_preview_literal_missing_and_glob", @@ -8736,7 +7802,7 @@ "file_type": "code", "norm_label": "test_files_preview_literal_missing_and_glob()", "source_file": "tests/test_api.py", - "source_location": "L796" + "source_location": "L823" }, { "id": "tests_test_api_test_files_preview_rejects_empty", @@ -8748,7 +7814,31 @@ "file_type": "code", "norm_label": "test_files_preview_rejects_empty()", "source_file": "tests/test_api.py", - "source_location": "L821" + "source_location": "L848" + }, + { + "id": "tests_test_api_test_healthz", + "label": "test_healthz()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_healthz()", + "source_file": "tests/test_api.py", + "source_location": "L36" + }, + { + "id": "tests_test_api_test_index_click_and_show_targets_exist", + "label": "test_index_click_and_show_targets_exist()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_index_click_and_show_targets_exist()", + "source_file": "tests/test_api.py", + "source_location": "L588" }, { "id": "tests_test_api_test_index_uses_cellpy_logo", @@ -8786,6 +7876,18 @@ "source_file": "tests/test_api.py", "source_location": "L127" }, + { + "id": "tests_test_api_test_load_and_plot_flow", + "label": "test_load_and_plot_flow()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_load_and_plot_flow()", + "source_file": "tests/test_api.py", + "source_location": "L150" + }, { "id": "tests_test_api_test_local_instance_keeps_its_freedom", "label": "test_local_instance_keeps_its_freedom()", @@ -8796,7 +7898,19 @@ "file_type": "code", "norm_label": "test_local_instance_keeps_its_freedom()", "source_file": "tests/test_api.py", - "source_location": "L839" + "source_location": "L866" + }, + { + "id": "tests_test_api_test_native_dialogs_refuse_without_pywebview", + "label": "test_native_dialogs_refuse_without_pywebview()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_native_dialogs_refuse_without_pywebview()", + "source_file": "tests/test_api.py", + "source_location": "L726" }, { "id": "tests_test_api_test_pin_config_requires_a_project", @@ -8808,7 +7922,7 @@ "file_type": "code", "norm_label": "test_pin_config_requires_a_project()", "source_file": "tests/test_api.py", - "source_location": "L258" + "source_location": "L285" }, { "id": "tests_test_api_test_plot_types_curated_by_default", @@ -8820,7 +7934,7 @@ "file_type": "code", "norm_label": "test_plot_types_curated_by_default()", "source_file": "tests/test_api.py", - "source_location": "L265" + "source_location": "L292" }, { "id": "tests_test_api_test_plot_types_include_registry_in_dev_mode", @@ -8832,7 +7946,7 @@ "file_type": "code", "norm_label": "test_plot_types_include_registry_in_dev_mode()", "source_file": "tests/test_api.py", - "source_location": "L280" + "source_location": "L307" }, { "id": "tests_test_api_test_raw_and_cycle_info_are_dev_only", @@ -8844,7 +7958,7 @@ "file_type": "code", "norm_label": "test_raw_and_cycle_info_are_dev_only()", "source_file": "tests/test_api.py", - "source_location": "L344" + "source_location": "L371" }, { "id": "tests_test_api_test_raw_and_cycle_info_in_dev_mode", @@ -8856,7 +7970,19 @@ "file_type": "code", "norm_label": "test_raw_and_cycle_info_in_dev_mode()", "source_file": "tests/test_api.py", - "source_location": "L363" + "source_location": "L390" + }, + { + "id": "tests_test_api_test_rename_group", + "label": "test_rename_group()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_rename_group()", + "source_file": "tests/test_api.py", + "source_location": "L241" }, { "id": "tests_test_api_test_served_instance_refuses_host_globs", @@ -8868,7 +7994,31 @@ "file_type": "code", "norm_label": "test_served_instance_refuses_host_globs()", "source_file": "tests/test_api.py", - "source_location": "L778" + "source_location": "L805" + }, + { + "id": "tests_test_api_test_served_instance_refuses_paths_outside_its_data_dir", + "label": "test_served_instance_refuses_paths_outside_its_data_dir()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_served_instance_refuses_paths_outside_its_data_dir()", + "source_file": "tests/test_api.py", + "source_location": "L772" + }, + { + "id": "tests_test_api_test_served_instance_will_not_load_files_from_the_host", + "label": "test_served_instance_will_not_load_files_from_the_host()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_served_instance_will_not_load_files_from_the_host()", + "source_file": "tests/test_api.py", + "source_location": "L788" }, { "id": "tests_test_api_test_system_capabilities_no_file_picker", @@ -8894,6 +8044,30 @@ "source_file": "tests/test_api.py", "source_location": "L66" }, + { + "id": "tests_test_api_test_system_save_rejected_without_webview", + "label": "test_system_save_rejected_without_webview()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_system_save_rejected_without_webview()", + "source_file": "tests/test_api.py", + "source_location": "L111" + }, + { + "id": "tests_test_api_test_token_required", + "label": "test_token_required()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "test_token_required()", + "source_file": "tests/test_api.py", + "source_location": "L122" + }, { "id": "tests_test_api_test_webview_file_type_filters_are_valid", "label": "test_webview_file_type_filters_are_valid()", @@ -8918,6 +8092,18 @@ "source_file": "tests/test_api.py", "source_location": "L25" }, + { + "id": "tests_test_api_without_webview", + "label": "_without_webview()", + "_callable": true, + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "_without_webview()", + "source_file": "tests/test_api.py", + "source_location": "L697" + }, { "id": "tests_test_jobs_test_jobs_do_not_depend_on_private_stdlib_internals", "label": "test_jobs_do_not_depend_on_private_stdlib_internals()", @@ -9075,14 +8261,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bo_upload", - "label": ".upload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bo_updatepaintarrays", + "label": ".updatePaintArrays()", "_callable": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": ".upload()", + "norm_label": ".updatepaintarrays()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -9147,67 +8333,67 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_update", + "label": ".update()", "_callable": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jo", - "label": "jo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_feature", + "label": "feature()", "_callable": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": "jo()", + "norm_label": "feature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ko", - "label": "ko()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_updatepaintarrays", + "label": ".updatePaintArrays()", "_callable": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": "ko()", + "norm_label": ".updatepaintarrays()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lo", - "label": "Lo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ko", + "label": "ko()", "_callable": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": "lo()", + "norm_label": "ko()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mo_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lo", + "label": "Lo()", "_callable": true, "_origin": "ast", "community": 13, "community_name": "wo", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "lo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mo_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -9230,30 +8416,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_setuniform", - "label": ".setUniform()", - "_callable": true, - "_origin": "ast", - "community": 13, - "community_name": "wo", - "file_type": "code", - "norm_label": ".setuniform()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qo", - "label": "qo()", - "_callable": true, - "_origin": "ast", - "community": 13, - "community_name": "wo", - "file_type": "code", - "norm_label": "qo()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_so_constructor", "label": ".constructor()", @@ -9326,6 +8488,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_getpositions", + "label": ".getPositions()", + "_callable": true, + "_origin": "ast", + "community": 13, + "community_name": "wo", + "file_type": "code", + "norm_label": ".getpositions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_isempty", "label": ".isEmpty()", @@ -9374,18 +8548,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 13, - "community_name": "wo", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_getbinding", "label": ".getBinding()", @@ -9398,30 +8560,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setconstantpatternpositions", - "label": ".setConstantPatternPositions()", - "_callable": true, - "_origin": "ast", - "community": 13, - "community_name": "wo", - "file_type": "code", - "norm_label": ".setconstantpatternpositions()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zo_setuniform", - "label": ".setUniform()", - "_callable": true, - "_origin": "ast", - "community": 13, - "community_name": "wo", - "file_type": "code", - "norm_label": ".setuniform()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_parsecolor", "label": ".parseColor()", @@ -9458,90 +8596,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_endmove", - "label": ".endMove()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".endmove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_frominvprojectionmatrix", - "label": ".fromInvProjectionMatrix()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".frominvprojectionmatrix()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidendevent", - "label": ".isValidEndEvent()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".isvalidendevent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidmoveevent", - "label": ".isValidMoveEvent()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".isvalidmoveevent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidstartevent", - "label": ".isValidStartEvent()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".isvalidstartevent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_startmove", - "label": ".startMove()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".startmove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_factory", "label": ".factory()", @@ -9567,50 +8621,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_addto", - "label": ".addTo()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".addto()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_gethashstring", - "label": ".getHashString()", - "_callable": true, - "_origin": "ast", - "community": 130, - "community_name": "wn", - "file_type": "code", - "norm_label": ".gethashstring()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_mousebutton", - "label": ".mouseButton()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ne", + "label": "ne()", "_callable": true, "_origin": "ast", "community": 130, "community_name": "wn", "file_type": "code", - "norm_label": ".mousebutton()", + "norm_label": "ne()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -9747,134 +8765,74 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_parse", - "label": ".parse()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": ".populate", - "file_type": "code", - "norm_label": ".parse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_calculateglyphdependencies", - "label": ".calculateGlyphDependencies()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": ".populate", - "file_type": "code", - "norm_label": ".calculateglyphdependencies()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate", - "label": ".populate()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": ".populate", - "file_type": "code", - "norm_label": ".populate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_issupportedscript", - "label": ".isSupportedScript()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": ".populate", - "file_type": "code", - "norm_label": ".issupportedscript()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_getrtltextpluginstatus", - "label": ".getRTLTextPluginStatus()", - "_callable": true, - "_origin": "ast", - "community": 133, - "community_name": ".populate", - "file_type": "code", - "norm_label": ".getrtltextpluginstatus()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_calculatecameraoptionsfromto", + "label": "calculateCameraOptionsFromTo()", "_callable": true, "_origin": "ast", - "community": 133, - "community_name": ".populate", + "community": 135, + "community_name": "Ei", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": "calculatecameraoptionsfromto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yc", - "label": "yc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cancelrenderframe", + "label": "_cancelRenderFrame()", "_callable": true, "_origin": "ast", - "community": 133, - "community_name": ".populate", + "community": 135, + "community_name": "Ei", "file_type": "code", - "norm_label": "yc()", + "norm_label": "_cancelrenderframe()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_calculatecameraoptionsfromto", - "label": "calculateCameraOptionsFromTo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_afterease", + "label": "._afterEase()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": "calculatecameraoptionsfromto()", + "norm_label": "._afterease()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cancelrenderframe", - "label": "_cancelRenderFrame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_applyupdatedtransform", + "label": "._applyUpdatedTransform()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": "_cancelrenderframe()", + "norm_label": "._applyupdatedtransform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_afterease", - "label": "._afterEase()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_cameraforbounds", + "label": ".cameraForBounds()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": "._afterease()", + "norm_label": ".cameraforbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_applyupdatedtransform", - "label": "._applyUpdatedTransform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_cameraforboxandbearing", + "label": "._cameraForBoxAndBearing()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": "._applyupdatedtransform()", + "norm_label": "._cameraforboxandbearing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10166,6 +9124,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_queryterrainelevation", + "label": ".queryTerrainElevation()", + "_callable": true, + "_origin": "ast", + "community": 135, + "community_name": "Ei", + "file_type": "code", + "norm_label": ".queryterrainelevation()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_resetnorth", "label": ".resetNorth()", @@ -10371,38 +9341,50 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_interpolatepadding", - "label": ".interpolatePadding()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_ispaddingequal", + "label": ".isPaddingEqual()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": ".interpolatepadding()", + "norm_label": ".ispaddingequal()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_ispaddingequal", - "label": ".isPaddingEqual()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pointlocation", + "label": ".pointLocation()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": ".ispaddingequal()", + "norm_label": ".pointlocation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pointlocation", - "label": ".pointLocation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_recalculatezoom", + "label": ".recalculateZoom()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": ".pointlocation()", + "norm_label": ".recalculatezoom()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_scalezoom", + "label": ".scaleZoom()", + "_callable": true, + "_origin": "ast", + "community": 135, + "community_name": "Ei", + "file_type": "code", + "norm_label": ".scalezoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10454,6 +9436,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_unproject", + "label": ".unproject()", + "_callable": true, + "_origin": "ast", + "community": 135, + "community_name": "Ei", + "file_type": "code", + "norm_label": ".unproject()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn_i", "label": "i()", @@ -10551,14 +9545,110 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_updatemaptransform", - "label": "._updateMapTransform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_unproject", + "label": "unproject()", "_callable": true, "_origin": "ast", "community": 135, "community_name": "Ei", "file_type": "code", - "norm_label": "._updatemaptransform()", + "norm_label": "unproject()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 135, + "community_name": "Ei", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_contains", + "label": ".contains()", + "_callable": true, + "_origin": "ast", + "community": 135, + "community_name": "Ei", + "file_type": "code", + "norm_label": ".contains()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_convert", + "label": ".convert()", + "_callable": true, + "_origin": "ast", + "community": 135, + "community_name": "Ei", + "file_type": "code", + "norm_label": ".convert()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getsouthwest", + "label": ".getSouthWest()", + "_callable": true, + "_origin": "ast", + "community": 135, + "community_name": "Ei", + "file_type": "code", + "norm_label": ".getsouthwest()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_setnortheast", + "label": ".setNorthEast()", + "_callable": true, + "_origin": "ast", + "community": 135, + "community_name": "Ei", + "file_type": "code", + "norm_label": ".setnortheast()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_setsouthwest", + "label": ".setSouthWest()", + "_callable": true, + "_origin": "ast", + "community": 135, + "community_name": "Ei", + "file_type": "code", + "norm_label": ".setsouthwest()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_touchend", + "label": ".touchend()", + "_callable": true, + "_origin": "ast", + "community": 135, + "community_name": "Ei", + "file_type": "code", + "norm_label": ".touchend()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bu", + "label": "Bu()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": "bu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10568,7 +9658,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".recalculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10580,7 +9670,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".isdatadriven()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10592,31 +9682,367 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": "hc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_createclosebutton", + "label": "._createCloseButton()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": "._createclosebutton()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_focusfirstelement", + "label": "._focusFirstElement()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": "._focusfirstelement()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getelement", + "label": ".getElement()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".getelement()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getlayoutproperty", + "label": ".getLayoutProperty()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".getlayoutproperty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getlnglat", + "label": ".getLngLat()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".getlnglat()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getmaxwidth", + "label": ".getMaxWidth()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".getmaxwidth()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getpaintproperty", + "label": ".getPaintProperty()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".getpaintproperty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_handleoverridablepaintpropertyupdate", + "label": "._handleOverridablePaintPropertyUpdate()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": "._handleoverridablepaintpropertyupdate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_handlespecialpaintpropertyupdate", + "label": "._handleSpecialPaintPropertyUpdate()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": "._handlespecialpaintpropertyupdate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_hasoffscreenpass", + "label": ".hasOffscreenPass()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".hasoffscreenpass()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_hastransition", + "label": ".hasTransition()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".hastransition()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_is3d", + "label": ".is3D()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".is3d()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_ishidden", + "label": ".isHidden()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".ishidden()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_istileclipped", + "label": ".isTileClipped()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".istileclipped()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_recalculate", + "label": ".recalculate()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".recalculate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_removeclassname", + "label": ".removeClassName()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".removeclassname()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_resize", + "label": ".resize()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".resize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_serialize", + "label": ".serialize()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".serialize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setdomcontent", + "label": ".setDOMContent()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".setdomcontent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_sethtml", + "label": ".setHTML()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".sethtml()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setmaxwidth", + "label": ".setMaxWidth()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".setmaxwidth()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setoffset", + "label": ".setOffset()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".setoffset()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setpaintproperty", "label": ".setPaintProperty()", "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".setpaintproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setsubpixelpositioning", + "label": ".setSubpixelPositioning()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".setsubpixelpositioning()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_settext", + "label": ".setText()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".settext()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_toggleclassname", + "label": ".toggleClassName()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".toggleclassname()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_updatetransitions", + "label": ".updateTransitions()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".updatetransitions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_validate", + "label": "._validate()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": "._validate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_possiblyevaluate", "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10628,7 +10054,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10640,7 +10066,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".createbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10652,7 +10078,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".gradientexpression()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10664,7 +10090,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": "._handlespecialpaintpropertyupdate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10676,7 +10102,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".istileclipped()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10688,7 +10114,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".queryintersectsfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10700,21 +10126,69 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".queryradius()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uc_recalculate", - "label": ".recalculate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", - "norm_label": ".recalculate()", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_createbucket", + "label": ".createBucket()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".createbucket()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_istileclipped", + "label": ".isTileClipped()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".istileclipped()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_queryintersectsfeature", + "label": ".queryIntersectsFeature()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".queryintersectsfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_queryradius", + "label": ".queryRadius()", + "_callable": true, + "_origin": "ast", + "community": 14, + "community_name": "oa", + "file_type": "code", + "norm_label": ".queryradius()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10724,7 +10198,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".recalculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10736,7 +10210,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10748,7 +10222,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".createbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10760,7 +10234,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".getvalueandresolvetokens()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10772,21 +10246,21 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": "._handleoverridablepaintpropertyupdate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_haspaintoverride", - "label": ".hasPaintOverride()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_queryintersectsfeature", + "label": ".queryIntersectsFeature()", "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", - "norm_label": ".haspaintoverride()", + "norm_label": ".queryintersectsfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -10796,7 +10270,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": ".recalculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10808,7 +10282,7 @@ "_callable": true, "_origin": "ast", "community": 14, - "community_name": "Uc", + "community_name": "oa", "file_type": "code", "norm_label": "._setpaintoverrides()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -10983,266 +10457,230 @@ "source_location": "L121" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bn", - "label": "bn()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": "bn()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getcoordstexture", - "label": ".getCoordsTexture()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".getcoordstexture()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getmeshframedelta", - "label": ".getMeshFrameDelta()", - "_callable": true, - "_origin": "ast", - "community": 148, - "community_name": "bn", - "file_type": "code", - "norm_label": ".getmeshframedelta()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatefogmatrix", - "label": ".calculateFogMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".calculatefogmatrix()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculateposmatrix", - "label": ".calculatePosMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_depthatpoint", + "label": ".depthAtPoint()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".calculateposmatrix()", + "norm_label": ".depthatpoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatetilematrix", - "label": ".calculateTileMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getcoordstexture", + "label": ".getCoordsTexture()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".calculatetilematrix()", + "norm_label": ".getcoordstexture()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_transform", - "label": ".transform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getdemelevation", + "label": ".getDEMElevation()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".transform()", + "norm_label": ".getdemelevation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_tilesaftertime", - "label": ".tilesAfterTime()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getelevation", + "label": ".getElevation()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".tilesaftertime()", + "norm_label": ".getelevation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_clear", - "label": ".clear()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getelevationforlnglatzoom", + "label": ".getElevationForLngLatZoom()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".clear()", + "norm_label": ".getelevationforlnglatzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getframebuffer", + "label": ".getFramebuffer()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".getframebuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getmeshframedelta", + "label": ".getMeshFrameDelta()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".getmeshframedelta()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getminmaxelevation", + "label": ".getMinMaxElevation()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".getminmaxelevation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getmintileelevationforlnglatzoom", + "label": ".getMinTileElevationForLngLatZoom()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": ".getmintileelevationforlnglatzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_register", - "label": ".register()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getoverscaledtileidfromlnglatzoom", + "label": "._getOverscaledTileIDFromLngLatZoom()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".register()", + "norm_label": "._getoverscaledtileidfromlnglatzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_convert", - "label": ".convert()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_pointcoordinate", + "label": ".pointCoordinate()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".convert()", + "norm_label": ".pointcoordinate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_toarray", - "label": ".toArray()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getvisibleunwrappedcoordinates", + "label": ".getVisibleUnwrappedCoordinates()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".toarray()", + "norm_label": ".getvisibleunwrappedcoordinates()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pointcoordinate", + "label": ".pointCoordinate()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".pointcoordinate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_tilesaftertime", + "label": ".tilesAfterTime()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".tilesaftertime()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_tounwrapped", - "label": ".toUnwrapped()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_maybedrawdepthandcoords", + "label": ".maybeDrawDepthAndCoords()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".tounwrapped()", + "norm_label": ".maybedrawdepthandcoords()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_maybedrawdepthandcoords", - "label": ".maybeDrawDepthAndCoords()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createrenderbuffer", + "label": ".createRenderbuffer()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".maybedrawdepthandcoords()", + "norm_label": ".createrenderbuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_clear", - "label": ".clear()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getterrainelevationfunc", + "label": "._getTerrainElevationFunc()", "_callable": true, "_origin": "ast", "community": 148, - "community_name": "bn", + "community_name": "di", "file_type": "code", - "norm_label": ".clear()", + "norm_label": "._getterrainelevationfunc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11330,6 +10768,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_h", + "label": "h()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "h()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_interpolate", "label": ".interpolate()", @@ -11402,6 +10852,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_validate", + "label": "._validate()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "._validate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_backfilldem_r", "label": "r()", @@ -11415,103 +10877,139 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_point", - "label": ".point()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".point()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "i()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "i()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "a()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_point", + "label": ".point()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".point()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi", + "label": "fi()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "fi()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_a", + "label": "a()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_update", + "label": ".update()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_c", + "label": "c()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "c()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -11523,86 +11021,86 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "r()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "s()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_x", - "label": "x()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "x()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "s()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jc", - "label": "jc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_x", + "label": "x()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "jc()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_in", + "label": "In()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "in()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11630,6 +11128,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_e", + "label": "e()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "e()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_h", "label": "h()", @@ -11702,6 +11212,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_t", + "label": "T()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "t()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_u", "label": "u()", @@ -11750,6 +11272,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_v_s", + "label": "S()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mi", "label": "mi()", @@ -11786,6 +11320,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_f", + "label": "f()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "f()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_p", "label": "p()", @@ -11799,38 +11345,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_a_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "n()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_a_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "a()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "e()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -11906,6 +11452,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_s", + "label": "s()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_r", "label": "r()", @@ -11931,7 +11489,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_s", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_s", "label": "s()", "_callable": true, "_origin": "ast", @@ -11943,172 +11501,268 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_s_d", - "label": "d()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "d()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_nt", - "label": "nt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "nt()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "h()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_i", - "label": "I()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "i()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "p()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "u()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": "o()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", "community": 15, "community_name": "e", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "examples_mcp_server_analyse_cell", - "label": "analyse_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 153, - "community_name": "The prompts", + "community": 15, + "community_name": "e", "file_type": "code", - "norm_label": "analyse_cell()", - "source_file": "examples/mcp/server.py", - "source_location": "L946" + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "examples_mcp_server_explain_call", - "label": "explain_call()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_s_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 153, - "community_name": "The prompts", + "community": 15, + "community_name": "e", "file_type": "code", - "norm_label": "explain_call()", - "source_file": "examples/mcp/server.py", - "source_location": "L987" + "norm_label": "d()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "examples_mcp_server_start_batch_project", - "label": "start_batch_project()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_g", + "label": "g()", "_callable": true, "_origin": "ast", - "community": 153, - "community_name": "The prompts", + "community": 15, + "community_name": "e", "file_type": "code", - "norm_label": "start_batch_project()", - "source_file": "examples/mcp/server.py", - "source_location": "L970" + "norm_label": "g()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "examples_mcp_server_client_config_path", - "label": "_client_config_path()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 157, - "community_name": "_client_config_path", + "community": 15, + "community_name": "e", "file_type": "code", - "norm_label": "_client_config_path()", - "source_file": "examples/mcp/server.py", - "source_location": "L1015" + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "examples_mcp_server_install", - "label": "_install()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_nt", + "label": "nt()", "_callable": true, "_origin": "ast", - "community": 157, - "community_name": "_client_config_path", + "community": 15, + "community_name": "e", "file_type": "code", - "norm_label": "_install()", - "source_file": "examples/mcp/server.py", - "source_location": "L1025" + "norm_label": "nt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_u", + "label": "u()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_h", + "label": "h()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "h()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_i", + "label": "I()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "i()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_p", + "label": "p()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "p()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_u", + "label": "u()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_o", + "label": "o()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_h", + "label": "h()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "h()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_eachchild", + "label": ".eachChild()", + "_callable": true, + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": ".eachchild()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ct", @@ -12218,25 +11872,13 @@ "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getids", - "label": ".getIds()", - "_callable": true, - "_origin": "ast", - "community": 159, - "community_name": "mt", - "file_type": "code", - "norm_label": ".getids()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_api_app_create_app", "label": "create_app()", "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "create_app()", "source_file": "src/cellpy_simple_gui/api/app.py", @@ -12248,7 +11890,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "healthz()", "source_file": "src/cellpy_simple_gui/api/app.py", @@ -12260,7 +11902,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "index()", "source_file": "src/cellpy_simple_gui/api/app.py", @@ -12272,43 +11914,151 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "require_token()", "source_file": "src/cellpy_simple_gui/api/deps.py", "source_location": "L32" }, + { + "id": "src_cellpy_simple_gui_api_routers_cells_clear", + "label": "clear()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "clear()", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L172" + }, + { + "id": "src_cellpy_simple_gui_api_routers_cells_delete_cell", + "label": "delete_cell()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "delete_cell()", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L166" + }, + { + "id": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "label": "rename_group()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "rename_group()", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L151" + }, + { + "id": "src_cellpy_simple_gui_api_routers_cells_select_all", + "label": "select_all()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "select_all()", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L160" + }, + { + "id": "src_cellpy_simple_gui_api_routers_cells_state", + "label": "_state()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "_state()", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L25" + }, + { + "id": "src_cellpy_simple_gui_api_routers_cells_update_cell", + "label": "update_cell()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "update_cell()", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L131" + }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_cell_cycles", + "label": "cell_cycles()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "cell_cycles()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L64" + }, { "id": "src_cellpy_simple_gui_api_routers_plots_plot_types", "label": "plot_types()", "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "plot_types()", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L25" }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_selected_cycles_bounds", + "label": "selected_cycles_bounds()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "selected_cycles_bounds()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L92" + }, { "id": "src_cellpy_simple_gui_config_get_settings", "label": "get_settings()", "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "get_settings()", "source_file": "src/cellpy_simple_gui/config.py", "source_location": "L76" }, + { + "id": "src_cellpy_simple_gui_core_library_get_library", + "label": "get_library()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "get_library()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L360" + }, { "id": "tests_test_api_client", "label": "client()", "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "client()", "source_file": "tests/test_api.py", @@ -12320,11 +12070,11 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "served_client()", "source_file": "tests/test_api.py", - "source_location": "L727" + "source_location": "L754" }, { "id": "tests_test_api_test_job_timings_reported", @@ -12332,11 +12082,11 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_job_timings_reported()", "source_file": "tests/test_api.py", - "source_location": "L429" + "source_location": "L456" }, { "id": "tests_test_api_test_log_viewer_captures_stdlib_records", @@ -12344,11 +12094,11 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_log_viewer_captures_stdlib_records()", "source_file": "tests/test_api.py", - "source_location": "L402" + "source_location": "L429" }, { "id": "tests_test_compare_client", @@ -12356,23 +12106,47 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "client()", "source_file": "tests/test_compare.py", "source_location": "L285" }, + { + "id": "tests_test_core_dev_mode", + "label": "dev_mode()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "dev_mode()", + "source_file": "tests/test_core.py", + "source_location": "L1631" + }, { "id": "tests_test_journal_test_api_load_corrupt_journal_reports_error", "label": "test_api_load_corrupt_journal_reports_error()", "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_api_load_corrupt_journal_reports_error()", "source_file": "tests/test_journal.py", - "source_location": "L83" + "source_location": "L148" + }, + { + "id": "tests_test_journal_test_api_load_journal_applies_group_labels", + "label": "test_api_load_journal_applies_group_labels()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "test_api_load_journal_applies_group_labels()", + "source_file": "tests/test_journal.py", + "source_location": "L79" }, { "id": "tests_test_projects_test_api_classify_import", @@ -12380,11 +12154,11 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_api_classify_import()", "source_file": "tests/test_projects.py", - "source_location": "L346" + "source_location": "L385" }, { "id": "tests_test_projects_test_api_open_unknown_404", @@ -12392,11 +12166,23 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_api_open_unknown_404()", "source_file": "tests/test_projects.py", - "source_location": "L340" + "source_location": "L379" + }, + { + "id": "tests_test_projects_test_api_save_and_open", + "label": "test_api_save_and_open()", + "_callable": true, + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "test_api_save_and_open()", + "source_file": "tests/test_projects.py", + "source_location": "L352" }, { "id": "tests_test_remote_find_client", @@ -12404,7 +12190,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "_client()", "source_file": "tests/test_remote_find.py", @@ -12416,7 +12202,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "fake_finder()", "source_file": "tests/test_remote_find.py", @@ -12428,7 +12214,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "fake()", "source_file": "tests/test_remote_find.py", @@ -12440,7 +12226,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "local()", "source_file": "tests/test_remote_find.py", @@ -12452,7 +12238,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "served()", "source_file": "tests/test_remote_find.py", @@ -12464,7 +12250,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_caps_at_max_files_and_says_so()", "source_file": "tests/test_remote_find.py", @@ -12476,7 +12262,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_empty_directory_is_an_error()", "source_file": "tests/test_remote_find.py", @@ -12488,7 +12274,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_filter_bare_text_means_contains()", "source_file": "tests/test_remote_find.py", @@ -12500,7 +12286,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_filter_glob_passes_through()", "source_file": "tests/test_remote_find.py", @@ -12512,7 +12298,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_refuses_local_directories_without_touching_cellpy()", "source_file": "tests/test_remote_find.py", @@ -12524,7 +12310,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_refuses_when_served()", "source_file": "tests/test_remote_find.py", @@ -12536,7 +12322,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_reports_nothing_found_as_an_error()", "source_file": "tests/test_remote_find.py", @@ -12548,7 +12334,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_returns_cellpy_prefixed_uris_sorted()", "source_file": "tests/test_remote_find.py", @@ -12560,7 +12346,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_surfaces_search_failures()", "source_file": "tests/test_remote_find.py", @@ -12572,7 +12358,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "boom()", "source_file": "tests/test_remote_find.py", @@ -12584,7 +12370,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_walks_once_per_extension_and_dedupes()", "source_file": "tests/test_remote_find.py", @@ -12596,7 +12382,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_warns_about_huge_listings()", "source_file": "tests/test_remote_find.py", @@ -12608,7 +12394,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_find_without_extensions_lists_everything()", "source_file": "tests/test_remote_find.py", @@ -12620,7 +12406,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_remote_find_endpoint_enforces_the_max_files_ceiling()", "source_file": "tests/test_remote_find.py", @@ -12632,7 +12418,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_remote_find_endpoint_needs_the_token()", "source_file": "tests/test_remote_find.py", @@ -12644,7 +12430,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_remote_find_endpoint_rejects_empty_directory()", "source_file": "tests/test_remote_find.py", @@ -12656,7 +12442,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_remote_find_endpoint_reports_served_refusal_in_errors()", "source_file": "tests/test_remote_find.py", @@ -12668,7 +12454,7 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "test_remote_find_endpoint_runs_as_a_job()", "source_file": "tests/test_remote_find.py", @@ -12680,180 +12466,12 @@ "_callable": true, "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "_wait()", "source_file": "tests/test_remote_find.py", "source_location": "L166" }, - { - "id": "tests_test_uploads_client", - "label": "client()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "client()", - "source_file": "tests/test_uploads.py", - "source_location": "L41" - }, - { - "id": "tests_test_uploads_served", - "label": "served()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "served()", - "source_file": "tests/test_uploads.py", - "source_location": "L27" - }, - { - "id": "tests_test_uploads_test_a_file_over_the_cap_is_refused_and_leaves_nothing_behind", - "label": "test_a_file_over_the_cap_is_refused_and_leaves_nothing_behind()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_a_file_over_the_cap_is_refused_and_leaves_nothing_behind()", - "source_file": "tests/test_uploads.py", - "source_location": "L99" - }, - { - "id": "tests_test_uploads_test_a_traversing_filename_still_lands_inside", - "label": "test_a_traversing_filename_still_lands_inside()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_a_traversing_filename_still_lands_inside()", - "source_file": "tests/test_uploads.py", - "source_location": "L83" - }, - { - "id": "tests_test_uploads_test_all_rejected_is_an_error_not_a_silent_nothing", - "label": "test_all_rejected_is_an_error_not_a_silent_nothing()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_all_rejected_is_an_error_not_a_silent_nothing()", - "source_file": "tests/test_uploads.py", - "source_location": "L135" - }, - { - "id": "tests_test_uploads_test_an_empty_file_is_refused", - "label": "test_an_empty_file_is_refused()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_an_empty_file_is_refused()", - "source_file": "tests/test_uploads.py", - "source_location": "L111" - }, - { - "id": "tests_test_uploads_test_capabilities_advertise_the_cap", - "label": "test_capabilities_advertise_the_cap()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_capabilities_advertise_the_cap()", - "source_file": "tests/test_uploads.py", - "source_location": "L170" - }, - { - "id": "tests_test_uploads_test_one_rejected_file_does_not_lose_the_others", - "label": "test_one_rejected_file_does_not_lose_the_others()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_one_rejected_file_does_not_lose_the_others()", - "source_file": "tests/test_uploads.py", - "source_location": "L117" - }, - { - "id": "tests_test_uploads_test_safe_name_reduces_a_path_to_a_filename", - "label": "test_safe_name_reduces_a_path_to_a_filename()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_safe_name_reduces_a_path_to_a_filename()", - "source_file": "tests/test_uploads.py", - "source_location": "L60" - }, - { - "id": "tests_test_uploads_test_safe_name_refuses_what_is_left_of_nothing", - "label": "test_safe_name_refuses_what_is_left_of_nothing()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_safe_name_refuses_what_is_left_of_nothing()", - "source_file": "tests/test_uploads.py", - "source_location": "L67" - }, - { - "id": "tests_test_uploads_test_two_uploads_of_one_name_are_two_files", - "label": "test_two_uploads_of_one_name_are_two_files()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_two_uploads_of_one_name_are_two_files()", - "source_file": "tests/test_uploads.py", - "source_location": "L148" - }, - { - "id": "tests_test_uploads_test_upload_lands_inside_the_data_directory", - "label": "test_upload_lands_inside_the_data_directory()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_upload_lands_inside_the_data_directory()", - "source_file": "tests/test_uploads.py", - "source_location": "L72" - }, - { - "id": "tests_test_uploads_test_upload_needs_the_token", - "label": "test_upload_needs_the_token()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_upload_needs_the_token()", - "source_file": "tests/test_uploads.py", - "source_location": "L164" - }, - { - "id": "tests_test_uploads_test_usage_and_clear", - "label": "test_usage_and_clear()", - "_callable": true, - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "code", - "norm_label": "test_usage_and_clear()", - "source_file": "tests/test_uploads.py", - "source_location": "L155" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_constructor", "label": ".constructor()", @@ -12938,6 +12556,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_possiblyevaluate", + "label": ".possiblyEvaluate()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".possiblyevaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_prepareforrender", "label": ".prepareForRender()", @@ -12962,6 +12592,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateplacement", + "label": "._updatePlacement()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": "._updateplacement()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_a", "label": "a()", @@ -13142,6 +12784,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_clone", + "label": ".clone()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".clone()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_equals", + "label": ".equals()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".equals()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_ischildof", "label": ".isChildOf()", @@ -13154,6 +12820,42 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_islessthan", + "label": ".isLessThan()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".islessthan()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_tostring", + "label": ".toString()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".tostring()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setstale", + "label": ".setStale()", + "_callable": true, + "_origin": "ast", + "community": 160, + "community_name": "oi", + "file_type": "code", + "norm_label": ".setstale()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "tests_test_guides_test_the_upstream_bugs_the_guides_describe_are_still_bugs", "label": "test_the_upstream_bugs_the_guides_describe_are_still_bugs()", @@ -13251,280 +12953,112 @@ "source_location": "L263" }, { - "id": "packaging_entry_log_dir", - "label": "_log_dir()", - "_callable": true, - "_origin": "ast", - "community": 166, - "community_name": "entry.py", - "file_type": "code", - "norm_label": "_log_dir()", - "source_file": "packaging/entry.py", - "source_location": "L25" - }, - { - "id": "packaging_entry_main", - "label": "main()", - "_callable": true, - "_origin": "ast", - "community": 166, - "community_name": "entry.py", - "file_type": "code", - "norm_label": "main()", - "source_file": "packaging/entry.py", - "source_location": "L85" - }, - { - "id": "packaging_entry_report_crash", - "label": "_report_crash()", - "_callable": true, - "_origin": "ast", - "community": 166, - "community_name": "entry.py", - "file_type": "code", - "norm_label": "_report_crash()", - "source_file": "packaging/entry.py", - "source_location": "L54" - }, - { - "id": "packaging_entry_show_dialog", - "label": "_show_dialog()", - "_callable": true, - "_origin": "ast", - "community": 166, - "community_name": "entry.py", - "file_type": "code", - "norm_label": "_show_dialog()", - "source_file": "packaging/entry.py", - "source_location": "L40" - }, - { - "id": "packaging_smoke_test_client_call", - "label": ".call()", - "_callable": true, - "_origin": "ast", - "community": 168, - "community_name": "Client", - "file_type": "code", - "norm_label": ".call()", - "source_file": "packaging/smoke_test.py", - "source_location": "L98" - }, - { - "id": "packaging_smoke_test_client_close", - "label": ".close()", - "_callable": true, - "_origin": "ast", - "community": 168, - "community_name": "Client", - "file_type": "code", - "norm_label": ".close()", - "source_file": "packaging/smoke_test.py", - "source_location": "L136" - }, - { - "id": "packaging_smoke_test_client_init", - "label": ".__init__()", + "id": "src_cellpy_simple_gui_core_collect_family_columns", + "label": "family_columns()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 164, + "community_name": "summary_columns_for", "file_type": "code", - "norm_label": ".__init__()", - "source_file": "packaging/smoke_test.py", - "source_location": "L94" + "norm_label": "family_columns()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L293" }, { - "id": "packaging_smoke_test_client_job", - "label": ".job()", + "id": "src_cellpy_simple_gui_core_collect_panel_label", + "label": "_panel_label()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 164, + "community_name": "summary_columns_for", "file_type": "code", - "norm_label": ".job()", - "source_file": "packaging/smoke_test.py", - "source_location": "L126" + "norm_label": "_panel_label()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L386" }, { - "id": "packaging_smoke_test_main", - "label": "main()", + "id": "src_cellpy_simple_gui_core_collect_summary_columns_for", + "label": "summary_columns_for()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 164, + "community_name": "summary_columns_for", "file_type": "code", - "norm_label": "main()", - "source_file": "packaging/smoke_test.py", - "source_location": "L304" + "norm_label": "summary_columns_for()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L337" }, { - "id": "packaging_smoke_test_run_checks", - "label": "run_checks()", + "id": "src_cellpy_simple_gui_core_collect_summary_panels_for", + "label": "summary_panels_for()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 164, + "community_name": "summary_columns_for", "file_type": "code", - "norm_label": "run_checks()", - "source_file": "packaging/smoke_test.py", - "source_location": "L180" + "norm_label": "summary_panels_for()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L458" }, { - "id": "packaging_smoke_test_skip", - "label": "skip()", + "id": "tests_test_core_test_summary_panels_for_capacity_ce", + "label": "test_summary_panels_for_capacity_ce()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 164, + "community_name": "summary_columns_for", "file_type": "code", - "norm_label": "skip()", - "source_file": "packaging/smoke_test.py", - "source_location": "L54" + "norm_label": "test_summary_panels_for_capacity_ce()", + "source_file": "tests/test_core.py", + "source_location": "L1320" }, { - "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented", - "label": "test_the_tool_surface_is_small_and_named_as_documented()", + "id": "packaging_entry_log_dir", + "label": "_log_dir()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 166, + "community_name": "entry.py", "file_type": "code", - "norm_label": "test_the_tool_surface_is_small_and_named_as_documented()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L209" + "norm_label": "_log_dir()", + "source_file": "packaging/entry.py", + "source_location": "L25" }, { - "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented_main", + "id": "packaging_entry_main", "label": "main()", "_callable": true, "_origin": "ast", - "community": 168, - "community_name": "Client", + "community": 166, + "community_name": "entry.py", "file_type": "code", "norm_label": "main()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L214" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 169, - "community_name": "se", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_eachchild", - "label": ".eachChild()", - "_callable": true, - "_origin": "ast", - "community": 169, - "community_name": "se", - "file_type": "code", - "norm_label": ".eachchild()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_evaluate", - "label": ".evaluate()", - "_callable": true, - "_origin": "ast", - "community": 169, - "community_name": "se", - "file_type": "code", - "norm_label": ".evaluate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_outputdefined", - "label": ".outputDefined()", - "_callable": true, - "_origin": "ast", - "community": 169, - "community_name": "se", - "file_type": "code", - "norm_label": ".outputdefined()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_se_parse", - "label": ".parse()", - "_callable": true, - "_origin": "ast", - "community": 169, - "community_name": "se", - "file_type": "code", - "norm_label": ".parse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "examples_starter_app_add_cells", - "label": "add_cells()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "add_cells()", - "source_file": "examples/starter/app.py", - "source_location": "L230" - }, - { - "id": "examples_starter_app_clear_cells", - "label": "clear_cells()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "clear_cells()", - "source_file": "examples/starter/app.py", - "source_location": "L243" - }, - { - "id": "examples_starter_app_load_example", - "label": "load_example()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "load_example()", - "source_file": "examples/starter/app.py", + "source_file": "packaging/entry.py", "source_location": "L85" }, { - "id": "examples_starter_app_load_file", - "label": "load_file()", + "id": "packaging_entry_report_crash", + "label": "_report_crash()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 166, + "community_name": "entry.py", "file_type": "code", - "norm_label": "load_file()", - "source_file": "examples/starter/app.py", - "source_location": "L95" + "norm_label": "_report_crash()", + "source_file": "packaging/entry.py", + "source_location": "L54" }, { - "id": "examples_starter_app_remember", - "label": "_remember()", + "id": "packaging_entry_show_dialog", + "label": "_show_dialog()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 166, + "community_name": "entry.py", "file_type": "code", - "norm_label": "_remember()", - "source_file": "examples/starter/app.py", - "source_location": "L112" + "norm_label": "_show_dialog()", + "source_file": "packaging/entry.py", + "source_location": "L40" }, { "id": "src_cellpy_simple_gui_api_routers_ingest_list_instruments", @@ -13538,18 +13072,6 @@ "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", "source_location": "L19" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_apply_physical_meta", - "label": "apply_physical_meta()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "apply_physical_meta()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L760" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_arbin_res_reader_available", "label": "arbin_res_reader_available()", @@ -13574,18 +13096,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L551" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_cellpy_version", - "label": "cellpy_version()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "cellpy_version()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L822" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_example_raw_path", "label": "example_raw_path()", @@ -13610,42 +13120,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L205" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_csv", - "label": "export_cell_csv()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "export_cell_csv()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L731" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_excel", - "label": "export_cell_excel()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "export_cell_excel()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L724" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_filename_for_get", - "label": "_filename_for_get()", - "_callable": true, - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "_filename_for_get()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L321" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_find_glob", "label": "_find_glob()", @@ -13683,28 +13157,28 @@ "source_location": "L407" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_ids", - "label": "instrument_ids()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_get", + "label": "_get()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "instrument_ids()", + "norm_label": "_get()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L132" + "source_location": "L349" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_meta_schema", - "label": "instrument_meta_schema()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_ids", + "label": "instrument_ids()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "instrument_meta_schema()", + "norm_label": "instrument_ids()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L220" + "source_location": "L132" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_list_instruments", @@ -13731,916 +13205,964 @@ "source_location": "L60" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_file", - "label": "load_file()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_remake_summary", + "label": "_remake_summary()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "load_file()", + "norm_label": "_remake_summary()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L340" + "source_location": "L765" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", - "label": "load_journal_cells()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_summary_frame", + "label": "summary_frame()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "load_journal_cells()", + "norm_label": "summary_frame()", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L569" + "source_location": "L529" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells_progress", - "label": "_progress()", + "id": "src_cellpy_simple_gui_core_paths_remote_paths_allowed", + "label": "remote_paths_allowed()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "_progress()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L591" + "norm_label": "remote_paths_allowed()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L49" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_file_meta", - "label": "read_file_meta()", + "id": "tests_test_api_reference_test_the_reference_and_the_skill_copy_are_byte_identical", + "label": "test_the_reference_and_the_skill_copy_are_byte_identical()", "_callable": true, "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "read_file_meta()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L227" + "norm_label": "test_the_reference_and_the_skill_copy_are_byte_identical()", + "source_file": "tests/test_api_reference.py", + "source_location": "L97" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_remake_summary", - "label": "_remake_summary()", + "id": "src_cellpy_simple_gui_api_jobs_daemonpool_init", + "label": ".__init__()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 172, + "community_name": "6. Process state and threading", "file_type": "code", - "norm_label": "_remake_summary()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L741" + "norm_label": ".__init__()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L141" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rewrite_loader_error", - "label": "_rewrite_loader_error()", + "id": "src_cellpy_simple_gui_api_jobs_daemonpool_shutdown", + "label": ".shutdown()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 172, + "community_name": "6. Process state and threading", "file_type": "code", - "norm_label": "_rewrite_loader_error()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L291" + "norm_label": ".shutdown()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L164" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_save_cell", - "label": "save_cell()", + "id": "src_cellpy_simple_gui_api_jobs_daemonpool_worker", + "label": "._worker()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 172, + "community_name": "6. Process state and threading", "file_type": "code", - "norm_label": "save_cell()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L717" + "norm_label": "._worker()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L153" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_area", - "label": "set_area()", + "id": "src_cellpy_simple_gui_api_jobs_jobmanager_init", + "label": ".__init__()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 172, + "community_name": "6. Process state and threading", "file_type": "code", - "norm_label": "set_area()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L802" + "norm_label": ".__init__()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L171" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_cycle_mode", - "label": "set_cycle_mode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_createtree", + "label": "._createTree()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": "set_cycle_mode()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L817" + "norm_label": "._createtree()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_mass", - "label": "set_mass()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_completetask", + "label": "completeTask()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": "set_mass()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L797" + "norm_label": "completetask()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_nom_cap_specifics", - "label": "set_nom_cap_specifics()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_constructor", + "label": "constructor()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": "set_nom_cap_specifics()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L812" + "norm_label": "constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_nominal_capacity", - "label": "set_nominal_capacity()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createbutton", + "label": "_createButton()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": "set_nominal_capacity()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L807" + "norm_label": "_createbutton()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_summary_frame", - "label": "summary_frame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createcanvas", + "label": "_createCanvas()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": "summary_frame()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L529" + "norm_label": "_createcanvas()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_export_export_one_cell", - "label": "_export_one_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_finish", + "label": "finish()", "_callable": true, "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": "_export_one_cell()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L233" + "norm_label": "finish()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_jobs_daemonpool_worker", - "label": "._worker()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_once", + "label": ".once()", "_callable": true, "_origin": "ast", - "community": 172, - "community_name": "6. Process state and threading", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": "._worker()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L153" + "norm_label": ".once()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_g", + "label": "g()", "_callable": true, "_origin": "ast", - "community": 176, - "community_name": "te", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": "a()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", - "community": 176, - "community_name": "te", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ismoving", + "label": "isMoving()", "_callable": true, "_origin": "ast", - "community": 176, - "community_name": "te", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "ismoving()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isrotating", + "label": "isRotating()", "_callable": true, "_origin": "ast", - "community": 176, - "community_name": "te", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "isrotating()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mark", + "label": "mark()", "_callable": true, "_origin": "ast", - "community": 176, - "community_name": "te", + "community": 18, + "community_name": "constructor", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "mark()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_aborttile", - "label": ".abortTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": ".aborttile()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_setupui", + "label": "._setupUI()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": "c()", + "norm_label": "._setupui()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_create", + "label": ".create()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".create()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_once", + "label": "once()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "once()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_flip", - "label": ".flip()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_process", + "label": "process()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": ".flip()", + "norm_label": "process()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_processtask", + "label": "processTask()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": "l()", + "norm_label": "processtask()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qi_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": "f()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_receive", + "label": "receive()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": "u()", + "norm_label": "receive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_redraw", + "label": "redraw()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": "redraw()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_render", + "label": "_render()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": "n()", + "norm_label": "_render()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": "o()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setuppainter", + "label": "_setupPainter()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": "r()", + "norm_label": "_setuppainter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_validatebounds", + "label": ".validateBounds()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".validatebounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_removetile", - "label": ".removeTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdirty", + "label": ".setDirty()", "_callable": true, "_origin": "ast", "community": 18, - "community_name": "g", + "community_name": "constructor", "file_type": "code", - "norm_label": ".removetile()", + "norm_label": ".setdirty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "s()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loadvectortile", - "label": ".loadVectorTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_insert", + "label": ".insert()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".loadvectortile()", + "norm_label": ".insert()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_al", + "label": "al()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "al()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisionbox", + "label": ".insertCollisionBox()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "c()", + "norm_label": ".insertcollisionbox()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_feature", - "label": ".feature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_go", + "label": "Go()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".feature()", + "norm_label": "go()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_off", - "label": ".off()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addcurrentvertex", + "label": ".addCurrentVertex()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".off()", + "norm_label": ".addcurrentvertex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_on", - "label": ".on()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeature", + "label": ".addFeature()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".on()", + "norm_label": ".addfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_from", - "label": ".from()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeatures", + "label": ".addFeatures()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".from()", + "norm_label": ".addfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addhalfvertex", + "label": ".addHalfVertex()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".addhalfvertex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addline", + "label": ".addLine()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": ".addline()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_addeventlistener", - "label": ".addEventListener()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".addeventlistener()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_linefeatureclips", + "label": ".lineFeatureClips()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".linefeatureclips()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_j", - "label": "j()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_populate", + "label": ".populate()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "j()", + "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_remove", - "label": ".remove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".remove()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatedistance", + "label": ".updateDistance()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "s()", + "norm_label": ".updatedistance()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_testprop", - "label": ".testProp()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatescaleddistance", + "label": ".updateScaledDistance()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": ".testprop()", + "norm_label": ".updatescaleddistance()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_d", - "label": "D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_uploadpending", + "label": ".uploadPending()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "d()", + "norm_label": ".uploadpending()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t", - "label": "T()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il", + "label": "il()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "t()", + "norm_label": "il()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il_feature", + "label": ".feature()", "_callable": true, "_origin": "ast", - "community": 18, - "community_name": "g", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "i()", + "norm_label": ".feature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jl", - "label": "jl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_isconstant", + "label": ".isConstant()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": "jl()", + "norm_label": ".isconstant()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_addfeature", - "label": ".addFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jl", + "label": "jl()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".addfeature()", + "norm_label": "jl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_addfeature", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_addfeature", "label": ".addFeature()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", "norm_label": ".addfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_addfeatures", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_addfeatures", "label": ".addFeatures()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", "norm_label": ".addfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_destroy", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_destroy", "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_isempty", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_isempty", "label": ".isEmpty()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_update", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_populate", + "label": ".populate()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".populate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_update", "label": ".update()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_uploadpending", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_uploadpending", "label": ".uploadPending()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", "norm_label": ".uploadpending()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ul", - "label": "Ul()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ns", + "label": "Ns()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": "ul()", + "norm_label": "ns()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_br", - "label": ".br()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_addfeature", + "label": ".addFeature()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".br()", + "norm_label": ".addfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_addfeatures", + "label": ".addFeatures()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".addfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_displaysize", - "label": ".displaySize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".displaysize()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tl", - "label": ".tl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".tl()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tlbr", - "label": ".tlbr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_populate", + "label": ".populate()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".tlbr()", + "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_update", + "label": ".update()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_createbucket", - "label": ".createBucket()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_uploadpending", + "label": ".uploadPending()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".createbucket()", + "norm_label": ".uploadpending()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_istileclipped", - "label": ".isTileClipped()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ul", + "label": "Ul()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".istileclipped()", + "norm_label": "ul()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_queryintersectsfeature", - "label": ".queryIntersectsFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_populate", + "label": ".populate()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".queryintersectsfeature()", + "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yl_queryradius", - "label": ".queryRadius()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_br", + "label": ".br()", "_callable": true, "_origin": "ast", "community": 187, - "community_name": "pl", + "community_name": "Ic", "file_type": "code", - "norm_label": ".queryradius()", + "norm_label": ".br()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_api_component_names", - "label": "_component_names()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 190, - "community_name": "test_index_click_and_show_targets_exist", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "_component_names()", - "source_file": "tests/test_api.py", - "source_location": "L523" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_free_identifiers", - "label": "_free_identifiers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_displaysize", + "label": ".displaySize()", "_callable": true, "_origin": "ast", - "community": 190, - "community_name": "test_index_click_and_show_targets_exist", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "_free_identifiers()", - "source_file": "tests/test_api.py", - "source_location": "L539" + "norm_label": ".displaysize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_index_click_and_show_targets_exist", - "label": "test_index_click_and_show_targets_exist()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tl", + "label": ".tl()", "_callable": true, "_origin": "ast", - "community": 190, - "community_name": "test_index_click_and_show_targets_exist", + "community": 187, + "community_name": "Ic", "file_type": "code", - "norm_label": "test_index_click_and_show_targets_exist()", - "source_file": "tests/test_api.py", - "source_location": "L561" + "norm_label": ".tl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xc_tlbr", + "label": ".tlbr()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".tlbr()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insert", + "label": ".insert()", + "_callable": true, + "_origin": "ast", + "community": 187, + "community_name": "Ic", + "file_type": "code", + "norm_label": ".insert()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "examples_starter_app_instruments", + "label": "instruments()", + "_callable": true, + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "code", + "norm_label": "instruments()", + "source_file": "examples/starter/app.py", + "source_location": "L122" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_outputdefined", @@ -14846,18 +14368,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_parse", - "label": ".parse()", - "_callable": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": ".parse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_set", "label": ".set()", @@ -14978,78 +14488,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_distance", - "label": ".distance()", - "_callable": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": ".distance()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_getdefault", - "label": ".getDefault()", - "_callable": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": ".getdefault()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_pointonline", - "label": ".pointOnLine()", - "_callable": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": ".pointonline()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_set", - "label": ".set()", - "_callable": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": ".set()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_wrap", - "label": ".wrap()", - "_callable": true, - "_origin": "ast", - "community": 199, - "community_name": "ur", - "file_type": "code", - "norm_label": ".wrap()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ur_constructor", "label": ".constructor()", @@ -15194,6 +14632,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_renderframe", + "label": ".renderFrame()", + "_callable": true, + "_origin": "ast", + "community": 2, + "community_name": "ni", + "file_type": "code", + "norm_label": ".renderframe()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_reset", "label": ".reset()", @@ -15243,62 +14693,50 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_wheel", - "label": ".wheel()", - "_callable": true, - "_origin": "ast", - "community": 2, - "community_name": "ni", - "file_type": "code", - "norm_label": ".wheel()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_gesturebeginsvertically", - "label": ".gestureBeginsVertically()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_smoothouteasing", + "label": "._smoothOutEasing()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".gesturebeginsvertically()", + "norm_label": "._smoothouteasing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_move", - "label": "._move()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_wheel", + "label": ".wheel()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": "._move()", + "norm_label": ".wheel()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchmove", - "label": ".touchmove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".touchmove()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragmove", - "label": ".dragMove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".dragmove()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -15459,26 +14897,14 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_keydown", - "label": ".keydown()", - "_callable": true, - "_origin": "ast", - "community": 2, - "community_name": "ni", - "file_type": "code", - "norm_label": ".keydown()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_contextmenu", - "label": ".contextmenu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isbypassed", + "label": ".isBypassed()", "_callable": true, "_origin": "ast", "community": 2, "community_name": "ni", "file_type": "code", - "norm_label": ".contextmenu()", + "norm_label": ".isbypassed()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -15507,280 +14933,64 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_preventdefault", - "label": ".preventDefault()", - "_callable": true, - "_origin": "ast", - "community": 2, - "community_name": "ni", - "file_type": "code", - "norm_label": ".preventdefault()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchmove", - "label": ".touchmove()", - "_callable": true, - "_origin": "ast", - "community": 2, - "community_name": "ni", - "file_type": "code", - "norm_label": ".touchmove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_contains", - "label": ".contains()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".contains()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_getdefaultposition", - "label": ".getDefaultPosition()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".getdefaultposition()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_onadd", - "label": ".onAdd()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".onadd()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_onremove", - "label": ".onRemove()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".onremove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_setelementtitle", - "label": "._setElementTitle()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": "._setelementtitle()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_li_updateattributions", - "label": "._updateAttributions()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": "._updateattributions()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_disable", - "label": ".disable()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".disable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_disablerotation", - "label": ".disableRotation()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".disablerotation()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_enable", - "label": ".enable()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".enable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_enablerotation", - "label": ".enableRotation()", - "_callable": true, - "_origin": "ast", - "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".enablerotation()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_config_settings_absolute_data_dir", + "label": "._absolute_data_dir()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": "pi", + "community_name": "Settings", "file_type": "code", - "norm_label": ".isactive()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "._absolute_data_dir()", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L60" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_run", + "label": ".run()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": "pi", + "community_name": "Settings", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": ".run()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_remove", - "label": ".remove()", + "id": "tests_test_projects_test_data_dir_expands_user_and_relative", + "label": "test_data_dir_expands_user_and_relative()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": "pi", + "community_name": "Settings", "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_data_dir_expands_user_and_relative()", + "source_file": "tests/test_projects.py", + "source_location": "L582" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_reset", - "label": ".reset()", + "id": "tests_test_projects_test_data_dir_follows_the_env", + "label": "test_data_dir_follows_the_env()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": "pi", + "community_name": "Settings", "file_type": "code", - "norm_label": ".reset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_data_dir_follows_the_env()", + "source_file": "tests/test_projects.py", + "source_location": "L573" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_update", - "label": ".update()", + "id": "tests_test_projects_test_reading_settings_creates_nothing", + "label": "test_reading_settings_creates_nothing()", "_callable": true, "_origin": "ast", "community": 20, - "community_name": "pi", - "file_type": "code", - "norm_label": ".update()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "tests_test_packaging_load_entry", - "label": "_load_entry()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "_load_entry", - "file_type": "code", - "norm_label": "_load_entry()", - "source_file": "tests/test_packaging.py", - "source_location": "L29" - }, - { - "id": "tests_test_packaging_test_crash_goes_to_stderr_when_there_is_a_console", - "label": "test_crash_goes_to_stderr_when_there_is_a_console()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "_load_entry", - "file_type": "code", - "norm_label": "test_crash_goes_to_stderr_when_there_is_a_console()", - "source_file": "tests/test_packaging.py", - "source_location": "L100" - }, - { - "id": "tests_test_packaging_test_crash_report_is_written_and_the_dialog_names_it", - "label": "test_crash_report_is_written_and_the_dialog_names_it()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "_load_entry", - "file_type": "code", - "norm_label": "test_crash_report_is_written_and_the_dialog_names_it()", - "source_file": "tests/test_packaging.py", - "source_location": "L80" - }, - { - "id": "tests_test_packaging_test_crash_reporter_agrees_with_the_app_on_where_logs_go", - "label": "test_crash_reporter_agrees_with_the_app_on_where_logs_go()", - "_callable": true, - "_origin": "ast", - "community": 202, - "community_name": "_load_entry", + "community_name": "Settings", "file_type": "code", - "norm_label": "test_crash_reporter_agrees_with_the_app_on_where_logs_go()", - "source_file": "tests/test_packaging.py", - "source_location": "L37" + "norm_label": "test_reading_settings_creates_nothing()", + "source_file": "tests/test_projects.py", + "source_location": "L595" }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_a", @@ -15794,18 +15004,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_cn", - "label": "cn()", - "_callable": true, - "_origin": "ast", - "community": 203, - "community_name": "m", - "file_type": "code", - "norm_label": "cn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_d", "label": "d()", @@ -16010,13 +15208,73 @@ "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, + { + "id": "packaging_smoke_test_client_call", + "label": ".call()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": ".call()", + "source_file": "packaging/smoke_test.py", + "source_location": "L98" + }, + { + "id": "packaging_smoke_test_client_close", + "label": ".close()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": ".close()", + "source_file": "packaging/smoke_test.py", + "source_location": "L136" + }, + { + "id": "packaging_smoke_test_client_init", + "label": ".__init__()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": ".__init__()", + "source_file": "packaging/smoke_test.py", + "source_location": "L94" + }, + { + "id": "packaging_smoke_test_client_job", + "label": ".job()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": ".job()", + "source_file": "packaging/smoke_test.py", + "source_location": "L126" + }, + { + "id": "tests_test_mcp_prototype_drive", + "label": "drive()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "drive()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L55" + }, { "id": "tests_test_mcp_prototype_drive_main", "label": "main()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "main()", "source_file": "tests/test_mcp_prototype.py", @@ -16028,19 +15286,55 @@ "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "call()", "source_file": "tests/test_mcp_prototype.py", "source_location": "L65" }, + { + "id": "tests_test_mcp_prototype_prototype", + "label": "prototype()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "prototype()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L32" + }, + { + "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less", + "label": "test_a_default_direction_plot_says_it_drew_less()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_a_default_direction_plot_says_it_drew_less()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L109" + }, + { + "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L112" + }, { "id": "tests_test_mcp_prototype_test_availability_is_answered_rather_than_discovered_by_drawing", "label": "test_availability_is_answered_rather_than_discovered_by_drawing()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "test_availability_is_answered_rather_than_discovered_by_drawing()", "source_file": "tests/test_mcp_prototype.py", @@ -16052,19 +15346,91 @@ "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", "source_location": "L141" }, + { + "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at", + "label": "test_describe_api_follows_the_reference_the_docstring_points_at()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_describe_api_follows_the_reference_the_docstring_points_at()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L242" + }, + { + "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L251" + }, + { + "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it", + "label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L263" + }, + { + "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L266" + }, + { + "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy", + "label": "test_describe_api_will_not_import_outside_cellpy()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_describe_api_will_not_import_outside_cellpy()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L275" + }, + { + "id": "tests_test_mcp_prototype_test_describe_api_will_not_import_outside_cellpy_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L283" + }, { "id": "tests_test_mcp_prototype_test_new_project_refuses_before_it_writes_anything", "label": "test_new_project_refuses_before_it_writes_anything()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "test_new_project_refuses_before_it_writes_anything()", "source_file": "tests/test_mcp_prototype.py", @@ -16076,19 +15442,43 @@ "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", "source_location": "L316" }, + { + "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame", + "label": "test_no_tool_returns_a_frame()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_no_tool_returns_a_frame()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L121" + }, + { + "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L124" + }, { "id": "tests_test_mcp_prototype_test_paths_outside_the_sandbox_are_refused", "label": "test_paths_outside_the_sandbox_are_refused()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "test_paths_outside_the_sandbox_are_refused()", "source_file": "tests/test_mcp_prototype.py", @@ -16100,24 +15490,144 @@ "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", "source_location": "L169" }, + { + "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call", + "label": "test_search_api_points_at_the_module_that_defines_the_call()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_search_api_points_at_the_module_that_defines_the_call()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L296" + }, + { + "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L300" + }, + { + "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented", + "label": "test_the_tool_surface_is_small_and_named_as_documented()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_the_tool_surface_is_small_and_named_as_documented()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L209" + }, + { + "id": "tests_test_mcp_prototype_test_the_tool_surface_is_small_and_named_as_documented_main", + "label": "main()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "main()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L214" + }, + { + "id": "tests_test_mcp_prototype_test_the_whole_arc_over_the_protocol", + "label": "test_the_whole_arc_over_the_protocol()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_the_whole_arc_over_the_protocol()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L77" + }, { "id": "tests_test_mcp_prototype_test_the_whole_arc_over_the_protocol_steps", "label": "steps()", "_callable": true, "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "steps()", "source_file": "tests/test_mcp_prototype.py", "source_location": "L81" }, + { + "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do", + "label": "test_unknown_handles_and_kinds_are_told_what_to_do()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_unknown_handles_and_kinds_are_told_what_to_do()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L195" + }, + { + "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L198" + }, + { + "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too", + "label": "test_writes_are_sandboxed_too()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_writes_are_sandboxed_too()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L177" + }, + { + "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too_steps", + "label": "steps()", + "_callable": true, + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "steps()", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L180" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_cn", + "label": "cn()", + "_callable": true, + "_origin": "ast", + "community": 206, + "community_name": "Kt", + "file_type": "code", + "norm_label": "cn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_it", "label": "It()", @@ -16370,18 +15880,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", "source_location": "L5" }, - { - "id": "tests_test_api_test_system_save_rejected_without_webview", - "label": "test_system_save_rejected_without_webview()", - "_callable": true, - "_origin": "ast", - "community": 209, - "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", - "file_type": "code", - "norm_label": "test_system_save_rejected_without_webview()", - "source_file": "tests/test_api.py", - "source_location": "L111" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_anchorx", "label": ".anchorX()", @@ -16826,18 +16324,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_createlayers", - "label": "._createLayers()", - "_callable": true, - "_origin": "ast", - "community": 210, - "community_name": "ft", - "file_type": "code", - "norm_label": "._createlayers()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_remove", "label": "._remove()", @@ -16910,6 +16396,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_filter", + "label": ".filter()", + "_callable": true, + "_origin": "ast", + "community": 210, + "community_name": "ft", + "file_type": "code", + "norm_label": ".filter()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_get", "label": ".get()", @@ -17115,187 +16613,163 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_transformrequest", - "label": ".transformRequest()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": ".transformrequest()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_load", - "label": "._load()", - "_callable": true, - "_origin": "ast", - "community": 211, - "community_name": "k", - "file_type": "code", - "norm_label": "._load()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadempty", - "label": ".loadEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimage", + "label": "getImage()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".loadempty()", + "norm_label": "getimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadjson", - "label": ".loadJSON()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_aborttile", + "label": ".abortTile()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".loadjson()", + "norm_label": ".aborttile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadsprite", - "label": "._loadSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_beginframe", + "label": ".beginFrame()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "._loadsprite()", + "norm_label": ".beginframe()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadurl", - "label": ".loadURL()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".loadurl()", + "norm_label": ".bind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_a", - "label": "A()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "a()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_dt", - "label": "Dt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_dispatchrendercallbacks", + "label": ".dispatchRenderCallbacks()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "dt()", + "norm_label": ".dispatchrendercallbacks()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimage", - "label": "getImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimages", + "label": ".getImages()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "getimage()", + "norm_label": ".getimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimagesforids", + "label": "._getImagesForIds()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".load()", + "norm_label": "._getimagesforids()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpattern", + "label": ".getPattern()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".getpattern()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpixelsize", + "label": ".getPixelSize()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "c()", + "norm_label": ".getpixelsize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastile", + "label": ".hasTile()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".hastile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastile", - "label": ".hasTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".hastile()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_isloaded", + "label": ".isLoaded()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".isloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_l", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_l", "label": "l()", "_callable": true, "_origin": "ast", @@ -17307,19 +16781,19 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_listimages", + "label": ".listImages()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".load()", + "norm_label": ".listimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loaded", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loaded", "label": ".loaded()", "_callable": true, "_origin": "ast", @@ -17331,7 +16805,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_o", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_o", "label": "o()", "_callable": true, "_origin": "ast", @@ -17343,5390 +16817,5402 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setloaded", + "label": ".setLoaded()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": "s()", + "norm_label": ".setloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updateimage", + "label": ".updateImage()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".updateimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_setsourceproperty", - "label": ".setSourceProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updatepatternatlas", + "label": "._updatePatternAtlas()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".setsourceproperty()", + "norm_label": "._updatepatternatlas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_settiles", - "label": ".setTiles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loadimage", + "label": "loadImage()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".settiles()", + "norm_label": "loadimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_seturl", - "label": ".setUrl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_updateimage", + "label": "updateImage()", "_callable": true, "_origin": "ast", "community": 211, "community_name": "k", "file_type": "code", - "norm_label": ".seturl()", + "norm_label": "updateimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_aborttile", - "label": ".abortTile()", + "id": "packaging_zip_installer_main", + "label": "main()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 212, + "community_name": "zip_installer.py", "file_type": "code", - "norm_label": ".aborttile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "main()", + "source_file": "packaging/zip_installer.py", + "source_location": "L39" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_beginframe", - "label": ".beginFrame()", + "id": "packaging_zip_installer_zip_installers", + "label": "zip_installers()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 212, + "community_name": "zip_installer.py", "file_type": "code", - "norm_label": ".beginframe()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "zip_installers()", + "source_file": "packaging/zip_installer.py", + "source_location": "L14" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_bind", - "label": ".bind()", + "id": "examples_starter_app_add_cells", + "label": "add_cells()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".bind()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "add_cells()", + "source_file": "examples/starter/app.py", + "source_location": "L230" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_constructor", - "label": ".constructor()", + "id": "examples_starter_app_clear_cells", + "label": "clear_cells()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "clear_cells()", + "source_file": "examples/starter/app.py", + "source_location": "L243" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_dispatchrendercallbacks", - "label": ".dispatchRenderCallbacks()", + "id": "examples_starter_app_collection_for", + "label": "collection_for()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".dispatchrendercallbacks()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "collection_for()", + "source_file": "examples/starter/app.py", + "source_location": "L140" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimages", - "label": ".getImages()", + "id": "examples_starter_app_export", + "label": "export()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".getimages()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "export()", + "source_file": "examples/starter/app.py", + "source_location": "L254" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimagesforids", - "label": "._getImagesForIds()", + "id": "examples_starter_app_export_csv", + "label": "export_csv()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": "._getimagesforids()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "export_csv()", + "source_file": "examples/starter/app.py", + "source_location": "L199" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpattern", - "label": ".getPattern()", + "id": "examples_starter_app_figure", + "label": "figure()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".getpattern()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "figure()", + "source_file": "examples/starter/app.py", + "source_location": "L249" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getpixelsize", - "label": ".getPixelSize()", + "id": "examples_starter_app_figure_json", + "label": "figure_json()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".getpixelsize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "figure_json()", + "source_file": "examples/starter/app.py", + "source_location": "L183" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastile", - "label": ".hasTile()", + "id": "examples_starter_app_index", + "label": "index()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".hastile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "index()", + "source_file": "examples/starter/app.py", + "source_location": "L216" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_hastransition", - "label": ".hasTransition()", + "id": "examples_starter_app_load_example", + "label": "load_example()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".hastransition()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "load_example()", + "source_file": "examples/starter/app.py", + "source_location": "L85" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_isloaded", - "label": ".isLoaded()", + "id": "examples_starter_app_load_file", + "label": "load_file()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".isloaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "load_file()", + "source_file": "examples/starter/app.py", + "source_location": "L95" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_l", - "label": "l()", + "id": "examples_starter_app_missing", + "label": "_missing()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_missing()", + "source_file": "examples/starter/app.py", + "source_location": "L175" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_listimages", - "label": ".listImages()", + "id": "examples_starter_app_remember", + "label": "_remember()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".listimages()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_remember()", + "source_file": "examples/starter/app.py", + "source_location": "L112" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_load", - "label": ".load()", + "id": "examples_starter_app_state", + "label": "state()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 216, + "community_name": "starter/app.py", "file_type": "code", - "norm_label": ".load()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "state()", + "source_file": "examples/starter/app.py", + "source_location": "L221" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfeaturestate", + "label": ".setFeatureState()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 219, + "community_name": "Pt", "file_type": "code", - "norm_label": ".loaded()", + "norm_label": ".setfeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_coalescechanges", + "label": ".coalesceChanges()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 219, + "community_name": "Pt", "file_type": "code", - "norm_label": "o()", + "norm_label": ".coalescechanges()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 219, + "community_name": "Pt", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_initializetilestate", + "label": ".initializeTileState()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 219, + "community_name": "Pt", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".initializetilestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_removefeaturestate", + "label": ".removeFeatureState()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 219, + "community_name": "Pt", "file_type": "code", - "norm_label": "s()", + "norm_label": ".removefeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_updatestate", + "label": ".updateState()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 219, + "community_name": "Pt", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".updatestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setloaded", - "label": ".setLoaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setfeaturestate", + "label": "setFeatureState()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 219, + "community_name": "Pt", "file_type": "code", - "norm_label": ".setloaded()", + "norm_label": "setfeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setsourceproperty", - "label": ".setSourceProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": ".setsourceproperty()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_settiles", - "label": ".setTiles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": ".settiles()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_seturl", - "label": ".setUrl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": ".seturl()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updateimage", - "label": ".updateImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": ".updateimage()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_updatepatternatlas", - "label": "._updatePatternAtlas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_ishidden", + "label": ".isHidden()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": "._updatepatternatlas()", + "norm_label": ".ishidden()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loadimage", - "label": "loadImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": "loadimage()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": ".load()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": ".onadd()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_play", - "label": ".play()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_ishidden", + "label": ".isHidden()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": ".play()", + "norm_label": ".ishidden()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_j", - "label": "j()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": "j()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_getactor", - "label": ".getActor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 22, + "community_name": "ve", "file_type": "code", - "norm_label": ".getactor()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k", - "label": "k()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_en", + "label": "en()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 220, + "community_name": "U", "file_type": "code", - "norm_label": "k()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "en()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ki", + "label": "ki()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 220, + "community_name": "U", "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ki()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_finishloading", - "label": "._finishLoading()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_q", + "label": "q()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 220, + "community_name": "U", "file_type": "code", - "norm_label": "._finishloading()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "q()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_qr", + "label": "qr()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 220, + "community_name": "U", "file_type": "code", - "norm_label": ".hastransition()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "qr()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_tn", + "label": "tn()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 220, + "community_name": "U", "file_type": "code", - "norm_label": ".load()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "tn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_u", + "label": "U()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 220, + "community_name": "U", "file_type": "code", - "norm_label": ".loaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_zi", + "label": "zi()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 220, + "community_name": "U", "file_type": "code", - "norm_label": ".onadd()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "zi()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_zr", + "label": "zr()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 220, + "community_name": "U", "file_type": "code", - "norm_label": ".onremove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "zr()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_r", - "label": "r()", + "id": "src_cellpy_simple_gui_core_collect_apply_colorway", + "label": "_apply_colorway()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 221, + "community_name": "_restyle", "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_apply_colorway()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1369" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_core_collect_hex_to_rgba", + "label": "_hex_to_rgba()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 221, + "community_name": "_restyle", "file_type": "code", - "norm_label": ".serialize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_hex_to_rgba()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1356" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_setcoordinates", - "label": ".setCoordinates()", + "id": "src_cellpy_simple_gui_core_collect_inject_app_chrome", + "label": "_inject_app_chrome()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 221, + "community_name": "_restyle", "file_type": "code", - "norm_label": ".setcoordinates()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_inject_app_chrome()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L674" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_u", - "label": "u()", + "id": "src_cellpy_simple_gui_core_collect_preserve_full_name_on_hover", + "label": "_preserve_full_name_on_hover()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 221, + "community_name": "_restyle", "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_preserve_full_name_on_hover()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1153" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_updateimage", - "label": ".updateImage()", + "id": "src_cellpy_simple_gui_core_collect_restyle", + "label": "_restyle()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 221, + "community_name": "_restyle", "file_type": "code", - "norm_label": ".updateimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_restyle()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1395" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_aborttile", - "label": ".abortTile()", + "id": "src_cellpy_simple_gui_core_collect_shorten_legend", + "label": "_shorten_legend()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 221, + "community_name": "_restyle", "file_type": "code", - "norm_label": ".aborttile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_shorten_legend()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1169" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_core_collect_tidy_facet_annotations", + "label": "_tidy_facet_annotations()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 221, + "community_name": "_restyle", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_tidy_facet_annotations()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1209" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterchildren", - "label": ".getClusterChildren()", + "id": "src_cellpy_simple_gui_core_library_cellrecord_color", + "label": ".color()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 221, + "community_name": "_restyle", "file_type": "code", - "norm_label": ".getclusterchildren()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".color()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L83" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterexpansionzoom", - "label": ".getClusterExpansionZoom()", + "id": "tests_test_core_test_grouped_summary_renders", + "label": "test_grouped_summary_renders()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 221, + "community_name": "_restyle", "file_type": "code", - "norm_label": ".getclusterexpansionzoom()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_grouped_summary_renders()", + "source_file": "tests/test_core.py", + "source_location": "L592" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterleaves", - "label": ".getClusterLeaves()", + "id": "tests_test_core_test_summary_collection_and_figure", + "label": "test_summary_collection_and_figure()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 221, + "community_name": "_restyle", "file_type": "code", - "norm_label": ".getclusterleaves()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_summary_collection_and_figure()", + "source_file": "tests/test_core.py", + "source_location": "L128" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getdata", - "label": ".getData()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_apply_physical_meta", + "label": "apply_physical_meta()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".getdata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "apply_physical_meta()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L784" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta", + "label": "read_meta()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".hastransition()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "read_meta()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L493" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta_num", + "label": "_num()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".load()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_num()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L502" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta_safe", + "label": "_safe()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".loaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_safe()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L496" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onadd", - "label": ".onAdd()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_area", + "label": "set_area()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".onadd()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "set_area()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L826" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_cycle_mode", + "label": "set_cycle_mode()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".onremove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "set_cycle_mode()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L841" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_mass", + "label": "set_mass()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".serialize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "set_mass()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L821" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setclusteroptions", - "label": ".setClusterOptions()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_nom_cap_specifics", + "label": "set_nom_cap_specifics()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".setclusteroptions()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "set_nom_cap_specifics()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L836" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setdata", - "label": ".setData()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_set_nominal_capacity", + "label": "set_nominal_capacity()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".setdata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "set_nominal_capacity()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L831" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updatedata", - "label": ".updateData()", + "id": "src_cellpy_simple_gui_core_library_cellrecord_apply_physical_meta", + "label": "._apply_physical_meta()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": ".updatedata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "._apply_physical_meta()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L108" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updateworkerdata", - "label": "._updateWorkerData()", + "id": "src_cellpy_simple_gui_core_library_cellrecord_group_name", + "label": ".group_name()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "._updateworkerdata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".group_name()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L86" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_updateimage", - "label": "updateImage()", + "id": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", + "label": ".to_meta()", "_callable": true, "_origin": "ast", - "community": 211, - "community_name": "k", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "updateimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".to_meta()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L90" }, { - "id": "packaging_zip_installer_main", - "label": "main()", + "id": "src_cellpy_simple_gui_core_library_library_metas", + "label": ".metas()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "zip_installer.py", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "main()", - "source_file": "packaging/zip_installer.py", - "source_location": "L39" + "norm_label": ".metas()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L350" }, { - "id": "packaging_zip_installer_zip_installers", - "label": "zip_installers()", + "id": "src_cellpy_simple_gui_core_library_library_selected", + "label": ".selected()", "_callable": true, "_origin": "ast", - "community": 212, - "community_name": "zip_installer.py", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "zip_installers()", - "source_file": "packaging/zip_installer.py", - "source_location": "L14" + "norm_label": ".selected()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L341" }, { - "id": "tests_test_mcp_prototype_drive", - "label": "drive()", + "id": "src_cellpy_simple_gui_core_library_library_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "drive", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "code", - "norm_label": "drive()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L55" + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L202" }, { - "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame", - "label": "test_no_tool_returns_a_frame()", + "id": "tests_test_projects_counting_save_cell", + "label": "_counting_save_cell()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "drive", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "test_no_tool_returns_a_frame()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L121" + "norm_label": "_counting_save_cell()", + "source_file": "tests/test_projects.py", + "source_location": "L135" }, { - "id": "tests_test_mcp_prototype_test_no_tool_returns_a_frame_steps", - "label": "steps()", + "id": "tests_test_projects_counting_save_cell_counted", + "label": "counted()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "drive", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L124" + "norm_label": "counted()", + "source_file": "tests/test_projects.py", + "source_location": "L140" }, { - "id": "tests_test_mcp_prototype_test_the_whole_arc_over_the_protocol", - "label": "test_the_whole_arc_over_the_protocol()", + "id": "tests_test_projects_make_project_dir", + "label": "_make_project_dir()", "_callable": true, "_origin": "ast", - "community": 213, - "community_name": "drive", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "test_the_whole_arc_over_the_protocol()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L77" + "norm_label": "_make_project_dir()", + "source_file": "tests/test_projects.py", + "source_location": "L412" }, { - "id": "tests_test_packaging_smoke_test_module", - "label": "_smoke_test_module()", + "id": "tests_test_projects_test_broken_project_config_does_not_block_open", + "label": "test_broken_project_config_does_not_block_open()", "_callable": true, "_origin": "ast", - "community": 214, - "community_name": "test_smoke_test_skips_only_a_missing_reader", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "_smoke_test_module()", - "source_file": "tests/test_packaging.py", - "source_location": "L241" + "norm_label": "test_broken_project_config_does_not_block_open()", + "source_file": "tests/test_projects.py", + "source_location": "L460" }, { - "id": "tests_test_packaging_test_smoke_test_skips_only_a_missing_reader", - "label": "test_smoke_test_skips_only_a_missing_reader()", + "id": "tests_test_projects_test_classify_import_path", + "label": "test_classify_import_path()", "_callable": true, "_origin": "ast", - "community": 214, - "community_name": "test_smoke_test_skips_only_a_missing_reader", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "test_smoke_test_skips_only_a_missing_reader()", - "source_file": "tests/test_packaging.py", - "source_location": "L265" + "norm_label": "test_classify_import_path()", + "source_file": "tests/test_projects.py", + "source_location": "L293" }, { - "id": "examples_starter_app_collection_for", - "label": "collection_for()", + "id": "tests_test_projects_test_data_dir_defaults_to_home", + "label": "test_data_dir_defaults_to_home()", "_callable": true, "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "collection_for()", - "source_file": "examples/starter/app.py", - "source_location": "L140" + "norm_label": "test_data_dir_defaults_to_home()", + "source_file": "tests/test_projects.py", + "source_location": "L566" }, { - "id": "examples_starter_app_export", - "label": "export()", + "id": "tests_test_projects_test_diagnostics_reports_project_as_source", + "label": "test_diagnostics_reports_project_as_source()", "_callable": true, "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "export()", - "source_file": "examples/starter/app.py", - "source_location": "L254" + "norm_label": "test_diagnostics_reports_project_as_source()", + "source_file": "tests/test_projects.py", + "source_location": "L475" }, { - "id": "examples_starter_app_export_csv", - "label": "export_csv()", + "id": "tests_test_projects_test_discovery_reports_shadowed_legacy", + "label": "test_discovery_reports_shadowed_legacy()", "_callable": true, "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "export_csv()", - "source_file": "examples/starter/app.py", - "source_location": "L199" + "norm_label": "test_discovery_reports_shadowed_legacy()", + "source_file": "tests/test_projects.py", + "source_location": "L536" }, { - "id": "examples_starter_app_figure", - "label": "figure()", + "id": "tests_test_projects_test_failed_resave_keeps_previous_project", + "label": "test_failed_resave_keeps_previous_project()", "_callable": true, "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "figure()", - "source_file": "examples/starter/app.py", - "source_location": "L249" + "norm_label": "test_failed_resave_keeps_previous_project()", + "source_file": "tests/test_projects.py", + "source_location": "L103" }, { - "id": "examples_starter_app_figure_json", - "label": "figure_json()", + "id": "tests_test_projects_test_failed_resave_keeps_previous_project_boom", + "label": "boom()", "_callable": true, "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "figure_json()", - "source_file": "examples/starter/app.py", - "source_location": "L183" + "norm_label": "boom()", + "source_file": "tests/test_projects.py", + "source_location": "L112" }, { - "id": "examples_starter_app_index", - "label": "index()", + "id": "tests_test_projects_test_group_names_saved_and_restored", + "label": "test_group_names_saved_and_restored()", "_callable": true, "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "index()", - "source_file": "examples/starter/app.py", - "source_location": "L216" + "norm_label": "test_group_names_saved_and_restored()", + "source_file": "tests/test_projects.py", + "source_location": "L64" }, { - "id": "examples_starter_app_missing", - "label": "_missing()", + "id": "tests_test_projects_test_manifest_without_groups_still_opens", + "label": "test_manifest_without_groups_still_opens()", "_callable": true, "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "_missing()", - "source_file": "examples/starter/app.py", - "source_location": "L175" + "norm_label": "test_manifest_without_groups_still_opens()", + "source_file": "tests/test_projects.py", + "source_location": "L84" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_run", - "label": ".run()", + "id": "tests_test_projects_test_open_missing_raises", + "label": "test_open_missing_raises()", "_callable": true, "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".run()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_open_missing_raises()", + "source_file": "tests/test_projects.py", + "source_location": "L288" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfeaturestate", - "label": ".setFeatureState()", + "id": "tests_test_projects_test_open_via_project_json_file_and_absolute_path", + "label": "test_open_via_project_json_file_and_absolute_path()", "_callable": true, "_origin": "ast", - "community": 219, - "community_name": "Pt", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".setfeaturestate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_open_via_project_json_file_and_absolute_path()", + "source_file": "tests/test_projects.py", + "source_location": "L316" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_coalescechanges", - "label": ".coalesceChanges()", + "id": "tests_test_projects_test_opened_cells_start_clean_and_dirty_on_edit", + "label": "test_opened_cells_start_clean_and_dirty_on_edit()", "_callable": true, "_origin": "ast", - "community": 219, - "community_name": "Pt", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".coalescechanges()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_opened_cells_start_clean_and_dirty_on_edit()", + "source_file": "tests/test_projects.py", + "source_location": "L266" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_constructor", - "label": ".constructor()", + "id": "tests_test_projects_test_pin_project_config_round_trips", + "label": "test_pin_project_config_round_trips()", "_callable": true, "_origin": "ast", - "community": 219, - "community_name": "Pt", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_pin_project_config_round_trips()", + "source_file": "tests/test_projects.py", + "source_location": "L515" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_initializetilestate", - "label": ".initializeTileState()", + "id": "tests_test_projects_test_pin_project_config_writes_safe_sections", + "label": "test_pin_project_config_writes_safe_sections()", "_callable": true, "_origin": "ast", - "community": 219, - "community_name": "Pt", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".initializetilestate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_pin_project_config_writes_safe_sections()", + "source_file": "tests/test_projects.py", + "source_location": "L489" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_removefeaturestate", - "label": ".removeFeatureState()", + "id": "tests_test_projects_test_project_config_activates_and_restores", + "label": "test_project_config_activates_and_restores()", "_callable": true, "_origin": "ast", - "community": 219, - "community_name": "Pt", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".removefeaturestate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_project_config_activates_and_restores()", + "source_file": "tests/test_projects.py", + "source_location": "L421" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_updatestate", - "label": ".updateState()", + "id": "tests_test_projects_test_project_without_config_drops_previous", + "label": "test_project_without_config_drops_previous()", "_callable": true, "_origin": "ast", - "community": 219, - "community_name": "Pt", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".updatestate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_project_without_config_drops_previous()", + "source_file": "tests/test_projects.py", + "source_location": "L440" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setfeaturestate", - "label": "setFeatureState()", + "id": "tests_test_projects_test_projects_land_under_the_configured_data_dir", + "label": "test_projects_land_under_the_configured_data_dir()", "_callable": true, "_origin": "ast", - "community": 219, - "community_name": "Pt", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "setfeaturestate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_projects_land_under_the_configured_data_dir()", + "source_file": "tests/test_projects.py", + "source_location": "L606" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_continueplacement", - "label": ".continuePlacement()", + "id": "tests_test_projects_test_resave_reuses_unchanged_cells", + "label": "test_resave_reuses_unchanged_cells()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".continueplacement()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_resave_reuses_unchanged_cells()", + "source_file": "tests/test_projects.py", + "source_location": "L149" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addindicesforplacedsymbol", - "label": ".addIndicesForPlacedSymbol()", + "id": "tests_test_projects_test_resave_rewrites_cells_whose_data_changed", + "label": "test_resave_rewrites_cells_whose_data_changed()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".addindicesforplacedsymbol()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_resave_rewrites_cells_whose_data_changed()", + "source_file": "tests/test_projects.py", + "source_location": "L175" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxes", - "label": ".deserializeCollisionBoxes()", + "id": "tests_test_projects_test_reuse_declines_when_file_changed_on_disk", + "label": "test_reuse_declines_when_file_changed_on_disk()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".deserializecollisionboxes()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_reuse_declines_when_file_changed_on_disk()", + "source_file": "tests/test_projects.py", + "source_location": "L191" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxesforsymbol", - "label": "._deserializeCollisionBoxesForSymbol()", + "id": "tests_test_projects_test_reuse_declines_when_file_is_missing", + "label": "test_reuse_declines_when_file_is_missing()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": "._deserializecollisionboxesforsymbol()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_reuse_declines_when_file_is_missing()", + "source_file": "tests/test_projects.py", + "source_location": "L214" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_getsortedsymbolindexes", - "label": ".getSortedSymbolIndexes()", + "id": "tests_test_projects_test_reused_project_reopens_intact", + "label": "test_reused_project_reopens_intact()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".getsortedsymbolindexes()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_reused_project_reopens_intact()", + "source_file": "tests/test_projects.py", + "source_location": "L249" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasiconcollisionboxdata", - "label": ".hasIconCollisionBoxData()", + "id": "tests_test_projects_test_save_as_new_project_still_copies_every_cell", + "label": "test_save_as_new_project_still_copies_every_cell()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".hasiconcollisionboxdata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_save_as_new_project_still_copies_every_cell()", + "source_file": "tests/test_projects.py", + "source_location": "L229" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasicondata", - "label": ".hasIconData()", + "id": "tests_test_projects_test_save_open_roundtrip", + "label": "test_save_open_roundtrip()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".hasicondata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_save_open_roundtrip()", + "source_file": "tests/test_projects.py", + "source_location": "L25" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextcollisionboxdata", - "label": ".hasTextCollisionBoxData()", + "id": "tests_test_projects_wait", + "label": "_wait()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 23, + "community_name": "test_projects.py", "file_type": "code", - "norm_label": ".hastextcollisionboxdata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_wait()", + "source_file": "tests/test_projects.py", + "source_location": "L342" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextdata", - "label": ".hasTextData()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ye", + "label": "Ye()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".hastextdata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ye()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_sortfeatures", - "label": ".sortFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_loadvectortile", + "label": ".loadVectorTile()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".sortfeatures()", + "norm_label": ".loadvectortile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_continueplacement", - "label": ".continuePlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getclusterchildren", + "label": ".getClusterChildren()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".continueplacement()", + "norm_label": ".getclusterchildren()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_stream", - "label": "stream()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getclusterexpansionzoom", + "label": ".getClusterExpansionZoom()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "stream()", + "norm_label": ".getclusterexpansionzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_attemptanchorplacement", - "label": ".attemptAnchorPlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getclusterleaves", + "label": ".getClusterLeaves()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".attemptanchorplacement()", + "norm_label": ".getclusterleaves()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getbucketparts", - "label": ".getBucketParts()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getdata", + "label": ".getData()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".getbucketparts()", + "norm_label": ".getdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getperspectiveratio", + "label": ".getPerspectiveRatio()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "h()", + "norm_label": ".getperspectiveratio()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_hastransitions", - "label": ".hasTransitions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getviewportmatrix", + "label": ".getViewportMatrix()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".hastransitions()", + "norm_label": ".getviewportmatrix()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedjustification", - "label": ".markUsedJustification()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_isinsidegrid", + "label": ".isInsideGrid()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".markusedjustification()", + "norm_label": ".isinsidegrid()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedorientation", - "label": ".markUsedOrientation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_isoffscreen", + "label": ".isOffscreen()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".markusedorientation()", + "norm_label": ".isoffscreen()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_placelayerbucketpart", - "label": ".placeLayerBucketPart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_placecollisionbox", + "label": ".placeCollisionBox()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".placelayerbucketpart()", + "norm_label": ".placecollisionbox()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_stillrecent", - "label": ".stillRecent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_placecollisioncircles", + "label": ".placeCollisionCircles()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".stillrecent()", + "norm_label": ".placecollisioncircles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_storecollisiondata", - "label": ".storeCollisionData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_projectandgetperspectiveratio", + "label": ".projectAndGetPerspectiveRatio()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".storecollisiondata()", + "norm_label": ".projectandgetperspectiveratio()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_projectcollisionbox", + "label": "._projectCollisionBox()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "u()", + "norm_label": "._projectcollisionbox()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatebucketopacities", - "label": ".updateBucketOpacities()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_projectpathtoscreenspace", + "label": ".projectPathToScreenSpace()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".updatebucketopacities()", + "norm_label": ".projectpathtoscreenspace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatelayeropacities", - "label": ".updateLayerOpacities()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".updatelayeropacities()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_zoomadjustment", - "label": ".zoomAdjustment()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_reloadtile", + "label": ".reloadTile()", "_callable": true, "_origin": "ast", - "community": 22, - "community_name": ".get", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".zoomadjustment()", + "norm_label": ".reloadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_en", - "label": "en()", - "_callable": true, - "_origin": "ast", - "community": 220, - "community_name": "U", - "file_type": "code", - "norm_label": "en()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ki", - "label": "ki()", - "_callable": true, - "_origin": "ast", - "community": 220, - "community_name": "U", - "file_type": "code", - "norm_label": "ki()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_q", - "label": "q()", - "_callable": true, - "_origin": "ast", - "community": 220, - "community_name": "U", - "file_type": "code", - "norm_label": "q()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_qr", - "label": "qr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_removesource", + "label": ".removeSource()", "_callable": true, "_origin": "ast", - "community": 220, - "community_name": "U", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "qr()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".removesource()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_tn", - "label": "tn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 220, - "community_name": "U", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "tn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_u", - "label": "U()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isparsed", + "label": "isParsed()", "_callable": true, "_origin": "ast", - "community": 220, - "community_name": "U", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "u()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "isparsed()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_zi", - "label": "zi()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_removetile", + "label": ".removeTile()", "_callable": true, "_origin": "ast", - "community": 220, - "community_name": "U", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "zi()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".removetile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_zr", - "label": "zr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_getstate", + "label": ".getState()", "_callable": true, "_origin": "ast", - "community": 220, - "community_name": "U", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "zr()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".getstate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_apply_colorway", - "label": "_apply_colorway()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesource", + "label": "removeSource()", "_callable": true, "_origin": "ast", - "community": 221, - "community_name": "_restyle", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "_apply_colorway()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1345" + "norm_label": "removesource()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_hex_to_rgba", - "label": "_hex_to_rgba()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", - "community": 221, - "community_name": "_restyle", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "_hex_to_rgba()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1332" + "norm_label": ".loadtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_preserve_full_name_on_hover", - "label": "_preserve_full_name_on_hover()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmethods", + "label": "setMethods()", "_callable": true, "_origin": "ast", - "community": 221, - "community_name": "_restyle", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "_preserve_full_name_on_hover()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1129" + "norm_label": "setmethods()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_restyle", - "label": "_restyle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_aborttile", + "label": ".abortTile()", "_callable": true, "_origin": "ast", - "community": 221, - "community_name": "_restyle", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "_restyle()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1371" + "norm_label": ".aborttile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_shorten_legend", - "label": "_shorten_legend()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterchildren", + "label": ".getClusterChildren()", "_callable": true, "_origin": "ast", - "community": 221, - "community_name": "_restyle", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "_shorten_legend()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1145" + "norm_label": ".getclusterchildren()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_cellrecord_color", - "label": ".color()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterexpansionzoom", + "label": ".getClusterExpansionZoom()", "_callable": true, "_origin": "ast", - "community": 221, - "community_name": "_restyle", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".color()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L73" + "norm_label": ".getclusterexpansionzoom()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_grouped_summary_renders", - "label": "test_grouped_summary_renders()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getclusterleaves", + "label": ".getClusterLeaves()", "_callable": true, "_origin": "ast", - "community": 221, - "community_name": "_restyle", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "test_grouped_summary_renders()", - "source_file": "tests/test_core.py", - "source_location": "L592" + "norm_label": ".getclusterleaves()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_summary_collection_and_figure", - "label": "test_summary_collection_and_figure()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_getdata", + "label": ".getData()", "_callable": true, "_origin": "ast", - "community": 221, - "community_name": "_restyle", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "test_summary_collection_and_figure()", - "source_file": "tests/test_core.py", - "source_location": "L128" + "norm_label": ".getdata()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addsource", - "label": "addSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "addsource()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addimage", - "label": ".addImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getavailableimages", + "label": "._getAvailableImages()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".addimage()", + "norm_label": "._getavailableimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addlayer", - "label": ".addLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getdemworkersource", + "label": "._getDEMWorkerSource()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".addlayer()", + "norm_label": "._getdemworkersource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_afterimageupdated", - "label": "._afterImageUpdated()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getlayerindex", + "label": "._getLayerIndex()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "._afterimageupdated()", + "norm_label": "._getlayerindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getfilter", - "label": ".getFilter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getworkersource", + "label": "._getWorkerSource()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".getfilter()", + "norm_label": "._getworkersource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayoutproperty", - "label": ".getLayoutProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setimages", + "label": "._setImages()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".getlayoutproperty()", + "norm_label": "._setimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getpaintproperty", - "label": ".getPaintProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_syncrtlpluginstate", + "label": "._syncRTLPluginState()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".getpaintproperty()", + "norm_label": "._syncrtlpluginstate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removeimage", - "label": ".removeImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".removeimage()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfilter", - "label": ".setFilter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".setfilter()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayerzoomrange", - "label": ".setLayerZoomRange()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".setlayerzoomrange()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayoutproperty", - "label": ".setLayoutProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".setlayoutproperty()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setpaintproperty", - "label": ".setPaintProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_tojson", + "label": ".toJSON()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": ".setpaintproperty()", + "norm_label": ".tojson()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatelayer", - "label": "._updateLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt_lerp", + "label": ".lerp()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 230, + "community_name": "bt", "file_type": "code", - "norm_label": "._updatelayer()", + "norm_label": ".lerp()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_pause", - "label": ".pause()", + "id": "examples_mcp_server_describe_api", + "label": "describe_api()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 232, + "community_name": "describe_api", "file_type": "code", - "norm_label": ".pause()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "describe_api()", + "source_file": "examples/mcp/server.py", + "source_location": "L710" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_fire", - "label": ".fire()", + "id": "examples_mcp_server_follow_reference", + "label": "_follow_reference()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 232, + "community_name": "describe_api", "file_type": "code", - "norm_label": ".fire()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_follow_reference()", + "source_file": "examples/mcp/server.py", + "source_location": "L623" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_listens", - "label": ".listens()", + "id": "examples_mcp_server_index", + "label": "_index()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 232, + "community_name": "describe_api", "file_type": "code", - "norm_label": ".listens()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_index()", + "source_file": "examples/mcp/server.py", + "source_location": "L554" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayer", - "label": "getLayer()", + "id": "examples_mcp_server_index_offer", + "label": "offer()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 232, + "community_name": "describe_api", "file_type": "code", - "norm_label": "getlayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "offer()", + "source_file": "examples/mcp/server.py", + "source_location": "L571" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayoutproperty", - "label": "getLayoutProperty()", + "id": "examples_mcp_server_resolve_dotted", + "label": "_resolve_dotted()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 232, + "community_name": "describe_api", "file_type": "code", - "norm_label": "getlayoutproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_resolve_dotted()", + "source_file": "examples/mcp/server.py", + "source_location": "L531" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hasimage", - "label": "hasImage()", + "id": "examples_mcp_server_summarise", + "label": "_summarise()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 232, + "community_name": "describe_api", "file_type": "code", - "norm_label": "hasimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_summarise()", + "source_file": "examples/mcp/server.py", + "source_location": "L657" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_convertfromcellcoord", + "label": "._convertFromCellCoord()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": "._convertfromcellcoord()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validate", - "label": "._validate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_converttocellcoord", + "label": "._convertToCellCoord()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", - "norm_label": "._validate()", + "norm_label": "._converttocellcoord()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validatecontent", - "label": "._validateContent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_deserialize", + "label": ".deserialize()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", - "norm_label": "._validatecontent()", + "norm_label": ".deserialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validatestretch", - "label": "._validateStretch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_foreachcell", + "label": "._forEachCell()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", - "norm_label": "._validatestretch()", + "norm_label": "._foreachcell()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_lazyload", - "label": ".lazyLoad()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", - "norm_label": ".lazyload()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_requestimport", - "label": "._requestImport()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insertcell", + "label": "._insertCell()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", - "norm_label": "._requestimport()", + "norm_label": "._insertcell()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_setrtltextplugin", - "label": ".setRTLTextPlugin()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insertreadonly", + "label": "._insertReadonly()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", - "norm_label": ".setrtltextplugin()", + "norm_label": "._insertreadonly()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_syncstate", - "label": "._syncState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_querycell", + "label": "._queryCell()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", - "norm_label": "._syncstate()", + "norm_label": "._querycell()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_seek", - "label": ".seek()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", - "norm_label": ".seek()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resolveurl", - "label": "resolveURL()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_toarraybuffer", + "label": ".toArrayBuffer()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 233, + "community_name": "Ki", "file_type": "code", - "norm_label": "resolveurl()", + "norm_label": ".toarraybuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlayoutproperty", - "label": "setLayoutProperty()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_bn", + "label": "Bn()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 236, + "community_name": "get", "file_type": "code", - "norm_label": "setlayoutproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "bn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpaintproperty", - "label": "setPaintProperty()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_fr", + "label": "fr()", "_callable": true, "_origin": "ast", - "community": 223, - "community_name": ".fire", + "community": 236, + "community_name": "get", "file_type": "code", - "norm_label": "setpaintproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "fr()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "packaging_smoke_test_launchedapp_close", - "label": ".close()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_get", + "label": "get()", "_callable": true, "_origin": "ast", - "community": 227, - "community_name": "LaunchedApp", + "community": 236, + "community_name": "get", "file_type": "code", - "norm_label": ".close()", - "source_file": "packaging/smoke_test.py", - "source_location": "L172" + "norm_label": "get()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" }, { - "id": "packaging_smoke_test_launchedapp_init", - "label": ".__init__()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_gi", + "label": "Gi()", "_callable": true, "_origin": "ast", - "community": 227, - "community_name": "LaunchedApp", + "community": 236, + "community_name": "get", "file_type": "code", - "norm_label": ".__init__()", - "source_file": "packaging/smoke_test.py", - "source_location": "L143" + "norm_label": "gi()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "packaging_smoke_test_launchedapp_wait_for_url", - "label": ".wait_for_url()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_oe", + "label": "Oe()", "_callable": true, "_origin": "ast", - "community": 227, - "community_name": "LaunchedApp", + "community": 236, + "community_name": "get", "file_type": "code", - "norm_label": ".wait_for_url()", - "source_file": "packaging/smoke_test.py", - "source_location": "L152" + "norm_label": "oe()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_config_settings_absolute_data_dir", - "label": "._absolute_data_dir()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_save_cell", + "label": "save_cell()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 238, + "community_name": "save_cell", "file_type": "code", - "norm_label": "._absolute_data_dir()", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L60" + "norm_label": "save_cell()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L741" }, { - "id": "tests_test_projects_counting_save_cell", - "label": "_counting_save_cell()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_cellpy_version", + "label": "cellpy_version()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 24, + "community_name": "instrument_meta_schema", "file_type": "code", - "norm_label": "_counting_save_cell()", - "source_file": "tests/test_projects.py", - "source_location": "L96" + "norm_label": "cellpy_version()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L846" }, { - "id": "tests_test_projects_counting_save_cell_counted", - "label": "counted()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_instrument_meta_schema", + "label": "instrument_meta_schema()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 24, + "community_name": "instrument_meta_schema", "file_type": "code", - "norm_label": "counted()", - "source_file": "tests/test_projects.py", - "source_location": "L101" + "norm_label": "instrument_meta_schema()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L220" }, { - "id": "tests_test_projects_make_project_dir", - "label": "_make_project_dir()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "_make_project_dir()", - "source_file": "tests/test_projects.py", - "source_location": "L373" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_api_save_and_open", - "label": "test_api_save_and_open()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_distance", + "label": ".distance()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_api_save_and_open()", - "source_file": "tests/test_projects.py", - "source_location": "L313" + "norm_label": ".distance()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_broken_project_config_does_not_block_open", - "label": "test_broken_project_config_does_not_block_open()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_broken_project_config_does_not_block_open()", - "source_file": "tests/test_projects.py", - "source_location": "L421" + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_classify_import_path", - "label": "test_classify_import_path()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_pointonline", + "label": ".pointOnLine()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_classify_import_path()", - "source_file": "tests/test_projects.py", - "source_location": "L254" + "norm_label": ".pointonline()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_data_dir_defaults_to_home", - "label": "test_data_dir_defaults_to_home()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_data_dir_defaults_to_home()", - "source_file": "tests/test_projects.py", - "source_location": "L527" + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_data_dir_expands_user_and_relative", - "label": "test_data_dir_expands_user_and_relative()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sr_wrap", + "label": ".wrap()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_data_dir_expands_user_and_relative()", - "source_file": "tests/test_projects.py", - "source_location": "L543" + "norm_label": ".wrap()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_data_dir_follows_the_env", - "label": "test_data_dir_follows_the_env()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_compare", + "label": ".compare()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_data_dir_follows_the_env()", - "source_file": "tests/test_projects.py", - "source_location": "L534" + "norm_label": ".compare()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_diagnostics_reports_project_as_source", - "label": "test_diagnostics_reports_project_as_source()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_diagnostics_reports_project_as_source()", - "source_file": "tests/test_projects.py", - "source_location": "L436" + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_discovery_reports_shadowed_legacy", - "label": "test_discovery_reports_shadowed_legacy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_discovery_reports_shadowed_legacy()", - "source_file": "tests/test_projects.py", - "source_location": "L497" + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_failed_resave_keeps_previous_project", - "label": "test_failed_resave_keeps_previous_project()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_failed_resave_keeps_previous_project()", - "source_file": "tests/test_projects.py", - "source_location": "L64" + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_failed_resave_keeps_previous_project_boom", - "label": "boom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "boom()", - "source_file": "tests/test_projects.py", - "source_location": "L73" + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_open_missing_raises", - "label": "test_open_missing_raises()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_open_missing_raises()", - "source_file": "tests/test_projects.py", - "source_location": "L249" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_open_via_project_json_file_and_absolute_path", - "label": "test_open_via_project_json_file_and_absolute_path()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_open_via_project_json_file_and_absolute_path()", - "source_file": "tests/test_projects.py", - "source_location": "L277" + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_opened_cells_start_clean_and_dirty_on_edit", - "label": "test_opened_cells_start_clean_and_dirty_on_edit()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 240, + "community_name": "xr", "file_type": "code", - "norm_label": "test_opened_cells_start_clean_and_dirty_on_edit()", - "source_file": "tests/test_projects.py", - "source_location": "L227" + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_pin_project_config_round_trips", - "label": "test_pin_project_config_round_trips()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_pin_project_config_round_trips()", - "source_file": "tests/test_projects.py", - "source_location": "L476" + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_pin_project_config_writes_safe_sections", - "label": "test_pin_project_config_writes_safe_sections()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_pin_project_config_writes_safe_sections()", - "source_file": "tests/test_projects.py", - "source_location": "L450" + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_project_config_activates_and_restores", - "label": "test_project_config_activates_and_restores()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loadandprocessgeojson", + "label": ".loadAndProcessGeoJSON()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_project_config_activates_and_restores()", - "source_file": "tests/test_projects.py", - "source_location": "L382" + "norm_label": ".loadandprocessgeojson()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_project_without_config_drops_previous", - "label": "test_project_without_config_drops_previous()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loaddata", + "label": ".loadData()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_project_without_config_drops_previous()", - "source_file": "tests/test_projects.py", - "source_location": "L401" + "norm_label": ".loaddata()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_projects_land_under_the_configured_data_dir", - "label": "test_projects_land_under_the_configured_data_dir()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_projects_land_under_the_configured_data_dir()", - "source_file": "tests/test_projects.py", - "source_location": "L567" + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_reading_settings_creates_nothing", - "label": "test_reading_settings_creates_nothing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_reading_settings_creates_nothing()", - "source_file": "tests/test_projects.py", - "source_location": "L556" + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_resave_reuses_unchanged_cells", - "label": "test_resave_reuses_unchanged_cells()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_resave_reuses_unchanged_cells()", - "source_file": "tests/test_projects.py", - "source_location": "L110" + "norm_label": ".possiblyevaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_resave_rewrites_cells_whose_data_changed", - "label": "test_resave_rewrites_cells_whose_data_changed()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fl", + "label": "Fl()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_resave_rewrites_cells_whose_data_changed()", - "source_file": "tests/test_projects.py", - "source_location": "L136" + "norm_label": "fl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_reuse_declines_when_file_changed_on_disk", - "label": "test_reuse_declines_when_file_changed_on_disk()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hu", + "label": "hu()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_reuse_declines_when_file_changed_on_disk()", - "source_file": "tests/test_projects.py", - "source_location": "L152" + "norm_label": "hu()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_reuse_declines_when_file_is_missing", - "label": "test_reuse_declines_when_file_is_missing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_getvalue", + "label": ".getValue()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_reuse_declines_when_file_is_missing()", - "source_file": "tests/test_projects.py", - "source_location": "L175" + "norm_label": ".getvalue()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_reused_project_reopens_intact", - "label": "test_reused_project_reopens_intact()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_reused_project_reopens_intact()", - "source_file": "tests/test_projects.py", - "source_location": "L210" + "norm_label": ".serialize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_save_as_new_project_still_copies_every_cell", - "label": "test_save_as_new_project_still_copies_every_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_save_as_new_project_still_copies_every_cell()", - "source_file": "tests/test_projects.py", - "source_location": "L190" + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_test_save_open_roundtrip", - "label": "test_save_open_roundtrip()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "test_save_open_roundtrip()", - "source_file": "tests/test_projects.py", - "source_location": "L25" + "norm_label": ".possiblyevaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_wait", - "label": "_wait()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": "_wait()", - "source_file": "tests/test_projects.py", - "source_location": "L303" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_loadvectortile", - "label": ".loadVectorTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".loadvectortile()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getclusterchildren", - "label": ".getClusterChildren()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_calculate", + "label": "._calculate()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".getclusterchildren()", + "norm_label": "._calculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getclusterexpansionzoom", - "label": ".getClusterExpansionZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".getclusterexpansionzoom()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getclusterleaves", - "label": ".getClusterLeaves()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".getclusterleaves()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getdata", - "label": ".getData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_interpolate", + "label": ".interpolate()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".getdata()", + "norm_label": ".interpolate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getperspectiveratio", - "label": ".getPerspectiveRatio()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".getperspectiveratio()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_getviewportmatrix", - "label": ".getViewportMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_backfillborder", + "label": ".backfillBorder()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".getviewportmatrix()", + "norm_label": ".backfillborder()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisioncircles", - "label": ".insertCollisionCircles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".insertcollisioncircles()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_isinsidegrid", - "label": ".isInsideGrid()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".isinsidegrid()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_isoffscreen", - "label": ".isOffscreen()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getunpackvector", + "label": ".getUnpackVector()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".isoffscreen()", + "norm_label": ".getunpackvector()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loadandprocessgeojson", - "label": ".loadAndProcessGeoJSON()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_idx", + "label": "._idx()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".loadandprocessgeojson()", + "norm_label": "._idx()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loaddata", - "label": ".loadData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_unpack", + "label": ".unpack()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".loaddata()", + "norm_label": ".unpack()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loadgeojson", - "label": ".loadGeoJSON()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".loadgeojson()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_placecollisionbox", - "label": ".placeCollisionBox()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zh", + "label": "zh()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 241, + "community_name": ".evaluate", "file_type": "code", - "norm_label": ".placecollisionbox()", + "norm_label": "zh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_placecollisioncircles", - "label": ".placeCollisionCircles()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_an", + "label": "An()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".placecollisioncircles()", + "norm_label": "an()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_pn", + "label": "Pn()", + "_callable": true, + "_origin": "ast", + "community": 244, + "community_name": "En", + "file_type": "code", + "norm_label": "pn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_distancex", + "label": ".distanceX()", + "_callable": true, + "_origin": "ast", + "community": 244, + "community_name": "En", + "file_type": "code", + "norm_label": ".distancex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_projectandgetperspectiveratio", - "label": ".projectAndGetPerspectiveRatio()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_distancey", + "label": ".distanceY()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".projectandgetperspectiveratio()", + "norm_label": ".distancey()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_projectcollisionbox", - "label": "._projectCollisionBox()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_intersects", + "label": ".intersects()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._projectcollisionbox()", + "norm_label": ".intersects()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_projectpathtoscreenspace", - "label": ".projectPathToScreenSpace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_quadrant", + "label": ".quadrant()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".projectpathtoscreenspace()", + "norm_label": ".quadrant()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getglyphs", + "label": ".getGlyphs()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "r()", + "norm_label": ".getglyphs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_removesource", - "label": ".removeSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_calculatecameraoptionsfromto", + "label": ".calculateCameraOptionsFromTo()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".removesource()", + "norm_label": ".calculatecameraoptionsfromto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_bearing", + "label": ".bearing()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".bearing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt_lerp", - "label": ".lerp()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calcmatrices", + "label": "._calcMatrices()", "_callable": true, "_origin": "ast", - "community": 230, - "community_name": "bt", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".lerp()", + "norm_label": "._calcmatrices()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "examples_mcp_server_describe_api", - "label": "describe_api()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatefogmatrix", + "label": ".calculateFogMatrix()", "_callable": true, "_origin": "ast", - "community": 232, - "community_name": "describe_api", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "describe_api()", - "source_file": "examples/mcp/server.py", - "source_location": "L710" + "norm_label": ".calculatefogmatrix()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "examples_mcp_server_follow_reference", - "label": "_follow_reference()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculatetilematrix", + "label": ".calculateTileMatrix()", "_callable": true, "_origin": "ast", - "community": 232, - "community_name": "describe_api", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "_follow_reference()", - "source_file": "examples/mcp/server.py", - "source_location": "L623" + "norm_label": ".calculatetilematrix()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "examples_mcp_server_index", - "label": "_index()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_center", + "label": ".center()", "_callable": true, "_origin": "ast", - "community": 232, - "community_name": "describe_api", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "_index()", - "source_file": "examples/mcp/server.py", - "source_location": "L554" + "norm_label": ".center()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "examples_mcp_server_index_offer", - "label": "offer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_centeroffset", + "label": ".centerOffset()", "_callable": true, "_origin": "ast", - "community": 232, - "community_name": "describe_api", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "offer()", - "source_file": "examples/mcp/server.py", - "source_location": "L571" + "norm_label": ".centeroffset()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "examples_mcp_server_resolve_dotted", - "label": "_resolve_dotted()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_centerpoint", + "label": ".centerPoint()", "_callable": true, "_origin": "ast", - "community": 232, - "community_name": "describe_api", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "_resolve_dotted()", - "source_file": "examples/mcp/server.py", - "source_location": "L531" + "norm_label": ".centerpoint()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "examples_mcp_server_search_api", - "label": "search_api()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_clone", + "label": ".clone()", "_callable": true, "_origin": "ast", - "community": 232, - "community_name": "describe_api", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "search_api()", - "source_file": "examples/mcp/server.py", - "source_location": "L674" + "norm_label": ".clone()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "examples_mcp_server_summarise", - "label": "_summarise()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_constrain", + "label": "._constrain()", "_callable": true, "_origin": "ast", - "community": 232, - "community_name": "describe_api", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "_summarise()", - "source_file": "examples/mcp/server.py", - "source_location": "L657" + "norm_label": "._constrain()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_convertfromcellcoord", - "label": "._convertFromCellCoord()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coordinatepoint", + "label": ".coordinatePoint()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._convertfromcellcoord()", + "norm_label": ".coordinatepoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_converttocellcoord", - "label": "._convertToCellCoord()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coveringtiles", + "label": ".coveringTiles()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._converttocellcoord()", + "norm_label": ".coveringtiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_deserialize", - "label": ".deserialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coveringzoomlevel", + "label": ".coveringZoomLevel()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".deserialize()", + "norm_label": ".coveringzoomlevel()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_foreachcell", - "label": "._forEachCell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_customlayermatrix", + "label": ".customLayerMatrix()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._foreachcell()", + "norm_label": ".customlayermatrix()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_elevation", + "label": ".elevation()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".elevation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insert", - "label": ".insert()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_fov", + "label": ".fov()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".insert()", + "norm_label": ".fov()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insertcell", - "label": "._insertCell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getbounds", + "label": ".getBounds()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._insertcell()", + "norm_label": ".getbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insertreadonly", - "label": "._insertReadonly()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getcamerapoint", + "label": ".getCameraPoint()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._insertreadonly()", + "norm_label": ".getcamerapoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_query", - "label": ".query()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getcameraquerygeometry", + "label": ".getCameraQueryGeometry()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".query()", + "norm_label": ".getcameraquerygeometry()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_querycell", - "label": "._queryCell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_gethorizon", + "label": ".getHorizon()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._querycell()", + "norm_label": ".gethorizon()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getmaxbounds", + "label": ".getMaxBounds()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".getmaxbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_toarraybuffer", - "label": ".toArrayBuffer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_interpolatepadding", + "label": ".interpolatePadding()", "_callable": true, "_origin": "ast", - "community": 233, - "community_name": "Ki", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".toarraybuffer()", + "norm_label": ".interpolatepadding()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config", - "label": "test_startup_survives_an_unreadable_cellpy_config()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_lnglattocameradepth", + "label": ".lngLatToCameraDepth()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "test_startup_survives_an_unreadable_cellpy_config", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "test_startup_survives_an_unreadable_cellpy_config()", - "source_file": "tests/test_packaging.py", - "source_location": "L210" + "norm_label": ".lnglattocameradepth()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config_boom", - "label": "boom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_locationcoordinate", + "label": ".locationCoordinate()", "_callable": true, "_origin": "ast", - "community": 234, - "community_name": "test_startup_survives_an_unreadable_cellpy_config", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "boom()", - "source_file": "tests/test_packaging.py", - "source_location": "L213" + "norm_label": ".locationcoordinate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_bn", - "label": "Bn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_locationpoint", + "label": ".locationPoint()", "_callable": true, "_origin": "ast", - "community": 236, - "community_name": "get", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "bn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".locationpoint()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_fr", - "label": "fr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_maxpitch", + "label": ".maxPitch()", "_callable": true, "_origin": "ast", - "community": 236, - "community_name": "get", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "fr()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".maxpitch()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_get", - "label": "get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_maxzoom", + "label": ".maxZoom()", "_callable": true, "_origin": "ast", - "community": 236, - "community_name": "get", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "get()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": ".maxzoom()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_gi", - "label": "Gi()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_minpitch", + "label": ".minPitch()", "_callable": true, "_origin": "ast", - "community": 236, - "community_name": "get", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "gi()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".minpitch()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_oe", - "label": "Oe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_minzoom", + "label": ".minZoom()", "_callable": true, "_origin": "ast", - "community": 236, - "community_name": "get", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "oe()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": ".minzoom()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bu", - "label": "Bu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_padding", + "label": ".padding()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "bu()", + "norm_label": ".padding()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nu_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pitch", + "label": ".pitch()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".pitch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_addto", - "label": ".addTo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_renderworldcopies", + "label": ".renderWorldCopies()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".addto()", + "norm_label": ".renderworldcopies()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_createclosebutton", - "label": "._createCloseButton()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_resize", + "label": ".resize()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._createclosebutton()", + "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_focusfirstelement", - "label": "._focusFirstElement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_unmodified", + "label": ".unmodified()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._focusfirstelement()", + "norm_label": ".unmodified()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getcrossfadeparameters", - "label": ".getCrossfadeParameters()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_unproject", + "label": ".unproject()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".getcrossfadeparameters()", + "norm_label": ".unproject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getelement", - "label": ".getElement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_worldsize", + "label": ".worldSize()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".getelement()", + "norm_label": ".worldsize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getlayoutproperty", - "label": ".getLayoutProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_zoom", + "label": ".zoom()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".getlayoutproperty()", + "norm_label": ".zoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getlnglat", - "label": ".getLngLat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_clone", + "label": ".clone()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".getlnglat()", + "norm_label": ".clone()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getmaxwidth", - "label": ".getMaxWidth()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".getmaxwidth()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getpaintproperty", - "label": ".getPaintProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".getpaintproperty()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_handleoverridablepaintpropertyupdate", - "label": "._handleOverridablePaintPropertyUpdate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_evaluatewithouterrorhandling", + "label": ".evaluateWithoutErrorHandling()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._handleoverridablepaintpropertyupdate()", + "norm_label": ".evaluatewithouterrorhandling()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_handlespecialpaintpropertyupdate", - "label": "._handleSpecialPaintPropertyUpdate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_getcenter", + "label": ".getCenter()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": "._handlespecialpaintpropertyupdate()", + "norm_label": ".getcenter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_hasoffscreenpass", - "label": ".hasOffscreenPass()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_interpolate", + "label": ".interpolate()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".hasoffscreenpass()", + "norm_label": ".interpolate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_tojson", + "label": ".toJSON()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".tojson()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_is3d", - "label": ".is3D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmaxbounds", + "label": "setMaxBounds()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".is3d()", + "norm_label": "setmaxbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_ishidden", - "label": ".isHidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_tolnglat", + "label": ".toLngLat()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".ishidden()", + "norm_label": ".tolnglat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_istileclipped", - "label": ".isTileClipped()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_fromlnglat", + "label": ".fromLngLat()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 244, + "community_name": "En", "file_type": "code", - "norm_label": ".istileclipped()", + "norm_label": ".fromlnglat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_recalculate", - "label": ".recalculate()", + "id": "tests_test_packaging_load_entry", + "label": "_load_entry()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 249, + "community_name": "_load_entry", "file_type": "code", - "norm_label": ".recalculate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_load_entry()", + "source_file": "tests/test_packaging.py", + "source_location": "L29" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_removeclassname", - "label": ".removeClassName()", + "id": "tests_test_packaging_test_crash_goes_to_stderr_when_there_is_a_console", + "label": "test_crash_goes_to_stderr_when_there_is_a_console()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 249, + "community_name": "_load_entry", "file_type": "code", - "norm_label": ".removeclassname()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_crash_goes_to_stderr_when_there_is_a_console()", + "source_file": "tests/test_packaging.py", + "source_location": "L100" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_resize", - "label": ".resize()", + "id": "tests_test_packaging_test_crash_report_is_written_and_the_dialog_names_it", + "label": "test_crash_report_is_written_and_the_dialog_names_it()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 249, + "community_name": "_load_entry", "file_type": "code", - "norm_label": ".resize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_crash_report_is_written_and_the_dialog_names_it()", + "source_file": "tests/test_packaging.py", + "source_location": "L80" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_serialize", - "label": ".serialize()", + "id": "tests_test_packaging_test_crash_reporter_agrees_with_the_app_on_where_logs_go", + "label": "test_crash_reporter_agrees_with_the_app_on_where_logs_go()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 249, + "community_name": "_load_entry", "file_type": "code", - "norm_label": ".serialize()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_crash_reporter_agrees_with_the_app_on_where_logs_go()", + "source_file": "tests/test_packaging.py", + "source_location": "L37" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setdomcontent", - "label": ".setDOMContent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_au", + "label": "au()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".setdomcontent()", + "norm_label": "au()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_sethtml", - "label": ".setHTML()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bh", + "label": "bh()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".sethtml()", + "norm_label": "bh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setsubpixelpositioning", - "label": ".setSubpixelPositioning()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bl", + "label": "bl()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".setsubpixelpositioning()", + "norm_label": "bl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_settext", - "label": ".setText()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bo_populatepaintarrays", + "label": ".populatePaintArrays()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".settext()", + "norm_label": ".populatepaintarrays()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_toggleclassname", - "label": ".toggleClassName()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cu", + "label": "cu()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".toggleclassname()", + "norm_label": "cu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_updatetransitions", - "label": ".updateTransitions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dh", + "label": "dh()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".updatetransitions()", + "norm_label": "dh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_validate", - "label": "._validate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_du", + "label": "du()", "_callable": true, "_origin": "ast", - "community": 24, - "community_name": "oa", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "._validate()", + "norm_label": "du()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addcollisiondebugvertex", + "label": "._addCollisionDebugVertex()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "._addcollisiondebugvertex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_insert", - "label": ".insert()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addcollisiondebugvertices", + "label": ".addCollisionDebugVertices()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".insert()", + "norm_label": ".addcollisiondebugvertices()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisionbox", - "label": ".insertCollisionBox()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_adddebugcollisionboxes", + "label": ".addDebugCollisionBoxes()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".insertcollisionbox()", + "norm_label": ".adddebugcollisionboxes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_go", - "label": "Go()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addindicesforplacedsymbol", + "label": ".addIndicesForPlacedSymbol()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "go()", + "norm_label": ".addindicesforplacedsymbol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addcurrentvertex", - "label": ".addCurrentVertex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addsymbols", + "label": ".addSymbols()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".addcurrentvertex()", + "norm_label": ".addsymbols()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeature", - "label": ".addFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addtolinevertexarray", + "label": ".addToLineVertexArray()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".addfeature()", + "norm_label": ".addtolinevertexarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addfeatures", - "label": ".addFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addtosortkeyranges", + "label": ".addToSortKeyRanges()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".addfeatures()", + "norm_label": ".addtosortkeyranges()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addhalfvertex", - "label": ".addHalfVertex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_calculateglyphdependencies", + "label": ".calculateGlyphDependencies()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".addhalfvertex()", + "norm_label": ".calculateglyphdependencies()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_addline", - "label": ".addLine()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxes", + "label": ".deserializeCollisionBoxes()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".addline()", + "norm_label": ".deserializecollisionboxes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_deserializecollisionboxesforsymbol", + "label": "._deserializeCollisionBoxesForSymbol()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": "._deserializecollisionboxesforsymbol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_linefeatureclips", - "label": ".lineFeatureClips()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_destroydebugdata", + "label": ".destroyDebugData()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".linefeatureclips()", + "norm_label": ".destroydebugdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_generatecollisiondebugbuffers", + "label": ".generateCollisionDebugBuffers()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".populate()", + "norm_label": ".generatecollisiondebugbuffers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_getsortedsymbolindexes", + "label": ".getSortedSymbolIndexes()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".getsortedsymbolindexes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatedistance", - "label": ".updateDistance()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasdebugdata", + "label": ".hasDebugData()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".updatedistance()", + "norm_label": ".hasdebugdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_updatescaleddistance", - "label": ".updateScaledDistance()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasiconcollisionboxdata", + "label": ".hasIconCollisionBoxData()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".updatescaleddistance()", + "norm_label": ".hasiconcollisionboxdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextcollisionboxdata", + "label": ".hasTextCollisionBoxData()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".uploadpending()", + "norm_label": ".hastextcollisionboxdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_isconstant", - "label": ".isConstant()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".isconstant()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_addfeatures", - "label": ".addFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_sortfeatures", + "label": ".sortFeatures()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".addfeatures()", + "norm_label": ".sortfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_upload", + "label": ".upload()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".populate()", + "norm_label": ".upload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ns", - "label": "Ns()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_preparesegment", + "label": ".prepareSegment()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "ns()", + "norm_label": ".preparesegment()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kh_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".populate()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_populate", - "label": ".populate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".populate()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insert", - "label": ".insert()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qc_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 241, - "community_name": "Ic", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".insert()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_pn", - "label": "Pn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qc_forimage", + "label": ".forImage()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "pn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": ".forimage()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_distancex", - "label": ".distanceX()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qc_fortext", + "label": ".forText()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".distancex()", + "norm_label": ".fortext()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_distancey", - "label": ".distanceY()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_addimagesection", + "label": ".addImageSection()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".distancey()", + "norm_label": ".addimagesection()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_intersects", - "label": ".intersects()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_addtextsection", + "label": ".addTextSection()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".intersects()", + "norm_label": ".addtextsection()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_quadrant", - "label": ".quadrant()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".quadrant()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_fromfeature", + "label": ".fromFeature()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".fromfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_depthatpoint", - "label": ".depthAtPoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getcharcode", + "label": ".getCharCode()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".depthatpoint()", + "norm_label": ".getcharcode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getdemelevation", - "label": ".getDEMElevation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getmaxscale", + "label": ".getMaxScale()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".getdemelevation()", + "norm_label": ".getmaxscale()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getelevation", - "label": ".getElevation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getnextimagesectioncharcode", + "label": ".getNextImageSectionCharCode()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".getelevation()", + "norm_label": ".getnextimagesectioncharcode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getelevationforlnglatzoom", - "label": ".getElevationForLngLatZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getsection", + "label": ".getSection()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".getelevationforlnglatzoom()", + "norm_label": ".getsection()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getframebuffer", - "label": ".getFramebuffer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getsectionindex", + "label": ".getSectionIndex()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".getframebuffer()", + "norm_label": ".getsectionindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getminmaxelevation", - "label": ".getMinMaxElevation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_length", + "label": ".length()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".getminmaxelevation()", + "norm_label": ".length()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getmintileelevationforlnglatzoom", - "label": ".getMinTileElevationForLngLatZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".getmintileelevationforlnglatzoom()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getoverscaledtileidfromlnglatzoom", - "label": "._getOverscaledTileIDFromLngLatZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_verticalizepunctuation", + "label": ".verticalizePunctuation()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": "._getoverscaledtileidfromlnglatzoom()", + "norm_label": ".verticalizepunctuation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getterraindata", - "label": ".getTerrainData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".getterraindata()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_pointcoordinate", - "label": ".pointCoordinate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".pointcoordinate()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_tilesin", - "label": ".tilesIn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_trigger", + "label": ".trigger()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".tilesin()", + "norm_label": ".trigger()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getglyphs", - "label": ".getGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wh", + "label": "wh()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".getglyphs()", + "norm_label": "wh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_calculatecameraoptionsfromto", - "label": ".calculateCameraOptionsFromTo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xh", + "label": "xh()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 25, + "community_name": "eu", "file_type": "code", - "norm_label": ".calculatecameraoptionsfromto()", + "norm_label": "xh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_bearing", - "label": ".bearing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zi_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 250, + "community_name": "Zi", "file_type": "code", - "norm_label": ".bearing()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calcmatrices", - "label": "._calcMatrices()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zi_transitioned", + "label": ".transitioned()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 250, + "community_name": "Zi", "file_type": "code", - "norm_label": "._calcmatrices()", + "norm_label": ".transitioned()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_center", - "label": ".center()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zi_untransitioned", + "label": ".untransitioned()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 250, + "community_name": "Zi", "file_type": "code", - "norm_label": ".center()", + "norm_label": ".untransitioned()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_centeroffset", - "label": ".centerOffset()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_gn", + "label": "Gn()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 257, + "community_name": "_t", "file_type": "code", - "norm_label": ".centeroffset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "gn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_centerpoint", - "label": ".centerPoint()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ln", + "label": "Ln()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 257, + "community_name": "_t", "file_type": "code", - "norm_label": ".centerpoint()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ln()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_clone", - "label": ".clone()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_re", + "label": "Re()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 257, + "community_name": "_t", "file_type": "code", - "norm_label": ".clone()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "re()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_constrain", - "label": "._constrain()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_t", + "label": "_t()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 257, + "community_name": "_t", "file_type": "code", - "norm_label": "._constrain()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_t()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coordinatepoint", - "label": ".coordinatePoint()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_te", + "label": "te()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 257, + "community_name": "_t", "file_type": "code", - "norm_label": ".coordinatepoint()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "te()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coveringtiles", - "label": ".coveringTiles()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_un", + "label": "Un()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 257, + "community_name": "_t", "file_type": "code", - "norm_label": ".coveringtiles()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "un()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_coveringzoomlevel", - "label": ".coveringZoomLevel()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_wn", + "label": "Wn()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 257, + "community_name": "_t", "file_type": "code", - "norm_label": ".coveringzoomlevel()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "wn()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_customlayermatrix", - "label": ".customLayerMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_x", + "label": "x()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 257, + "community_name": "_t", "file_type": "code", - "norm_label": ".customlayermatrix()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "x()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_elevation", - "label": ".elevation()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_yt", + "label": "Yt()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 257, + "community_name": "_t", "file_type": "code", - "norm_label": ".elevation()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "yt()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_fov", - "label": ".fov()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 257, + "community_name": "_t", "file_type": "code", - "norm_label": ".fov()", + "norm_label": ".bind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getbounds", - "label": ".getBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".getbounds()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getcamerapoint", - "label": ".getCameraPoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_pop", + "label": ".pop()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".getcamerapoint()", + "norm_label": ".pop()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getcameraquerygeometry", - "label": ".getCameraQueryGeometry()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_appendleaves", + "label": "._appendLeaves()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".getcameraquerygeometry()", + "norm_label": "._appendleaves()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_gethorizon", - "label": ".getHorizon()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_cluster", + "label": "._cluster()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".gethorizon()", + "norm_label": "._cluster()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getmaxbounds", - "label": ".getMaxBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getchildren", + "label": ".getChildren()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".getmaxbounds()", + "norm_label": ".getchildren()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_getvisibleunwrappedcoordinates", - "label": ".getVisibleUnwrappedCoordinates()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getclusterexpansionzoom", + "label": ".getClusterExpansionZoom()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".getvisibleunwrappedcoordinates()", + "norm_label": ".getclusterexpansionzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_lnglattocameradepth", - "label": ".lngLatToCameraDepth()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getleaves", + "label": ".getLeaves()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".lnglattocameradepth()", + "norm_label": ".getleaves()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_locationcoordinate", - "label": ".locationCoordinate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getoriginid", + "label": "._getOriginId()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".locationcoordinate()", + "norm_label": "._getoriginid()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_locationpoint", - "label": ".locationPoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getoriginzoom", + "label": "._getOriginZoom()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".locationpoint()", + "norm_label": "._getoriginzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_maxpitch", - "label": ".maxPitch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_map", + "label": "._map()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".maxpitch()", + "norm_label": "._map()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_maxzoom", - "label": ".maxZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_flattenandsortrenderedfeatures", + "label": "._flattenAndSortRenderedFeatures()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".maxzoom()", + "norm_label": "._flattenandsortrenderedfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_minpitch", - "label": ".minPitch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".minpitch()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_minzoom", - "label": ".minZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".minzoom()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_padding", - "label": ".padding()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".padding()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pitch", - "label": ".pitch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_seturl", + "label": ".setURL()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".pitch()", + "norm_label": ".seturl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_pointcoordinate", - "label": ".pointCoordinate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".pointcoordinate()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_recalculatezoom", - "label": ".recalculateZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_within", + "label": ".within()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".recalculatezoom()", + "norm_label": ".within()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_renderworldcopies", - "label": ".renderWorldCopies()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".renderworldcopies()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_resize", - "label": ".resize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".resize()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_scalezoom", - "label": ".scaleZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loadgeometry", + "label": "loadGeometry()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".scalezoom()", + "norm_label": "loadgeometry()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_unmodified", - "label": ".unmodified()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_c", + "label": "c()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".unmodified()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_unproject", - "label": ".unproject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_s", + "label": "S()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 26, + "community_name": "E", "file_type": "code", - "norm_label": ".unproject()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_worldsize", - "label": ".worldSize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".worldsize()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_zoom", - "label": ".zoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".zoom()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_hasvalue", - "label": ".hasValue()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".hasvalue()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_gettilepoint", - "label": ".getTilePoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".gettilepoint()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_tolnglat", - "label": ".toLngLat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uc_recalculate", + "label": ".recalculate()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".tolnglat()", + "norm_label": ".recalculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createrenderbuffer", - "label": ".createRenderbuffer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wi_untransitioned", + "label": ".untransitioned()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".createrenderbuffer()", + "norm_label": ".untransitioned()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getterrainelevationfunc", - "label": "._getTerrainElevationFunc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": "._getterrainelevationfunc()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_fromlnglat", - "label": ".fromLngLat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 244, - "community_name": "En", + "community": 260, + "community_name": ".possiblyEvaluate", "file_type": "code", - "norm_label": ".fromlnglat()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bo_updatepaintarrays", - "label": ".updatePaintArrays()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce_generate", + "label": ".generate()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 264, + "community_name": ".addBucket", "file_type": "code", - "norm_label": ".updatepaintarrays()", + "norm_label": ".generate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_adddebugcollisionboxes", - "label": ".addDebugCollisionBoxes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_addlayer", + "label": ".addLayer()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 264, + "community_name": ".addBucket", "file_type": "code", - "norm_label": ".adddebugcollisionboxes()", + "norm_label": ".addlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_findmatches", + "label": ".findMatches()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 264, + "community_name": ".addBucket", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".findmatches()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_destroydebugdata", - "label": ".destroyDebugData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_getcrosstileidslists", + "label": ".getCrossTileIDsLists()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 264, + "community_name": ".addBucket", "file_type": "code", - "norm_label": ".destroydebugdata()", + "norm_label": ".getcrosstileidslists()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_generatecollisiondebugbuffers", - "label": ".generateCollisionDebugBuffers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_getscaledcoordinates", + "label": ".getScaledCoordinates()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 264, + "community_name": ".addBucket", "file_type": "code", - "norm_label": ".generatecollisiondebugbuffers()", + "norm_label": ".getscaledcoordinates()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasdebugdata", - "label": ".hasDebugData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_addbucket", + "label": ".addBucket()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 264, + "community_name": ".addBucket", "file_type": "code", - "norm_label": ".hasdebugdata()", + "norm_label": ".addbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_isempty", - "label": ".isEmpty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_handlewrapjump", + "label": ".handleWrapJump()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 264, + "community_name": ".addBucket", "file_type": "code", - "norm_label": ".isempty()", + "norm_label": ".handlewrapjump()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_removebucketcrosstileids", + "label": ".removeBucketCrossTileIDs()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 264, + "community_name": ".addBucket", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".removebucketcrosstileids()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_upload", - "label": ".upload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_removestalebuckets", + "label": ".removeStaleBuckets()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 264, + "community_name": ".addBucket", "file_type": "code", - "norm_label": ".upload()", + "norm_label": ".removestalebuckets()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qc_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_j", + "label": "J()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "j()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qc_forimage", - "label": ".forImage()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_r", + "label": "R()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".forimage()", + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l", + "label": "l()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": "N", + "file_type": "code", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qc_fortext", - "label": ".forText()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_l_f", + "label": "f()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".fortext()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_addimagesection", - "label": ".addImageSection()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_acquire", + "label": ".acquire()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".addimagesection()", + "norm_label": ".acquire()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_addtextsection", - "label": ".addTextSection()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_addtilefeatures", + "label": "._addTileFeatures()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".addtextsection()", + "norm_label": "._addtilefeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_fromfeature", - "label": ".fromFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getclusters", + "label": ".getClusters()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".fromfeature()", + "norm_label": ".getclusters()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getcharcode", - "label": ".getCharCode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_gettile", + "label": ".getTile()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".getcharcode()", + "norm_label": ".gettile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getmaxscale", - "label": ".getMaxScale()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".getmaxscale()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getnextimagesectioncharcode", - "label": ".getNextImageSectionCharCode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_ispreloaded", + "label": ".isPreloaded()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".getnextimagesectioncharcode()", + "norm_label": ".ispreloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getsection", - "label": ".getSection()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_k", + "label": "K()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".getsection()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_getsectionindex", - "label": ".getSectionIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_limitzoom", + "label": "._limitZoom()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".getsectionindex()", + "norm_label": "._limitzoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_length", - "label": ".length()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_load", + "label": ".load()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".length()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_numactive", + "label": ".numActive()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".numactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_verticalizepunctuation", - "label": ".verticalizePunctuation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_release", + "label": ".release()", "_callable": true, "_origin": "ast", - "community": 25, - "community_name": "eu", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".verticalizepunctuation()", + "norm_label": ".release()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_calculatefogblendopacity", + "label": ".calculateFogBlendOpacity()", "_callable": true, "_origin": "ast", - "community": 250, - "community_name": "Zi", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".calculatefogblendopacity()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wi_settransition", - "label": ".setTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 250, - "community_name": "Zi", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".settransition()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wi_setvalue", - "label": ".setValue()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 250, - "community_name": "Zi", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".setvalue()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wi_untransitioned", - "label": ".untransitioned()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_e", + "label": "e()", "_callable": true, "_origin": "ast", - "community": 250, - "community_name": "Zi", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".untransitioned()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zi_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_getsky", + "label": ".getSky()", "_callable": true, "_origin": "ast", - "community": 250, - "community_name": "Zi", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".getsky()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zi_transitioned", - "label": ".transitioned()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 250, - "community_name": "Zi", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".transitioned()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zi_untransitioned", - "label": ".untransitioned()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_settransformrequest", + "label": ".setTransformRequest()", "_callable": true, "_origin": "ast", - "community": 250, - "community_name": "Zi", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".untransitioned()", + "norm_label": ".settransformrequest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ye", - "label": "Ye()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_transformrequest", + "label": ".transformRequest()", "_callable": true, "_origin": "ast", - "community": 255, - "community_name": "Xe", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "ye()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".transformrequest()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_y", + "label": "y()", "_callable": true, "_origin": "ast", - "community": 255, - "community_name": "Xe", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadsprite", + "label": "._loadSprite()", "_callable": true, "_origin": "ast", - "community": 255, - "community_name": "Xe", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "._loadsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadurl", + "label": ".loadURL()", "_callable": true, "_origin": "ast", - "community": 255, - "community_name": "Xe", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".loadurl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_queryrenderedfeatures", + "label": ".queryRenderedFeatures()", "_callable": true, "_origin": "ast", - "community": 255, - "community_name": "Xe", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": ".queryrenderedfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_tojson", - "label": ".toJSON()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 255, - "community_name": "Xe", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".tojson()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less", - "label": "test_a_default_direction_plot_says_it_drew_less()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_replace", + "label": ".replace()", "_callable": true, "_origin": "ast", - "community": 256, - "community_name": "test_a_default_direction_plot_says_it_drew_less", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "test_a_default_direction_plot_says_it_drew_less()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L109" + "norm_label": ".replace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_a_default_direction_plot_says_it_drew_less_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_e", + "label": "E()", "_callable": true, "_origin": "ast", - "community": 256, - "community_name": "test_a_default_direction_plot_says_it_drew_less", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L112" + "norm_label": "e()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_gn", - "label": "Gn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_m", + "label": "M()", "_callable": true, "_origin": "ast", - "community": 257, - "community_name": "_t", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "gn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "m()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ln", - "label": "Ln()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_s", + "label": "S()", "_callable": true, "_origin": "ast", - "community": 257, - "community_name": "_t", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "ln()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_re", - "label": "Re()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_apply", + "label": ".apply()", "_callable": true, "_origin": "ast", - "community": 257, - "community_name": "_t", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "re()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": ".apply()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_t", - "label": "_t()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_maxpitchscalefactor", + "label": ".maxPitchScaleFactor()", "_callable": true, "_origin": "ast", - "community": 257, - "community_name": "_t", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "_t()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".maxpitchscalefactor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_te", - "label": "te()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_project", + "label": ".project()", "_callable": true, "_origin": "ast", - "community": 257, - "community_name": "_t", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "te()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": ".project()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_un", - "label": "Un()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_size", + "label": ".size()", "_callable": true, "_origin": "ast", - "community": 257, - "community_name": "_t", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "un()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".size()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_wn", - "label": "Wn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_a", + "label": "A()", "_callable": true, "_origin": "ast", - "community": 257, - "community_name": "_t", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "wn()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_x", - "label": "x()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 257, - "community_name": "_t", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "x()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_yt", - "label": "Yt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_feature", + "label": ".feature()", "_callable": true, "_origin": "ast", - "community": 257, - "community_name": "_t", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "yt()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": ".feature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_l", + "label": "l()", "_callable": true, "_origin": "ast", - "community": 257, - "community_name": "_t", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".bind()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too", - "label": "test_writes_are_sandboxed_too()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_off", + "label": ".off()", "_callable": true, "_origin": "ast", - "community": 258, - "community_name": "test_writes_are_sandboxed_too", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "test_writes_are_sandboxed_too()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L177" + "norm_label": ".off()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_writes_are_sandboxed_too_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_on", + "label": ".on()", "_callable": true, "_origin": "ast", - "community": 258, - "community_name": "test_writes_are_sandboxed_too", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L180" + "norm_label": ".on()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do", - "label": "test_unknown_handles_and_kinds_are_told_what_to_do()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_p", + "label": "P()", "_callable": true, "_origin": "ast", - "community": 259, - "community_name": "test_unknown_handles_and_kinds_are_told_what_to_do", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "test_unknown_handles_and_kinds_are_told_what_to_do()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L195" + "norm_label": "p()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_unknown_handles_and_kinds_are_told_what_to_do_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfeaturestate", + "label": "getFeatureState()", "_callable": true, "_origin": "ast", - "community": 259, - "community_name": "test_unknown_handles_and_kinds_are_told_what_to_do", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L198" + "norm_label": "getfeaturestate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "a()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_pop", - "label": ".pop()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".pop()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_push", - "label": ".push()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_zoom", + "label": ".zoom()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".push()", + "norm_label": ".zoom()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_acquire", - "label": ".acquire()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".acquire()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_addtilefeatures", - "label": "._addTileFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "._addtilefeatures()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_appendleaves", - "label": "._appendLeaves()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "._appendleaves()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_cluster", - "label": "._cluster()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "._cluster()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_p", + "label": "P()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getchildren", - "label": ".getChildren()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".getchildren()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getclusterexpansionzoom", - "label": ".getClusterExpansionZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".getclusterexpansionzoom()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getleaves", - "label": ".getLeaves()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_setvalue", + "label": ".setValue()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".getleaves()", + "norm_label": ".setvalue()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getoriginid", - "label": "._getOriginId()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "._getoriginid()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getoriginzoom", - "label": "._getOriginZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_z", + "label": "z()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "._getoriginzoom()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_gettile", - "label": ".getTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".gettile()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_ispreloaded", - "label": ".isPreloaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_c", + "label": "c()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".ispreloaded()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_limitzoom", - "label": "._limitZoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "._limitzoom()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_load", - "label": ".load()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastile", + "label": ".hasTile()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".load()", + "norm_label": ".hastile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_map", - "label": "._map()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "._map()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_numactive", - "label": ".numActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_l", + "label": "l()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".numactive()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_release", - "label": ".release()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_load", + "label": ".load()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".release()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_queryrenderedsymbols", - "label": ".queryRenderedSymbols()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loaded", + "label": ".loaded()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".queryrenderedsymbols()", + "norm_label": ".loaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_flattenandsortrenderedfeatures", - "label": "._flattenAndSortRenderedFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "._flattenandsortrenderedfeatures()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_queryrenderedfeatures", - "label": ".queryRenderedFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".queryrenderedfeatures()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_maxpitchscalefactor", - "label": ".maxPitchScaleFactor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".maxpitchscalefactor()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfeaturestate", - "label": "getFeatureState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "getfeaturestate()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_v", + "label": "v()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "u()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_within", - "label": ".within()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_load", + "label": ".load()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".within()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_b", + "label": "B()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "e()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_t", - "label": "T()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f", + "label": "F()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "t()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_copy", - "label": ".copy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_g", + "label": "g()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".copy()", + "norm_label": "g()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_m", + "label": "m()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": "N", + "file_type": "code", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -22735,8 +22221,8 @@ "label": "m()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -22747,8 +22233,8 @@ "label": "a()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -22759,46 +22245,46 @@ "label": "b()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_f", + "label": "f()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "c()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_g", + "label": "g()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "f()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "g()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -22807,8 +22293,8 @@ "label": "i()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -22819,20 +22305,32 @@ "label": "l()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_n", + "label": "n()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": "N", + "file_type": "code", + "norm_label": "n()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_t", "label": "T()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -22843,20 +22341,32 @@ "label": "u()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_w", + "label": "w()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": "N", + "file_type": "code", + "norm_label": "w()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_x", "label": "x()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -22867,2264 +22377,1376 @@ "label": "z()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "o()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_f", + "label": "f()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "a()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "i()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_l", + "label": "l()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "o()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_move", + "label": "._move()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "r()", + "norm_label": "._move()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_trim", - "label": ".trim()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_l", + "label": "l()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".trim()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_load", + "label": ".load()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "h()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_s", - "label": "S()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_addeventlistener", + "label": ".addEventListener()", "_callable": true, "_origin": "ast", - "community": 26, - "community_name": ".push", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "s()", + "norm_label": ".addeventlistener()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_b", + "label": "B()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_c", + "label": "C()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_d", + "label": "D()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yi_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_f", + "label": "F()", "_callable": true, "_origin": "ast", - "community": 260, - "community_name": ".possiblyEvaluate", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at", - "label": "test_describe_api_follows_the_reference_the_docstring_points_at()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_g", + "label": "G()", "_callable": true, "_origin": "ast", - "community": 261, - "community_name": "test_describe_api_follows_the_reference_the_docstring_points_at", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "test_describe_api_follows_the_reference_the_docstring_points_at()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L242" + "norm_label": "g()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_describe_api_follows_the_reference_the_docstring_points_at_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_getlight", + "label": ".getLight()", "_callable": true, "_origin": "ast", - "community": 261, - "community_name": "test_describe_api_follows_the_reference_the_docstring_points_at", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L251" + "norm_label": ".getlight()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateplacement", - "label": "._updatePlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_h", + "label": "H()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "._updateplacement()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eh", - "label": "eh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "eh()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_i", + "label": "I()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_equals", - "label": ".equals()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_j", + "label": "j()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".equals()", + "norm_label": "j()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_gettilepoint", - "label": ".getTilePoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_k", + "label": "K()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".gettilepoint()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_ischildof", - "label": ".isChildOf()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_l", + "label": "L()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".ischildof()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_o", + "label": "O()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_calculatescaledkey", - "label": ".calculateScaledKey()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_p", + "label": "P()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".calculatescaledkey()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_clone", - "label": ".clone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_q", + "label": "q()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".clone()", + "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_equals", - "label": ".equals()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_recalculate", + "label": ".recalculate()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".equals()", + "norm_label": ".recalculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_islessthan", - "label": ".isLessThan()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".islessthan()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_u", + "label": "U()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setstale", - "label": ".setStale()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_updatetransitions", + "label": ".updateTransitions()", "_callable": true, "_origin": "ast", - "community": 264, - "community_name": "th", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".setstale()", + "norm_label": ".updatetransitions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_is_grouped", - "label": "is_grouped()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_v", + "label": "v()", "_callable": true, "_origin": "ast", - "community": 265, - "community_name": "2. Cells into a Collection", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "is_grouped()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L642" + "norm_label": "v()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_x2", - "label": ".x2()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_validate", + "label": "._validate()", "_callable": true, "_origin": "ast", - "community": 265, - "community_name": "2. Cells into a Collection", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": ".x2()", + "norm_label": "._validate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it", - "label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_w", + "label": "W()", "_callable": true, "_origin": "ast", - "community": 269, - "community_name": "test_describe_api_renders_a_method_the_way_you_would_call_it", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "test_describe_api_renders_a_method_the_way_you_would_call_it()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L263" + "norm_label": "w()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_describe_api_renders_a_method_the_way_you_would_call_it_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_x", + "label": "X()", "_callable": true, "_origin": "ast", - "community": 269, - "community_name": "test_describe_api_renders_a_method_the_way_you_would_call_it", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L266" + "norm_label": "x()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_j", - "label": "J()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "j()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "y()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_r", - "label": "R()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "z()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at", - "label": "at()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_a", + "label": "A()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "at()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_b", + "label": "b()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_c", + "label": "C()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "i()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_k", - "label": "K()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "k()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d", + "label": "D()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_deserialize", - "label": ".deserialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_getneighboringtiles", + "label": "._getNeighboringTiles()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".deserialize()", + "norm_label": "._getneighboringtiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_h", + "label": "H()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_calculatefogblendopacity", - "label": ".calculateFogBlendOpacity()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_i", + "label": "I()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".calculatefogblendopacity()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_d", - "label": "d()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k", + "label": "k()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "d()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_k_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "e()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_getsky", - "label": ".getSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_l", + "label": "L()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".getsky()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_settransformrequest", - "label": ".setTransformRequest()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m", + "label": "M()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".settransformrequest()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_validate", - "label": "._validate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "._validate()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_y", - "label": "y()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "y()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_e", - "label": "E()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "e()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_m", - "label": "M()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p", + "label": "P()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "m()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_flyto_s", - "label": "S()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "s()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_project", - "label": ".project()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_q", + "label": "q()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".project()", + "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_size", - "label": ".size()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".size()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et", - "label": "Et()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_readimagenow", + "label": ".readImageNow()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "et()", + "norm_label": ".readimagenow()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t", + "label": "T()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_t_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "o()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ft_filter", - "label": ".filter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_w", + "label": "w()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".filter()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_x", + "label": "x()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "p()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "a()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".get()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_gettile", - "label": ".getTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".gettile()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_splittile", - "label": ".splitTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".splittile()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_finishloading", + "label": "._finishLoading()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".disable()", + "norm_label": "._finishloading()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_setvalue", - "label": ".setValue()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_load", + "label": ".load()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".setvalue()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_getcanvas", - "label": ".getCanvas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".getcanvas()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_dispose", + "label": ".dispose()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".dispose()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_f", + "label": "f()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "a()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_v", - "label": "v()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "v()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_b", - "label": "B()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "b()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f", - "label": "F()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "f()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_k", + "label": "K()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "m()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_clearrtltextplugin", - "label": ".clearRTLTextPlugin()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_initdebugoverlaycanvas", + "label": ".initDebugOverlayCanvas()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".clearrtltextplugin()", + "norm_label": ".initdebugoverlaycanvas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_substring", + "label": ".substring()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".substring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_trim", + "label": ".trim()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "h()", + "norm_label": ".trim()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_a", + "label": "A()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "n()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_w", - "label": "w()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_b", + "label": "b()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "w()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mt", - "label": "Mt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_c", + "label": "C()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "mt()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_getvideo", - "label": ".getVideo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_e", + "label": "E()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".getvideo()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_i", + "label": "I()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_pause", - "label": ".pause()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_k", + "label": "k()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".pause()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_m", + "label": "M()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_meterinmercatorcoordinateunits", + "label": ".meterInMercatorCoordinateUnits()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": ".meterinmercatorcoordinateunits()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oh", - "label": "oh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "oh()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_o", + "label": "O()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_m", - "label": "m()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_p", + "label": "p()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "m()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_w", + "label": "w()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "s()", + "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "a()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_b", - "label": "B()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_p", + "label": "p()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "b()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_c", - "label": "C()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v", + "label": "v()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "c()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_et", - "label": "et()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "et()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_f", - "label": "F()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "f()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ft", - "label": "ft()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_m", + "label": "m()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "ft()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_g", - "label": "G()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_y", + "label": "y()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "g()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_getlight", - "label": ".getLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".getlight()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_h", - "label": "H()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "h()", + "norm_label": ".bind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_i", - "label": "I()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_et", + "label": "et()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "i()", + "norm_label": "et()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_k", - "label": "K()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_issizepoweroftwo", + "label": ".isSizePowerOfTwo()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "k()", + "norm_label": ".issizepoweroftwo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_l", - "label": "L()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m", + "label": "M()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "l()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_lt", - "label": "lt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_h", + "label": "h()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "lt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_n", - "label": "n()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "n()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_nt", - "label": "nt()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "nt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_o", - "label": "O()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "o()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ot", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_ot", "label": "ot()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "ot()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_p", - "label": "P()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "p()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_q", - "label": "q()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "q()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_r", - "label": "r()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_recalculate", - "label": ".recalculate()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".recalculate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_rt", - "label": "rt()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "rt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_s", - "label": "s()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_st", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_st", "label": "st()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "st()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_tt", - "label": "tt()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "tt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_u", - "label": "U()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_u", + "label": "u()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_updatetransitions", - "label": ".updateTransitions()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".updatetransitions()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_validate", - "label": "._validate()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "._validate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_w", - "label": "W()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "w()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_x", - "label": "X()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "x()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_y", - "label": "y()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "y()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_z", - "label": "z()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "z()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_a", - "label": "A()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_b", - "label": "b()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "b()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d", - "label": "D()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "d()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_getneighboringtiles", - "label": "._getNeighboringTiles()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "._getneighboringtiles()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_h", - "label": "H()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "h()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_l", - "label": "L()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_loadtile", - "label": ".loadTile()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".loadtile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p", - "label": "P()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "p()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_a", - "label": "a()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_q", - "label": "q()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "q()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_r", - "label": "r()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_readimagenow", - "label": ".readImageNow()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".readimagenow()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_registermessagehandler", - "label": ".registerMessageHandler()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".registermessagehandler()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_remove", - "label": ".remove()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_w", - "label": "w()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "w()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_x", - "label": "x()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "x()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z", - "label": "z()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "z()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_i", - "label": "i()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "i()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_e", - "label": "e()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_concat", - "label": ".concat()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".concat()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_get", - "label": ".get()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_has", - "label": ".has()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".has()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_k", - "label": "K()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "k()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tu_substring", - "label": ".substring()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".substring()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_a", - "label": "A()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "a()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_b", - "label": "b()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "b()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_c", - "label": "C()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "c()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_e", - "label": "E()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_g", - "label": "g()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "g()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_i", - "label": "I()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "i()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_k", - "label": "k()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "k()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_m", - "label": "M()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "m()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_meterinmercatorcoordinateunits", - "label": ".meterInMercatorCoordinateUnits()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".meterinmercatorcoordinateunits()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_o", - "label": "O()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_r", - "label": "r()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_w", - "label": "w()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "w()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_z", - "label": "z()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "z()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_p", - "label": "p()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "p()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v", - "label": "v()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "v()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_g", - "label": "g()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "g()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_l", - "label": "l()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "l()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_m", - "label": "m()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "m()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_y", - "label": "y()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "y()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vn_click", - "label": ".click()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".click()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_bind", - "label": ".bind()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".bind()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_destroy", - "label": ".destroy()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_et", - "label": "et()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "et()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_issizepoweroftwo", - "label": ".isSizePowerOfTwo()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".issizepoweroftwo()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m", - "label": "M()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "m()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_at", - "label": "at()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "at()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_it", - "label": "it()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "it()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_lt", - "label": "lt()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "lt()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_ot", - "label": "ot()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "ot()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_st", - "label": "st()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": "st()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_q", "label": "Q()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "q()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25136,7 +23758,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "rt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25148,7 +23770,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "tt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25160,7 +23782,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25172,7 +23794,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25184,31 +23806,55 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_extend", + "label": ".extend()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": "N", + "file_type": "code", + "norm_label": ".extend()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_f", "label": "f()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getcenter", + "label": ".getCenter()", + "_callable": true, + "_origin": "ast", + "community": 272, + "community_name": "N", + "file_type": "code", + "norm_label": ".getcenter()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_w", "label": "W()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "w()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25220,7 +23866,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25232,7 +23878,7 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", @@ -25244,83 +23890,59 @@ "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_remove", - "label": ".remove()", - "_callable": true, - "_origin": "ast", - "community": 272, - "community_name": "p", - "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_rgb", "label": ".rgb()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", "norm_label": ".rgb()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z", + "label": "z()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": ".reset()", + "norm_label": "z()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zt", - "label": "zt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 272, - "community_name": "p", + "community_name": "N", "file_type": "code", - "norm_label": "zt()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call", - "label": "test_search_api_points_at_the_module_that_defines_the_call()", - "_callable": true, - "_origin": "ast", - "community": 274, - "community_name": "test_search_api_points_at_the_module_that_defines_the_call", - "file_type": "code", - "norm_label": "test_search_api_points_at_the_module_that_defines_the_call()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L296" - }, - { - "id": "tests_test_mcp_prototype_test_search_api_points_at_the_module_that_defines_the_call_steps", - "label": "steps()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 274, - "community_name": "test_search_api_points_at_the_module_that_defines_the_call", + "community": 272, + "community_name": "N", "file_type": "code", - "norm_label": "steps()", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L300" + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "tests_test_packaging_test_stderr_usable_rejects_a_broken_handle", @@ -25346,6 +23968,30 @@ "source_file": "tests/test_packaging.py", "source_location": "L73" }, + { + "id": "tests_test_packaging_smoke_test_module", + "label": "_smoke_test_module()", + "_callable": true, + "_origin": "ast", + "community": 276, + "community_name": "test_smoke_test_skips_only_a_missing_reader", + "file_type": "code", + "norm_label": "_smoke_test_module()", + "source_file": "tests/test_packaging.py", + "source_location": "L241" + }, + { + "id": "tests_test_packaging_test_smoke_test_skips_only_a_missing_reader", + "label": "test_smoke_test_skips_only_a_missing_reader()", + "_callable": true, + "_origin": "ast", + "community": 276, + "community_name": "test_smoke_test_skips_only_a_missing_reader", + "file_type": "code", + "norm_label": "test_smoke_test_skips_only_a_missing_reader()", + "source_file": "tests/test_packaging.py", + "source_location": "L265" + }, { "id": "tests_test_ingest_client", "label": "_client()", @@ -25875,146 +24521,242 @@ "source_location": "L128" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_ft", - "label": "Ft()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_csv", + "label": "export_cell_csv()", "_callable": true, "_origin": "ast", - "community": 282, - "community_name": "Xt", + "community": 280, + "community_name": "Any", "file_type": "code", - "norm_label": "ft()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "export_cell_csv()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L755" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circleandrectcollide", - "label": "._circleAndRectCollide()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_excel", + "label": "export_cell_excel()", "_callable": true, "_origin": "ast", - "community": 282, - "community_name": "Xt", + "community": 280, + "community_name": "Any", "file_type": "code", - "norm_label": "._circleandrectcollide()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "export_cell_excel()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L748" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circlescollide", - "label": "._circlesCollide()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_filename_for_get", + "label": "_filename_for_get()", "_callable": true, "_origin": "ast", - "community": 282, - "community_name": "Xt", + "community": 280, + "community_name": "Any", "file_type": "code", - "norm_label": "._circlescollide()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_filename_for_get()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L321" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_file", + "label": "load_file()", "_callable": true, "_origin": "ast", - "community": 282, - "community_name": "Xt", + "community": 280, + "community_name": "Any", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "load_file()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L340" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoxcellcoord", - "label": "._convertToXCellCoord()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "label": "load_journal()", "_callable": true, "_origin": "ast", - "community": 282, - "community_name": "Xt", + "community": 280, + "community_name": "Any", "file_type": "code", - "norm_label": "._converttoxcellcoord()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "load_journal()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L581" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoycellcoord", - "label": "._convertToYCellCoord()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "label": "load_journal_cells()", "_callable": true, "_origin": "ast", - "community": 282, - "community_name": "Xt", + "community": 280, + "community_name": "Any", "file_type": "code", - "norm_label": "._converttoycellcoord()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "load_journal_cells()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L569" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_foreachcell", - "label": "._forEachCell()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_progress", + "label": "_progress()", "_callable": true, "_origin": "ast", - "community": 282, - "community_name": "Xt", + "community": 280, + "community_name": "Any", "file_type": "code", - "norm_label": "._foreachcell()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_progress()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L608" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hcl", - "label": ".hcl()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_file_meta", + "label": "read_file_meta()", "_callable": true, "_origin": "ast", - "community": 282, - "community_name": "Xt", + "community": 280, + "community_name": "Any", "file_type": "code", - "norm_label": ".hcl()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "read_file_meta()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L227" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hittest", - "label": ".hitTest()", + "id": "src_cellpy_simple_gui_core_library_default_group_label", + "label": "default_group_label()", + "_callable": true, + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "code", + "norm_label": "default_group_label()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L30" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_group_label", + "label": ".group_label()", + "_callable": true, + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "code", + "norm_label": ".group_label()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L301" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_group_labels", + "label": ".group_labels()", + "_callable": true, + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "code", + "norm_label": ".group_labels()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L306" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_groups", + "label": ".groups()", + "_callable": true, + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "code", + "norm_label": ".groups()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L312" + }, + { + "id": "src_cellpy_simple_gui_core_library_library_set_group_label", + "label": ".set_group_label()", + "_callable": true, + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "code", + "norm_label": ".set_group_label()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L291" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_ft", + "label": "Ft()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": ".hittest()", + "norm_label": "ft()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hittestcircle", - "label": ".hitTestCircle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circleandrectcollide", + "label": "._circleAndRectCollide()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": ".hittestcircle()", + "norm_label": "._circleandrectcollide()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insertboxcell", - "label": "._insertBoxCell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_circlescollide", + "label": "._circlesCollide()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": "._insertboxcell()", + "norm_label": "._circlescollide()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insertcircle", - "label": ".insertCircle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 282, "community_name": "Xt", "file_type": "code", - "norm_label": ".insertcircle()", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hcl", + "label": ".hcl()", + "_callable": true, + "_origin": "ast", + "community": 282, + "community_name": "Xt", + "file_type": "code", + "norm_label": ".hcl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hittest", + "label": ".hitTest()", + "_callable": true, + "_origin": "ast", + "community": 282, + "community_name": "Xt", + "file_type": "code", + "norm_label": ".hittest()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insertboxcell", + "label": "._insertBoxCell()", + "_callable": true, + "_origin": "ast", + "community": 282, + "community_name": "Xt", + "file_type": "code", + "norm_label": "._insertboxcell()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -26102,6 +24844,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config", + "label": "test_startup_survives_an_unreadable_cellpy_config()", + "_callable": true, + "_origin": "ast", + "community": 283, + "community_name": "test_startup_survives_an_unreadable_cellpy_config", + "file_type": "code", + "norm_label": "test_startup_survives_an_unreadable_cellpy_config()", + "source_file": "tests/test_packaging.py", + "source_location": "L210" + }, + { + "id": "tests_test_packaging_test_startup_survives_an_unreadable_cellpy_config_boom", + "label": "boom()", + "_callable": true, + "_origin": "ast", + "community": 283, + "community_name": "test_startup_survives_an_unreadable_cellpy_config", + "file_type": "code", + "norm_label": "boom()", + "source_file": "tests/test_packaging.py", + "source_location": "L213" + }, { "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ci", "label": "ci()", @@ -26223,952 +24989,352 @@ "source_location": "L5" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ei_queryterrainelevation", - "label": ".queryTerrainElevation()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".queryterrainelevation()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_unproject", - "label": ".unproject()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".unproject()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_createns", - "label": ".createNS()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".createns()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_isopen", - "label": ".isOpen()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".isopen()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setlnglat", - "label": ".setLngLat()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setlnglat()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplace", - "label": ".emplace()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_refreshviews", - "label": "._refreshViews()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": "._refreshviews()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_contains", - "label": ".contains()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".contains()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_convert", - "label": ".convert()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".convert()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_setnortheast", - "label": ".setNorthEast()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setnortheast()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_setsouthwest", - "label": ".setSouthWest()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setsouthwest()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_constructor", - "label": ".constructor()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_enable", - "label": ".enable()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".enable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getelement", - "label": ".getElement()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".getelement()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getlnglat", - "label": ".getLngLat()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".getlnglat()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getoffset", - "label": ".getOffset()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".getoffset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getpitchalignment", - "label": ".getPitchAlignment()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".getpitchalignment()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getpopup", - "label": ".getPopup()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".getpopup()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getrotation", - "label": ".getRotation()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".getrotation()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getrotationalignment", - "label": ".getRotationAlignment()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".getrotationalignment()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_hastransition", - "label": ".hasTransition()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".hastransition()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_isactive", - "label": ".isActive()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".isactive()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_isdraggable", - "label": ".isDraggable()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".isdraggable()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_isenabled", - "label": ".isEnabled()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".isenabled()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_removeclassname", - "label": ".removeClassName()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".removeclassname()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_reset", - "label": ".reset()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".reset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setlnglat", - "label": ".setLngLat()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setlnglat()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setoffset", - "label": ".setOffset()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setoffset()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setopacity", - "label": ".setOpacity()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setopacity()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setpitchalignment", - "label": ".setPitchAlignment()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setpitchalignment()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setpopup", - "label": ".setPopup()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setpopup()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setrotation", - "label": ".setRotation()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setrotation()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setrotationalignment", - "label": ".setRotationAlignment()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setrotationalignment()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setsubpixelpositioning", - "label": ".setSubpixelPositioning()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".setsubpixelpositioning()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_toggleclassname", - "label": ".toggleClassName()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".toggleclassname()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_togglepopup", - "label": ".togglePopup()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": ".togglepopup()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_updateopacity", - "label": "._updateOpacity()", - "_callable": true, - "_origin": "ast", - "community": 29, - "community_name": "xi", - "file_type": "code", - "norm_label": "._updateopacity()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_haslayer", - "label": ".hasLayer()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".haslayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_addtile", - "label": "._addTile()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": "._addtile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_findloadedparent", - "label": ".findLoadedParent()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".findloadedparent()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_findloadedsibling", - "label": ".findLoadedSibling()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".findloadedsibling()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getloadedtile", - "label": "._getLoadedTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addsource", + "label": "addSource()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": "._getloadedtile()", + "norm_label": "addsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_hasrenderableparent", - "label": ".hasRenderableParent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addimage", + "label": ".addImage()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".hasrenderableparent()", + "norm_label": ".addimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_isidrenderable", - "label": "._isIdRenderable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_afterimageupdated", + "label": "._afterImageUpdated()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": "._isidrenderable()", + "norm_label": "._afterimageupdated()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_retainloadedchildren", - "label": "._retainLoadedChildren()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_createlayers", + "label": "._createLayers()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": "._retainloadedchildren()", + "norm_label": "._createlayers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_load", + "label": "._load()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".update()", + "norm_label": "._load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_updatecachesize", - "label": ".updateCacheSize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadempty", + "label": ".loadEmpty()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".updatecachesize()", + "norm_label": ".loadempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_updatecoveredandretainedtiles", - "label": "._updateCoveredAndRetainedTiles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loadjson", + "label": ".loadJSON()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": "._updatecoveredandretainedtiles()", + "norm_label": ".loadjson()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_updateloadedparenttilecache", - "label": "._updateLoadedParentTileCache()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removeimage", + "label": ".removeImage()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": "._updateloadedparenttilecache()", + "norm_label": ".removeimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_updateloadedsiblingtilecache", - "label": "._updateLoadedSiblingTileCache()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_fire", + "label": ".fire()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": "._updateloadedsiblingtilecache()", + "norm_label": ".fire()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_updateretainedtiles", - "label": "._updateRetainedTiles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_listens", + "label": ".listens()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": "._updateretainedtiles()", + "norm_label": ".listens()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_clearfadehold", - "label": ".clearFadeHold()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hasimage", + "label": "hasImage()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".clearfadehold()", + "norm_label": "hasimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_hasdata", - "label": ".hasData()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".hasdata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_holdingforfade", - "label": ".holdingForFade()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".holdingforfade()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_loadvectordata", - "label": ".loadVectorData()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".loadvectordata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_prepare", - "label": ".prepare()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".prepare()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_queryrenderedfeatures", - "label": ".queryRenderedFeatures()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".queryrenderedfeatures()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_registerfadeduration", - "label": ".registerFadeDuration()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".registerfadeduration()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setdependencies", - "label": ".setDependencies()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".setdependencies()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setfeaturestate", - "label": ".setFeatureState()", - "_callable": true, - "_origin": "ast", - "community": 293, - "community_name": "ht", - "file_type": "code", - "norm_label": ".setfeaturestate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setholdduration", - "label": ".setHoldDuration()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validate", + "label": "._validate()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".setholdduration()", + "norm_label": "._validate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_symbolfadefinished", - "label": ".symbolFadeFinished()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validatecontent", + "label": "._validateContent()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".symbolfadefinished()", + "norm_label": "._validatecontent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_unloadvectordata", - "label": ".unloadVectorData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_validatestretch", + "label": "._validateStretch()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".unloadvectordata()", + "norm_label": "._validatestretch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_wasrequested", - "label": ".wasRequested()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_lazyload", + "label": ".lazyLoad()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".wasrequested()", + "norm_label": ".lazyload()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aborttile", - "label": ".abortTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_requestimport", + "label": "._requestImport()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".aborttile()", + "norm_label": "._requestimport()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_aftertileloadworkerresponse", - "label": "._afterTileLoadWorkerResponse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_setrtltextplugin", + "label": ".setRTLTextPlugin()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": "._aftertileloadworkerresponse()", + "norm_label": ".setrtltextplugin()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_syncstate", + "label": "._syncState()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": "._syncstate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_unloadtile", - "label": ".unloadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_seek", + "label": ".seek()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".unloadtile()", + "norm_label": ".seek()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sendasync", - "label": "sendAsync()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resolveurl", + "label": "resolveURL()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": "sendasync()", + "norm_label": "resolveurl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_children", - "label": ".children()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_load", + "label": ".load()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".children()", + "norm_label": ".load()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_overscalefactor", - "label": ".overscaleFactor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setclusteroptions", + "label": ".setClusterOptions()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".overscalefactor()", + "norm_label": ".setclusteroptions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_scaledto", - "label": ".scaledTo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updatedata", + "label": ".updateData()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".scaledto()", + "norm_label": ".updatedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_updateworkerdata", + "label": "._updateWorkerData()", "_callable": true, "_origin": "ast", "community": 293, - "community_name": "ht", + "community_name": ".fire", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": "._updateworkerdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_unloadtile", - "label": ".unloadTile()", + "id": "src_cellpy_simple_gui_core_collect_add_spread_hover", + "label": "_add_spread_hover()", "_callable": true, "_origin": "ast", - "community": 293, - "community_name": "ht", + "community": 3, + "community_name": "collect.py", "file_type": "code", - "norm_label": ".unloadtile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_add_spread_hover()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L794" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_queryradius", - "label": ".queryRadius()", + "id": "src_cellpy_simple_gui_core_collect_apply_group_titles", + "label": "_apply_group_titles()", "_callable": true, "_origin": "ast", - "community": 293, - "community_name": "ht", + "community": 3, + "community_name": "collect.py", "file_type": "code", - "norm_label": ".queryradius()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_apply_group_titles()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L112" }, { - "id": "src_cellpy_simple_gui_core_collect_add_spread_hover", - "label": "_add_spread_hover()", + "id": "src_cellpy_simple_gui_core_collect_apply_xy_ranges", + "label": "_apply_xy_ranges()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_add_spread_hover()", + "norm_label": "_apply_xy_ranges()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L773" + "source_location": "L774" }, { - "id": "src_cellpy_simple_gui_core_collect_apply_xy_ranges", - "label": "_apply_xy_ranges()", + "id": "src_cellpy_simple_gui_core_collect_apply_y_ranges", + "label": "_apply_y_ranges()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_apply_xy_ranges()", + "norm_label": "_apply_y_ranges()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L753" + "source_location": "L1062" }, { "id": "src_cellpy_simple_gui_core_collect_attach_spread", @@ -27180,7 +25346,7 @@ "file_type": "code", "norm_label": "_attach_spread()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L815" + "source_location": "L836" }, { "id": "src_cellpy_simple_gui_core_collect_axis_title", @@ -27192,7 +25358,7 @@ "file_type": "code", "norm_label": "_axis_title()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L842" + "source_location": "L863" }, { "id": "src_cellpy_simple_gui_core_collect_capacity_mode_from_column", @@ -27204,7 +25370,7 @@ "file_type": "code", "norm_label": "_capacity_mode_from_column()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L380" + "source_location": "L401" }, { "id": "src_cellpy_simple_gui_core_collect_facet_labels_by_axes", @@ -27216,7 +25382,7 @@ "file_type": "code", "norm_label": "_facet_labels_by_axes()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1221" + "source_location": "L1245" }, { "id": "src_cellpy_simple_gui_core_collect_facet_traces", @@ -27228,43 +25394,7 @@ "file_type": "code", "norm_label": "_facet_traces()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L833" - }, - { - "id": "src_cellpy_simple_gui_core_collect_family_columns", - "label": "family_columns()", - "_callable": true, - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "code", - "norm_label": "family_columns()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L272" - }, - { - "id": "src_cellpy_simple_gui_core_collect_family_required_columns", - "label": "_family_required_columns()", - "_callable": true, - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "code", - "norm_label": "_family_required_columns()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L182" - }, - { - "id": "src_cellpy_simple_gui_core_collect_family_summary_options", - "label": "family_summary_options()", - "_callable": true, - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "code", - "norm_label": "family_summary_options()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L218" + "source_location": "L854" }, { "id": "src_cellpy_simple_gui_core_collect_has_right_facet_strips", @@ -27276,7 +25406,7 @@ "file_type": "code", "norm_label": "_has_right_facet_strips()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1173" + "source_location": "L1197" }, { "id": "src_cellpy_simple_gui_core_collect_layout_key_for_x_id", @@ -27288,7 +25418,7 @@ "file_type": "code", "norm_label": "_layout_key_for_x_id()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1245" + "source_location": "L1269" }, { "id": "src_cellpy_simple_gui_core_collect_layout_key_for_y_id", @@ -27300,19 +25430,7 @@ "file_type": "code", "norm_label": "_layout_key_for_y_id()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1033" - }, - { - "id": "src_cellpy_simple_gui_core_collect_missing_summary_columns", - "label": "missing_summary_columns()", - "_callable": true, - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "code", - "norm_label": "missing_summary_columns()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L258" + "source_location": "L1057" }, { "id": "src_cellpy_simple_gui_core_collect_note_downsampling", @@ -27324,31 +25442,31 @@ "file_type": "code", "norm_label": "_note_downsampling()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L980" + "source_location": "L1004" }, { - "id": "src_cellpy_simple_gui_core_collect_overlay_label", - "label": "_overlay_label()", + "id": "src_cellpy_simple_gui_core_collect_overlay_facets", + "label": "_overlay_facets()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_overlay_label()", + "norm_label": "_overlay_facets()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1249" + "source_location": "L1288" }, { - "id": "src_cellpy_simple_gui_core_collect_pre_collect_column", - "label": "_pre_collect_column()", + "id": "src_cellpy_simple_gui_core_collect_overlay_label", + "label": "_overlay_label()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_pre_collect_column()", + "norm_label": "_overlay_label()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L209" + "source_location": "L1273" }, { "id": "src_cellpy_simple_gui_core_collect_pretty_unit_text", @@ -27360,19 +25478,7 @@ "file_type": "code", "norm_label": "_pretty_unit_text()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L375" - }, - { - "id": "src_cellpy_simple_gui_core_collect_registry_plot_types", - "label": "registry_plot_types()", - "_callable": true, - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "code", - "norm_label": "registry_plot_types()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L133" + "source_location": "L396" }, { "id": "src_cellpy_simple_gui_core_collect_resolve_axis_range", @@ -27384,7 +25490,7 @@ "file_type": "code", "norm_label": "_resolve_axis_range()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L714" + "source_location": "L735" }, { "id": "src_cellpy_simple_gui_core_collect_spread_hovertemplate", @@ -27396,7 +25502,7 @@ "file_type": "code", "norm_label": "_spread_hovertemplate()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L807" + "source_location": "L828" }, { "id": "src_cellpy_simple_gui_core_collect_summary_column_axis_label", @@ -27408,7 +25514,7 @@ "file_type": "code", "norm_label": "_summary_column_axis_label()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L406" + "source_location": "L427" }, { "id": "src_cellpy_simple_gui_core_collect_summary_columns", @@ -27420,79 +25526,79 @@ "file_type": "code", "norm_label": "summary_columns()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L445" + "source_location": "L466" }, { - "id": "src_cellpy_simple_gui_core_collect_summary_options_for", - "label": "summary_options_for()", + "id": "src_cellpy_simple_gui_core_collect_trace_axis_extent", + "label": "_trace_axis_extent()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "summary_options_for()", + "norm_label": "_trace_axis_extent()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L282" + "source_location": "L696" }, { - "id": "src_cellpy_simple_gui_core_collect_summary_required_columns", - "label": "summary_required_columns()", + "id": "src_cellpy_simple_gui_core_collect_trace_cell_label", + "label": "_trace_cell_label()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "summary_required_columns()", + "norm_label": "_trace_cell_label()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L293" + "source_location": "L1229" }, { - "id": "src_cellpy_simple_gui_core_collect_summary_schema", - "label": "_summary_schema()", + "id": "src_cellpy_simple_gui_core_collect_trace_variable", + "label": "_trace_variable()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_summary_schema()", + "norm_label": "_trace_variable()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L236" + "source_location": "L1048" }, { - "id": "src_cellpy_simple_gui_core_collect_trace_axis_extent", - "label": "_trace_axis_extent()", + "id": "src_cellpy_simple_gui_core_collect_truncate_label", + "label": "_truncate_label()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_trace_axis_extent()", + "norm_label": "_truncate_label()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L675" + "source_location": "L1147" }, { - "id": "src_cellpy_simple_gui_core_collect_trace_cell_label", - "label": "_trace_cell_label()", + "id": "src_cellpy_simple_gui_core_collect_variable_axis_map", + "label": "_variable_axis_map()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_trace_cell_label()", + "norm_label": "_variable_axis_map()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1205" + "source_location": "L1029" }, { - "id": "src_cellpy_simple_gui_core_collect_truncate_label", - "label": "_truncate_label()", + "id": "src_cellpy_simple_gui_core_collect_y_id_from_layout_key", + "label": "_y_id_from_layout_key()", "_callable": true, "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "code", - "norm_label": "_truncate_label()", + "norm_label": "_y_id_from_layout_key()", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1123" + "source_location": "L765" }, { "id": "src_cellpy_simple_gui_api_routers_export_check_data_fmt", @@ -27627,100 +25733,64 @@ "source_location": "L50" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_compare_picks", - "label": "compare_picks()", + "id": "src_cellpy_simple_gui_core_export_cells_export", + "label": "cells_export()", "_callable": true, "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "code", - "norm_label": "compare_picks()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L112" + "norm_label": "cells_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L255" }, { - "id": "src_cellpy_simple_gui_core_collect_overlay_facets", - "label": "_overlay_facets()", + "id": "src_cellpy_simple_gui_core_export_cycles_figure_export", + "label": "cycles_figure_export()", "_callable": true, "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "code", - "norm_label": "_overlay_facets()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1264" + "norm_label": "cycles_figure_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L105" }, { - "id": "src_cellpy_simple_gui_core_export_cells_export", - "label": "cells_export()", + "id": "src_cellpy_simple_gui_core_export_dva_export", + "label": "dva_export()", "_callable": true, "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "code", - "norm_label": "cells_export()", + "norm_label": "dva_export()", "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L255" + "source_location": "L151" }, { - "id": "src_cellpy_simple_gui_core_export_compare_export", - "label": "compare_export()", - "_callable": true, - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "code", - "norm_label": "compare_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L111" - }, - { - "id": "src_cellpy_simple_gui_core_export_compare_figure_export", - "label": "compare_figure_export()", - "_callable": true, - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "code", - "norm_label": "compare_figure_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L128" - }, - { - "id": "src_cellpy_simple_gui_core_export_cycles_figure_export", - "label": "cycles_figure_export()", - "_callable": true, - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "code", - "norm_label": "cycles_figure_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L105" - }, - { - "id": "src_cellpy_simple_gui_core_export_dva_export", - "label": "dva_export()", + "id": "src_cellpy_simple_gui_core_export_dva_figure_export", + "label": "dva_figure_export()", "_callable": true, "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "code", - "norm_label": "dva_export()", + "norm_label": "dva_figure_export()", "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L151" + "source_location": "L162" }, { - "id": "src_cellpy_simple_gui_core_export_dva_figure_export", - "label": "dva_figure_export()", + "id": "src_cellpy_simple_gui_core_export_export_one_cell", + "label": "_export_one_cell()", "_callable": true, "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "code", - "norm_label": "dva_figure_export()", + "norm_label": "_export_one_cell()", "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L162" + "source_location": "L233" }, { "id": "src_cellpy_simple_gui_core_export_figure_bytes", @@ -27746,18 +25816,6 @@ "source_file": "src/cellpy_simple_gui/core/export.py", "source_location": "L54" }, - { - "id": "src_cellpy_simple_gui_core_export_ica_figure_export", - "label": "ica_figure_export()", - "_callable": true, - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "code", - "norm_label": "ica_figure_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L145" - }, { "id": "src_cellpy_simple_gui_core_export_safe_stem", "label": "_safe_stem()", @@ -27807,28 +25865,40 @@ "source_location": "L225" }, { - "id": "src_cellpy_simple_gui_core_models_compareplotspec_pairs", - "label": ".pairs()", + "id": "tests_test_core_test_dva_both_distinguishes_half_cycles", + "label": "test_dva_both_distinguishes_half_cycles()", "_callable": true, "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "code", - "norm_label": ".pairs()", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L230" + "norm_label": "test_dva_both_distinguishes_half_cycles()", + "source_file": "tests/test_core.py", + "source_location": "L1794" }, { - "id": "tests_test_api_test_index_alpine_state_is_defined", - "label": "test_index_alpine_state_is_defined()", + "id": "tests_test_core_test_dva_export_matches_chart", + "label": "test_dva_export_matches_chart()", "_callable": true, "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "code", - "norm_label": "test_index_alpine_state_is_defined()", - "source_file": "tests/test_api.py", - "source_location": "L474" + "norm_label": "test_dva_export_matches_chart()", + "source_file": "tests/test_core.py", + "source_location": "L1833" + }, + { + "id": "tests_test_core_test_dva_figure_directions", + "label": "test_dva_figure_directions()", + "_callable": true, + "_origin": "ast", + "community": 30, + "community_name": "core/export.py", + "file_type": "code", + "norm_label": "test_dva_figure_directions()", + "source_file": "tests/test_core.py", + "source_location": "L1779" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_gettransition", @@ -27962,6 +26032,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wi_settransition", + "label": ".setTransition()", + "_callable": true, + "_origin": "ast", + "community": 302, + "community_name": "wi", + "file_type": "code", + "norm_label": ".settransition()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wi_setvalue", + "label": ".setValue()", + "_callable": true, + "_origin": "ast", + "community": 302, + "community_name": "wi", + "file_type": "code", + "norm_label": ".setvalue()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wi_transitioned", "label": ".transitioned()", @@ -27974,13 +26068,157 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "examples_mcp_server_analyse_cell", + "label": "analyse_cell()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "analyse_cell()", + "source_file": "examples/mcp/server.py", + "source_location": "L946" + }, + { + "id": "examples_mcp_server_client_config_path", + "label": "_client_config_path()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "_client_config_path()", + "source_file": "examples/mcp/server.py", + "source_location": "L1015" + }, + { + "id": "examples_mcp_server_explain_call", + "label": "explain_call()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "explain_call()", + "source_file": "examples/mcp/server.py", + "source_location": "L987" + }, + { + "id": "examples_mcp_server_install", + "label": "_install()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "_install()", + "source_file": "examples/mcp/server.py", + "source_location": "L1025" + }, + { + "id": "examples_mcp_server_start_batch_project", + "label": "start_batch_project()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "start_batch_project()", + "source_file": "examples/mcp/server.py", + "source_location": "L970" + }, + { + "id": "packaging_smoke_test_launchedapp_close", + "label": ".close()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": ".close()", + "source_file": "packaging/smoke_test.py", + "source_location": "L172" + }, + { + "id": "packaging_smoke_test_launchedapp_init", + "label": ".__init__()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": ".__init__()", + "source_file": "packaging/smoke_test.py", + "source_location": "L143" + }, + { + "id": "packaging_smoke_test_launchedapp_wait_for_url", + "label": ".wait_for_url()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": ".wait_for_url()", + "source_file": "packaging/smoke_test.py", + "source_location": "L152" + }, + { + "id": "packaging_smoke_test_main", + "label": "main()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "main()", + "source_file": "packaging/smoke_test.py", + "source_location": "L304" + }, + { + "id": "packaging_smoke_test_run_checks", + "label": "run_checks()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "run_checks()", + "source_file": "packaging/smoke_test.py", + "source_location": "L180" + }, + { + "id": "packaging_smoke_test_skip", + "label": "skip()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "skip()", + "source_file": "packaging/smoke_test.py", + "source_location": "L54" + }, + { + "id": "tests_conftest_parse_figure", + "label": "parse_figure()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "parse_figure()", + "source_file": "tests/conftest.py", + "source_location": "L34" + }, { "id": "tests_test_agent_docs_generator", "label": "generator()", "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "generator()", "source_file": "tests/test_agent_docs.py", @@ -27992,7 +26230,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_every_path_the_index_points_at_exists()", "source_file": "tests/test_agent_docs.py", @@ -28004,7 +26242,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_llms_full_actually_contains_the_documents()", "source_file": "tests/test_agent_docs.py", @@ -28016,7 +26254,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_llms_txt_is_current()", "source_file": "tests/test_agent_docs.py", @@ -28028,7 +26266,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_index_lists_every_guide()", "source_file": "tests/test_agent_docs.py", @@ -28040,7 +26278,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_skill_has_the_frontmatter_a_skill_needs()", "source_file": "tests/test_agent_docs.py", @@ -28052,7 +26290,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_skill_reference_is_bundled()", "source_file": "tests/test_agent_docs.py", @@ -28064,7 +26302,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_skill_states_the_traps_that_produce_plausible_output()", "source_file": "tests/test_agent_docs.py", @@ -28076,7 +26314,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "generated_against()", "source_file": "tests/test_api_reference.py", @@ -28088,7 +26326,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "generator()", "source_file": "tests/test_api_reference.py", @@ -28100,7 +26338,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "skip_unless_pinned_cellpy()", "source_file": "tests/test_api_reference.py", @@ -28112,7 +26350,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_every_listed_call_actually_exists()", "source_file": "tests/test_api_reference.py", @@ -28124,7 +26362,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_it_covers_the_calls_the_guides_lean_on()", "source_file": "tests/test_api_reference.py", @@ -28136,7 +26374,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_committed_reference_matches_the_installed_cellpy()", "source_file": "tests/test_api_reference.py", @@ -28148,7 +26386,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_reference_does_not_depend_on_which_python_generated_it()", "source_file": "tests/test_api_reference.py", @@ -28160,7 +26398,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_sharp_edges_are_stated_where_someone_will_read_them()", "source_file": "tests/test_api_reference.py", @@ -28172,59 +26410,47 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_skill_carries_the_same_reference()", "source_file": "tests/test_api_reference.py", "source_location": "L109" }, { - "id": "tests_test_journal_build_journal", - "label": "_build_journal()", - "_callable": true, - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "code", - "norm_label": "_build_journal()", - "source_file": "tests/test_journal.py", - "source_location": "L9" - }, - { - "id": "tests_test_journal_test_load_corrupt_journal_raises_clear_error", - "label": "test_load_corrupt_journal_raises_clear_error()", + "id": "tests_test_guides_python_blocks", + "label": "python_blocks()", "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", - "norm_label": "test_load_corrupt_journal_raises_clear_error()", - "source_file": "tests/test_journal.py", - "source_location": "L73" + "norm_label": "python_blocks()", + "source_file": "tests/test_guides.py", + "source_location": "L36" }, { - "id": "tests_test_journal_test_load_journal_cells", - "label": "test_load_journal_cells()", + "id": "tests_test_guides_test_the_code_in_this_guide_runs", + "label": "test_the_code_in_this_guide_runs()", "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", - "norm_label": "test_load_journal_cells()", - "source_file": "tests/test_journal.py", - "source_location": "L32" + "norm_label": "test_the_code_in_this_guide_runs()", + "source_file": "tests/test_guides.py", + "source_location": "L84" }, { - "id": "tests_test_journal_test_load_journal_missing_files_returns_empty", - "label": "test_load_journal_missing_files_returns_empty()", + "id": "tests_test_guides_test_there_are_guides_to_run", + "label": "test_there_are_guides_to_run()", "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", - "norm_label": "test_load_journal_missing_files_returns_empty()", - "source_file": "tests/test_journal.py", - "source_location": "L51" + "norm_label": "test_there_are_guides_to_run()", + "source_file": "tests/test_guides.py", + "source_location": "L44" }, { "id": "tests_test_starter_starter", @@ -28232,7 +26458,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "starter()", "source_file": "tests/test_starter.py", @@ -28244,7 +26470,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_a_column_the_cells_lack_is_refused_not_drawn_empty()", "source_file": "tests/test_starter.py", @@ -28256,7 +26482,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_a_file_that_will_not_load_says_which_one()", "source_file": "tests/test_starter.py", @@ -28268,7 +26494,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_adding_a_plot_is_one_line()", "source_file": "tests/test_starter.py", @@ -28280,7 +26506,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_it_stays_small_enough_to_read()", "source_file": "tests/test_starter.py", @@ -28292,7 +26518,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_no_cells_and_no_such_plot_are_different_answers()", "source_file": "tests/test_starter.py", @@ -28304,7 +26530,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_dependency_header_covers_every_import()", "source_file": "tests/test_starter.py", @@ -28316,7 +26542,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_page_and_the_api_agree_on_what_can_be_plotted()", "source_file": "tests/test_starter.py", @@ -28328,7 +26554,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_the_whole_arc()", "source_file": "tests/test_starter.py", @@ -28340,7 +26566,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_two_cells_of_one_name_are_two_cells()", "source_file": "tests/test_starter.py", @@ -28352,7 +26578,7 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_voltage_curves_are_a_different_collector()", "source_file": "tests/test_starter.py", @@ -28364,12 +26590,72 @@ "_callable": true, "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "with_cell()", "source_file": "tests/test_starter.py", "source_location": "L43" }, + { + "id": "tools_gen_llms_txt_describe_guide", + "label": "describe_guide()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "describe_guide()", + "source_file": "tools/gen_llms_txt.py", + "source_location": "L98" + }, + { + "id": "tools_gen_llms_txt_guide_files", + "label": "guide_files()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "guide_files()", + "source_file": "tools/gen_llms_txt.py", + "source_location": "L94" + }, + { + "id": "tools_gen_llms_txt_main", + "label": "main()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "main()", + "source_file": "tools/gen_llms_txt.py", + "source_location": "L176" + }, + { + "id": "tools_gen_llms_txt_render_full", + "label": "render_full()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "render_full()", + "source_file": "tools/gen_llms_txt.py", + "source_location": "L152" + }, + { + "id": "tools_gen_llms_txt_render_index", + "label": "render_index()", + "_callable": true, + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "render_index()", + "source_file": "tools/gen_llms_txt.py", + "source_location": "L118" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jh_add", "label": ".add()", @@ -28563,197 +26849,149 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_au", - "label": "au()", - "_callable": true, - "_origin": "ast", - "community": 33, - "community_name": ".emplaceBack", - "file_type": "code", - "norm_label": "au()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bl", - "label": "bl()", - "_callable": true, - "_origin": "ast", - "community": 33, - "community_name": ".emplaceBack", - "file_type": "code", - "norm_label": "bl()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bo_populatepaintarrays", - "label": ".populatePaintArrays()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eh", + "label": "eh()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": ".populatepaintarrays()", + "norm_label": "eh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cu", - "label": "cu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": "cu()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addcollisiondebugvertex", - "label": "._addCollisionDebugVertex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_equals", + "label": ".equals()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": "._addcollisiondebugvertex()", + "norm_label": ".equals()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addcollisiondebugvertices", - "label": ".addCollisionDebugVertices()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_gettilepoint", + "label": ".getTilePoint()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": ".addcollisiondebugvertices()", + "norm_label": ".gettilepoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_addsymbols", - "label": ".addSymbols()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_ischildof", + "label": ".isChildOf()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": ".addsymbols()", + "norm_label": ".ischildof()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_preparesegment", - "label": ".prepareSegment()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": ".preparesegment()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lu", - "label": "lu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": "lu()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_convert", + "label": ".convert()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".convert()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ou", - "label": "ou()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_toarray", + "label": ".toArray()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": "ou()", + "norm_label": ".toarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qu_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_su_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_calculatescaledkey", + "label": ".calculateScaledKey()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".calculatescaledkey()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 33, - "community_name": ".emplaceBack", + "community_name": "Ku", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_remove", - "label": ".remove()", - "_callable": true, - "_origin": "ast", - "community": 33, - "community_name": ".emplaceBack", - "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uu_trigger", - "label": ".trigger()", - "_callable": true, - "_origin": "ast", - "community": 33, - "community_name": ".emplaceBack", - "file_type": "code", - "norm_label": ".trigger()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bc", "label": "bc()", @@ -28946,18 +27184,6 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, - { - "id": "examples_starter_app_instruments", - "label": "instruments()", - "_callable": true, - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "code", - "norm_label": "instruments()", - "source_file": "examples/starter/app.py", - "source_location": "L122" - }, { "id": "src_cellpy_simple_gui_core_cellpy_config_activate_project_config", "label": "activate_project_config()", @@ -29463,136 +27689,100 @@ "source_location": "L8" }, { - "id": "tests_test_core_spread_library", - "label": "_spread_library()", - "_callable": true, - "_origin": "ast", - "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "file_type": "code", - "norm_label": "_spread_library()", - "source_file": "tests/test_core.py", - "source_location": "L1151" - }, - { - "id": "tests_test_core_test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", - "_callable": true, - "_origin": "ast", - "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "file_type": "code", - "norm_label": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread()", - "source_file": "tests/test_core.py", - "source_location": "L1180" - }, - { - "id": "tests_test_core_test_summary_figure_y_ranges_one_sided_with_spread", - "label": "test_summary_figure_y_ranges_one_sided_with_spread()", + "id": "tests_conftest_example_cell", + "label": "example_cell()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "code", - "norm_label": "test_summary_figure_y_ranges_one_sided_with_spread()", - "source_file": "tests/test_core.py", - "source_location": "L1217" + "norm_label": "example_cell()", + "source_file": "tests/conftest.py", + "source_location": "L16" }, { - "id": "tests_test_core_yaxis_for_title_text", - "label": "_yaxis_for_title_text()", + "id": "tests_conftest_loaded_library", + "label": "loaded_library()", "_callable": true, "_origin": "ast", "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "code", - "norm_label": "_yaxis_for_title_text()", - "source_file": "tests/test_core.py", - "source_location": "L1167" + "norm_label": "loaded_library()", + "source_file": "tests/conftest.py", + "source_location": "L26" }, { - "id": "src_cellpy_simple_gui_core_collect_apply_y_ranges", - "label": "_apply_y_ranges()", + "id": "tests_test_journal_build_journal", + "label": "_build_journal()", "_callable": true, "_origin": "ast", "community": 39, - "community_name": "figure_json", + "community_name": "test_journal.py", "file_type": "code", - "norm_label": "_apply_y_ranges()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1038" + "norm_label": "_build_journal()", + "source_file": "tests/test_journal.py", + "source_location": "L9" }, { - "id": "src_cellpy_simple_gui_core_collect_figure_json", - "label": "figure_json()", + "id": "tests_test_journal_test_load_corrupt_journal_raises_clear_error", + "label": "test_load_corrupt_journal_raises_clear_error()", "_callable": true, "_origin": "ast", "community": 39, - "community_name": "figure_json", + "community_name": "test_journal.py", "file_type": "code", - "norm_label": "figure_json()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L851" + "norm_label": "test_load_corrupt_journal_raises_clear_error()", + "source_file": "tests/test_journal.py", + "source_location": "L138" }, { - "id": "src_cellpy_simple_gui_core_collect_stamp_warnings", - "label": "_stamp_warnings()", + "id": "tests_test_journal_test_load_journal_cells", + "label": "test_load_journal_cells()", "_callable": true, "_origin": "ast", "community": 39, - "community_name": "figure_json", + "community_name": "test_journal.py", "file_type": "code", - "norm_label": "_stamp_warnings()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L901" + "norm_label": "test_load_journal_cells()", + "source_file": "tests/test_journal.py", + "source_location": "L33" }, { - "id": "src_cellpy_simple_gui_core_collect_trace_variable", - "label": "_trace_variable()", + "id": "tests_test_journal_test_load_journal_missing_files_returns_empty", + "label": "test_load_journal_missing_files_returns_empty()", "_callable": true, "_origin": "ast", "community": 39, - "community_name": "figure_json", + "community_name": "test_journal.py", "file_type": "code", - "norm_label": "_trace_variable()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1024" + "norm_label": "test_load_journal_missing_files_returns_empty()", + "source_file": "tests/test_journal.py", + "source_location": "L116" }, { - "id": "src_cellpy_simple_gui_core_collect_variable_axis_map", - "label": "_variable_axis_map()", + "id": "tests_test_journal_test_load_journal_reads_group_labels", + "label": "test_load_journal_reads_group_labels()", "_callable": true, "_origin": "ast", "community": 39, - "community_name": "figure_json", + "community_name": "test_journal.py", "file_type": "code", - "norm_label": "_variable_axis_map()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1005" + "norm_label": "test_load_journal_reads_group_labels()", + "source_file": "tests/test_journal.py", + "source_location": "L52" }, { - "id": "src_cellpy_simple_gui_core_collect_y_id_from_layout_key", - "label": "_y_id_from_layout_key()", + "id": "tests_test_journal_test_load_journal_without_group_labels", + "label": "test_load_journal_without_group_labels()", "_callable": true, "_origin": "ast", "community": 39, - "community_name": "figure_json", - "file_type": "code", - "norm_label": "_y_id_from_layout_key()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L744" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_al", - "label": "al()", - "_callable": true, - "_origin": "ast", - "community": 4, - "community_name": "ss", + "community_name": "test_journal.py", "file_type": "code", - "norm_label": "al()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_load_journal_without_group_labels()", + "source_file": "tests/test_journal.py", + "source_location": "L67" }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_as", @@ -29811,38 +28001,62 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hs", - "label": "hs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_createbucket", + "label": ".createBucket()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "hs()", + "norm_label": ".createbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il", - "label": "il()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_is3d", + "label": ".is3D()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "il()", + "norm_label": ".is3d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_il_feature", - "label": ".feature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryintersectsfeature", + "label": ".queryIntersectsFeature()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".feature()", + "norm_label": ".queryintersectsfeature()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryradius", + "label": ".queryRadius()", + "_callable": true, + "_origin": "ast", + "community": 4, + "community_name": "ss", + "file_type": "code", + "norm_label": ".queryradius()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hs", + "label": "hs()", + "_callable": true, + "_origin": "ast", + "community": 4, + "community_name": "ss", + "file_type": "code", + "norm_label": "hs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -29943,62 +28157,38 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_destroy", - "label": ".destroy()", - "_callable": true, - "_origin": "ast", - "community": 4, - "community_name": "ss", - "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_isempty", - "label": ".isEmpty()", - "_callable": true, - "_origin": "ast", - "community": 4, - "community_name": "ss", - "file_type": "code", - "norm_label": ".isempty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ol", + "label": "ol()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".update()", + "norm_label": "ol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": ".uploadpending()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ol", - "label": "ol()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_po_setuniform", + "label": ".setUniform()", "_callable": true, "_origin": "ast", "community": 4, "community_name": "ss", "file_type": "code", - "norm_label": "ol()", + "norm_label": ".setuniform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, @@ -30290,6 +28480,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_addtile", + "label": "._addTile()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": "._addtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_backfilldem", "label": "._backfillDEM()", @@ -30338,6 +28540,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_findloadedparent", + "label": ".findLoadedParent()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".findloadedparent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_findloadedsibling", + "label": ".findLoadedSibling()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".findloadedsibling()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getfeaturestate", "label": ".getFeatureState()", @@ -30350,6 +28576,30 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getids", + "label": ".getIds()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".getids()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getloadedtile", + "label": "._getLoadedTile()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": "._getloadedtile()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_getrenderableids", "label": ".getRenderableIds()", @@ -30410,6 +28660,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_hasrenderableparent", + "label": ".hasRenderableParent()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".hasrenderableparent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_hastransition", "label": ".hasTransition()", @@ -30422,6 +28684,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_isidrenderable", + "label": "._isIdRenderable()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": "._isidrenderable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_loaded", "label": ".loaded()", @@ -30554,6 +28828,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_retainloadedchildren", + "label": "._retainLoadedChildren()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": "._retainloadedchildren()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_serialize", "label": ".serialize()", @@ -30602,6 +28888,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_tilesin", + "label": ".tilesIn()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".tilesin()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_unloadtile", "label": "._unloadTile()", @@ -30614,6 +28912,102 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_update", + "label": ".update()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_updatecachesize", + "label": ".updateCacheSize()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".updatecachesize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_updatecoveredandretainedtiles", + "label": "._updateCoveredAndRetainedTiles()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": "._updatecoveredandretainedtiles()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_updateloadedparenttilecache", + "label": "._updateLoadedParentTileCache()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": "._updateloadedparenttilecache()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_updateloadedsiblingtilecache", + "label": "._updateLoadedSiblingTileCache()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": "._updateloadedsiblingtilecache()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_updateretainedtiles", + "label": "._updateRetainedTiles()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": "._updateretainedtiles()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_clearfadehold", + "label": ".clearFadeHold()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".clearfadehold()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_getexpirytimeout", "label": ".getExpiryTimeout()", @@ -30626,6 +29020,18 @@ "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_hasdata", + "label": ".hasData()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".hasdata()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_hasdependency", "label": ".hasDependency()", @@ -30639,40 +29045,148 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_unwrapto", - "label": ".unwrapTo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_holdingforfade", + "label": ".holdingForFade()", "_callable": true, "_origin": "ast", "community": 40, "community_name": "Dt", "file_type": "code", - "norm_label": ".unwrapto()", + "norm_label": ".holdingforfade()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_jobs_daemonpool_init", - "label": ".__init__()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_prepare", + "label": ".prepare()", "_callable": true, "_origin": "ast", - "community": 44, - "community_name": "Job", + "community": 40, + "community_name": "Dt", "file_type": "code", - "norm_label": ".__init__()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L141" + "norm_label": ".prepare()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_jobs_daemonpool_shutdown", - "label": ".shutdown()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_queryrenderedfeatures", + "label": ".queryRenderedFeatures()", "_callable": true, "_origin": "ast", - "community": 44, - "community_name": "Job", + "community": 40, + "community_name": "Dt", "file_type": "code", - "norm_label": ".shutdown()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L164" + "norm_label": ".queryrenderedfeatures()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_registerfadeduration", + "label": ".registerFadeDuration()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".registerfadeduration()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setdependencies", + "label": ".setDependencies()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".setdependencies()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setholdduration", + "label": ".setHoldDuration()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".setholdduration()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_symbolfadefinished", + "label": ".symbolFadeFinished()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".symbolfadefinished()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_wasrequested", + "label": ".wasRequested()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".wasrequested()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_children", + "label": ".children()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".children()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_gettilepoint", + "label": ".getTilePoint()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".gettilepoint()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_scaledto", + "label": ".scaledTo()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".scaledto()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_unwrapto", + "label": ".unwrapTo()", + "_callable": true, + "_origin": "ast", + "community": 40, + "community_name": "Dt", + "file_type": "code", + "norm_label": ".unwrapto()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { "id": "src_cellpy_simple_gui_api_jobs_daemonpool_submit", @@ -30818,18 +29332,6 @@ "source_file": "src/cellpy_simple_gui/api/jobs.py", "source_location": "L243" }, - { - "id": "src_cellpy_simple_gui_api_jobs_jobmanager_init", - "label": ".__init__()", - "_callable": true, - "_origin": "ast", - "community": 44, - "community_name": "Job", - "file_type": "code", - "norm_label": ".__init__()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L171" - }, { "id": "src_cellpy_simple_gui_api_jobs_jobmanager_run", "label": "._run()", @@ -30903,67 +29405,55 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplaceback", - "label": ".emplaceBack()", - "_callable": true, - "_origin": "ast", - "community": 45, - "community_name": "resize", - "file_type": "code", - "norm_label": ".emplaceback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_deserialize", + "label": ".deserialize()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".deserialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", @@ -30975,79 +29465,79 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_reserve", + "label": ".reserve()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".reserve()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_resize", + "label": ".resize()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_trim", + "label": "._trim()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": "._trim()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resize", - "label": "resize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_containerdimensions", + "label": "_containerDimensions()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": "resize()", + "norm_label": "_containerdimensions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", @@ -31059,31 +29549,31 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpixelratio", - "label": "setPixelRatio()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_calculate", + "label": "._calculate()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": "setpixelratio()", + "norm_label": "._calculate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplaceback", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplaceback", "label": ".emplaceBack()", "_callable": true, "_origin": "ast", @@ -31095,2215 +29585,2239 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_interpolate", + "label": ".interpolate()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".interpolate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_anchorx", + "label": ".anchorX()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".anchorx()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplaceback", - "label": ".emplaceBack()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_anchory", + "label": ".anchorY()", "_callable": true, "_origin": "ast", "community": 45, "community_name": "resize", "file_type": "code", - "norm_label": ".emplaceback()", + "norm_label": ".anchory()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_createarrays", - "label": ".createArrays()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_associatediconindex", + "label": ".associatedIconIndex()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".createarrays()", + "norm_label": ".associatediconindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_bucketindex", - "label": ".bucketIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_crosstileid", + "label": ".crossTileID()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".bucketindex()", + "norm_label": ".crosstileid()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplace", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_emplace", "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_featureindex", - "label": ".featureIndex()", - "_callable": true, - "_origin": "ast", - "community": 46, - "community_name": "ho", - "file_type": "code", - "norm_label": ".featureindex()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_sourcelayerindex", - "label": ".sourceLayerIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_glyphstartindex", + "label": ".glyphStartIndex()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".sourcelayerindex()", + "norm_label": ".glyphstartindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_hidden", + "label": ".hidden()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".hidden()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ho_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_linelength", + "label": ".lineLength()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".linelength()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ic_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_lineoffsetx", + "label": ".lineOffsetX()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".lineoffsetx()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_lineoffsety", + "label": ".lineOffsetY()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".lineoffsety()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nl_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_linestartindex", + "label": ".lineStartIndex()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".linestartindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_isstatedependent", - "label": ".isStateDependent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_lowersize", + "label": ".lowerSize()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".isstatedependent()", + "norm_label": ".lowersize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pl_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_numglyphs", + "label": ".numGlyphs()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".numglyphs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_placedorientation", + "label": ".placedOrientation()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".placedorientation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_refreshviews", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_refreshviews", "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wo_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_segment", + "label": ".segment()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".segment()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_uppersize", + "label": ".upperSize()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".uppersize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_vertexstartindex", + "label": ".vertexStartIndex()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".vertexstartindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_writingmode", + "label": ".writingMode()", "_callable": true, "_origin": "ast", - "community": 46, - "community_name": "ho", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".writingmode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_desktop_close_webview_windows", - "label": "_close_webview_windows()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "_close_webview_windows()", - "source_file": "src/cellpy_simple_gui/desktop.py", - "source_location": "L24" + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_desktop_install_ctrl_c_close", - "label": "_install_ctrl_c_close()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getclampedpixelratio", + "label": "_getClampedPixelRatio()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "_install_ctrl_c_close()", - "source_file": "src/cellpy_simple_gui/desktop.py", - "source_location": "L34" + "norm_label": "_getclampedpixelratio()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_desktop_install_ctrl_c_close_win32_handler", - "label": "win32_handler()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpixelratio", + "label": "getPixelRatio()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "win32_handler()", - "source_file": "src/cellpy_simple_gui/desktop.py", - "source_location": "L53" + "norm_label": "getpixelratio()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_desktop_run_desktop", - "label": "run_desktop()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "run_desktop()", - "source_file": "src/cellpy_simple_gui/desktop.py", - "source_location": "L83" + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_desktop_shutdown_background", - "label": "_shutdown_background()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "_shutdown_background()", - "source_file": "src/cellpy_simple_gui/desktop.py", - "source_location": "L69" + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_logging_setup_enable_ring_buffer", - "label": "enable_ring_buffer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "enable_ring_buffer()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L66" + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_logging_setup_intercepthandler_emit", - "label": ".emit()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".emit()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L106" + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_logging_setup_log_dir", - "label": "log_dir()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "log_dir()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L15" + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_logging_setup_ring_sink", - "label": "_ring_sink()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "_ring_sink()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L53" + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_logging_setup_setup_logging", - "label": "setup_logging()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "setup_logging()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L122" + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_logging_setup_stderr_usable", - "label": "_stderr_usable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "_stderr_usable()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L27" + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_main_anchor_cellpy_paths", - "label": "_anchor_cellpy_paths()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "_anchor_cellpy_paths()", - "source_file": "src/cellpy_simple_gui/__main__.py", - "source_location": "L32" + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_main_main", - "label": "main()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "main()", - "source_file": "src/cellpy_simple_gui/__main__.py", - "source_location": "L84" + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_server_pick_port", - "label": "pick_port()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "pick_port()", - "source_file": "src/cellpy_simple_gui/server.py", - "source_location": "L20" + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_server_port_is_free", - "label": "_port_is_free()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "_port_is_free()", - "source_file": "src/cellpy_simple_gui/server.py", - "source_location": "L15" + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_server_serverthread_init", - "label": ".__init__()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".__init__()", - "source_file": "src/cellpy_simple_gui/server.py", - "source_location": "L31" + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_server_serverthread_start", - "label": ".start()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".start()", - "source_file": "src/cellpy_simple_gui/server.py", - "source_location": "L52" + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_server_serverthread_stop", - "label": ".stop()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".stop()", - "source_file": "src/cellpy_simple_gui/server.py", - "source_location": "L62" + "norm_label": "._refreshviews()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_server_serverthread_url", - "label": ".url()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_paint", + "label": "paint()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".url()", - "source_file": "src/cellpy_simple_gui/server.py", - "source_location": "L48" + "norm_label": "paint()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_guides_python_blocks", - "label": "python_blocks()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resize", + "label": "resize()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "python_blocks()", - "source_file": "tests/test_guides.py", - "source_location": "L36" + "norm_label": "resize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_guides_test_the_code_in_this_guide_runs", - "label": "test_the_code_in_this_guide_runs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resizecanvas", + "label": "_resizeCanvas()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "test_the_code_in_this_guide_runs()", - "source_file": "tests/test_guides.py", - "source_location": "L84" + "norm_label": "_resizecanvas()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_guides_test_there_are_guides_to_run", - "label": "test_there_are_guides_to_run()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "test_there_are_guides_to_run()", - "source_file": "tests/test_guides.py", - "source_location": "L44" + "norm_label": ".emplace()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_vi", - "label": "Vi()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "vi()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".emplaceback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousedown", - "label": ".mousedown()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".mousedown()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpixelratio", + "label": "setPixelRatio()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".reset()", + "norm_label": "setpixelratio()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setupcontainer", + "label": "_setupContainer()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "g()", + "norm_label": "_setupcontainer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_crossfadingfactor", - "label": ".crossFadingFactor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".crossfadingfactor()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_getcrossfadeparameters", - "label": ".getCrossfadeParameters()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".getcrossfadeparameters()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_off", - "label": ".off()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".off()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_offtemp", - "label": ".offTemp()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_interpolate", + "label": ".interpolate()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".offtemp()", + "norm_label": ".interpolate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_possiblyevaluate", + "label": ".possiblyEvaluate()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "r()", + "norm_label": ".possiblyevaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".reset()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_start", - "label": "._start()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "._start()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_startmouse", - "label": ".startMouse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".startmouse()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_starttouch", - "label": ".startTouch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_gettileunitdistancefromanchor", + "label": ".gettileUnitDistanceFromAnchor()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".starttouch()", + "norm_label": ".gettileunitdistancefromanchor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_touchstart", - "label": ".touchstart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".touchstart()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isrotating", - "label": "isRotating()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "isrotating()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_remove", - "label": ".remove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".remove()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_getclicktolerance", - "label": ".getClickTolerance()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".getclicktolerance()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_disabledrag", - "label": ".disableDrag()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".disabledrag()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_enabledrag", - "label": ".enableDrag()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".enabledrag()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_removeeventlistener", - "label": ".removeEventListener()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".removeeventlistener()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_suppressclickinternal", - "label": ".suppressClickInternal()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".suppressclickinternal()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_redraw", - "label": "redraw()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "redraw()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_render", - "label": "_render()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "_render()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdirty", - "label": ".setDirty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_emplaceback", + "label": ".emplaceBack()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".setdirty()", + "norm_label": ".emplaceback()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": "c()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchstart", - "label": ".touchstart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_za_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 49, - "community_name": "hi", + "community": 45, + "community_name": "resize", "file_type": "code", - "norm_label": ".touchstart()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 46, + "community_name": "o", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 46, + "community_name": "o", "file_type": "code", - "norm_label": "e()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_getpoint", + "label": ".getPoint()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 46, + "community_name": "o", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".getpoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_getscale", + "label": ".getScale()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 46, + "community_name": "o", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".getscale()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_j", + "label": "j()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 46, + "community_name": "o", "file_type": "code", - "norm_label": "c()", + "norm_label": "j()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_mousepos", + "label": ".mousePos()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 46, + "community_name": "o", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".mousepos()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 46, + "community_name": "o", "file_type": "code", - "norm_label": "r()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 46, + "community_name": "o", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ct", - "label": "ct()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_testprop", + "label": ".testProp()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 46, + "community_name": "o", "file_type": "code", - "norm_label": "ct()", + "norm_label": ".testprop()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_touchpos", + "label": ".touchPos()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 46, + "community_name": "o", "file_type": "code", - "norm_label": "l()", + "norm_label": ".touchpos()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ec", - "label": "ec()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_x2", + "label": ".x2()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 47, + "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", "file_type": "code", - "norm_label": "ec()", + "norm_label": ".x2()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_desktop_close_webview_windows", + "label": "_close_webview_windows()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_close_webview_windows()", + "source_file": "src/cellpy_simple_gui/desktop.py", + "source_location": "L24" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_r", - "label": "r()", + "id": "src_cellpy_simple_gui_desktop_install_ctrl_c_close", + "label": "_install_ctrl_c_close()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": "r()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_install_ctrl_c_close()", + "source_file": "src/cellpy_simple_gui/desktop.py", + "source_location": "L34" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ee_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_desktop_install_ctrl_c_close_win32_handler", + "label": "win32_handler()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".tostring()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "win32_handler()", + "source_file": "src/cellpy_simple_gui/desktop.py", + "source_location": "L53" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_desktop_run_desktop", + "label": "run_desktop()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "run_desktop()", + "source_file": "src/cellpy_simple_gui/desktop.py", + "source_location": "L83" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_desktop_shutdown_background", + "label": "_shutdown_background()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".destroy()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_shutdown_background()", + "source_file": "src/cellpy_simple_gui/desktop.py", + "source_location": "L69" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_enableattributes", - "label": ".enableAttributes()", + "id": "src_cellpy_simple_gui_logging_setup_enable_ring_buffer", + "label": "enable_ring_buffer()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".enableattributes()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "enable_ring_buffer()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L66" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_logging_setup_intercepthandler_emit", + "label": ".emit()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".getdefault()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".emit()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L106" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_logging_setup_log_dir", + "label": "log_dir()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".set()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "log_dir()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L15" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_setvertexattribpointers", - "label": ".setVertexAttribPointers()", + "id": "src_cellpy_simple_gui_logging_setup_ring_sink", + "label": "_ring_sink()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".setvertexattribpointers()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_ring_sink()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L53" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_updatedata", - "label": ".updateData()", + "id": "src_cellpy_simple_gui_logging_setup_setup_logging", + "label": "setup_logging()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".updatedata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "setup_logging()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L122" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et_e", - "label": "e()", + "id": "src_cellpy_simple_gui_logging_setup_stderr_usable", + "label": "_stderr_usable()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": "e()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_stderr_usable()", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L27" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_o", - "label": "o()", + "id": "src_cellpy_simple_gui_main_anchor_cellpy_paths", + "label": "_anchor_cellpy_paths()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": "o()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_anchor_cellpy_paths()", + "source_file": "src/cellpy_simple_gui/__main__.py", + "source_location": "L32" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_s", - "label": "s()", + "id": "src_cellpy_simple_gui_main_main", + "label": "main()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": "s()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "main()", + "source_file": "src/cellpy_simple_gui/__main__.py", + "source_location": "L84" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_g", - "label": "g()", + "id": "src_cellpy_simple_gui_server_pick_port", + "label": "pick_port()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": "g()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "pick_port()", + "source_file": "src/cellpy_simple_gui/server.py", + "source_location": "L20" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_server_port_is_free", + "label": "_port_is_free()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_port_is_free()", + "source_file": "src/cellpy_simple_gui/server.py", + "source_location": "L15" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_server_serverthread_init", + "label": ".__init__()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": ".eachchild()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".__init__()", + "source_file": "src/cellpy_simple_gui/server.py", + "source_location": "L31" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_n", - "label": "n()", + "id": "src_cellpy_simple_gui_server_serverthread_start", + "label": ".start()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": "n()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".start()", + "source_file": "src/cellpy_simple_gui/server.py", + "source_location": "L52" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi", - "label": "fi()", + "id": "src_cellpy_simple_gui_server_serverthread_stop", + "label": ".stop()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 48, + "community_name": "config.py", "file_type": "code", - "norm_label": "fi()", + "norm_label": ".stop()", + "source_file": "src/cellpy_simple_gui/server.py", + "source_location": "L62" + }, + { + "id": "src_cellpy_simple_gui_server_serverthread_url", + "label": ".url()", + "_callable": true, + "_origin": "ast", + "community": 48, + "community_name": "config.py", + "file_type": "code", + "norm_label": ".url()", + "source_file": "src/cellpy_simple_gui/server.py", + "source_location": "L48" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_vi", + "label": "Vi()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "ii", + "file_type": "code", + "norm_label": "vi()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_i", + "label": "i()", + "_callable": true, + "_origin": "ast", + "community": 49, + "community_name": "ii", + "file_type": "code", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_isbelowthreshold", + "label": "._isBelowThreshold()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "e()", + "norm_label": "._isbelowthreshold()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_move", + "label": "._move()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".update()", + "norm_label": "._move()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fn", - "label": "fn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "fn()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_start", + "label": "._start()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "._start()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousedown", + "label": ".mousedown()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".mousedown()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "e()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_pruneunusedlayers", - "label": ".pruneUnusedLayers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_crossfadingfactor", + "label": ".crossFadingFactor()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".pruneunusedlayers()", + "norm_label": ".crossfadingfactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_center", - "label": ".center()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_gesturebeginsvertically", + "label": ".gestureBeginsVertically()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".center()", + "norm_label": ".gesturebeginsvertically()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_getcrossfadeparameters", + "label": ".getCrossfadeParameters()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".getcrossfadeparameters()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_issupportedscript", + "label": ".isSupportedScript()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".issupportedscript()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_move", + "label": "._move()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "a()", + "norm_label": "._move()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ie", - "label": "ie()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_off", + "label": ".off()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "ie()", + "norm_label": ".off()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ie_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_offtemp", + "label": ".offTemp()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "a()", + "norm_label": ".offtemp()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_start", + "label": "._start()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".set()", + "norm_label": "._start()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_setdefault", - "label": ".setDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_startmouse", + "label": ".startMouse()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".setdefault()", + "norm_label": ".startmouse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_starttouch", + "label": ".startTouch()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "n()", + "norm_label": ".starttouch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "r()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "i()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ke", - "label": "ke()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_getdefaultposition", + "label": ".getDefaultPosition()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "ke()", + "norm_label": ".getdefaultposition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_f_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "g()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_tojson", - "label": ".toJSON()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".tojson()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mc", - "label": "mc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "mc()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_f", - "label": "f()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchcancel", + "label": ".touchcancel()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "f()", + "norm_label": ".touchcancel()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchmove", + "label": ".touchmove()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "l()", + "norm_label": ".touchmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ne", - "label": "ne()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "ne()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_getrtltextpluginstatus", + "label": ".getRTLTextPluginStatus()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "l()", + "norm_label": ".getrtltextpluginstatus()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragmove", + "label": ".dragMove()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "r()", + "norm_label": ".dragmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_getclicktolerance", + "label": ".getClickTolerance()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".getclicktolerance()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "n()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_disabledrag", + "label": ".disableDrag()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "a()", + "norm_label": ".disabledrag()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_commit", - "label": ".commit()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_enabledrag", + "label": ".enableDrag()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".commit()", + "norm_label": ".enabledrag()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_removeeventlistener", + "label": ".removeEventListener()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".removeeventlistener()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_continueplacement", - "label": ".continuePlacement()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_suppressclickinternal", + "label": ".suppressClickInternal()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".continueplacement()", + "norm_label": ".suppressclickinternal()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "i()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_isdone", - "label": ".isDone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".isdone()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_disablerotation", + "label": ".disableRotation()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "o()", + "norm_label": ".disablerotation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "a()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_enablerotation", + "label": ".enableRotation()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".enablerotation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "h()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "i()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_keydown", + "label": ".keydown()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "n()", + "norm_label": ".keydown()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_v", - "label": "v()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "v()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe", - "label": "pe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qn_contextmenu", + "label": ".contextmenu()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "pe()", + "norm_label": ".contextmenu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui", + "label": "ui()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "a()", + "norm_label": "ui()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_c", - "label": "C()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_preventdefault", + "label": ".preventDefault()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "c()", + "norm_label": ".preventdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_t", - "label": "t()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_dblclick", + "label": ".dblclick()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "t()", + "norm_label": ".dblclick()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_i", - "label": "I()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt_c", + "label": "c()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "i()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchmove", + "label": ".touchmove()", "_callable": true, "_origin": "ast", - "community": 5, - "community_name": "i", + "community": 49, + "community_name": "ii", "file_type": "code", - "norm_label": "s()", + "norm_label": ".touchmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y", - "label": "y()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "y()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "i()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_c", + "label": "c()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".tostring()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_c", - "label": "c()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_r", + "label": "r()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "c()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_c_g", + "label": "g()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_l", - "label": "l()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dc", + "label": "Dc()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "l()", + "norm_label": "dc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "u()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "g()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ec", + "label": "ec()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": "ec()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sc", - "label": "Sc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_x", + "label": "x()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "sc()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "r()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_evaluatewithouterrorhandling", - "label": ".evaluateWithoutErrorHandling()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".evaluatewithouterrorhandling()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_interpolationfactor", - "label": ".interpolationFactor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".interpolationfactor()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_translateposmatrix", - "label": ".translatePosMatrix()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".translateposmatrix()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_l", + "label": "l()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_o", + "label": "o()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".set()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_p", - "label": "p()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "p()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua_getoffsetx", - "label": ".getoffsetX()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fc", + "label": "fc()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".getoffsetx()", + "norm_label": "fc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -33315,7 +31829,7 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_eachchild", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_eachchild", "label": ".eachChild()", "_callable": true, "_origin": "ast", @@ -33327,103 +31841,103 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui", - "label": "ui()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "ui()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_n", + "label": "n()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "a()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ui_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fi_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "o()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_getx", - "label": ".getx()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frameasync", + "label": "frameAsync()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".getx()", + "norm_label": "frameasync()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_gety", - "label": ".gety()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_f", + "label": "f()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".gety()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vc", - "label": "vc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_i", + "label": "i()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "vc()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_freshbind", - "label": ".freshBind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_s", + "label": "s()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".freshbind()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createvertexarray", - "label": ".createVertexArray()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_s_v", + "label": "v()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".createvertexarray()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vt_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", @@ -33435,2789 +31949,3161 @@ "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "r()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_e", + "label": "e()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_h_p", + "label": "p()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_querycell", - "label": "._queryCell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_pruneunusedlayers", + "label": ".pruneUnusedLayers()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "._querycell()", + "norm_label": ".pruneunusedlayers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hr_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "h()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_ishidden", - "label": ".isHidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ie", + "label": "ie()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".ishidden()", + "norm_label": "ie()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ie_a", + "label": "a()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": "u()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_set", + "label": ".set()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_interpolationfactor", - "label": ".interpolationFactor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_setdefault", + "label": ".setDefault()", "_callable": true, "_origin": "ast", "community": 5, "community_name": "i", "file_type": "code", - "norm_label": ".interpolationfactor()", + "norm_label": ".setdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".disable()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".enable()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_fireevent", - "label": "._fireEvent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_x", + "label": "x()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._fireevent()", + "norm_label": "x()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_k", + "label": "k()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_keydown", - "label": ".keydown()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_p", + "label": "P()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".keydown()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mouseupwindow", - "label": ".mouseupWindow()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_tojson", + "label": ".toJSON()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".mouseupwindow()", + "norm_label": ".tojson()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchend", - "label": ".touchend()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".touchend()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_e", + "label": "E()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_k", + "label": "k()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".disable()", + "norm_label": "k()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragend", - "label": ".dragEnd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_m", + "label": "m()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".dragend()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_suppressclick", - "label": ".suppressClick()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".suppressclick()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_p", + "label": "p()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".reset()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_dblclick", - "label": ".dblclick()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_m_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".dblclick()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mc", + "label": "mc()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".disable()", + "norm_label": "mc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_b", + "label": "b()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".enable()", + "norm_label": "b()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_parse_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nc", + "label": "nc()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".reset()", + "norm_label": "nc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_h_t", + "label": "T()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".disable()", + "norm_label": "t()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchcancel", - "label": ".touchcancel()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ni_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".touchcancel()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchend", - "label": ".touchend()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".touchend()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oc", + "label": "Oc()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".disable()", + "norm_label": "oc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".enable()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_commit", + "label": ".commit()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": ".commit()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_continueplacement", + "label": ".continuePlacement()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".reset()", + "norm_label": ".continueplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "s()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_touchcancel", - "label": ".touchcancel()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_isdone", + "label": ".isDone()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".touchcancel()", + "norm_label": ".isdone()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_touchmove", - "label": ".touchmove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oe_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".touchmove()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_touchstart", - "label": ".touchstart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".touchstart()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchend", - "label": ".touchend()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".touchend()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 51, - "community_name": ".reset", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_cell", - "label": "_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "_cell()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L149" + "norm_label": "i()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_cell_cycles", - "label": "cell_cycles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "cell_cycles()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L64" + "norm_label": "n()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_compare_plot", - "label": "compare_plot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_or_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "compare_plot()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L125" + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_cycle_info_plot", - "label": "cycle_info_plot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_os", + "label": "Os()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "cycle_info_plot()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L180" + "norm_label": "os()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_cycles_plot", - "label": "cycles_plot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "cycles_plot()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L107" + "norm_label": "d()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_cycles_records", - "label": "_cycles_records()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_m", + "label": "m()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "_cycles_records()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L80" + "norm_label": "m()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_dev_cell", - "label": "_dev_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe", + "label": "pe()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "_dev_cell()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L157" + "norm_label": "pe()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_dva_plot", - "label": "dva_plot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pe_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "dva_plot()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L164" + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_figure_response", - "label": "_figure_response()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn", + "label": "pn()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "_figure_response()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L51" + "norm_label": "pn()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_ica_plot", - "label": "ica_plot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "ica_plot()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L131" + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_raw_plot", - "label": "raw_plot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_e", + "label": "e()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "raw_plot()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L174" + "norm_label": "e()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_selected_cycles_bounds", - "label": "selected_cycles_bounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_d_a_t", + "label": "t()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "selected_cycles_bounds()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L92" + "norm_label": "t()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_summary_plot", - "label": "summary_plot()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "summary_plot()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L57" + "norm_label": "i()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_raw", - "label": "raw()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "raw()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "o()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_version", - "label": "version()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 54, - "community_name": "issue-flow \u2014 version bump", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "version()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_p_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_x_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_clear", - "label": ".clear()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_y_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".clear()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_deserialize", - "label": ".deserialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".deserialize()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_z_a_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".bind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_reserve", - "label": ".reserve()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".reserve()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_resize", - "label": ".resize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".resize()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_p", + "label": "p()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ca_trim", - "label": "._trim()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_updatedata", + "label": ".updateData()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._trim()", + "norm_label": ".updatedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpoint", - "label": ".anchorPoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".anchorpoint()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpointx", - "label": ".anchorPointX()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".anchorpointx()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpointy", - "label": ".anchorPointY()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".anchorpointy()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_bucketindex", - "label": ".bucketIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".bucketindex()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_featureindex", - "label": ".featureIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".featureindex()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qt_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_sourcelayerindex", - "label": ".sourceLayerIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rc", + "label": "Rc()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".sourcelayerindex()", + "norm_label": "rc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_x1", - "label": ".x1()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".x1()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_y1", - "label": ".y1()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".y1()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_y2", - "label": ".y2()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".y2()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_anchorx", - "label": ".anchorX()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_c", + "label": "c()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".anchorx()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_anchory", - "label": ".anchorY()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".anchory()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_associatediconindex", - "label": ".associatedIconIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".associatediconindex()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_crosstileid", - "label": ".crossTileID()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_l", + "label": "l()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".crosstileid()", + "norm_label": "l()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rr_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_glyphstartindex", - "label": ".glyphStartIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".glyphstartindex()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_hidden", - "label": ".hidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ru_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".hidden()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_linelength", - "label": ".lineLength()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".linelength()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_lineoffsetx", - "label": ".lineOffsetX()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_c", + "label": "c()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".lineoffsetx()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_lineoffsety", - "label": ".lineOffsetY()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_castup", + "label": ".castUp()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".lineoffsety()", + "norm_label": ".castup()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_linestartindex", - "label": ".lineStartIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".linestartindex()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_lowersize", - "label": ".lowerSize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_e", + "label": "e()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".lowersize()", + "norm_label": "e()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_numglyphs", - "label": ".numGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_g", + "label": "g()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".numglyphs()", + "norm_label": "g()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_placedorientation", - "label": ".placedOrientation()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_m", + "label": "m()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".placedorientation()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_p", + "label": "p()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "p()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_segment", - "label": ".segment()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".segment()", + "norm_label": "u()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_uppersize", - "label": ".upperSize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v", + "label": "v()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".uppersize()", + "norm_label": "v()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_vertexstartindex", - "label": ".vertexStartIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_s_v_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".vertexstartindex()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fa_writingmode", - "label": ".writingMode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".writingmode()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_stream", + "label": "stream()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".get()", + "norm_label": "stream()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ka_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_d", + "label": "d()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplace", - "label": ".emplace()", - "_callable": true, - "_origin": "ast", - "community": 55, - "community_name": "ca", - "file_type": "code", - "norm_label": ".emplace()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_s", + "label": "S()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ma_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_defaultprevented", + "label": ".defaultPrevented()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".defaultprevented()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pa_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_v_f", + "label": "f()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textanchor", - "label": ".textAnchor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vc", + "label": "vc()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".textanchor()", + "norm_label": "vc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset0", - "label": ".textOffset0()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".textoffset0()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset1", - "label": ".textOffset1()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".textoffset1()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_c", + "label": "c()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "c()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_gettileunitdistancefromanchor", - "label": ".gettileUnitDistanceFromAnchor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".gettileunitdistancefromanchor()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_s", + "label": "S()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wc", + "label": "wc()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "wc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xa_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ya_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 55, - "community_name": "ca", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_f", + "label": "f()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "f()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_calculate", - "label": "._calculate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xo", + "label": "xo()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._calculate()", + "norm_label": "xo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y", + "label": "y()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": "y()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_interpolate", - "label": ".interpolate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_y_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".interpolate()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ea_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yo", + "label": "yo()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "yo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fl", - "label": "Fl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "fl()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hu", - "label": "hu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "hu()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_interpolationfactor", + "label": ".interpolationFactor()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".interpolationfactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ia_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zn", + "label": "zn()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": "zn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lc_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zt", + "label": "zt()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "zt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_na_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_haspaintoverride", + "label": ".hasPaintOverride()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 5, + "community_name": "i", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".haspaintoverride()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_paint", - "label": "paint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_keydown", + "label": ".keydown()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "paint()", + "norm_label": ".keydown()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mousemovewindow", + "label": ".mousemoveWindow()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".mousemovewindow()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_mouseupwindow", + "label": ".mouseupWindow()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".mouseupwindow()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hi_touchstart", + "label": ".touchstart()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": ".touchstart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_calculate", - "label": "._calculate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchend", + "label": ".touchend()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "._calculate()", + "norm_label": ".touchend()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".get()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_interpolate", - "label": ".interpolate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".interpolate()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ra_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_dragend", + "label": ".dragEnd()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".dragend()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_emplace", - "label": ".emplace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_suppressclick", + "label": ".suppressClick()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".emplace()", + "norm_label": ".suppressclick()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_fireevent", + "label": "._fireEvent()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": "._fireevent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_interpolate", - "label": ".interpolate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".interpolate()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_possiblyevaluate", - "label": ".possiblyEvaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".possiblyevaluate()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ta_refreshviews", - "label": "._refreshViews()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "._refreshviews()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 56, - "community_name": ".evaluate", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dn", - "label": "Dn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "dn()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_replace", - "label": ".replace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".replace()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".bind()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vi_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "a()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_bearing", - "label": ".bearing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".bearing()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_pitch", - "label": ".pitch()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getelement", + "label": ".getElement()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".pitch()", + "norm_label": ".getelement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_zoom", - "label": ".zoom()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getlnglat", + "label": ".getLngLat()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".zoom()", + "norm_label": ".getlnglat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_setexpirydata", - "label": ".setExpiryData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getoffset", + "label": ".getOffset()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".setexpirydata()", + "norm_label": ".getoffset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getpitchalignment", + "label": ".getPitchAlignment()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".getpitchalignment()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getpopup", + "label": ".getPopup()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": ".getpopup()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getrotation", + "label": ".getRotation()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": ".getrotation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_p", - "label": "P()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_getrotationalignment", + "label": ".getRotationAlignment()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "p()", + "norm_label": ".getrotationalignment()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "r()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_z", - "label": "z()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "z()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_in", - "label": "In()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_isdraggable", + "label": ".isDraggable()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "in()", + "norm_label": ".isdraggable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "a()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_ishidden", - "label": ".isHidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setlnglat", + "label": ".setLngLat()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".ishidden()", + "norm_label": ".setlnglat()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setoffset", + "label": ".setOffset()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": ".setoffset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_url", - "label": ".url()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setpitchalignment", + "label": ".setPitchAlignment()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".url()", + "norm_label": ".setpitchalignment()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_defaultprevented", - "label": ".defaultPrevented()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setpopup", + "label": ".setPopup()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".defaultprevented()", + "norm_label": ".setpopup()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_preventdefault", - "label": ".preventDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setrotation", + "label": ".setRotation()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".preventdefault()", + "norm_label": ".setrotation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setrotationalignment", + "label": ".setRotationAlignment()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".update()", + "norm_label": ".setrotationalignment()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pn", - "label": "pn()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setsubpixelpositioning", + "label": ".setSubpixelPositioning()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "pn()", + "norm_label": ".setsubpixelpositioning()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_broadcast", - "label": ".broadcast()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_toggleclassname", + "label": ".toggleClassName()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".broadcast()", + "norm_label": ".toggleclassname()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qe_updatedata", - "label": ".updateData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchcancel", + "label": ".touchcancel()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".updatedata()", + "norm_label": ".touchcancel()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_adddash", - "label": ".addDash()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchend", + "label": ".touchend()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".adddash()", + "norm_label": ".touchend()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_addregulardash", - "label": ".addRegularDash()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_touchstart", + "label": ".touchstart()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".addregulardash()", + "norm_label": ".touchstart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_addrounddash", - "label": ".addRoundDash()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".addrounddash()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdash", - "label": ".getDash()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".getdash()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdashranges", - "label": ".getDashRanges()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".getdashranges()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "i()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "n()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_s", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_s", "label": "s()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_set", - "label": ".set()", - "_callable": true, - "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": ".set()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_clear", - "label": ".clear()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_touchcancel", + "label": ".touchcancel()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".clear()", + "norm_label": ".touchcancel()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_draininertiabuffer", - "label": "._drainInertiaBuffer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_touchmove", + "label": ".touchmove()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "._draininertiabuffer()", + "norm_label": ".touchmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_onmoveend", - "label": "._onMoveEnd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_touchstart", + "label": ".touchstart()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": "._onmoveend()", + "norm_label": ".touchstart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_record", - "label": ".record()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".record()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_gettiletexture", - "label": ".getTileTexture()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchend", + "label": ".touchend()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", - "norm_label": ".gettiletexture()", + "norm_label": ".touchend()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 51, + "community_name": ".reset", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createframebuffer", - "label": ".createFramebuffer()", + "id": "src_cellpy_simple_gui_api_routers_plots_cell", + "label": "_cell()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".createframebuffer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_cell()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L149" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_api_routers_plots_compare_picks", + "label": "compare_picks()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "compare_picks()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L112" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_extend", - "label": ".extend()", + "id": "src_cellpy_simple_gui_api_routers_plots_compare_plot", + "label": "compare_plot()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".extend()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "compare_plot()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L125" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_tostring", - "label": ".toString()", + "id": "src_cellpy_simple_gui_api_routers_plots_cycle_info_plot", + "label": "cycle_info_plot()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".tostring()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cycle_info_plot()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L180" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zn", - "label": "zn()", + "id": "src_cellpy_simple_gui_api_routers_plots_cycles_plot", + "label": "cycles_plot()", "_callable": true, "_origin": "ast", - "community": 57, - "community_name": "I", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": "zn()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "cycles_plot()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L107" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_gettile", - "label": ".getTile()", + "id": "src_cellpy_simple_gui_api_routers_plots_cycles_records", + "label": "_cycles_records()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".gettile()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_cycles_records()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L80" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_updatepaintbuffers", - "label": ".updatePaintBuffers()", + "id": "src_cellpy_simple_gui_api_routers_plots_dev_cell", + "label": "_dev_cell()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".updatepaintbuffers()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_dev_cell()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L157" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpaintproperty", - "label": "getPaintProperty()", + "id": "src_cellpy_simple_gui_api_routers_plots_dva_plot", + "label": "dva_plot()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": "getpaintproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "dva_plot()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L164" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_getbucket", - "label": ".getBucket()", + "id": "src_cellpy_simple_gui_api_routers_plots_figure_response", + "label": "_figure_response()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".getbucket()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_figure_response()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L51" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_patternsloaded", - "label": ".patternsLoaded()", + "id": "src_cellpy_simple_gui_api_routers_plots_ica_plot", + "label": "ica_plot()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".patternsloaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ica_plot()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L131" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constantor", - "label": ".constantOr()", + "id": "src_cellpy_simple_gui_api_routers_plots_raw_plot", + "label": "raw_plot()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".constantor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "raw_plot()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L174" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_on", - "label": "on()", + "id": "src_cellpy_simple_gui_api_routers_plots_summary_plot", + "label": "summary_plot()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": "on()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "summary_plot()", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L57" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_clearstencil", - "label": ".clearStencil()", + "id": "src_cellpy_simple_gui_core_collect_raw_figure_json", + "label": "raw_figure_json()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".clearstencil()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "raw_figure_json()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L939" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_colormodeforrenderpass", - "label": ".colorModeForRenderPass()", + "id": "src_cellpy_simple_gui_core_plotting_raw_figure", + "label": "raw_figure()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".colormodeforrenderpass()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "raw_figure()", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L298" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_depthmodeforsublayer", - "label": ".depthModeForSublayer()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_raw", + "label": "raw()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 52, + "community_name": "plots.py", "file_type": "code", - "norm_label": ".depthmodeforsublayer()", + "norm_label": "raw()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "tests_test_core_test_cycle_info_figure", + "label": "test_cycle_info_figure()", + "_callable": true, + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "code", + "norm_label": "test_cycle_info_figure()", + "source_file": "tests/test_core.py", + "source_location": "L1927" + }, + { + "id": "tests_test_core_test_raw_figure_is_downsampled_for_transport", + "label": "test_raw_figure_is_downsampled_for_transport()", + "_callable": true, + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "code", + "norm_label": "test_raw_figure_is_downsampled_for_transport()", + "source_file": "tests/test_core.py", + "source_location": "L1893" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_version", + "label": "version()", + "_callable": true, + "_origin": "ast", + "community": 54, + "community_name": "issue-flow \u2014 version bump", + "file_type": "code", + "norm_label": "version()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_api_jobs_jobmanager_cancel", + "label": ".cancel()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 55, + "community_name": ".cancel", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".cancel()", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L250" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "kn", + "file_type": "code", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_endmove", + "label": ".endMove()", "_callable": true, "_origin": "ast", - "community": 58, - "community_name": ".renderLayer", + "community": 56, + "community_name": "kn", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".endmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluatewithouterrorhandling", - "label": ".evaluateWithoutErrorHandling()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_frominvprojectionmatrix", + "label": ".fromInvProjectionMatrix()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "kn", + "file_type": "code", + "norm_label": ".frominvprojectionmatrix()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidendevent", + "label": ".isValidEndEvent()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "kn", + "file_type": "code", + "norm_label": ".isvalidendevent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidmoveevent", + "label": ".isValidMoveEvent()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "kn", + "file_type": "code", + "norm_label": ".isvalidmoveevent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_isvalidstartevent", + "label": ".isValidStartEvent()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "kn", + "file_type": "code", + "norm_label": ".isvalidstartevent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kn_startmove", + "label": ".startMove()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "kn", + "file_type": "code", + "norm_label": ".startmove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_mousebutton", + "label": ".mouseButton()", + "_callable": true, + "_origin": "ast", + "community": 56, + "community_name": "kn", + "file_type": "code", + "norm_label": ".mousebutton()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_i_hasvalue", + "label": ".hasValue()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".hasvalue()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ls_copy", + "label": ".copy()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".copy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_broadcast", + "label": ".broadcast()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".broadcast()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_getactor", + "label": ".getActor()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".getactor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_adddash", + "label": ".addDash()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".adddash()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_addregulardash", + "label": ".addRegularDash()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".addregulardash()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_addrounddash", + "label": ".addRoundDash()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".addrounddash()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdash", + "label": ".getDash()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".getdash()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdashranges", + "label": ".getDashRanges()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".getdashranges()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_getdefault", + "label": ".getDefault()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".getdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_i", + "label": "i()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": "i()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_n", + "label": "n()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": "n()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_s", + "label": "s()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": "s()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_r_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 57, + "community_name": "r", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_draw", + "label": ".draw()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".evaluatewithouterrorhandling()", + "norm_label": ".draw()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_ispatternmissing", - "label": ".isPatternMissing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_enableattributes", + "label": ".enableAttributes()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".ispatternmissing()", + "norm_label": ".enableattributes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_opaquepassenabledforlayer", - "label": ".opaquePassEnabledForLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_setvertexattribpointers", + "label": ".setVertexAttribPointers()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".opaquepassenabledforlayer()", + "norm_label": ".setvertexattribpointers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_overlimit", - "label": ".overLimit()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getpaintvertexbuffers", + "label": ".getPaintVertexBuffers()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".overlimit()", + "norm_label": ".getpaintvertexbuffers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_renderlayer", - "label": ".renderLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_rendertileclippingmasks", + "label": "._renderTileClippingMasks()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".renderlayer()", + "norm_label": "._rendertileclippingmasks()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_resize", - "label": ".resize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setcustomlayerdefaults", + "label": ".setCustomLayerDefaults()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".resize()", + "norm_label": ".setcustomlayerdefaults()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setbasestate", - "label": ".setBaseState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".setbasestate()", + "norm_label": ".bind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilconfigforoverlap", - "label": ".stencilConfigForOverlap()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_freshbind", + "label": ".freshBind()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".stencilconfigforoverlap()", + "norm_label": ".freshbind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodefor3d", - "label": ".stencilModeFor3D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".stencilmodefor3d()", + "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodeforclipping", - "label": ".stencilModeForClipping()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createvertexarray", + "label": ".createVertexArray()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".stencilmodeforclipping()", + "norm_label": ".createvertexarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_useprogram", - "label": ".useProgram()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_deletevertexarray", + "label": ".deleteVertexArray()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", - "norm_label": ".useprogram()", + "norm_label": ".deletevertexarray()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr_getdefault", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_getdefault", "label": ".getDefault()", "_callable": true, "_origin": "ast", "community": 58, - "community_name": ".renderLayer", + "community_name": "vr", "file_type": "code", "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_set", + "label": ".set()", + "_callable": true, + "_origin": "ast", + "community": 58, + "community_name": "vr", + "file_type": "code", + "norm_label": ".set()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setcolormode", + "label": ".setColorMode()", + "_callable": true, + "_origin": "ast", + "community": 58, + "community_name": "vr", + "file_type": "code", + "norm_label": ".setcolormode()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setcullface", + "label": ".setCullFace()", + "_callable": true, + "_origin": "ast", + "community": 58, + "community_name": "vr", + "file_type": "code", + "norm_label": ".setcullface()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdefault", + "label": ".setDefault()", + "_callable": true, + "_origin": "ast", + "community": 58, + "community_name": "vr", + "file_type": "code", + "norm_label": ".setdefault()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdepthmode", + "label": ".setDepthMode()", + "_callable": true, + "_origin": "ast", + "community": 58, + "community_name": "vr", + "file_type": "code", + "norm_label": ".setdepthmode()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setstencilmode", + "label": ".setStencilMode()", + "_callable": true, + "_origin": "ast", + "community": 58, + "community_name": "vr", + "file_type": "code", + "norm_label": ".setstencilmode()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_unbindvao", + "label": ".unbindVAO()", + "_callable": true, + "_origin": "ast", + "community": 58, + "community_name": "vr", + "file_type": "code", + "norm_label": ".unbindvao()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "examples_mcp_server_cell", "label": "_cell()", @@ -36338,18 +35224,6 @@ "source_file": "examples/mcp/server.py", "source_location": "L206" }, - { - "id": "examples_mcp_server_new_project", - "label": "new_project()", - "_callable": true, - "_origin": "ast", - "community": 59, - "community_name": "collect", - "file_type": "code", - "norm_label": "new_project()", - "source_file": "examples/mcp/server.py", - "source_location": "L876" - }, { "id": "examples_mcp_server_preview_collection", "label": "preview_collection()", @@ -36386,6 +35260,18 @@ "source_file": "examples/mcp/server.py", "source_location": "L92" }, + { + "id": "examples_mcp_server_search_api", + "label": "search_api()", + "_callable": true, + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "code", + "norm_label": "search_api()", + "source_file": "examples/mcp/server.py", + "source_location": "L674" + }, { "id": "examples_mcp_server_session_handle", "label": ".handle()", @@ -36399,7128 +35285,8496 @@ "source_location": "L132" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_getclusters", - "label": ".getClusters()", + "id": "src_cellpy_simple_gui_core_collect_is_grouped", + "label": "is_grouped()", "_callable": true, "_origin": "ast", - "community": 6, - "community_name": "N", + "community": 59, + "community_name": "collect", "file_type": "code", - "norm_label": ".getclusters()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "is_grouped()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L663" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_apply", - "label": ".apply()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".apply()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_concat", - "label": ".concat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_continueplacement", + "label": ".continuePlacement()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".concat()", + "norm_label": ".continueplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_an_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".enable()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_draw", + "label": ".draw()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "h()", + "norm_label": ".draw()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bn", + "label": "bn()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": "bn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_loadgeojson", + "label": ".loadGeoJSON()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": ".loadgeojson()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_move", - "label": "._move()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "._move()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_deserialize", + "label": ".deserialize()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "n()", + "norm_label": ".deserialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cn_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".reset()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m", - "label": "M()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_di_getterraindata", + "label": ".getTerrainData()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "m()", + "norm_label": ".getterraindata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_e", - "label": "e()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dn", + "label": "Dn()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "e()", + "norm_label": "dn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_gettile", + "label": ".getTile()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "n()", + "norm_label": ".gettile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_m_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_en_calculateposmatrix", + "label": ".calculatePosMatrix()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "s()", + "norm_label": ".calculateposmatrix()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_initdebugoverlaycanvas", - "label": ".initDebugOverlayCanvas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_bind", + "label": ".bind()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".initdebugoverlaycanvas()", + "norm_label": ".bind()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_er_updatedata", + "label": ".updateData()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".updatedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_un_defaultprevented", - "label": ".defaultPrevented()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hasicondata", + "label": ".hasIconData()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".defaultprevented()", + "norm_label": ".hasicondata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_bind", - "label": ".bind()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_hastextdata", + "label": ".hasTextData()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".bind()", + "norm_label": ".hastextdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_populate", + "label": ".populate()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".populate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fn", + "label": "fn()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": "fn()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_setconstantpatternpositions", + "label": ".setConstantPatternPositions()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".setconstantpatternpositions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_evaluate", - "label": ".evaluate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_updatepaintbuffers", + "label": ".updatePaintBuffers()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".evaluate()", + "norm_label": ".updatepaintbuffers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_h", - "label": "h()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpaintproperty", + "label": "getPaintProperty()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "h()", + "norm_label": "getpaintproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_ishidden", - "label": ".isHidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_fireevent", + "label": "._fireEvent()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".ishidden()", + "norm_label": "._fireevent()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_isenabled", + "label": ".isEnabled()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "i()", + "norm_label": ".isenabled()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_getcenter", - "label": ".getCenter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_bearing", + "label": ".bearing()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".getcenter()", + "norm_label": ".bearing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_center", + "label": ".center()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".reset()", + "norm_label": ".center()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchmove", - "label": ".touchmove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".touchmove()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchstart", - "label": ".touchstart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_pitch", + "label": ".pitch()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": ".touchstart()", + "norm_label": ".pitch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z", - "label": "z()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hn_transform", + "label": ".transform()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "z()", + "norm_label": ".transform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_g", - "label": "g()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_getbucket", + "label": ".getBucket()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "g()", + "norm_label": ".getbucket()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_patternsloaded", + "label": ".patternsLoaded()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "i()", + "norm_label": ".patternsloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_z_u", - "label": "u()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ir_get", + "label": ".get()", "_callable": true, "_origin": "ast", "community": 6, - "community_name": "N", + "community_name": ".get", "file_type": "code", - "norm_label": "u()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_dt", - "label": "dt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ji_constantor", + "label": ".constantOr()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "dt()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": ".constantor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_a_reloadtile", - "label": ".reloadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".reloadtile()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_parse", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_parse", "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_loadtile", + "label": ".loadTile()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".loadtile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ke", + "label": "ke()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "ke()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_checksubtype", - "label": ".checkSubtype()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ku_url", + "label": ".url()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".checksubtype()", + "norm_label": ".url()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_error", - "label": ".error()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".error()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_addto", + "label": ".addTo()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".addto()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_parse_r", - "label": "r()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "r()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ln_gethashstring", + "label": ".getHashString()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".gethashstring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ct", - "label": "ct()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "ct()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ht", - "label": "ht()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_encode", + "label": ".encode()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "ht()", + "norm_label": ".encode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ut", - "label": "ut()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_defaultprevented", + "label": ".defaultPrevented()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "ut()", + "norm_label": ".defaultprevented()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_preventdefault", + "label": ".preventDefault()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".preventdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_getcrossfadeparameters", + "label": ".getCrossfadeParameters()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".getcrossfadeparameters()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oh", + "label": "oh()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "oh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oi_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".update()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_on", + "label": "on()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": "on()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pi_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pu_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 60, - "community_name": ".parse", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_conftest_example_cell", - "label": "example_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 61, - "community_name": "conftest.py", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "example_cell()", - "source_file": "tests/conftest.py", - "source_location": "L16" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_conftest_loaded_library", - "label": "loaded_library()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 61, - "community_name": "conftest.py", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "loaded_library()", - "source_file": "tests/conftest.py", - "source_location": "L26" + "norm_label": ".eachchild()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_conftest_parse_figure", - "label": "parse_figure()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 61, - "community_name": "conftest.py", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "parse_figure()", - "source_file": "tests/conftest.py", - "source_location": "L34" + "norm_label": ".evaluate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_outputdefined", + "label": ".outputDefined()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".outputdefined()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_destroy", - "label": ".destroy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_register", + "label": ".register()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".destroy()", + "norm_label": ".register()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_re_continueplacement", + "label": ".continuePlacement()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".eachchild()", + "norm_label": ".continueplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_outputdefined", - "label": ".outputDefined()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rh_getpixels", + "label": ".getPixels()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".outputdefined()", + "norm_label": ".getpixels()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jr_parse", - "label": ".parse()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".parse()", + "norm_label": ".clear()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_compare", - "label": ".compare()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".compare()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_draininertiabuffer", + "label": "._drainInertiaBuffer()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "._draininertiabuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_onmoveend", + "label": "._onMoveEnd()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".set()", + "norm_label": "._onmoveend()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rn_record", + "label": ".record()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".record()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_evaluatewithouterrorhandling", + "label": ".evaluateWithoutErrorHandling()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".evaluatewithouterrorhandling()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sn_interpolationfactor", + "label": ".interpolationFactor()", "_callable": true, "_origin": "ast", - "community": 62, - "community_name": "xr", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".interpolationfactor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_th_tounwrapped", + "label": ".toUnwrapped()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".tounwrapped()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_colormodeforrenderpass", + "label": ".colorModeForRenderPass()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": ".colormodeforrenderpass()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_gettiletexture", + "label": ".getTileTexture()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".gettiletexture()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_renderlayer", + "label": ".renderLayer()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".renderlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_a", - "label": "a()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodeforclipping", + "label": ".stencilModeForClipping()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "a()", + "norm_label": ".stencilmodeforclipping()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_translateposmatrix", + "label": ".translatePosMatrix()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".translateposmatrix()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_destroyui", - "label": "._destroyUI()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_useprogram", + "label": ".useProgram()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "._destroyui()", + "norm_label": ".useprogram()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_createframebuffer", + "label": ".createFramebuffer()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".disable()", + "norm_label": ".createframebuffer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".enable()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_attemptanchorplacement", + "label": ".attemptAnchorPlacement()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "i()", + "norm_label": ".attemptanchorplacement()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getbucketparts", + "label": ".getBucketParts()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": ".getbucketparts()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isbypassed", - "label": ".isBypassed()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_h", + "label": "h()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".isbypassed()", + "norm_label": "h()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_hastransitions", + "label": ".hasTransitions()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "o()", + "norm_label": ".hastransitions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedjustification", + "label": ".markUsedJustification()", "_callable": true, "_origin": "ast", - "community": 63, - "community_name": "ti", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".markusedjustification()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ar_draw", - "label": ".draw()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_markusedorientation", + "label": ".markUsedOrientation()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".draw()", + "norm_label": ".markusedorientation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_draw", - "label": ".draw()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_placelayerbucketpart", + "label": ".placeLayerBucketPart()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".draw()", + "norm_label": ".placelayerbucketpart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getpaintvertexbuffers", - "label": ".getPaintVertexBuffers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_storecollisiondata", + "label": ".storeCollisionData()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".getpaintvertexbuffers()", + "norm_label": ".storecollisiondata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_setuniforms", - "label": ".setUniforms()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatebucketopacities", + "label": ".updateBucketOpacities()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".setuniforms()", + "norm_label": ".updatebucketopacities()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_rendertileclippingmasks", - "label": "._renderTileClippingMasks()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_updatelayeropacities", + "label": ".updateLayerOpacities()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": "._rendertileclippingmasks()", + "norm_label": ".updatelayeropacities()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setcustomlayerdefaults", - "label": ".setCustomLayerDefaults()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".setcustomlayerdefaults()", + "norm_label": ".isempty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_deletevertexarray", - "label": ".deleteVertexArray()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".deletevertexarray()", + "norm_label": ".tostring()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_getdefault", - "label": ".getDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yc", + "label": "yc()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".getdefault()", + "norm_label": "yc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_set", - "label": ".set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".set()", + "norm_label": ".reset()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setcolormode", - "label": ".setColorMode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchmove", + "label": ".touchmove()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".setcolormode()", + "norm_label": ".touchmove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setcullface", - "label": ".setCullFace()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yn_touchstart", + "label": ".touchstart()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".setcullface()", + "norm_label": ".touchstart()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdefault", - "label": ".setDefault()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".setdefault()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setdepthmode", - "label": ".setDepthMode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 6, + "community_name": ".get", "file_type": "code", - "norm_label": ".setdepthmode()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_setstencilmode", - "label": ".setStencilMode()", + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_dt", + "label": "dt()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".setstencilmode()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "dt()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vr_unbindvao", - "label": ".unbindVAO()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ae_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 64, - "community_name": ".draw", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".unbindvao()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_projects_delete_project", - "label": "delete_project()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_push", + "label": ".push()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "delete_project()", - "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L193" + "norm_label": ".push()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_classify_import_path", - "label": "classify_import_path()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at", + "label": "at()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "classify_import_path()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L116" + "norm_label": "at()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_cleanup_save_artifacts", - "label": "_cleanup_save_artifacts()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_at_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "_cleanup_save_artifacts()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L147" + "norm_label": ".destroy()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_delete_project", - "label": "delete_project()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "delete_project()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L312" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_list_projects", - "label": "list_projects()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_queryrenderedsymbols", + "label": ".queryRenderedSymbols()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "list_projects()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L292" + "norm_label": ".queryrenderedsymbols()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_now", - "label": "_now()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ct", + "label": "ct()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "_now()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L99" + "norm_label": "ct()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_open_project", - "label": "open_project()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "open_project()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L261" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_projects_root", - "label": "projects_root()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dr_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "projects_root()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L88" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_resolve_project_path", - "label": "resolve_project_path()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "resolve_project_path()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L103" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_safe_cellpy_version", - "label": "_safe_cellpy_version()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_et", + "label": "Et()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "_safe_cellpy_version()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L318" + "norm_label": "et()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_save_project", - "label": "save_project()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "save_project()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L158" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_projects_slugify", - "label": "slugify()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_dt", + "label": "Dt()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "slugify()", - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L94" + "norm_label": "dt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_projects_temp_projects_root", - "label": "temp_projects_root()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_g", + "label": "g()", "_callable": true, "_origin": "ast", - "community": 65, - "community_name": "core/projects.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "temp_projects_root()", - "source_file": "tests/test_projects.py", - "source_location": "L18" + "norm_label": "g()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_reloadtile", - "label": ".reloadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".reloadtile()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isparsed", - "label": "isParsed()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_f_rt", + "label": "Rt()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "isparsed()", + "norm_label": "rt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_removetile", - "label": ".removeTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fe_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".removetile()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pt_getstate", - "label": ".getState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ge_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".getstate()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loadtile", - "label": ".loadTile()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".loadtile()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setmethods", - "label": "setMethods()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "setmethods()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getavailableimages", - "label": "._getAvailableImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_gettile", + "label": ".getTile()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "._getavailableimages()", + "norm_label": ".gettile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getdemworkersource", - "label": "._getDEMWorkerSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gt_splittile", + "label": ".splitTile()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "._getdemworkersource()", + "norm_label": ".splittile()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getlayerindex", - "label": "._getLayerIndex()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_getcanvas", + "label": ".getCanvas()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "._getlayerindex()", + "norm_label": ".getcanvas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_getworkersource", - "label": "._getWorkerSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "._getworkersource()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_setimages", - "label": "._setImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_n", + "label": "n()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "._setimages()", + "norm_label": "n()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_syncrtlpluginstate", - "label": "._syncRTLPluginState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 66, - "community_name": ".constructor", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "._syncrtlpluginstate()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_require_dev_mode", - "label": "require_dev_mode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "require_dev_mode()", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L141" + "norm_label": "a()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_capabilities", - "label": "capabilities()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "capabilities()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L66" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_cellpy_config_diagnostics", - "label": "cellpy_config_diagnostics()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jt_ishidden", + "label": ".isHidden()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "cellpy_config_diagnostics()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L108" + "norm_label": ".ishidden()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_job_timings", - "label": "job_timings()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "job_timings()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L98" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_logs", - "label": "logs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_isempty", + "label": ".isEmpty()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "logs()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L84" + "norm_label": ".isempty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_normalize_dialog_path", - "label": "_normalize_dialog_path()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kt_tostring", + "label": ".toString()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "_normalize_dialog_path()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L57" + "norm_label": ".tostring()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_pick", - "label": "pick()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_clearrtltextplugin", + "label": ".clearRTLTextPlugin()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "pick()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L118" + "norm_label": ".clearrtltextplugin()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_save", - "label": "save()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "save()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L140" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_save_file_types", - "label": "_save_file_types()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_checksubtype", + "label": ".checkSubtype()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "_save_file_types()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L49" + "norm_label": ".checksubtype()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_api_routers_system_webview_window", - "label": "_webview_window()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_concat", + "label": ".concat()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "_webview_window()", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L39" + "norm_label": ".concat()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_logging_setup_recent_logs", - "label": "recent_logs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_error", + "label": ".error()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "recent_logs()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L83" + "norm_label": ".error()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_logging_setup_ring_enabled", - "label": "ring_enabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_me_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 67, - "community_name": "system.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "ring_enabled()", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L99" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_be_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mt", + "label": "Mt()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "mt()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_prepare", - "label": ".prepare()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_n_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".prepare()", + "norm_label": ".parse()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_uploadpending", - "label": ".uploadPending()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".uploadpending()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_defines", - "label": ".defines()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_getvideo", + "label": ".getVideo()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".defines()", + "norm_label": ".getvideo()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getbinderattributes", - "label": ".getBinderAttributes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".getbinderattributes()", + "norm_label": ".hastransition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getbinderuniforms", - "label": ".getBinderUniforms()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_pause", + "label": ".pause()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".getbinderuniforms()", + "norm_label": ".pause()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_getuniforms", - "label": ".getUniforms()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".getuniforms()", + "norm_label": ".serialize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_setconstantpatternpositions", - "label": ".setConstantPatternPositions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".setconstantpatternpositions()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_upload", - "label": ".upload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_m", + "label": "m()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".upload()", + "norm_label": "m()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_upload", - "label": ".upload()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ot_s", + "label": "s()", "_callable": true, "_origin": "ast", - "community": 68, - "community_name": "fo", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": ".upload()", + "norm_label": "s()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_ica_collection", - "label": "ica_collection()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ct", + "label": "ct()", "_callable": true, "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "ica_collection()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L514" + "norm_label": "ct()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_export_ica_export", - "label": "ica_export()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_et", + "label": "et()", "_callable": true, "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "ica_export()", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L134" + "norm_label": "et()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_ica_figure", - "label": "test_ica_figure()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ft", + "label": "ft()", "_callable": true, "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_ica_figure()", - "source_file": "tests/test_core.py", - "source_location": "L514" + "norm_label": "ft()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_ica_figure_both_overlays_directions", - "label": "test_ica_figure_both_overlays_directions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ht", + "label": "ht()", "_callable": true, "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_ica_figure_both_overlays_directions()", - "source_file": "tests/test_core.py", - "source_location": "L552" + "norm_label": "ht()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_ica_figure_discharge", - "label": "test_ica_figure_discharge()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_lt", + "label": "lt()", "_callable": true, "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_ica_figure_discharge()", - "source_file": "tests/test_core.py", - "source_location": "L523" + "norm_label": "lt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_ica_figure_partial_x_range_min_only", - "label": "test_ica_figure_partial_x_range_min_only()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_nt", + "label": "nt()", "_callable": true, "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_ica_figure_partial_x_range_min_only()", - "source_file": "tests/test_core.py", - "source_location": "L357" + "norm_label": "nt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_thin_traces_leaves_small_figures_alone", - "label": "test_thin_traces_leaves_small_figures_alone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ot", + "label": "ot()", "_callable": true, "_origin": "ast", - "community": 69, - "community_name": "IcaPlotSpec", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_thin_traces_leaves_small_figures_alone()", - "source_file": "tests/test_core.py", - "source_location": "L1865" + "norm_label": "ot()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_ids", - "label": "_ids()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_rt", + "label": "rt()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "_ids()", - "source_file": "tests/test_compare.py", - "source_location": "L296" + "norm_label": "rt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_picks", - "label": "picks()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_st", + "label": "st()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "picks()", - "source_file": "tests/test_compare.py", - "source_location": "L46" + "norm_label": "st()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_spec", - "label": "_spec()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_tt", + "label": "tt()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "_spec()", - "source_file": "tests/test_compare.py", - "source_location": "L51" + "norm_label": "tt()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_api_compare_differentials", - "label": "test_api_compare_differentials()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_ut", + "label": "ut()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_api_compare_differentials()", - "source_file": "tests/test_compare.py", - "source_location": "L323" + "norm_label": "ut()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_api_compare_export", - "label": "test_api_compare_export()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qr_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_api_compare_export()", - "source_file": "tests/test_compare.py", - "source_location": "L360" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_api_compare_missing_cycles_are_reported", - "label": "test_api_compare_missing_cycles_are_reported()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_api_compare_missing_cycles_are_reported()", - "source_file": "tests/test_compare.py", - "source_location": "L506" + "norm_label": ".hastransition()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_api_compare_overlay_and_side_by_side", - "label": "test_api_compare_overlay_and_side_by_side()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_loaded", + "label": ".loaded()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_api_compare_overlay_and_side_by_side()", - "source_file": "tests/test_compare.py", - "source_location": "L303" + "norm_label": ".loaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_api_compare_validation_and_404", - "label": "test_api_compare_validation_and_404()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_api_compare_validation_and_404()", - "source_file": "tests/test_compare.py", - "source_location": "L338" + "norm_label": ".onremove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_api_cycles_tab_guards_only_all_missing", - "label": "test_api_cycles_tab_guards_only_all_missing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_api_cycles_tab_guards_only_all_missing()", - "source_file": "tests/test_compare.py", - "source_location": "L567" + "norm_label": "r()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_api_single_cell_explorer_reports_missing_cycles", - "label": "test_api_single_cell_explorer_reports_missing_cycles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_api_single_cell_explorer_reports_missing_cycles()", - "source_file": "tests/test_compare.py", - "source_location": "L540" + "norm_label": ".serialize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_batch_keys_disambiguate_duplicate_labels", - "label": "test_batch_keys_disambiguate_duplicate_labels()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_u", + "label": "u()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_batch_keys_disambiguate_duplicate_labels()", - "source_file": "tests/test_compare.py", - "source_location": "L110" + "norm_label": "u()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_batch_keys_match_collected_cell_column", - "label": "test_batch_keys_match_collected_cell_column()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_concat", + "label": ".concat()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_batch_keys_match_collected_cell_column()", - "source_file": "tests/test_compare.py", - "source_location": "L102" + "norm_label": ".concat()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_all_missing_explains_instead_of_blank", - "label": "test_compare_all_missing_explains_instead_of_blank()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_all_missing_explains_instead_of_blank()", - "source_file": "tests/test_compare.py", - "source_location": "L460" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_axis_ranges", - "label": "test_compare_axis_ranges()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_axis_ranges()", - "source_file": "tests/test_compare.py", - "source_location": "L236" + "norm_label": ".get()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_both_directions_overlay", - "label": "test_compare_both_directions_overlay()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_st_has", + "label": ".has()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_both_directions_overlay()", - "source_file": "tests/test_compare.py", - "source_location": "L224" + "norm_label": ".has()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_collection_reports_missing_cycles", - "label": "test_compare_collection_reports_missing_cycles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_te_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_collection_reports_missing_cycles()", - "source_file": "tests/test_compare.py", - "source_location": "L424" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_differentials", - "label": "test_compare_differentials()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_hastransition", + "label": ".hasTransition()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_differentials()", - "source_file": "tests/test_compare.py", - "source_location": "L216" + "norm_label": ".hastransition()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_empty_picks_render_prompt", - "label": "test_compare_empty_picks_render_prompt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_loaded", + "label": ".loaded()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_empty_picks_render_prompt()", - "source_file": "tests/test_compare.py", - "source_location": "L245" + "norm_label": ".loaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_export_all_missing_says_why", - "label": "test_compare_export_all_missing_says_why()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_export_all_missing_says_why()", - "source_file": "tests/test_compare.py", - "source_location": "L479" + "norm_label": ".onremove()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_export_differential_follows_direction", - "label": "test_compare_export_differential_follows_direction()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_export_differential_follows_direction()", - "source_file": "tests/test_compare.py", - "source_location": "L266" + "norm_label": ".serialize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_export_rows_cover_only_picked_pairs", - "label": "test_compare_export_rows_cover_only_picked_pairs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ua_getoffsetx", + "label": ".getoffsetX()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_export_rows_cover_only_picked_pairs()", - "source_file": "tests/test_compare.py", - "source_location": "L253" + "norm_label": ".getoffsetx()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_figure_partial_missing_warns_and_draws_the_rest", - "label": "test_compare_figure_partial_missing_warns_and_draws_the_rest()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_figure_partial_missing_warns_and_draws_the_rest()", - "source_file": "tests/test_compare.py", - "source_location": "L439" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_reports_for_every_kind_and_layout", - "label": "test_compare_reports_for_every_kind_and_layout()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_reports_for_every_kind_and_layout()", - "source_file": "tests/test_compare.py", - "source_location": "L451" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_reports_unreadable_cycles", - "label": "test_compare_reports_unreadable_cycles()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_getx", + "label": ".getx()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_compare_reports_unreadable_cycles()", - "source_file": "tests/test_compare.py", - "source_location": "L486" + "norm_label": ".getx()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_compare_reports_unreadable_cycles_drop_a3", - "label": "drop_a3()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_va_gety", + "label": ".gety()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "drop_a3()", - "source_file": "tests/test_compare.py", - "source_location": "L493" + "norm_label": ".gety()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_overlay_folds_per_cell_facets_onto_one_axis_pair", - "label": "test_overlay_folds_per_cell_facets_onto_one_axis_pair()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ve_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_overlay_folds_per_cell_facets_onto_one_axis_pair()", - "source_file": "tests/test_compare.py", - "source_location": "L159" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_overlay_keeps_full_identity_in_hover", - "label": "test_overlay_keeps_full_identity_in_hover()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vn_click", + "label": ".click()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_overlay_keeps_full_identity_in_hover()", - "source_file": "tests/test_compare.py", - "source_location": "L192" + "norm_label": ".click()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_overlay_respects_curated_color_scheme", - "label": "test_overlay_respects_curated_color_scheme()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_at", + "label": "at()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_overlay_respects_curated_color_scheme()", - "source_file": "tests/test_compare.py", - "source_location": "L200" + "norm_label": "at()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_present_cycle_pairs_mirrors_restrict", - "label": "test_present_cycle_pairs_mirrors_restrict()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_w_m_it", + "label": "it()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_present_cycle_pairs_mirrors_restrict()", - "source_file": "tests/test_compare.py", - "source_location": "L400" + "norm_label": "it()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_present_cycle_pairs_unknown_frame_is_none", - "label": "test_present_cycle_pairs_unknown_frame_is_none()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_we_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_present_cycle_pairs_unknown_frame_is_none()", - "source_file": "tests/test_compare.py", - "source_location": "L414" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_restrict_to_cycle_pairs_leaves_unknown_frames_alone", - "label": "test_restrict_to_cycle_pairs_leaves_unknown_frames_alone()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xe_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_restrict_to_cycle_pairs_leaves_unknown_frames_alone()", - "source_file": "tests/test_compare.py", - "source_location": "L146" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_restrict_to_cycle_pairs_on_cycles_frame", - "label": "test_restrict_to_cycle_pairs_on_cycles_frame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_querycell", + "label": "._queryCell()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_restrict_to_cycle_pairs_on_cycles_frame()", - "source_file": "tests/test_compare.py", - "source_location": "L119" + "norm_label": "._querycell()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_restrict_to_cycle_pairs_on_ica_frame", - "label": "test_restrict_to_cycle_pairs_on_ica_frame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ye_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_restrict_to_cycle_pairs_on_ica_frame()", - "source_file": "tests/test_compare.py", - "source_location": "L134" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_side_by_side_keeps_cellpy_facets", - "label": "test_side_by_side_keeps_cellpy_facets()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yt_reset", + "label": ".reset()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_side_by_side_keeps_cellpy_facets()", - "source_file": "tests/test_compare.py", - "source_location": "L206" + "norm_label": ".reset()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_spec_cleans_axis_ranges_like_cycles_spec", - "label": "test_spec_cleans_axis_ranges_like_cycles_spec()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ze_parse", + "label": ".parse()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 60, + "community_name": ".push", "file_type": "code", - "norm_label": "test_spec_cleans_axis_ranges_like_cycles_spec()", - "source_file": "tests/test_compare.py", - "source_location": "L89" + "norm_label": ".parse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_compare_test_spec_merges_duplicate_cells_and_sorts_cycles", - "label": "test_spec_merges_duplicate_cells_and_sorts_cycles()", + "id": "src_cellpy_simple_gui_core_library_file_stat", + "label": "file_stat()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "test_spec_merges_duplicate_cells_and_sorts_cycles()", - "source_file": "tests/test_compare.py", - "source_location": "L63" + "norm_label": "file_stat()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L35" }, { - "id": "tests_test_compare_test_spec_rejects_too_many_picks_or_curves", - "label": "test_spec_rejects_too_many_picks_or_curves()", + "id": "src_cellpy_simple_gui_core_library_library_add_cell", + "label": ".add_cell()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "test_spec_rejects_too_many_picks_or_curves()", - "source_file": "tests/test_compare.py", - "source_location": "L76" + "norm_label": ".add_cell()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L134" }, { - "id": "tests_test_compare_two_cell_library", - "label": "two_cell_library()", + "id": "src_cellpy_simple_gui_core_library_library_all", + "label": ".all()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "two_cell_library()", - "source_file": "tests/test_compare.py", - "source_location": "L38" + "norm_label": ".all()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L334" }, { - "id": "tests_test_compare_two_cells", - "label": "two_cells()", + "id": "src_cellpy_simple_gui_core_library_library_clear", + "label": ".clear()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "two_cells()", - "source_file": "tests/test_compare.py", - "source_location": "L26" + "norm_label": ".clear()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L278" }, { - "id": "tests_test_compare_warnings", - "label": "_warnings()", + "id": "src_cellpy_simple_gui_core_library_library_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 7, - "community_name": "test_compare.py", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "_warnings()", - "source_file": "tests/test_compare.py", - "source_location": "L396" + "norm_label": ".get()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L330" }, { - "id": "tests_test_packaging_app_main_module", - "label": "app_main_module()", + "id": "src_cellpy_simple_gui_core_library_library_init", + "label": ".__init__()", "_callable": true, "_origin": "ast", - "community": 71, - "community_name": "app_main_module", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "app_main_module()", - "source_file": "tests/test_packaging.py", - "source_location": "L135" + "norm_label": ".__init__()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L121" }, { - "id": "tests_test_packaging_clear_overrides", - "label": "_clear_overrides()", + "id": "src_cellpy_simple_gui_core_library_library_is_empty", + "label": ".is_empty()", "_callable": true, "_origin": "ast", - "community": 71, - "community_name": "app_main_module", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "_clear_overrides()", - "source_file": "tests/test_packaging.py", - "source_location": "L141" + "norm_label": ".is_empty()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L347" }, { - "id": "tests_test_packaging_fake_cellpy_config", - "label": "_fake_cellpy_config()", + "id": "src_cellpy_simple_gui_core_library_library_len", + "label": ".__len__()", "_callable": true, "_origin": "ast", - "community": 71, - "community_name": "app_main_module", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "_fake_cellpy_config()", - "source_file": "tests/test_packaging.py", - "source_location": "L112" + "norm_label": ".__len__()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L344" }, { - "id": "tests_test_packaging_fake_cellpy_config_reload", - "label": "reload()", + "id": "src_cellpy_simple_gui_core_library_library_mark_clean", + "label": "._mark_clean()", "_callable": true, "_origin": "ast", - "community": 71, - "community_name": "app_main_module", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "reload()", - "source_file": "tests/test_packaging.py", - "source_location": "L119" + "norm_label": "._mark_clean()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L242" }, { - "id": "tests_test_packaging_test_absolute_cellpy_dirs_are_created_but_not_overridden", - "label": "test_absolute_cellpy_dirs_are_created_but_not_overridden()", + "id": "src_cellpy_simple_gui_core_library_library_mark_saved", + "label": ".mark_saved()", "_callable": true, "_origin": "ast", - "community": 71, - "community_name": "app_main_module", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "test_absolute_cellpy_dirs_are_created_but_not_overridden()", - "source_file": "tests/test_packaging.py", - "source_location": "L146" + "norm_label": ".mark_saved()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L248" }, { - "id": "tests_test_packaging_test_relative_cellpy_dirs_are_anchored_at_home_not_cwd", - "label": "test_relative_cellpy_dirs_are_anchored_at_home_not_cwd()", + "id": "src_cellpy_simple_gui_core_library_library_n_groups", + "label": ".n_groups()", "_callable": true, "_origin": "ast", - "community": 71, - "community_name": "app_main_module", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "test_relative_cellpy_dirs_are_anchored_at_home_not_cwd()", - "source_file": "tests/test_packaging.py", - "source_location": "L161" + "norm_label": ".n_groups()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L353" }, { - "id": "tests_test_packaging_test_remote_paths_are_never_touched", - "label": "test_remote_paths_are_never_touched()", + "id": "src_cellpy_simple_gui_core_library_library_remove", + "label": ".remove()", "_callable": true, "_origin": "ast", - "community": 71, - "community_name": "app_main_module", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": "test_remote_paths_are_never_touched()", - "source_file": "tests/test_packaging.py", - "source_location": "L194" + "norm_label": ".remove()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L274" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_setsky", - "label": ".setSky()", + "id": "src_cellpy_simple_gui_core_library_library_restore_cell", + "label": ".restore_cell()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": ".setsky()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".restore_cell()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L157" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_updatetransitions", - "label": ".updateTransitions()", + "id": "src_cellpy_simple_gui_core_library_library_reusable_data_file", + "label": ".reusable_data_file()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": ".updatetransitions()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".reusable_data_file()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L255" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addsource", - "label": ".addSource()", + "id": "src_cellpy_simple_gui_core_library_library_set_selection", + "label": ".set_selection()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 61, + "community_name": "Library", "file_type": "code", - "norm_label": ".addsource()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".set_selection()", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L285" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addsprite", - "label": ".addSprite()", + "id": "src_cellpy_simple_gui_config_settings_max_files", + "label": ".max_files()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 62, + "community_name": "load_raw", "file_type": "code", - "norm_label": ".addsprite()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": ".max_files()", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L70" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_checkloaded", - "label": "._checkLoaded()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_raw", + "label": "load_raw()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 62, + "community_name": "load_raw", "file_type": "code", - "norm_label": "._checkloaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "load_raw()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L242" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rewrite_loader_error", + "label": "_rewrite_loader_error()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 62, + "community_name": "load_raw", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_rewrite_loader_error()", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L291" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_eachchild", - "label": ".eachChild()", + "id": "src_cellpy_simple_gui_core_paths_is_remote_uri", + "label": "is_remote_uri()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 62, + "community_name": "load_raw", "file_type": "code", - "norm_label": ".eachchild()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "is_remote_uri()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L43" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_generatecollisionboxes", - "label": "._generateCollisionBoxes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_br_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "._generatecollisionboxes()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_geometry", - "label": ".geometry()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_getdefault", + "label": ".getDefault()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".geometry()", + "norm_label": ".getdefault()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getfeaturestate", - "label": ".getFeatureState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getfeaturestate()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getglyphs", - "label": ".getGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getglyphs()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getglyphsurl", - "label": ".getGlyphsUrl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getglyphsurl()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getimage", - "label": ".getImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getimage()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getimages", - "label": ".getImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_createobject", + "label": "._createObject()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getimages()", + "norm_label": "._createobject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayer", - "label": ".getLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeallobjects", + "label": ".freeAllObjects()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getlayer()", + "norm_label": ".freeallobjects()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayersorder", - "label": ".getLayersOrder()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_freeobject", + "label": ".freeObject()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getlayersorder()", + "norm_label": ".freeobject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlight", - "label": ".getLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getobjectforid", + "label": ".getObjectForId()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getlight()", + "norm_label": ".getobjectforid()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getoperationstoperform", - "label": "._getOperationsToPerform()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_getorcreatefreeobject", + "label": ".getOrCreateFreeObject()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "._getoperationstoperform()", + "norm_label": ".getorcreatefreeobject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsky", - "label": ".getSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_isfull", + "label": ".isFull()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getsky()", + "norm_label": ".isfull()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsource", - "label": ".getSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_r", + "label": "r()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getsource()", + "norm_label": "r()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsprite", - "label": ".getSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_stampobject", + "label": ".stampObject()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".getsprite()", + "norm_label": ".stampobject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_id", - "label": ".id()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ri_useobject", + "label": ".useObject()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".id()", + "norm_label": ".useobject()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_listimages", - "label": ".listImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_a", + "label": "a()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".listimages()", + "norm_label": "a()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loaded", - "label": ".loaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".loaded()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_movelayer", - "label": ".moveLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_destroyui", + "label": "._destroyUI()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".movelayer()", + "norm_label": "._destroyui()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_properties", - "label": ".properties()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_disable", + "label": ".disable()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".properties()", + "norm_label": ".disable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_reloadsource", - "label": "._reloadSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_enable", + "label": ".enable()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "._reloadsource()", + "norm_label": ".enable()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removefeaturestate", - "label": ".removeFeatureState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_i", + "label": "i()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".removefeaturestate()", + "norm_label": "i()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removesprite", - "label": ".removeSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_isactive", + "label": ".isActive()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".removesprite()", + "norm_label": ".isactive()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_resetupdates", - "label": "._resetUpdates()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_o", + "label": "o()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "._resetupdates()", + "norm_label": "o()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ti_setupui", + "label": "._setupUI()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "._setupui()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serializebyids", - "label": "._serializeByIds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yr_set", + "label": ".set()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 63, + "community_name": "ti", "file_type": "code", - "norm_label": "._serializebyids()", + "norm_label": ".set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serializedalllayers", - "label": "._serializedAllLayers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bt_insertcollisioncircles", + "label": ".insertCollisionCircles()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 64, + "community_name": "._forEachCell", "file_type": "code", - "norm_label": "._serializedalllayers()", + "norm_label": ".insertcollisioncircles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setgeojsonsourcedata", - "label": ".setGeoJSONSourceData()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_insert", + "label": ".insert()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 64, + "community_name": "._forEachCell", "file_type": "code", - "norm_label": ".setgeojsonsourcedata()", + "norm_label": ".insert()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setglyphs", - "label": ".setGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ki_query", + "label": ".query()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 64, + "community_name": "._forEachCell", "file_type": "code", - "norm_label": ".setglyphs()", + "norm_label": ".query()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlight", - "label": ".setLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoxcellcoord", + "label": "._convertToXCellCoord()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 64, + "community_name": "._forEachCell", "file_type": "code", - "norm_label": ".setlight()", + "norm_label": "._converttoxcellcoord()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsky", - "label": ".setSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_converttoycellcoord", + "label": "._convertToYCellCoord()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 64, + "community_name": "._forEachCell", "file_type": "code", - "norm_label": ".setsky()", + "norm_label": "._converttoycellcoord()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsprite", - "label": ".setSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_foreachcell", + "label": "._forEachCell()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 64, + "community_name": "._forEachCell", "file_type": "code", - "norm_label": ".setsprite()", + "norm_label": "._foreachcell()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setstate", - "label": ".setState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_hittestcircle", + "label": ".hitTestCircle()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 64, + "community_name": "._forEachCell", "file_type": "code", - "norm_label": ".setstate()", + "norm_label": ".hittestcircle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_unloadsprite", - "label": "._unloadSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xt_insertcircle", + "label": ".insertCircle()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 64, + "community_name": "._forEachCell", "file_type": "code", - "norm_label": "._unloadsprite()", + "norm_label": ".insertcircle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_api_routers_projects_current_state", + "label": "_current_state()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": ".update()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_current_state()", + "source_file": "src/cellpy_simple_gui/api/routers/projects.py", + "source_location": "L19" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateimage", - "label": ".updateImage()", + "id": "src_cellpy_simple_gui_api_routers_projects_delete_project", + "label": "delete_project()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": ".updateimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "delete_project()", + "source_file": "src/cellpy_simple_gui/api/routers/projects.py", + "source_location": "L196" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatesources", - "label": "._updateSources()", + "id": "src_cellpy_simple_gui_api_routers_projects_list_projects", + "label": "list_projects()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "._updatesources()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "list_projects()", + "source_file": "src/cellpy_simple_gui/api/routers/projects.py", + "source_location": "L30" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatetilesforchangedimages", - "label": "._updateTilesForChangedImages()", + "id": "src_cellpy_simple_gui_core_projects_classify_import_path", + "label": "classify_import_path()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "._updatetilesforchangedimages()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "classify_import_path()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L125" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateworkerlayers", - "label": "._updateWorkerLayers()", + "id": "src_cellpy_simple_gui_core_projects_cleanup_save_artifacts", + "label": "_cleanup_save_artifacts()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "._updateworkerlayers()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_cleanup_save_artifacts()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L156" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validate", - "label": "._validate()", + "id": "src_cellpy_simple_gui_core_projects_delete_project", + "label": "delete_project()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "._validate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "delete_project()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L327" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validatelayer", - "label": "._validateLayer()", + "id": "src_cellpy_simple_gui_core_projects_list_projects", + "label": "list_projects()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "._validatelayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "list_projects()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L307" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_setdependencies", - "label": ".setDependencies()", + "id": "src_cellpy_simple_gui_core_projects_now", + "label": "_now()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": ".setdependencies()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_now()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L108" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getglyphs", - "label": "getGlyphs()", + "id": "src_cellpy_simple_gui_core_projects_open_project", + "label": "open_project()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "getglyphs()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "open_project()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L274" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmapid", - "label": "_getMapId()", + "id": "src_cellpy_simple_gui_core_projects_projects_root", + "label": "projects_root()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "_getmapid()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "projects_root()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L97" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsource", - "label": "getSource()", + "id": "src_cellpy_simple_gui_core_projects_resolve_project_path", + "label": "resolve_project_path()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "getsource()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "resolve_project_path()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L112" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_issourceloaded", - "label": "isSourceLoaded()", + "id": "src_cellpy_simple_gui_core_projects_safe_cellpy_version", + "label": "_safe_cellpy_version()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "issourceloaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_safe_cellpy_version()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L333" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_addimage", - "label": ".addImage()", + "id": "src_cellpy_simple_gui_core_projects_save_project", + "label": "save_project()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": ".addimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "save_project()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L167" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loaded", - "label": "loaded()", + "id": "src_cellpy_simple_gui_core_projects_slugify", + "label": "slugify()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": "loaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "slugify()", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L103" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setlayoutproperty", - "label": ".setLayoutProperty()", + "id": "tests_test_projects_temp_projects_root", + "label": "temp_projects_root()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 65, + "community_name": "core/projects.py", "file_type": "code", - "norm_label": ".setlayoutproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "temp_projects_root()", + "source_file": "tests/test_projects.py", + "source_location": "L18" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_setlight", - "label": ".setLight()", + "id": "src_cellpy_simple_gui_api_routers_system_normalize_dialog_path", + "label": "_normalize_dialog_path()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 67, + "community_name": "pick", "file_type": "code", - "norm_label": ".setlight()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_normalize_dialog_path()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L57" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removefeaturestate", - "label": "removeFeatureState()", + "id": "src_cellpy_simple_gui_api_routers_system_pick", + "label": "pick()", "_callable": true, "_origin": "ast", - "community": 72, - "community_name": "de", + "community": 67, + "community_name": "pick", "file_type": "code", - "norm_label": "removefeaturestate()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "pick()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L118" }, { - "id": "tests_test_packaging_load_zip_installer", - "label": "_load_zip_installer()", + "id": "src_cellpy_simple_gui_api_routers_system_save", + "label": "save()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 67, + "community_name": "pick", "file_type": "code", - "norm_label": "_load_zip_installer()", - "source_file": "tests/test_packaging.py", - "source_location": "L366" + "norm_label": "save()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L140" }, { - "id": "tests_test_packaging_test_installer_needs_no_admin", - "label": "test_installer_needs_no_admin()", + "id": "src_cellpy_simple_gui_api_routers_system_save_file_types", + "label": "_save_file_types()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 67, + "community_name": "pick", "file_type": "code", - "norm_label": "test_installer_needs_no_admin()", - "source_file": "tests/test_packaging.py", - "source_location": "L235" + "norm_label": "_save_file_types()", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L49" }, { - "id": "tests_test_packaging_test_installer_removes_its_own_directory_but_never_user_data", - "label": "test_installer_removes_its_own_directory_but_never_user_data()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bo_upload", + "label": ".upload()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": "test_installer_removes_its_own_directory_but_never_user_data()", - "source_file": "tests/test_packaging.py", - "source_location": "L222" + "norm_label": ".upload()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_installer_version_resource_stays_numeric", - "label": "test_installer_version_resource_stays_numeric()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_prepare", + "label": ".prepare()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": "test_installer_version_resource_stays_numeric()", - "source_file": "tests/test_packaging.py", - "source_location": "L290" + "norm_label": ".prepare()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_setup_logging_survives_a_windowed_build", - "label": "test_setup_logging_survives_a_windowed_build()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_uploadpending", + "label": ".uploadPending()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": "test_setup_logging_survives_a_windowed_build()", - "source_file": "tests/test_packaging.py", - "source_location": "L47" + "norm_label": ".uploadpending()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_spec_ships_both_a_windowed_and_a_console_executable", - "label": "test_spec_ships_both_a_windowed_and_a_console_executable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fo_upload", + "label": ".upload()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": "test_spec_ships_both_a_windowed_and_a_console_executable()", - "source_file": "tests/test_packaging.py", - "source_location": "L278" + "norm_label": ".upload()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_zip_installer_refuses_a_directory_with_no_exe", - "label": "test_zip_installer_refuses_a_directory_with_no_exe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_upload", + "label": ".upload()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": "test_zip_installer_refuses_a_directory_with_no_exe()", - "source_file": "tests/test_packaging.py", - "source_location": "L390" + "norm_label": ".upload()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_packaging_test_zip_installer_wraps_each_exe", - "label": "test_zip_installer_wraps_each_exe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_load", + "label": ".load()", "_callable": true, "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": "test_zip_installer_wraps_each_exe()", - "source_file": "tests/test_packaging.py", - "source_location": "L375" + "norm_label": ".load()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_down", - "label": "._down()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": "._down()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_getid", - "label": ".getId()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_setsourceproperty", + "label": ".setSourceProperty()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".getid()", + "norm_label": ".setsourceproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_haslayer", - "label": ".hasLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_settiles", + "label": ".setTiles()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".haslayer()", + "norm_label": ".settiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadmatchingfeature", - "label": ".loadMatchingFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_j_seturl", + "label": ".setUrl()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".loadmatchingfeature()", + "norm_label": ".seturl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadvtlayers", - "label": ".loadVTLayers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".loadvtlayers()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_lookupsymbolfeatures", - "label": ".lookupSymbolFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_setsourceproperty", + "label": ".setSourceProperty()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".lookupsymbolfeatures()", + "norm_label": ".setsourceproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_peek", - "label": ".peek()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_settiles", + "label": ".setTiles()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".peek()", + "norm_label": ".settiles()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_query", - "label": ".query()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_seturl", + "label": ".setUrl()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".query()", + "norm_label": ".seturl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_up", - "label": "._up()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": "._up()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_feature", - "label": "feature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nt_play", + "label": ".play()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": "feature()", + "norm_label": ".play()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_querysourcefeatures", - "label": ".querySourceFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".querysourcefeatures()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_setcoordinates", + "label": ".setCoordinates()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".setcoordinates()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_tojson", - "label": ".toJSON()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rt_updateimage", + "label": ".updateImage()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": ".tojson()", + "norm_label": ".updateimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lh", - "label": "lh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_onadd", + "label": ".onAdd()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 68, + "community_name": ".load", "file_type": "code", - "norm_label": "lh()", + "norm_label": ".onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_core_collect_ica_collection", + "label": "ica_collection()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 69, + "community_name": "IcaPlotSpec", "file_type": "code", - "norm_label": ".constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ica_collection()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L535" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_decode", - "label": ".decode()", + "id": "src_cellpy_simple_gui_core_export_ica_export", + "label": "ica_export()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 69, + "community_name": "IcaPlotSpec", "file_type": "code", - "norm_label": ".decode()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ica_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L134" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_encode", - "label": ".encode()", + "id": "src_cellpy_simple_gui_core_export_ica_figure_export", + "label": "ica_figure_export()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 69, + "community_name": "IcaPlotSpec", "file_type": "code", - "norm_label": ".encode()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "ica_figure_export()", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L145" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pop", - "label": "pop()", + "id": "tests_test_core_test_ica_figure", + "label": "test_ica_figure()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 69, + "community_name": "IcaPlotSpec", "file_type": "code", - "norm_label": "pop()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_ica_figure()", + "source_file": "tests/test_core.py", + "source_location": "L514" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_push", - "label": "push()", + "id": "tests_test_core_test_ica_figure_both_overlays_directions", + "label": "test_ica_figure_both_overlays_directions()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 69, + "community_name": "IcaPlotSpec", "file_type": "code", - "norm_label": "push()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_ica_figure_both_overlays_directions()", + "source_file": "tests/test_core.py", + "source_location": "L552" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sh", - "label": "sh()", + "id": "tests_test_core_test_ica_figure_discharge", + "label": "test_ica_figure_discharge()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 69, + "community_name": "IcaPlotSpec", "file_type": "code", - "norm_label": "sh()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_ica_figure_discharge()", + "source_file": "tests/test_core.py", + "source_location": "L523" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zu_queryintersectsfeature", - "label": ".queryIntersectsFeature()", + "id": "tests_test_core_test_ica_figure_partial_x_range_min_only", + "label": "test_ica_figure_partial_x_range_min_only()", "_callable": true, "_origin": "ast", - "community": 76, - "community_name": "ah", + "community": 69, + "community_name": "IcaPlotSpec", "file_type": "code", - "norm_label": ".queryintersectsfeature()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_ica_figure_partial_x_range_min_only()", + "source_file": "tests/test_core.py", + "source_location": "L357" }, { - "id": "tests_test_api_add_cells_modal_html", - "label": "_add_cells_modal_html()", + "id": "tests_test_core_test_thin_traces_leaves_small_figures_alone", + "label": "test_thin_traces_leaves_small_figures_alone()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", + "community": 69, + "community_name": "IcaPlotSpec", "file_type": "code", - "norm_label": "_add_cells_modal_html()", - "source_file": "tests/test_api.py", - "source_location": "L585" + "norm_label": "test_thin_traces_leaves_small_figures_alone()", + "source_file": "tests/test_core.py", + "source_location": "L1947" }, { - "id": "tests_test_api_default_visible_hints", - "label": "_default_visible_hints()", + "id": "tests_test_compare_ids", + "label": "_ids()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "_default_visible_hints()", - "source_file": "tests/test_api.py", - "source_location": "L604" + "norm_label": "_ids()", + "source_file": "tests/test_compare.py", + "source_location": "L296" }, { - "id": "tests_test_api_default_visible_hints_handle_endtag", - "label": "handle_endtag()", + "id": "tests_test_compare_picks", + "label": "picks()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "handle_endtag()", - "source_file": "tests/test_api.py", - "source_location": "L636" + "norm_label": "picks()", + "source_file": "tests/test_compare.py", + "source_location": "L46" }, { - "id": "tests_test_api_default_visible_hints_handle_starttag", - "label": "handle_starttag()", + "id": "tests_test_compare_spec", + "label": "_spec()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "handle_starttag()", - "source_file": "tests/test_api.py", - "source_location": "L622" + "norm_label": "_spec()", + "source_file": "tests/test_compare.py", + "source_location": "L51" }, { - "id": "tests_test_api_default_visible_hints_init", - "label": "__init__()", + "id": "tests_test_compare_test_api_compare_differentials", + "label": "test_api_compare_differentials()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "__init__()", - "source_file": "tests/test_api.py", - "source_location": "L616" + "norm_label": "test_api_compare_differentials()", + "source_file": "tests/test_compare.py", + "source_location": "L323" }, { - "id": "tests_test_api_template_html", - "label": "_template_html()", + "id": "tests_test_compare_test_api_compare_export", + "label": "test_api_compare_export()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "_template_html()", - "source_file": "tests/test_api.py", - "source_location": "L517" + "norm_label": "test_api_compare_export()", + "source_file": "tests/test_compare.py", + "source_location": "L360" }, { - "id": "tests_test_api_test_add_cells_modal_has_one_primary_action", - "label": "test_add_cells_modal_has_one_primary_action()", + "id": "tests_test_compare_test_api_compare_missing_cycles_are_reported", + "label": "test_api_compare_missing_cycles_are_reported()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "test_add_cells_modal_has_one_primary_action()", - "source_file": "tests/test_api.py", - "source_location": "L592" + "norm_label": "test_api_compare_missing_cycles_are_reported()", + "source_file": "tests/test_compare.py", + "source_location": "L506" }, { - "id": "tests_test_api_test_default_visible_hint_budget", - "label": "test_default_visible_hint_budget()", + "id": "tests_test_compare_test_api_compare_overlay_and_side_by_side", + "label": "test_api_compare_overlay_and_side_by_side()", "_callable": true, "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "test_default_visible_hint_budget()", - "source_file": "tests/test_api.py", - "source_location": "L646" + "norm_label": "test_api_compare_overlay_and_side_by_side()", + "source_file": "tests/test_compare.py", + "source_location": "L303" }, { - "id": "tests_test_agent_docs_test_llms_full_txt_is_current", - "label": "test_llms_full_txt_is_current()", + "id": "tests_test_compare_test_api_compare_validation_and_404", + "label": "test_api_compare_validation_and_404()", "_callable": true, "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "test_llms_full_txt_is_current()", - "source_file": "tests/test_agent_docs.py", - "source_location": "L47" + "norm_label": "test_api_compare_validation_and_404()", + "source_file": "tests/test_compare.py", + "source_location": "L338" }, { - "id": "src_cellpy_simple_gui_api_jobs_jobmanager_cancel", - "label": ".cancel()", + "id": "tests_test_compare_test_api_cycles_tab_guards_only_all_missing", + "label": "test_api_cycles_tab_guards_only_all_missing()", "_callable": true, "_origin": "ast", - "community": 79, - "community_name": ".cancel", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": ".cancel()", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L250" + "norm_label": "test_api_cycles_tab_guards_only_all_missing()", + "source_file": "tests/test_compare.py", + "source_location": "L567" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_accesstoken", - "label": "accessToken()", + "id": "tests_test_compare_test_api_single_cell_explorer_reports_missing_cycles", + "label": "test_api_single_cell_explorer_reports_missing_cycles()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "accesstoken()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_api_single_cell_explorer_reports_missing_cycles()", + "source_file": "tests/test_compare.py", + "source_location": "L540" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addcontrol", - "label": "addControl()", + "id": "tests_test_compare_test_batch_keys_disambiguate_duplicate_labels", + "label": "test_batch_keys_disambiguate_duplicate_labels()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "addcontrol()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_batch_keys_disambiguate_duplicate_labels()", + "source_file": "tests/test_compare.py", + "source_location": "L110" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addimage", - "label": "addImage()", + "id": "tests_test_compare_test_batch_keys_match_collected_cell_column", + "label": "test_batch_keys_match_collected_cell_column()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "addimage()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_batch_keys_match_collected_cell_column()", + "source_file": "tests/test_compare.py", + "source_location": "L102" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addlayer", - "label": "addLayer()", + "id": "tests_test_compare_test_compare_all_missing_explains_instead_of_blank", + "label": "test_compare_all_missing_explains_instead_of_blank()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "addlayer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_all_missing_explains_instead_of_blank()", + "source_file": "tests/test_compare.py", + "source_location": "L460" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addsprite", - "label": "addSprite()", + "id": "tests_test_compare_test_compare_axis_ranges", + "label": "test_compare_axis_ranges()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "addsprite()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_axis_ranges()", + "source_file": "tests/test_compare.py", + "source_location": "L236" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aretilesloaded", - "label": "areTilesLoaded()", + "id": "tests_test_compare_test_compare_both_directions_overlay", + "label": "test_compare_both_directions_overlay()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "aretilesloaded()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_both_directions_overlay()", + "source_file": "tests/test_compare.py", + "source_location": "L224" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_b_createtree", - "label": "._createTree()", + "id": "tests_test_compare_test_compare_collection_reports_missing_cycles", + "label": "test_compare_collection_reports_missing_cycles()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "._createtree()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_collection_reports_missing_cycles()", + "source_file": "tests/test_compare.py", + "source_location": "L424" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_baseapiurl", - "label": "baseApiUrl()", + "id": "tests_test_compare_test_compare_differentials", + "label": "test_compare_differentials()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "baseapiurl()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_differentials()", + "source_file": "tests/test_compare.py", + "source_location": "L216" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bh", - "label": "bh()", + "id": "tests_test_compare_test_compare_empty_picks_render_prompt", + "label": "test_compare_empty_picks_render_prompt()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "bh()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_empty_picks_render_prompt()", + "source_file": "tests/test_compare.py", + "source_location": "L245" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cc", - "label": "Cc()", + "id": "tests_test_compare_test_compare_export_all_missing_says_why", + "label": "test_compare_export_all_missing_says_why()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "cc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_export_all_missing_says_why()", + "source_file": "tests/test_compare.py", + "source_location": "L479" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_clearmetrics", - "label": "clearMetrics()", + "id": "tests_test_compare_test_compare_export_differential_follows_direction", + "label": "test_compare_export_differential_follows_direction()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "clearmetrics()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_export_differential_follows_direction()", + "source_file": "tests/test_compare.py", + "source_location": "L266" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_completetask", - "label": "completeTask()", + "id": "tests_test_compare_test_compare_export_rows_cover_only_picked_pairs", + "label": "test_compare_export_rows_cover_only_picked_pairs()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "completetask()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_export_rows_cover_only_picked_pairs()", + "source_file": "tests/test_compare.py", + "source_location": "L253" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_constructor", - "label": "constructor()", + "id": "tests_test_compare_test_compare_figure_partial_missing_warns_and_draws_the_rest", + "label": "test_compare_figure_partial_missing_warns_and_draws_the_rest()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "constructor()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_figure_partial_missing_warns_and_draws_the_rest()", + "source_file": "tests/test_compare.py", + "source_location": "L439" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_containerdimensions", - "label": "_containerDimensions()", + "id": "tests_test_compare_test_compare_reports_for_every_kind_and_layout", + "label": "test_compare_reports_for_every_kind_and_layout()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "_containerdimensions()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_reports_for_every_kind_and_layout()", + "source_file": "tests/test_compare.py", + "source_location": "L451" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createcanvas", - "label": "_createCanvas()", + "id": "tests_test_compare_test_compare_reports_unreadable_cycles", + "label": "test_compare_reports_unreadable_cycles()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "_createcanvas()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_compare_reports_unreadable_cycles()", + "source_file": "tests/test_compare.py", + "source_location": "L486" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createdelegatedlistener", - "label": "_createDelegatedListener()", + "id": "tests_test_compare_test_compare_reports_unreadable_cycles_drop_a3", + "label": "drop_a3()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "_createdelegatedlistener()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "drop_a3()", + "source_file": "tests/test_compare.py", + "source_location": "L493" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_devicepixelratio", - "label": "devicePixelRatio()", + "id": "tests_test_compare_test_overlay_folds_per_cell_facets_onto_one_axis_pair", + "label": "test_overlay_folds_per_cell_facets_onto_one_axis_pair()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "devicepixelratio()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_overlay_folds_per_cell_facets_onto_one_axis_pair()", + "source_file": "tests/test_compare.py", + "source_location": "L159" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_diffstyle", - "label": "_diffStyle()", + "id": "tests_test_compare_test_overlay_keeps_full_identity_in_hover", + "label": "test_overlay_keeps_full_identity_in_hover()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "_diffstyle()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_overlay_keeps_full_identity_in_hover()", + "source_file": "tests/test_compare.py", + "source_location": "L192" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dl", - "label": "Dl()", + "id": "tests_test_compare_test_overlay_respects_curated_color_scheme", + "label": "test_overlay_respects_curated_color_scheme()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "dl()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_overlay_respects_curated_color_scheme()", + "source_file": "tests/test_compare.py", + "source_location": "L200" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_down", - "label": "_down()", + "id": "tests_test_compare_test_present_cycle_pairs_mirrors_restrict", + "label": "test_present_cycle_pairs_mirrors_restrict()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "_down()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_present_cycle_pairs_mirrors_restrict()", + "source_file": "tests/test_compare.py", + "source_location": "L400" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_draw", - "label": "draw()", + "id": "tests_test_compare_test_present_cycle_pairs_unknown_frame_is_none", + "label": "test_present_cycle_pairs_unknown_frame_is_none()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "draw()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_present_cycle_pairs_unknown_frame_is_none()", + "source_file": "tests/test_compare.py", + "source_location": "L414" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_du", - "label": "du()", + "id": "tests_test_compare_test_restrict_to_cycle_pairs_leaves_unknown_frames_alone", + "label": "test_restrict_to_cycle_pairs_leaves_unknown_frames_alone()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "du()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_restrict_to_cycle_pairs_leaves_unknown_frames_alone()", + "source_file": "tests/test_compare.py", + "source_location": "L146" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_doescharsupportlocalglyph", - "label": "._doesCharSupportLocalGlyph()", + "id": "tests_test_compare_test_restrict_to_cycle_pairs_on_cycles_frame", + "label": "test_restrict_to_cycle_pairs_on_cycles_frame()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "._doescharsupportlocalglyph()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_restrict_to_cycle_pairs_on_cycles_frame()", + "source_file": "tests/test_compare.py", + "source_location": "L119" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getandcacheglyphspromise", - "label": "._getAndCacheGlyphsPromise()", + "id": "tests_test_compare_test_restrict_to_cycle_pairs_on_ica_frame", + "label": "test_restrict_to_cycle_pairs_on_ica_frame()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "._getandcacheglyphspromise()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_restrict_to_cycle_pairs_on_ica_frame()", + "source_file": "tests/test_compare.py", + "source_location": "L134" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_tinysdf", - "label": "._tinySDF()", + "id": "tests_test_compare_test_side_by_side_keeps_cellpy_facets", + "label": "test_side_by_side_keeps_cellpy_facets()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "._tinysdf()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_side_by_side_keeps_cellpy_facets()", + "source_file": "tests/test_compare.py", + "source_location": "L206" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_events_url", - "label": "EVENTS_URL()", + "id": "tests_test_compare_test_spec_cleans_axis_ranges_like_cycles_spec", + "label": "test_spec_cleans_axis_ranges_like_cycles_spec()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "events_url()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_spec_cleans_axis_ranges_like_cycles_spec()", + "source_file": "tests/test_compare.py", + "source_location": "L89" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_finish", - "label": "finish()", + "id": "tests_test_compare_test_spec_merges_duplicate_cells_and_sorts_cycles", + "label": "test_spec_merges_duplicate_cells_and_sorts_cycles()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "finish()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_spec_merges_duplicate_cells_and_sorts_cycles()", + "source_file": "tests/test_compare.py", + "source_location": "L63" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frame", - "label": "frame()", + "id": "tests_test_compare_test_spec_rejects_too_many_picks_or_curves", + "label": "test_spec_rejects_too_many_picks_or_curves()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "frame()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_spec_rejects_too_many_picks_or_curves()", + "source_file": "tests/test_compare.py", + "source_location": "L76" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fu", - "label": "Fu()", + "id": "tests_test_compare_two_cell_library", + "label": "two_cell_library()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "fu()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "two_cell_library()", + "source_file": "tests/test_compare.py", + "source_location": "L38" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_g_once", - "label": ".once()", + "id": "tests_test_compare_two_cells", + "label": "two_cells()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": ".once()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "two_cells()", + "source_file": "tests/test_compare.py", + "source_location": "L26" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gc", - "label": "gc()", + "id": "tests_test_compare_warnings", + "label": "_warnings()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 7, + "community_name": "test_compare.py", "file_type": "code", - "norm_label": "gc()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_warnings()", + "source_file": "tests/test_compare.py", + "source_location": "L396" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getbounds", - "label": "getBounds()", + "id": "tests_test_packaging_app_main_module", + "label": "app_main_module()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 71, + "community_name": "app_main_module", "file_type": "code", - "norm_label": "getbounds()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "app_main_module()", + "source_file": "tests/test_packaging.py", + "source_location": "L135" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcameratargetelevation", - "label": "getCameraTargetElevation()", + "id": "tests_test_packaging_clear_overrides", + "label": "_clear_overrides()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 71, + "community_name": "app_main_module", "file_type": "code", - "norm_label": "getcameratargetelevation()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_clear_overrides()", + "source_file": "tests/test_packaging.py", + "source_location": "L141" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcanvascontainer", - "label": "getCanvasContainer()", + "id": "tests_test_packaging_fake_cellpy_config", + "label": "_fake_cellpy_config()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 71, + "community_name": "app_main_module", "file_type": "code", - "norm_label": "getcanvascontainer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_fake_cellpy_config()", + "source_file": "tests/test_packaging.py", + "source_location": "L112" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getclampedpixelratio", - "label": "_getClampedPixelRatio()", + "id": "tests_test_packaging_fake_cellpy_config_reload", + "label": "reload()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 71, + "community_name": "app_main_module", "file_type": "code", - "norm_label": "_getclampedpixelratio()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "reload()", + "source_file": "tests/test_packaging.py", + "source_location": "L119" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcontainer", - "label": "getContainer()", + "id": "tests_test_packaging_test_absolute_cellpy_dirs_are_created_but_not_overridden", + "label": "test_absolute_cellpy_dirs_are_created_but_not_overridden()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 71, + "community_name": "app_main_module", "file_type": "code", - "norm_label": "getcontainer()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_absolute_cellpy_dirs_are_created_but_not_overridden()", + "source_file": "tests/test_packaging.py", + "source_location": "L146" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getdefaultposition", - "label": "getDefaultPosition()", + "id": "tests_test_packaging_test_relative_cellpy_dirs_are_anchored_at_home_not_cwd", + "label": "test_relative_cellpy_dirs_are_anchored_at_home_not_cwd()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 71, + "community_name": "app_main_module", "file_type": "code", - "norm_label": "getdefaultposition()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_relative_cellpy_dirs_are_anchored_at_home_not_cwd()", + "source_file": "tests/test_packaging.py", + "source_location": "L161" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfilter", - "label": "getFilter()", + "id": "tests_test_packaging_test_remote_paths_are_never_touched", + "label": "test_remote_paths_are_never_touched()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 71, + "community_name": "app_main_module", "file_type": "code", - "norm_label": "getfilter()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_remote_paths_are_never_touched()", + "source_file": "tests/test_packaging.py", + "source_location": "L194" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimagecanvascontext", - "label": "getImageCanvasContext()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_q_registermessagehandler", + "label": ".registerMessageHandler()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 72, + "community_name": ".registerMessageHandler", "file_type": "code", - "norm_label": "getimagecanvascontext()", + "norm_label": ".registermessagehandler()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimagedata", - "label": "getImageData()", + "id": "tests_test_packaging_load_zip_installer", + "label": "_load_zip_installer()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 75, + "community_name": "test_packaging.py", "file_type": "code", - "norm_label": "getimagedata()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "_load_zip_installer()", + "source_file": "tests/test_packaging.py", + "source_location": "L366" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayersorder", - "label": "getLayersOrder()", + "id": "tests_test_packaging_test_installer_needs_no_admin", + "label": "test_installer_needs_no_admin()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 75, + "community_name": "test_packaging.py", "file_type": "code", - "norm_label": "getlayersorder()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_installer_needs_no_admin()", + "source_file": "tests/test_packaging.py", + "source_location": "L235" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlight", - "label": "getLight()", + "id": "tests_test_packaging_test_installer_removes_its_own_directory_but_never_user_data", + "label": "test_installer_removes_its_own_directory_but_never_user_data()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 75, + "community_name": "test_packaging.py", "file_type": "code", - "norm_label": "getlight()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_installer_removes_its_own_directory_but_never_user_data()", + "source_file": "tests/test_packaging.py", + "source_location": "L222" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxbounds", - "label": "getMaxBounds()", + "id": "tests_test_packaging_test_installer_version_resource_stays_numeric", + "label": "test_installer_version_resource_stays_numeric()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 75, + "community_name": "test_packaging.py", "file_type": "code", - "norm_label": "getmaxbounds()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_installer_version_resource_stays_numeric()", + "source_file": "tests/test_packaging.py", + "source_location": "L290" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxpitch", - "label": "getMaxPitch()", + "id": "tests_test_packaging_test_setup_logging_survives_a_windowed_build", + "label": "test_setup_logging_survives_a_windowed_build()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 75, + "community_name": "test_packaging.py", "file_type": "code", - "norm_label": "getmaxpitch()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_setup_logging_survives_a_windowed_build()", + "source_file": "tests/test_packaging.py", + "source_location": "L47" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxzoom", - "label": "getMaxZoom()", + "id": "tests_test_packaging_test_spec_ships_both_a_windowed_and_a_console_executable", + "label": "test_spec_ships_both_a_windowed_and_a_console_executable()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 75, + "community_name": "test_packaging.py", "file_type": "code", - "norm_label": "getmaxzoom()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_spec_ships_both_a_windowed_and_a_console_executable()", + "source_file": "tests/test_packaging.py", + "source_location": "L278" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getminpitch", - "label": "getMinPitch()", + "id": "tests_test_packaging_test_zip_installer_refuses_a_directory_with_no_exe", + "label": "test_zip_installer_refuses_a_directory_with_no_exe()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 75, + "community_name": "test_packaging.py", "file_type": "code", - "norm_label": "getminpitch()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "norm_label": "test_zip_installer_refuses_a_directory_with_no_exe()", + "source_file": "tests/test_packaging.py", + "source_location": "L390" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getminzoom", - "label": "getMinZoom()", + "id": "tests_test_packaging_test_zip_installer_wraps_each_exe", + "label": "test_zip_installer_wraps_each_exe()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 75, + "community_name": "test_packaging.py", "file_type": "code", - "norm_label": "getminzoom()", + "norm_label": "test_zip_installer_wraps_each_exe()", + "source_file": "tests/test_packaging.py", + "source_location": "L375" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_emplace", + "label": ".emplace()", + "_callable": true, + "_origin": "ast", + "community": 76, + "community_name": "ah", + "file_type": "code", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getperformancemetrics", - "label": "getPerformanceMetrics()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aa_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "getperformancemetrics()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpixelratio", - "label": "getPixelRatio()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "getpixelratio()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpluginurl", - "label": "getPluginURL()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_down", + "label": "._down()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "getpluginurl()", + "norm_label": "._down()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getrenderworldcopies", - "label": "getRenderWorldCopies()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_getid", + "label": ".getId()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "getrenderworldcopies()", + "norm_label": ".getid()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getrtltextpluginstatus", - "label": "getRTLTextPluginStatus()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_haslayer", + "label": ".hasLayer()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "getrtltextpluginstatus()", + "norm_label": ".haslayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsky", - "label": "getSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadmatchingfeature", + "label": ".loadMatchingFeature()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "getsky()", + "norm_label": ".loadmatchingfeature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsprite", - "label": "getSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_loadvtlayers", + "label": ".loadVTLayers()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "getsprite()", + "norm_label": ".loadvtlayers()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getstate", - "label": "getState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_lookupsymbolfeatures", + "label": ".lookupSymbolFeatures()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "getstate()", + "norm_label": ".lookupsymbolfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getstyle", - "label": "getStyle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_peek", + "label": ".peek()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "getstyle()", + "norm_label": ".peek()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getterrain", - "label": "getTerrain()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_query", + "label": ".query()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "getterrain()", + "norm_label": ".query()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getuistring", - "label": "_getUIString()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ah_up", + "label": "._up()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "_getuistring()", + "norm_label": "._up()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gl", - "label": "Gl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ht_querysourcefeatures", + "label": ".querySourceFeatures()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "gl()", + "norm_label": ".querysourcefeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gu", - "label": "Gu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ih_tojson", + "label": ".toJSON()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "gu()", + "norm_label": ".tojson()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hascontrol", - "label": "hasControl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lh", + "label": "lh()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "hascontrol()", + "norm_label": "lh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ismoving", - "label": "isMoving()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "ismoving()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isstyleloaded", - "label": "isStyleLoaded()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nh_decode", + "label": ".decode()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "isstyleloaded()", + "norm_label": ".decode()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_iu", - "label": "iu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pop", + "label": "pop()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": "iu()", + "norm_label": "pop()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_push", + "label": "push()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "push()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_feature", - "label": ".feature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sh", + "label": "sh()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 76, + "community_name": "ah", "file_type": "code", - "norm_label": ".feature()", + "norm_label": "sh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimage", - "label": ".getImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpoint", + "label": ".anchorPoint()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": ".getimage()", + "norm_label": ".anchorpoint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kc", - "label": "Kc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpointx", + "label": ".anchorPointX()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "kc()", + "norm_label": ".anchorpointx()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kh_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_anchorpointy", + "label": ".anchorPointY()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".anchorpointy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lazyinitemptystyle", - "label": "_lazyInitEmptyStyle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_bucketindex", + "label": ".bucketIndex()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "_lazyinitemptystyle()", + "norm_label": ".bucketindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_listimages", - "label": "listImages()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_featureindex", + "label": ".featureIndex()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "listimages()", + "norm_label": ".featureindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mark", - "label": "mark()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "mark()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_maxparallelimagerequests", - "label": "maxParallelImageRequests()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_sourcelayerindex", + "label": ".sourceLayerIndex()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "maxparallelimagerequests()", + "norm_label": ".sourcelayerindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ml", - "label": "Ml()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_x1", + "label": ".x1()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "ml()", + "norm_label": ".x1()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_movelayer", - "label": "moveLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_y1", + "label": ".y1()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "movelayer()", + "norm_label": ".y1()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setmaxwidth", - "label": ".setMaxWidth()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_da_y2", + "label": ".y2()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": ".setmaxwidth()", + "norm_label": ".y2()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setoffset", - "label": ".setOffset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_eu_createarrays", + "label": ".createArrays()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": ".setoffset()", + "norm_label": ".createarrays()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_onadd", - "label": "onAdd()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_bucketindex", + "label": ".bucketIndex()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "onadd()", + "norm_label": ".bucketindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_once", - "label": "once()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "once()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_peek", - "label": "peek()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_featureindex", + "label": ".featureIndex()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "peek()", + "norm_label": ".featureindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_prefersreducedmotion", - "label": "prefersReducedMotion()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "prefersreducedmotion()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_process", - "label": "process()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ga_sourcelayerindex", + "label": ".sourceLayerIndex()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "process()", + "norm_label": ".sourcelayerindex()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_processtask", - "label": "processTask()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ha_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "processtask()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_queryrenderedfeatures", - "label": "queryRenderedFeatures()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ja_get", + "label": ".get()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "queryrenderedfeatures()", + "norm_label": ".get()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_receive", - "label": "receive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "receive()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_registermessagehandler", - "label": "registerMessageHandler()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_emplace", + "label": ".emplace()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "registermessagehandler()", + "norm_label": ".emplace()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_remove", - "label": "remove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_la_refreshviews", + "label": "._refreshViews()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "remove()", + "norm_label": "._refreshviews()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removeimage", - "label": "removeImage()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textanchor", + "label": ".textAnchor()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "removeimage()", + "norm_label": ".textanchor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removelayer", - "label": "removeLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset0", + "label": ".textOffset0()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "removelayer()", + "norm_label": ".textoffset0()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesource", - "label": "removeSource()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qa_textoffset1", + "label": ".textOffset1()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 77, + "community_name": "da", "file_type": "code", - "norm_label": "removesource()", + "norm_label": ".textoffset1()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesprite", - "label": "removeSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_clearstencil", + "label": ".clearStencil()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "removesprite()", + "norm_label": ".clearstencil()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_repaint", - "label": "repaint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_depthmodeforsublayer", + "label": ".depthModeForSublayer()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "repaint()", + "norm_label": ".depthmodeforsublayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_resizecanvas", - "label": "_resizeCanvas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_destroy", + "label": ".destroy()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "_resizecanvas()", + "norm_label": ".destroy()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rs", - "label": "Rs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluate", + "label": ".evaluate()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "rs()", + "norm_label": ".evaluate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_set", - "label": "set()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_evaluatewithouterrorhandling", + "label": ".evaluateWithoutErrorHandling()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "set()", + "norm_label": ".evaluatewithouterrorhandling()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setfilter", - "label": "setFilter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_ispatternmissing", + "label": ".isPatternMissing()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "setfilter()", + "norm_label": ".ispatternmissing()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setglyphs", - "label": "setGlyphs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_opaquepassenabledforlayer", + "label": ".opaquePassEnabledForLayer()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "setglyphs()", + "norm_label": ".opaquepassenabledforlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlayerzoomrange", - "label": "setLayerZoomRange()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_overlimit", + "label": ".overLimit()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "setlayerzoomrange()", + "norm_label": ".overlimit()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlight", - "label": "setLight()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_resize", + "label": ".resize()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "setlight()", + "norm_label": ".resize()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setrenderworldcopies", - "label": "setRenderWorldCopies()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_setbasestate", + "label": ".setBaseState()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "setrenderworldcopies()", + "norm_label": ".setbasestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setsky", - "label": "setSky()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilconfigforoverlap", + "label": ".stencilConfigForOverlap()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "setsky()", + "norm_label": ".stencilconfigforoverlap()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setsprite", - "label": "setSprite()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_stencilmodefor3d", + "label": ".stencilModeFor3D()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 78, + "community_name": "Tn", "file_type": "code", - "norm_label": "setsprite()", + "norm_label": ".stencilmodefor3d()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setstate", - "label": "setState()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_setsky", + "label": ".setSky()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "setstate()", + "norm_label": ".setsky()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setstyle", - "label": "setStyle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_d_updatetransitions", + "label": ".updateTransitions()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "setstyle()", + "norm_label": ".updatetransitions()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_settransformrequest", - "label": "setTransformRequest()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addlayer", + "label": ".addLayer()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "settransformrequest()", + "norm_label": ".addlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setupcontainer", - "label": "_setupContainer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addsource", + "label": ".addSource()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_setupcontainer()", + "norm_label": ".addsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setuppainter", - "label": "_setupPainter()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_addsprite", + "label": ".addSprite()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_setuppainter()", + "norm_label": ".addsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_showcollisionboxes", - "label": "showCollisionBoxes()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_checkloaded", + "label": "._checkLoaded()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "showcollisionboxes()", + "norm_label": "._checkloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_showoverdrawinspector", - "label": "showOverdrawInspector()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "showoverdrawinspector()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_showpadding", - "label": "showPadding()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_eachchild", + "label": ".eachChild()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "showpadding()", + "norm_label": ".eachchild()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_showtileboundaries", - "label": "showTileBoundaries()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_generatecollisionboxes", + "label": "._generateCollisionBoxes()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "showtileboundaries()", + "norm_label": "._generatecollisionboxes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sl", - "label": "Sl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_geometry", + "label": ".geometry()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "sl()", + "norm_label": ".geometry()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_resolvedlocale", - "label": ".resolvedLocale()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getfeaturestate", + "label": ".getFeatureState()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".resolvedlocale()", + "norm_label": ".getfeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_togeojson", - "label": "toGeoJSON()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getfilter", + "label": ".getFilter()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "togeojson()", + "norm_label": ".getfilter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_triggerrepaint", - "label": "triggerRepaint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getglyphs", + "label": ".getGlyphs()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "triggerrepaint()", + "norm_label": ".getglyphs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_fromlnglat", - "label": ".fromLngLat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getglyphsurl", + "label": ".getGlyphsUrl()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".fromlnglat()", + "norm_label": ".getglyphsurl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_toaltitude", - "label": ".toAltitude()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getimage", + "label": ".getImage()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".toaltitude()", + "norm_label": ".getimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_up", - "label": "_up()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getimages", + "label": ".getImages()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_up()", + "norm_label": ".getimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_update", - "label": "_update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayer", + "label": ".getLayer()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_update()", + "norm_label": ".getlayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_updatediff", - "label": "_updateDiff()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayersorder", + "label": ".getLayersOrder()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_updatediff()", + "norm_label": ".getlayersorder()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_updatestyle", - "label": "_updateStyle()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlayoutproperty", + "label": ".getLayoutProperty()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_updatestyle()", + "norm_label": ".getlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_validatebounds", - "label": ".validateBounds()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getlight", + "label": ".getLight()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".validatebounds()", + "norm_label": ".getlight()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vertices", - "label": "vertices()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getoperationstoperform", + "label": "._getOperationsToPerform()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "vertices()", + "norm_label": "._getoperationstoperform()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vl", - "label": "Vl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getpaintproperty", + "label": ".getPaintProperty()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "vl()", + "norm_label": ".getpaintproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vo", - "label": "vo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsky", + "label": ".getSky()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "vo()", + "norm_label": ".getsky()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wh", - "label": "wh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsource", + "label": ".getSource()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "wh()", + "norm_label": ".getsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wl", - "label": "Wl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_getsprite", + "label": ".getSprite()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "wl()", + "norm_label": ".getsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_workercount", - "label": "workerCount()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_id", + "label": ".id()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "workercount()", + "norm_label": ".id()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wu", - "label": "Wu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_listimages", + "label": ".listImages()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "wu()", + "norm_label": ".listimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_toarray", - "label": ".toArray()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_loaded", + "label": ".loaded()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".toarray()", + "norm_label": ".loaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xh", - "label": "xh()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_movelayer", + "label": ".moveLayer()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "xh()", + "norm_label": ".movelayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_addto", - "label": ".addTo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_properties", + "label": ".properties()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".addto()", + "norm_label": ".properties()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setdraggable", - "label": ".setDraggable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_reloadsource", + "label": "._reloadSource()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".setdraggable()", + "norm_label": "._reloadsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xl", - "label": "Xl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removefeaturestate", + "label": ".removeFeatureState()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "xl()", + "norm_label": ".removefeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yu", - "label": "Yu()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_removesprite", + "label": ".removeSprite()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "yu()", + "norm_label": ".removesprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zl", - "label": "zl()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_resetupdates", + "label": "._resetUpdates()", "_callable": true, "_origin": "ast", - "community": 8, - "community_name": "$", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "zl()", + "norm_label": "._resetupdates()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_api_test_cellpy_config_diagnostics_endpoint", - "label": "test_cellpy_config_diagnostics_endpoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serialize", + "label": ".serialize()", "_callable": true, "_origin": "ast", - "community": 80, - "community_name": "essential", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_cellpy_config_diagnostics_endpoint()", - "source_file": "tests/test_api.py", - "source_location": "L73" + "norm_label": ".serialize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_examples", - "label": "test_examples()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serializebyids", + "label": "._serializeByIds()", "_callable": true, "_origin": "ast", - "community": 80, - "community_name": "essential", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_examples()", - "source_file": "tests/test_api.py", - "source_location": "L143" + "norm_label": "._serializebyids()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_healthz", - "label": "test_healthz()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_serializedalllayers", + "label": "._serializedAllLayers()", "_callable": true, "_origin": "ast", - "community": 80, - "community_name": "essential", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_healthz()", - "source_file": "tests/test_api.py", - "source_location": "L36" + "norm_label": "._serializedalllayers()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_served_instance_refuses_paths_outside_its_data_dir", - "label": "test_served_instance_refuses_paths_outside_its_data_dir()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setfilter", + "label": ".setFilter()", "_callable": true, "_origin": "ast", - "community": 80, - "community_name": "essential", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_served_instance_refuses_paths_outside_its_data_dir()", - "source_file": "tests/test_api.py", - "source_location": "L745" + "norm_label": ".setfilter()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_served_instance_will_not_load_files_from_the_host", - "label": "test_served_instance_will_not_load_files_from_the_host()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setgeojsonsourcedata", + "label": ".setGeoJSONSourceData()", "_callable": true, "_origin": "ast", - "community": 80, - "community_name": "essential", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_served_instance_will_not_load_files_from_the_host()", - "source_file": "tests/test_api.py", - "source_location": "L761" + "norm_label": ".setgeojsonsourcedata()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_token_required", - "label": "test_token_required()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setglyphs", + "label": ".setGlyphs()", "_callable": true, "_origin": "ast", - "community": 80, - "community_name": "essential", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_token_required()", - "source_file": "tests/test_api.py", - "source_location": "L122" + "norm_label": ".setglyphs()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_config_settings_max_files", - "label": ".max_files()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayerzoomrange", + "label": ".setLayerZoomRange()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".max_files()", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L70" + "norm_label": ".setlayerzoomrange()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_get", - "label": "_get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlayoutproperty", + "label": ".setLayoutProperty()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_get()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L349" + "norm_label": ".setlayoutproperty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_load_raw", - "label": "load_raw()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setlight", + "label": ".setLight()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "load_raw()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L242" + "norm_label": ".setlight()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_files_expand_paths", - "label": "expand_paths()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setpaintproperty", + "label": ".setPaintProperty()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "expand_paths()", - "source_file": "src/cellpy_simple_gui/core/files.py", - "source_location": "L44" + "norm_label": ".setpaintproperty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_files_is_glob", - "label": "is_glob()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsky", + "label": ".setSky()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "is_glob()", - "source_file": "src/cellpy_simple_gui/core/files.py", - "source_location": "L40" + "norm_label": ".setsky()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_contains", - "label": "_contains()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setsprite", + "label": ".setSprite()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_contains()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L74" + "norm_label": ".setsprite()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_describe_mode", - "label": "describe_mode()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_setstate", + "label": ".setState()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "describe_mode()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L176" + "norm_label": ".setstate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_expand_glob", - "label": "expand_glob()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_unloadsprite", + "label": "._unloadSprite()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "expand_glob()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L143" + "norm_label": "._unloadsprite()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_host_paths_allowed", - "label": "host_paths_allowed()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_update", + "label": ".update()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "host_paths_allowed()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L58" + "norm_label": ".update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_is_remote_uri", - "label": "is_remote_uri()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateimage", + "label": ".updateImage()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "is_remote_uri()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L43" + "norm_label": ".updateimage()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_refused", - "label": "_refused()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatelayer", + "label": "._updateLayer()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_refused()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L99" + "norm_label": "._updatelayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_remote_paths_allowed", - "label": "remote_paths_allowed()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatesources", + "label": "._updateSources()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "remote_paths_allowed()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L49" + "norm_label": "._updatesources()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_resolve_input", - "label": "resolve_input()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updatetilesforchangedimages", + "label": "._updateTilesForChangedImages()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "resolve_input()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L110" + "norm_label": "._updatetilesforchangedimages()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_same_volume", - "label": "_same_volume()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_updateworkerlayers", + "label": "._updateWorkerLayers()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "_same_volume()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L81" + "norm_label": "._updateworkerlayers()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_paths_sandbox_root", - "label": "sandbox_root()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validate", + "label": "._validate()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "sandbox_root()", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L67" + "norm_label": "._validate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_reference_test_the_reference_and_the_skill_copy_are_byte_identical", - "label": "test_the_reference_and_the_skill_copy_are_byte_identical()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_de_validatelayer", + "label": "._validateLayer()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_the_reference_and_the_skill_copy_are_byte_identical()", - "source_file": "tests/test_api_reference.py", - "source_location": "L97" + "norm_label": "._validatelayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_files_test_dedup", - "label": "test_dedup()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_pause", + "label": ".pause()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_dedup()", - "source_file": "tests/test_files.py", - "source_location": "L50" + "norm_label": ".pause()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_files_test_glob_match_and_cap", - "label": "test_glob_match_and_cap()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dt_setdependencies", + "label": ".setDependencies()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_glob_match_and_cap()", - "source_file": "tests/test_files.py", - "source_location": "L33" + "norm_label": ".setdependencies()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_files_test_glob_no_match", - "label": "test_glob_no_match()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getglyphs", + "label": "getGlyphs()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_glob_no_match()", - "source_file": "tests/test_files.py", - "source_location": "L27" + "norm_label": "getglyphs()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_files_test_literal_found", - "label": "test_literal_found()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayer", + "label": "getLayer()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_literal_found()", - "source_file": "tests/test_files.py", - "source_location": "L18" + "norm_label": "getlayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_files_test_literal_missing", - "label": "test_literal_missing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayoutproperty", + "label": "getLayoutProperty()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_literal_missing()", - "source_file": "tests/test_files.py", - "source_location": "L11" + "norm_label": "getlayoutproperty()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_files_test_total_equals_paths_when_not_capped", - "label": "test_total_equals_paths_when_not_capped()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmapid", + "label": "_getMapId()", "_callable": true, "_origin": "ast", - "community": 83, - "community_name": "expand_paths", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_total_equals_paths_when_not_capped()", - "source_file": "tests/test_files.py", - "source_location": "L43" + "norm_label": "_getmapid()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_layout", - "label": "layout()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsource", + "label": "getSource()", "_callable": true, "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "layout()", + "norm_label": "getsource()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_api_test_load_and_plot_flow", - "label": "test_load_and_plot_flow()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_issourceloaded", + "label": "isSourceLoaded()", "_callable": true, "_origin": "ast", - "community": 85, - "community_name": "Issue #48 \u2014 create gui tests (plan)", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": "test_load_and_plot_flow()", - "source_file": "tests/test_api.py", - "source_location": "L150" + "norm_label": "issourceloaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ce_generate", - "label": ".generate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_it_onremove", + "label": ".onRemove()", "_callable": true, "_origin": "ast", - "community": 87, - "community_name": ".addBucket", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".generate()", + "norm_label": ".onremove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_he_addlayer", - "label": ".addLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_addimage", + "label": ".addImage()", "_callable": true, "_origin": "ast", - "community": 87, - "community_name": ".addBucket", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".addlayer()", + "norm_label": ".addimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_findmatches", - "label": ".findMatches()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_loaded", + "label": "loaded()", "_callable": true, "_origin": "ast", - "community": 87, - "community_name": ".addBucket", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".findmatches()", + "norm_label": "loaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_getcrosstileidslists", - "label": ".getCrossTileIDsLists()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_oa_setlayoutproperty", + "label": ".setLayoutProperty()", "_callable": true, "_origin": "ast", - "community": 87, - "community_name": ".addBucket", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".getcrosstileidslists()", + "norm_label": ".setlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_le_getscaledcoordinates", - "label": ".getScaledCoordinates()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_p_setlight", + "label": ".setLight()", "_callable": true, "_origin": "ast", - "community": 87, - "community_name": ".addBucket", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".getscaledcoordinates()", + "norm_label": ".setlight()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_addbucket", - "label": ".addBucket()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removefeaturestate", + "label": "removeFeatureState()", "_callable": true, "_origin": "ast", - "community": 87, - "community_name": ".addBucket", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".addbucket()", + "norm_label": "removefeaturestate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_handlewrapjump", - "label": ".handleWrapJump()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlayoutproperty", + "label": "setLayoutProperty()", "_callable": true, "_origin": "ast", - "community": 87, - "community_name": ".addBucket", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".handlewrapjump()", + "norm_label": "setlayoutproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_removebucketcrosstileids", - "label": ".removeBucketCrossTileIDs()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setpaintproperty", + "label": "setPaintProperty()", "_callable": true, "_origin": "ast", - "community": 87, - "community_name": ".addBucket", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".removebucketcrosstileids()", + "norm_label": "setpaintproperty()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ue_removestalebuckets", - "label": ".removeStaleBuckets()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tt_setdata", + "label": ".setData()", "_callable": true, "_origin": "ast", - "community": 87, - "community_name": ".addBucket", + "community": 79, + "community_name": "de", "file_type": "code", - "norm_label": ".removestalebuckets()", + "norm_label": ".setdata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "examples_starter_app_state", - "label": "state()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_accesstoken", + "label": "accessToken()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "state()", - "source_file": "examples/starter/app.py", - "source_location": "L221" + "norm_label": "accesstoken()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta", - "label": "read_meta()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addcontrol", + "label": "addControl()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "read_meta()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L493" + "norm_label": "addcontrol()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta_num", - "label": "_num()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addimage", + "label": "addImage()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "_num()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L502" + "norm_label": "addimage()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_read_meta_safe", - "label": "_safe()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addlayer", + "label": "addLayer()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "_safe()", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L496" + "norm_label": "addlayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_cellrecord_apply_physical_meta", - "label": "._apply_physical_meta()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_addsprite", + "label": "addSprite()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._apply_physical_meta()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L93" + "norm_label": "addsprite()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", - "label": ".to_meta()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_aretilesloaded", + "label": "areTilesLoaded()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".to_meta()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L76" + "norm_label": "aretilesloaded()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_file_stat", - "label": "file_stat()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_baseapiurl", + "label": "baseApiUrl()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "file_stat()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L30" + "norm_label": "baseapiurl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_add_cell", - "label": ".add_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_cc", + "label": "Cc()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".add_cell()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L115" + "norm_label": "cc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_all", - "label": ".all()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ch", + "label": "ch()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".all()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L275" + "norm_label": "ch()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_clear", - "label": ".clear()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_clearmetrics", + "label": "clearMetrics()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".clear()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L259" + "norm_label": "clearmetrics()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_get", - "label": ".get()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_createdelegatedlistener", + "label": "_createDelegatedListener()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".get()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L271" + "norm_label": "_createdelegatedlistener()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_init", - "label": ".__init__()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_devicepixelratio", + "label": "devicePixelRatio()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".__init__()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L106" + "norm_label": "devicepixelratio()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_is_empty", - "label": ".is_empty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_diffstyle", + "label": "_diffStyle()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".is_empty()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L286" + "norm_label": "_diffstyle()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_len", - "label": ".__len__()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_dl", + "label": "Dl()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".__len__()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L283" + "norm_label": "dl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_mark_clean", - "label": "._mark_clean()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_down", + "label": "_down()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._mark_clean()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L223" + "norm_label": "_down()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_mark_saved", - "label": ".mark_saved()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_draw", + "label": "draw()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".mark_saved()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L229" + "norm_label": "draw()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_metas", - "label": ".metas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_doescharsupportlocalglyph", + "label": "._doesCharSupportLocalGlyph()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".metas()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L289" + "norm_label": "._doescharsupportlocalglyph()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_n_groups", - "label": ".n_groups()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_getandcacheglyphspromise", + "label": "._getAndCacheGlyphsPromise()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".n_groups()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L292" + "norm_label": "._getandcacheglyphspromise()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_remove", - "label": ".remove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_e_tinysdf", + "label": "._tinySDF()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".remove()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L255" + "norm_label": "._tinysdf()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_restore_cell", - "label": ".restore_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_events_url", + "label": "EVENTS_URL()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".restore_cell()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L138" + "norm_label": "events_url()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_reusable_data_file", - "label": ".reusable_data_file()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fh", + "label": "fh()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".reusable_data_file()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L236" + "norm_label": "fh()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_selected", - "label": ".selected()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_frame", + "label": "frame()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".selected()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L279" + "norm_label": "frame()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_set_selection", - "label": ".set_selection()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_fu", + "label": "Fu()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".set_selection()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L265" + "norm_label": "fu()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_library_library_update", - "label": ".update()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gc", + "label": "gc()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".update()", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L183" + "norm_label": "gc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_api_test_edit_cell", - "label": "test_edit_cell()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getbounds", + "label": "getBounds()", "_callable": true, "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "test_edit_cell()", - "source_file": "tests/test_api.py", - "source_location": "L210" + "norm_label": "getbounds()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_renderlayer", - "label": ".renderLayer()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcameratargetelevation", + "label": "getCameraTargetElevation()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".renderlayer()", + "norm_label": "getcameratargetelevation()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcanvas", + "label": "getCanvas()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "getcanvas()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_hasoffscreenpass", - "label": ".hasOffscreenPass()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcanvascontainer", + "label": "getCanvasContainer()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".hasoffscreenpass()", + "norm_label": "getcanvascontainer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_hastransition", - "label": ".hasTransition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcontainer", + "label": "getContainer()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".hastransition()", + "norm_label": "getcontainer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_is3d", - "label": ".is3D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getdefaultposition", + "label": "getDefaultPosition()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".is3d()", + "norm_label": "getdefaultposition()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_recalculate", - "label": ".recalculate()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getfilter", + "label": "getFilter()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".recalculate()", + "norm_label": "getfilter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_serialize", - "label": ".serialize()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimagecanvascontext", + "label": "getImageCanvasContext()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".serialize()", + "norm_label": "getimagecanvascontext()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_updatetransitions", - "label": ".updateTransitions()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getimagedata", + "label": "getImageData()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".updatetransitions()", + "norm_label": "getimagedata()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_render", - "label": ".render()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlayersorder", + "label": "getLayersOrder()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".render()", + "norm_label": "getlayersorder()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_ishidden", - "label": ".isHidden()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getlight", + "label": "getLight()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".ishidden()", + "norm_label": "getlight()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_commit", - "label": ".commit()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxbounds", + "label": "getMaxBounds()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".commit()", + "norm_label": "getmaxbounds()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_symbolfadechange", - "label": ".symbolFadeChange()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxpitch", + "label": "getMaxPitch()", "_callable": true, "_origin": "ast", - "community": 89, - "community_name": ".render", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".symbolfadechange()", + "norm_label": "getmaxpitch()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_panel_label", - "label": "_panel_label()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getmaxzoom", + "label": "getMaxZoom()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "_panel_label()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L365" + "norm_label": "getmaxzoom()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_summary_columns_for", - "label": "summary_columns_for()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getminpitch", + "label": "getMinPitch()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "summary_columns_for()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L316" + "norm_label": "getminpitch()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_summary_panels_for", - "label": "summary_panels_for()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getminzoom", + "label": "getMinZoom()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "summary_panels_for()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L437" + "norm_label": "getminzoom()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_collect_summary_y_label_mapper", - "label": "summary_y_label_mapper()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getperformancemetrics", + "label": "getPerformanceMetrics()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "summary_y_label_mapper()", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L432" + "norm_label": "getperformancemetrics()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_core_plotting_summary_figure", - "label": "summary_figure()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getpluginurl", + "label": "getPluginURL()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "summary_figure()", - "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L27" + "norm_label": "getpluginurl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", - "label": "test_cycles_figure_forwards_group_legend_muting()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getrenderworldcopies", + "label": "getRenderWorldCopies()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "test_cycles_figure_forwards_group_legend_muting()", - "source_file": "tests/test_core.py", - "source_location": "L171" + "norm_label": "getrenderworldcopies()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting_spy", - "label": "spy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getrtltextpluginstatus", + "label": "getRTLTextPluginStatus()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "spy()", - "source_file": "tests/test_core.py", - "source_location": "L176" + "norm_label": "getrtltextpluginstatus()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_group_average_keeps_singleton_traces", - "label": "test_group_average_keeps_singleton_traces()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsky", + "label": "getSky()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "test_group_average_keeps_singleton_traces()", - "source_file": "tests/test_core.py", - "source_location": "L611" + "norm_label": "getsky()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_non_spread_hover_is_left_to_cellpy", - "label": "test_non_spread_hover_is_left_to_cellpy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getsprite", + "label": "getSprite()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "test_non_spread_hover_is_left_to_cellpy()", - "source_file": "tests/test_core.py", - "source_location": "L918" + "norm_label": "getsprite()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_summary_figure_export_svg", - "label": "test_summary_figure_export_svg()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getstate", + "label": "getState()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "test_summary_figure_export_svg()", - "source_file": "tests/test_core.py", - "source_location": "L1376" + "norm_label": "getstate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_summary_figure_forwards_group_legend_muting", - "label": "test_summary_figure_forwards_group_legend_muting()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getstyle", + "label": "getStyle()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "test_summary_figure_forwards_group_legend_muting()", - "source_file": "tests/test_core.py", - "source_location": "L150" + "norm_label": "getstyle()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_summary_figure_forwards_group_legend_muting_spy", - "label": "spy()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getterrain", + "label": "getTerrain()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "spy()", - "source_file": "tests/test_core.py", - "source_location": "L155" + "norm_label": "getterrain()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_summary_figure_safe_color_scheme", - "label": "test_summary_figure_safe_color_scheme()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getuistring", + "label": "_getUIString()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "test_summary_figure_safe_color_scheme()", - "source_file": "tests/test_core.py", - "source_location": "L817" + "norm_label": "_getuistring()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "tests_test_core_test_summary_panels_for_capacity_ce", - "label": "test_summary_panels_for_capacity_ce()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gl", + "label": "Gl()", "_callable": true, "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "test_summary_panels_for_capacity_ce()", - "source_file": "tests/test_core.py", - "source_location": "L1238" + "norm_label": "gl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_constructor", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gn_constructor", "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 90, - "community_name": "Hl", + "community": 8, + "community_name": "$", "file_type": "code", "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_createbucket", - "label": ".createBucket()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gu", + "label": "Gu()", "_callable": true, "_origin": "ast", - "community": 90, - "community_name": "Hl", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".createbucket()", + "norm_label": "gu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_is3d", - "label": ".is3D()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hascontrol", + "label": "hasControl()", "_callable": true, "_origin": "ast", - "community": 90, - "community_name": "Hl", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".is3d()", + "norm_label": "hascontrol()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryintersectsfeature", - "label": ".queryIntersectsFeature()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hh", + "label": "hh()", "_callable": true, "_origin": "ast", - "community": 90, - "community_name": "Hl", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".queryintersectsfeature()", + "norm_label": "hh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_queryradius", - "label": ".queryRadius()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_hl_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 90, - "community_name": "Hl", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".queryradius()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ql", - "label": "ql()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_isstyleloaded", + "label": "isStyleLoaded()", "_callable": true, "_origin": "ast", - "community": 90, - "community_name": "Hl", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "ql()", + "norm_label": "isstyleloaded()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tc", - "label": "tc()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_iu", + "label": "iu()", "_callable": true, "_origin": "ast", - "community": 90, - "community_name": "Hl", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "tc()", + "norm_label": "iu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "tests_test_api_test_app_js_parses", - "label": "test_app_js_parses()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jc", + "label": "jc()", "_callable": true, "_origin": "ast", - "community": 91, - "community_name": "Original issue text", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "test_app_js_parses()", - "source_file": "tests/test_api.py", - "source_location": "L453" + "norm_label": "jc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_i", - "label": "i()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_jn_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "i()", + "norm_label": ".constructor()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_isbelowthreshold", - "label": "._isBelowThreshold()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_feature", + "label": ".feature()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._isbelowthreshold()", + "norm_label": ".feature()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_move", - "label": "._move()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_k_getimage", + "label": ".getImage()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._move()", + "norm_label": ".getimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_n", - "label": "n()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_kc", + "label": "Kc()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "n()", + "norm_label": "kc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lazyinitemptystyle", + "label": "_lazyInitEmptyStyle()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".reset()", + "norm_label": "_lazyinitemptystyle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ci_start", - "label": "._start()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_listimages", + "label": "listImages()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._start()", + "norm_label": "listimages()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_getcanvas", - "label": "getCanvas()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_lu", + "label": "lu()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "getcanvas()", + "norm_label": "lu()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_renderframe", - "label": ".renderFrame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_maxparallelimagerequests", + "label": "maxParallelImageRequests()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".renderframe()", + "norm_label": "maxparallelimagerequests()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_smoothouteasing", - "label": "._smoothOutEasing()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mh", + "label": "mh()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._smoothouteasing()", + "norm_label": "mh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_start", - "label": "._start()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ml", + "label": "Ml()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._start()", + "norm_label": "ml()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_disable", - "label": ".disable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_mn_equals", + "label": ".equals()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".disable()", + "norm_label": ".equals()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_enable", - "label": ".enable()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_movelayer", + "label": "moveLayer()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".enable()", + "norm_label": "movelayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_getdefaultposition", - "label": ".getDefaultPosition()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_onadd", + "label": "onAdd()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".getdefaultposition()", + "norm_label": "onadd()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ou", + "label": "ou()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": "ou()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_isenabled", - "label": ".isEnabled()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_pc", + "label": "Pc()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".isenabled()", + "norm_label": "pc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_o", - "label": "o()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_peek", + "label": "peek()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "o()", + "norm_label": "peek()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_onremove", - "label": ".onRemove()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ph", + "label": "ph()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".onremove()", + "norm_label": "ph()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_prefersreducedmotion", + "label": "prefersReducedMotion()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".reset()", + "norm_label": "prefersreducedmotion()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_s", - "label": "s()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_qh", + "label": "qh()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "s()", + "norm_label": "qh()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchcancel", - "label": ".touchcancel()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ql", + "label": "ql()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".touchcancel()", + "norm_label": "ql()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchstart", - "label": ".touchstart()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_queryrenderedfeatures", + "label": "queryRenderedFeatures()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".touchstart()", + "norm_label": "queryrenderedfeatures()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_iszooming", - "label": "isZooming()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_registermessagehandler", + "label": "registerMessageHandler()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "iszooming()", + "norm_label": "registermessagehandler()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_nn_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_remove", + "label": "remove()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "remove()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_getpoint", - "label": ".getPoint()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removeimage", + "label": "removeImage()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".getpoint()", + "norm_label": "removeimage()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_getscale", - "label": ".getScale()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removelayer", + "label": "removeLayer()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".getscale()", + "norm_label": "removelayer()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_mousepos", - "label": ".mousePos()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_removesprite", + "label": "removeSprite()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".mousepos()", + "norm_label": "removesprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_o_touchpos", - "label": ".touchPos()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_repaint", + "label": "repaint()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".touchpos()", + "norm_label": "repaint()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_add", - "label": "._add()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_rs", + "label": "Rs()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._add()", + "norm_label": "rs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_adddefaulthandlers", - "label": "._addDefaultHandlers()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sc", + "label": "Sc()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._adddefaulthandlers()", + "norm_label": "sc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_applychanges", - "label": "._applyChanges()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_set", + "label": "set()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._applychanges()", + "norm_label": "set()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_blockedbyactive", - "label": "._blockedByActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setfilter", + "label": "setFilter()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._blockedbyactive()", + "norm_label": "setfilter()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_constructor", - "label": ".constructor()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setglyphs", + "label": "setGlyphs()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".constructor()", + "norm_label": "setglyphs()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_fireevent", - "label": "._fireEvent()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlayerzoomrange", + "label": "setLayerZoomRange()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._fireevent()", + "norm_label": "setlayerzoomrange()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_fireevents", - "label": "._fireEvents()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setlight", + "label": "setLight()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._fireevents()", + "norm_label": "setlight()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_getmaptouches", - "label": "._getMapTouches()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setrenderworldcopies", + "label": "setRenderWorldCopies()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._getmaptouches()", + "norm_label": "setrenderworldcopies()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_isactive", - "label": ".isActive()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setsky", + "label": "setSky()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".isactive()", + "norm_label": "setsky()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_ismoving", - "label": ".isMoving()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setsprite", + "label": "setSprite()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".ismoving()", + "norm_label": "setsprite()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_isrotating", - "label": ".isRotating()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setstate", + "label": "setState()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".isrotating()", + "norm_label": "setstate()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_iszooming", - "label": ".isZooming()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_setstyle", + "label": "setStyle()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".iszooming()", + "norm_label": "setstyle()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_mergehandlerresult", - "label": ".mergeHandlerResult()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_settransformrequest", + "label": "setTransformRequest()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".mergehandlerresult()", + "norm_label": "settransformrequest()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_requestframe", - "label": "._requestFrame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_showcollisionboxes", + "label": "showCollisionBoxes()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._requestframe()", + "norm_label": "showcollisionboxes()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_reset", - "label": ".reset()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_showoverdrawinspector", + "label": "showOverdrawInspector()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".reset()", + "norm_label": "showoverdrawinspector()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_start", - "label": "._start()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_showpadding", + "label": "showPadding()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._start()", + "norm_label": "showpadding()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_stop", - "label": ".stop()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_showtileboundaries", + "label": "showTileBoundaries()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".stop()", + "norm_label": "showtileboundaries()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_triggerrenderframe", - "label": "._triggerRenderFrame()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_sl", + "label": "Sl()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "._triggerrenderframe()", + "norm_label": "sl()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_unproject", - "label": "unproject()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_t_resolvedlocale", + "label": ".resolvedLocale()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "unproject()", + "norm_label": ".resolvedlocale()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xn_touchend", - "label": ".touchend()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tc", + "label": "tc()", "_callable": true, "_origin": "ast", - "community": 94, - "community_name": "ii", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": ".touchend()", + "norm_label": "tc()", "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ae", - "label": "Ae()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_togeojson", + "label": "toGeoJSON()", "_callable": true, "_origin": "ast", - "community": 95, - "community_name": "alpine.min.js", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "ae()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L1" + "norm_label": "togeojson()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ar", - "label": "ar()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_triggerrepaint", + "label": "triggerRepaint()", "_callable": true, "_origin": "ast", - "community": 95, - "community_name": "alpine.min.js", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "ar()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "triggerrepaint()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_bi", - "label": "bi()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_fromlnglat", + "label": ".fromLngLat()", "_callable": true, "_origin": "ast", - "community": 95, - "community_name": "alpine.min.js", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "bi()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".fromlnglat()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_c", - "label": "C()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_u_toaltitude", + "label": ".toAltitude()", "_callable": true, "_origin": "ast", - "community": 95, - "community_name": "alpine.min.js", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "c()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".toaltitude()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_cr", - "label": "cr()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uh_clone", + "label": ".clone()", "_callable": true, "_origin": "ast", - "community": 95, - "community_name": "alpine.min.js", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "cr()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".clone()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_deleteproperty", - "label": "deleteProperty()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_uh_constructor", + "label": ".constructor()", "_callable": true, "_origin": "ast", - "community": 95, - "community_name": "alpine.min.js", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "deleteproperty()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_effect", - "label": "effect()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_up", + "label": "_up()", "_callable": true, "_origin": "ast", - "community": 95, - "community_name": "alpine.min.js", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "effect()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "_up()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_eo", - "label": "eo()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_update", + "label": "_update()", "_callable": true, "_origin": "ast", - "community": 95, - "community_name": "alpine.min.js", + "community": 8, + "community_name": "$", "file_type": "code", - "norm_label": "eo()", - "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", - "source_location": "L5" + "norm_label": "_update()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "src_cellpy_simple_gui_web_static_js_alpine_min_gt", - "label": "Gt()", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_updatediff", + "label": "_updateDiff()", "_callable": true, "_origin": "ast", - "community": 95, - "community_name": "alpine.min.js", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "_updatediff()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_updatestyle", + "label": "_updateStyle()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "_updatestyle()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vertices", + "label": "vertices()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "vertices()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vh", + "label": "Vh()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "vh()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vl", + "label": "Vl()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "vl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_vo", + "label": "vo()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "vo()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wl", + "label": "Wl()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "wl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_workercount", + "label": "workerCount()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "workercount()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wu", + "label": "Wu()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "wu()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_x_toarray", + "label": ".toArray()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": ".toarray()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_addto", + "label": ".addTo()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": ".addto()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xi_setdraggable", + "label": ".setDraggable()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": ".setdraggable()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_xl", + "label": "Xl()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "xl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yh", + "label": "yh()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "yh()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_yu", + "label": "Yu()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "yu()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zc", + "label": "zc()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "zc()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_zl", + "label": "zl()", + "_callable": true, + "_origin": "ast", + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "zl()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_layout", + "label": "layout()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "layout()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "tests_test_core_test_cycles_collector_layouts", + "label": "test_cycles_collector_layouts()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "test_cycles_collector_layouts()", + "source_file": "tests/test_core.py", + "source_location": "L404" + }, + { + "id": "tests_test_core_test_cycles_collector_xy_ranges_per_cycle", + "label": "test_cycles_collector_xy_ranges_per_cycle()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "test_cycles_collector_xy_ranges_per_cycle()", + "source_file": "tests/test_core.py", + "source_location": "L282" + }, + { + "id": "tests_test_core_test_cycles_export_follows_curve_kind", + "label": "test_cycles_export_follows_curve_kind()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "test_cycles_export_follows_curve_kind()", + "source_file": "tests/test_core.py", + "source_location": "L246" + }, + { + "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", + "label": "test_cycles_figure_forwards_group_legend_muting()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "test_cycles_figure_forwards_group_legend_muting()", + "source_file": "tests/test_core.py", + "source_location": "L171" + }, + { + "id": "tests_test_core_test_cycles_figure_forwards_group_legend_muting_spy", + "label": "spy()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "spy()", + "source_file": "tests/test_core.py", + "source_location": "L176" + }, + { + "id": "tests_test_core_test_cycles_figure_xy_ranges", + "label": "test_cycles_figure_xy_ranges()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "test_cycles_figure_xy_ranges()", + "source_file": "tests/test_core.py", + "source_location": "L259" + }, + { + "id": "tests_test_core_test_cycles_figure_xy_ranges_one_sided", + "label": "test_cycles_figure_xy_ranges_one_sided()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "test_cycles_figure_xy_ranges_one_sided()", + "source_file": "tests/test_core.py", + "source_location": "L300" + }, + { + "id": "tests_test_core_test_cycles_film_layout_is_a_density_plot", + "label": "test_cycles_film_layout_is_a_density_plot()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "test_cycles_film_layout_is_a_density_plot()", + "source_file": "tests/test_core.py", + "source_location": "L213" + }, + { + "id": "tests_test_core_test_cycles_pane_plots_differentials", + "label": "test_cycles_pane_plots_differentials()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "test_cycles_pane_plots_differentials()", + "source_file": "tests/test_core.py", + "source_location": "L200" + }, + { + "id": "tests_test_core_test_single_cell_cycles_figure_reports_missing", + "label": "test_single_cell_cycles_figure_reports_missing()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "test_single_cell_cycles_figure_reports_missing()", + "source_file": "tests/test_core.py", + "source_location": "L467" + }, + { + "id": "tests_test_core_test_summary_figure_forwards_group_legend_muting", + "label": "test_summary_figure_forwards_group_legend_muting()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "test_summary_figure_forwards_group_legend_muting()", + "source_file": "tests/test_core.py", + "source_location": "L150" + }, + { + "id": "tests_test_core_test_summary_figure_forwards_group_legend_muting_spy", + "label": "spy()", + "_callable": true, + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "code", + "norm_label": "spy()", + "source_file": "tests/test_core.py", + "source_location": "L155" + }, + { + "id": "src_cellpy_simple_gui_core_files_expand_paths", + "label": "expand_paths()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "expand_paths()", + "source_file": "src/cellpy_simple_gui/core/files.py", + "source_location": "L44" + }, + { + "id": "src_cellpy_simple_gui_core_files_is_glob", + "label": "is_glob()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "is_glob()", + "source_file": "src/cellpy_simple_gui/core/files.py", + "source_location": "L40" + }, + { + "id": "src_cellpy_simple_gui_core_paths_contains", + "label": "_contains()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "_contains()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L74" + }, + { + "id": "src_cellpy_simple_gui_core_paths_describe_mode", + "label": "describe_mode()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "describe_mode()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L176" + }, + { + "id": "src_cellpy_simple_gui_core_paths_expand_glob", + "label": "expand_glob()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "expand_glob()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L143" + }, + { + "id": "src_cellpy_simple_gui_core_paths_host_paths_allowed", + "label": "host_paths_allowed()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "host_paths_allowed()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L58" + }, + { + "id": "src_cellpy_simple_gui_core_paths_refused", + "label": "_refused()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "_refused()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L99" + }, + { + "id": "src_cellpy_simple_gui_core_paths_resolve_input", + "label": "resolve_input()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "resolve_input()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L110" + }, + { + "id": "src_cellpy_simple_gui_core_paths_same_volume", + "label": "_same_volume()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "_same_volume()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L81" + }, + { + "id": "src_cellpy_simple_gui_core_paths_sandbox_root", + "label": "sandbox_root()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "sandbox_root()", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L67" + }, + { + "id": "tests_test_files_test_dedup", + "label": "test_dedup()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "test_dedup()", + "source_file": "tests/test_files.py", + "source_location": "L50" + }, + { + "id": "tests_test_files_test_glob_match_and_cap", + "label": "test_glob_match_and_cap()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "test_glob_match_and_cap()", + "source_file": "tests/test_files.py", + "source_location": "L33" + }, + { + "id": "tests_test_files_test_glob_no_match", + "label": "test_glob_no_match()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "test_glob_no_match()", + "source_file": "tests/test_files.py", + "source_location": "L27" + }, + { + "id": "tests_test_files_test_literal_found", + "label": "test_literal_found()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "test_literal_found()", + "source_file": "tests/test_files.py", + "source_location": "L18" + }, + { + "id": "tests_test_files_test_literal_missing", + "label": "test_literal_missing()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "test_literal_missing()", + "source_file": "tests/test_files.py", + "source_location": "L11" + }, + { + "id": "tests_test_files_test_total_equals_paths_when_not_capped", + "label": "test_total_equals_paths_when_not_capped()", + "_callable": true, + "_origin": "ast", + "community": 83, + "community_name": "expand_paths", + "file_type": "code", + "norm_label": "test_total_equals_paths_when_not_capped()", + "source_file": "tests/test_files.py", + "source_location": "L43" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_app_api", + "label": "api()", + "_callable": true, + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "code", + "norm_label": "api()", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_app_app", + "label": "app()", + "_callable": true, + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "code", + "norm_label": "app()", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L56" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_app_loadrecent", + "label": "loadRecent()", + "_callable": true, + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "code", + "norm_label": "loadrecent()", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L46" + }, + { + "id": "tests_test_agent_docs_test_llms_full_txt_is_current", + "label": "test_llms_full_txt_is_current()", + "_callable": true, + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "code", + "norm_label": "test_llms_full_txt_is_current()", + "source_file": "tests/test_agent_docs.py", + "source_location": "L47" + }, + { + "id": "tests_test_api_test_app_js_parses", + "label": "test_app_js_parses()", + "_callable": true, + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "code", + "norm_label": "test_app_js_parses()", + "source_file": "tests/test_api.py", + "source_location": "L480" + }, + { + "id": "tests_test_api_test_index_alpine_state_is_defined", + "label": "test_index_alpine_state_is_defined()", + "_callable": true, + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "code", + "norm_label": "test_index_alpine_state_is_defined()", + "source_file": "tests/test_api.py", + "source_location": "L501" + }, + { + "id": "tests_test_api_test_edit_cell", + "label": "test_edit_cell()", + "_callable": true, + "_origin": "ast", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", + "file_type": "code", + "norm_label": "test_edit_cell()", + "source_file": "tests/test_api.py", + "source_location": "L210" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_bi_renderlayer", + "label": ".renderLayer()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".renderlayer()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_hasoffscreenpass", + "label": ".hasOffscreenPass()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".hasoffscreenpass()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_hastransition", + "label": ".hasTransition()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".hastransition()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_is3d", + "label": ".is3D()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".is3d()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_recalculate", + "label": ".recalculate()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".recalculate()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_serialize", + "label": ".serialize()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".serialize()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ju_updatetransitions", + "label": ".updateTransitions()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".updatetransitions()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_tn_render", + "label": ".render()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".render()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ut_ishidden", + "label": ".isHidden()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".ishidden()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_commit", + "label": ".commit()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".commit()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_stillrecent", + "label": ".stillRecent()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".stillrecent()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_symbolfadechange", + "label": ".symbolFadeChange()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".symbolfadechange()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_wt_zoomadjustment", + "label": ".zoomAdjustment()", + "_callable": true, + "_origin": "ast", + "community": 89, + "community_name": ".render", + "file_type": "code", + "norm_label": ".zoomadjustment()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_core_collect_figure_json", + "label": "figure_json()", + "_callable": true, + "_origin": "ast", + "community": 9, + "community_name": "summary_figure", + "file_type": "code", + "norm_label": "figure_json()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L872" + }, + { + "id": "src_cellpy_simple_gui_core_collect_stamp_warnings", + "label": "_stamp_warnings()", + "_callable": true, + "_origin": "ast", + "community": 9, + "community_name": "summary_figure", + "file_type": "code", + "norm_label": "_stamp_warnings()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L925" + }, + { + "id": "src_cellpy_simple_gui_core_collect_summary_y_label_mapper", + "label": "summary_y_label_mapper()", + "_callable": true, + "_origin": "ast", + "community": 9, + "community_name": "summary_figure", + "file_type": "code", + "norm_label": "summary_y_label_mapper()", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L453" + }, + { + "id": "src_cellpy_simple_gui_core_plotting_summary_figure", + "label": "summary_figure()", + "_callable": true, + "_origin": "ast", + "community": 9, + "community_name": "summary_figure", + "file_type": "code", + "norm_label": "summary_figure()", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L27" + }, + { + "id": "tests_test_uploads_client", + "label": "client()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "client()", + "source_file": "tests/test_uploads.py", + "source_location": "L41" + }, + { + "id": "tests_test_uploads_served", + "label": "served()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "served()", + "source_file": "tests/test_uploads.py", + "source_location": "L27" + }, + { + "id": "tests_test_uploads_test_a_file_over_the_cap_is_refused_and_leaves_nothing_behind", + "label": "test_a_file_over_the_cap_is_refused_and_leaves_nothing_behind()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_a_file_over_the_cap_is_refused_and_leaves_nothing_behind()", + "source_file": "tests/test_uploads.py", + "source_location": "L99" + }, + { + "id": "tests_test_uploads_test_a_traversing_filename_still_lands_inside", + "label": "test_a_traversing_filename_still_lands_inside()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_a_traversing_filename_still_lands_inside()", + "source_file": "tests/test_uploads.py", + "source_location": "L83" + }, + { + "id": "tests_test_uploads_test_all_rejected_is_an_error_not_a_silent_nothing", + "label": "test_all_rejected_is_an_error_not_a_silent_nothing()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_all_rejected_is_an_error_not_a_silent_nothing()", + "source_file": "tests/test_uploads.py", + "source_location": "L135" + }, + { + "id": "tests_test_uploads_test_an_empty_file_is_refused", + "label": "test_an_empty_file_is_refused()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_an_empty_file_is_refused()", + "source_file": "tests/test_uploads.py", + "source_location": "L111" + }, + { + "id": "tests_test_uploads_test_capabilities_advertise_the_cap", + "label": "test_capabilities_advertise_the_cap()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_capabilities_advertise_the_cap()", + "source_file": "tests/test_uploads.py", + "source_location": "L170" + }, + { + "id": "tests_test_uploads_test_one_rejected_file_does_not_lose_the_others", + "label": "test_one_rejected_file_does_not_lose_the_others()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_one_rejected_file_does_not_lose_the_others()", + "source_file": "tests/test_uploads.py", + "source_location": "L117" + }, + { + "id": "tests_test_uploads_test_safe_name_reduces_a_path_to_a_filename", + "label": "test_safe_name_reduces_a_path_to_a_filename()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_safe_name_reduces_a_path_to_a_filename()", + "source_file": "tests/test_uploads.py", + "source_location": "L60" + }, + { + "id": "tests_test_uploads_test_safe_name_refuses_what_is_left_of_nothing", + "label": "test_safe_name_refuses_what_is_left_of_nothing()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_safe_name_refuses_what_is_left_of_nothing()", + "source_file": "tests/test_uploads.py", + "source_location": "L67" + }, + { + "id": "tests_test_uploads_test_two_uploads_of_one_name_are_two_files", + "label": "test_two_uploads_of_one_name_are_two_files()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_two_uploads_of_one_name_are_two_files()", + "source_file": "tests/test_uploads.py", + "source_location": "L148" + }, + { + "id": "tests_test_uploads_test_upload_lands_inside_the_data_directory", + "label": "test_upload_lands_inside_the_data_directory()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_upload_lands_inside_the_data_directory()", + "source_file": "tests/test_uploads.py", + "source_location": "L72" + }, + { + "id": "tests_test_uploads_test_upload_needs_the_token", + "label": "test_upload_needs_the_token()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_upload_needs_the_token()", + "source_file": "tests/test_uploads.py", + "source_location": "L164" + }, + { + "id": "tests_test_uploads_test_usage_and_clear", + "label": "test_usage_and_clear()", + "_callable": true, + "_origin": "ast", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_usage_and_clear()", + "source_file": "tests/test_uploads.py", + "source_location": "L155" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_gi_start", + "label": "._start()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._start()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_ii_touchstart", + "label": ".touchstart()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".touchstart()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_iszooming", + "label": "isZooming()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "iszooming()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_add", + "label": "._add()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._add()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_adddefaulthandlers", + "label": "._addDefaultHandlers()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._adddefaulthandlers()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_applychanges", + "label": "._applyChanges()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._applychanges()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_blockedbyactive", + "label": "._blockedByActive()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._blockedbyactive()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_constructor", + "label": ".constructor()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".constructor()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_fireevents", + "label": "._fireEvents()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._fireevents()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_getmaptouches", + "label": "._getMapTouches()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._getmaptouches()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_isactive", + "label": ".isActive()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".isactive()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_ismoving", + "label": ".isMoving()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".ismoving()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_isrotating", + "label": ".isRotating()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".isrotating()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_iszooming", + "label": ".isZooming()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".iszooming()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_mergehandlerresult", + "label": ".mergeHandlerResult()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".mergehandlerresult()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_requestframe", + "label": "._requestFrame()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._requestframe()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_start", + "label": "._start()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._start()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_stop", + "label": ".stop()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": ".stop()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_triggerrenderframe", + "label": "._triggerRenderFrame()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._triggerrenderframe()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_si_updatemaptransform", + "label": "._updateMapTransform()", + "_callable": true, + "_origin": "ast", + "community": 94, + "community_name": "Si", + "file_type": "code", + "norm_label": "._updatemaptransform()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ae", + "label": "Ae()", + "_callable": true, + "_origin": "ast", + "community": 95, + "community_name": "alpine.min.js", + "file_type": "code", + "norm_label": "ae()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_ar", + "label": "ar()", + "_callable": true, + "_origin": "ast", + "community": 95, + "community_name": "alpine.min.js", + "file_type": "code", + "norm_label": "ar()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_bi", + "label": "bi()", + "_callable": true, + "_origin": "ast", + "community": 95, + "community_name": "alpine.min.js", + "file_type": "code", + "norm_label": "bi()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_c", + "label": "C()", + "_callable": true, + "_origin": "ast", + "community": 95, + "community_name": "alpine.min.js", + "file_type": "code", + "norm_label": "c()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_cr", + "label": "cr()", + "_callable": true, + "_origin": "ast", + "community": 95, + "community_name": "alpine.min.js", + "file_type": "code", + "norm_label": "cr()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_deleteproperty", + "label": "deleteProperty()", + "_callable": true, + "_origin": "ast", + "community": 95, + "community_name": "alpine.min.js", + "file_type": "code", + "norm_label": "deleteproperty()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_effect", + "label": "effect()", + "_callable": true, + "_origin": "ast", + "community": 95, + "community_name": "alpine.min.js", + "file_type": "code", + "norm_label": "effect()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_eo", + "label": "eo()", + "_callable": true, + "_origin": "ast", + "community": 95, + "community_name": "alpine.min.js", + "file_type": "code", + "norm_label": "eo()", + "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", + "source_location": "L5" + }, + { + "id": "src_cellpy_simple_gui_web_static_js_alpine_min_gt", + "label": "Gt()", + "_callable": true, + "_origin": "ast", + "community": 95, + "community_name": "alpine.min.js", "file_type": "code", "norm_label": "gt()", "source_file": "src/cellpy_simple_gui/web/static/js/alpine.min.js", @@ -43898,12 +44152,24 @@ "source_file": "packaging/smoke_test.py", "source_location": "L115" }, + { + "id": "examples_mcp_server_new_project", + "label": "new_project()", + "_callable": true, + "_origin": "ast", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", + "file_type": "code", + "norm_label": "new_project()", + "source_file": "examples/mcp/server.py", + "source_location": "L876" + }, { "id": "fastapi", "label": "FastAPI", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "fastapi", "source_file": "", @@ -43914,7 +44180,7 @@ "label": "api/app.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "api/app.py", "source_file": "src/cellpy_simple_gui/api/app.py", @@ -43925,7 +44191,7 @@ "label": "deps.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "deps.py", "source_file": "src/cellpy_simple_gui/api/deps.py", @@ -43936,7 +44202,7 @@ "label": "Path", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "path", "source_file": "", @@ -43947,7 +44213,7 @@ "label": "api/jobs.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "api/jobs.py", "source_file": "src/cellpy_simple_gui/api/jobs.py", @@ -43958,7 +44224,7 @@ "label": "Exception", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "exception", "source_file": "", @@ -43969,51 +44235,29 @@ "label": "cells.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "cells.py", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_api_routers_cells_py_delete", - "label": "delete", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "delete", - "source_file": "", - "source_location": "" - }, { "id": "src_cellpy_simple_gui_api_routers_cells_py_get", "label": "get", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "get", "source_file": "", "source_location": "" }, - { - "id": "src_cellpy_simple_gui_api_routers_cells_py_post", - "label": "post", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "post", - "source_file": "", - "source_location": "" - }, { "id": "src_cellpy_simple_gui_api_routers_ingest", "label": "ingest.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "ingest.py", "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", @@ -44024,7 +44268,7 @@ "label": "post", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "post", "source_file": "", @@ -44035,7 +44279,7 @@ "label": "routers/__init__.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "routers/__init__.py", "source_file": "src/cellpy_simple_gui/api/routers/__init__.py", @@ -44046,7 +44290,7 @@ "label": "routers/jobs.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "routers/jobs.py", "source_file": "src/cellpy_simple_gui/api/routers/jobs.py", @@ -44057,7 +44301,7 @@ "label": "get", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "get", "source_file": "", @@ -44068,7 +44312,7 @@ "label": "post", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "post", "source_file": "", @@ -44079,29 +44323,18 @@ "label": "routers/projects.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "routers/projects.py", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_api_routers_projects_py_get", - "label": "get", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "code", - "norm_label": "get", - "source_file": "", - "source_location": "" - }, { "id": "src_cellpy_simple_gui_api_routers_projects_py_post", "label": "post", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "post", "source_file": "", @@ -44112,7 +44345,7 @@ "label": "remote.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "remote.py", "source_file": "src/cellpy_simple_gui/api/routers/remote.py", @@ -44123,18 +44356,40 @@ "label": "post", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "post", "source_file": "", "source_location": "" }, + { + "id": "src_cellpy_simple_gui_api_routers_system", + "label": "system.py", + "_origin": "ast", + "community": 0, + "community_name": "cells.py", + "file_type": "code", + "norm_label": "system.py", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_py_get", + "label": "get", + "_origin": "ast", + "community": 0, + "community_name": "cells.py", + "file_type": "code", + "norm_label": "get", + "source_file": "", + "source_location": "" + }, { "id": "src_cellpy_simple_gui_api_routers_uploads", "label": "routers/uploads.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "routers/uploads.py", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", @@ -44145,7 +44400,7 @@ "label": "core/__init__.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "core/__init__.py", "source_file": "src/cellpy_simple_gui/core/__init__.py", @@ -44156,7 +44411,7 @@ "label": "library.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "library.py", "source_file": "src/cellpy_simple_gui/core/library.py", @@ -44167,7 +44422,7 @@ "label": "models.py", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "models.py", "source_file": "src/cellpy_simple_gui/core/models.py", @@ -44178,18 +44433,29 @@ "label": "BaseModel", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "basemodel", "source_file": "", "source_location": "" }, + { + "id": "src_cellpy_simple_gui_logging_setup", + "label": "logging_setup.py", + "_origin": "ast", + "community": 0, + "community_name": "cells.py", + "file_type": "code", + "norm_label": "logging_setup.py", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L1" + }, { "id": "streamingresponse", "label": "StreamingResponse", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "code", "norm_label": "streamingresponse", "source_file": "", @@ -44200,7 +44466,7 @@ "label": "Decision", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "document", "node_kind": "heading", "norm_label": "decision", @@ -44212,7 +44478,7 @@ "label": "FastAPI application factory.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "fastapi application factory.", "source_file": "src/cellpy_simple_gui/api/app.py", @@ -44223,7 +44489,7 @@ "label": "Shared dependencies: templates and the local-token guard.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "shared dependencies: templates and the local-token guard.", "source_file": "src/cellpy_simple_gui/api/deps.py", @@ -44234,7 +44500,7 @@ "label": "Resolve a client-supplied path, or refuse it with a 400 (#120). Checks the\u2026", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "resolve a client-supplied path, or refuse it with a 400 (#120). checks the...", "source_file": "src/cellpy_simple_gui/api/deps.py", @@ -44245,7 +44511,7 @@ "label": "A tiny in-process job manager for long-running work (loading cells). Single-\u2026", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "a tiny in-process job manager for long-running work (loading cells). single-...", "source_file": "src/cellpy_simple_gui/api/jobs.py", @@ -44256,7 +44522,7 @@ "label": "Raised inside a job when cancellation has been requested.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "raised inside a job when cancellation has been requested.", "source_file": "src/cellpy_simple_gui/api/jobs.py", @@ -44267,7 +44533,7 @@ "label": "Handle passed into job functions to report progress and check cancel.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "handle passed into job functions to report progress and check cancel.", "source_file": "src/cellpy_simple_gui/api/jobs.py", @@ -44278,29 +44544,29 @@ "label": "Endpoints for loading cells and editing the journal (library).", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "endpoints for loading cells and editing the journal (library).", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_api_routers_cells_rationale_97", + "id": "src_cellpy_simple_gui_api_routers_cells_rationale_99", "label": "Expand paths / globs for the staged list, loading nothing (#136). Same policy\u2026", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "expand paths / globs for the staged list, loading nothing (#136). same policy...", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L97" + "source_location": "L99" }, { "id": "src_cellpy_simple_gui_api_routers_ingest_rationale_1", "label": "Raw-file ingestion: turn instrument files into cellpy cells (as jobs).", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "raw-file ingestion: turn instrument files into cellpy cells (as jobs).", "source_file": "src/cellpy_simple_gui/api/routers/ingest.py", @@ -44311,18 +44577,29 @@ "label": "Job status, cancellation, and an SSE progress stream.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "job status, cancellation, and an sse progress stream.", "source_file": "src/cellpy_simple_gui/api/routers/jobs.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_rationale_142", + "label": "Guard endpoints that only exist in developer mode (#97).", + "_origin": "ast", + "community": 0, + "community_name": "cells.py", + "file_type": "rationale", + "norm_label": "guard endpoints that only exist in developer mode (#97).", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L142" + }, { "id": "src_cellpy_simple_gui_api_routers_projects_rationale_1", "label": "Project persistence endpoints (save/open/list) \u2014 save & open run as jobs.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "project persistence endpoints (save/open/list) \u2014 save & open run as jobs.", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", @@ -44333,7 +44610,7 @@ "label": "Return whether a path is a portable project or a batch journal (#75).", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "return whether a path is a portable project or a batch journal (#75).", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", @@ -44344,29 +44621,18 @@ "label": "Always return a toastable result \u2014 never leave the UI waiting on a bare raise.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "always return a toastable result \u2014 never leave the ui waiting on a bare raise.", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", "source_location": "L127" }, - { - "id": "src_cellpy_simple_gui_api_routers_projects_rationale_20", - "label": "Current project + whether it brought its own cellpy settings.", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "rationale", - "norm_label": "current project + whether it brought its own cellpy settings.", - "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L20" - }, { "id": "src_cellpy_simple_gui_api_routers_projects_rationale_96", "label": "Write the current cellpy settings into the open project and activate them.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "write the current cellpy settings into the open project and activate them.", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", @@ -44377,18 +44643,73 @@ "label": "Remote folder discovery over SSH/SFTP (cellpy filefinder, #162). Phase 1 (#160)\u2026", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "remote folder discovery over ssh/sftp (cellpy filefinder, #162). phase 1 (#160)...", "source_file": "src/cellpy_simple_gui/api/routers/remote.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_1", + "label": "System endpoints: capability probe, native file pickers, config diagnostics.", + "_origin": "ast", + "community": 0, + "community_name": "cells.py", + "file_type": "rationale", + "norm_label": "system endpoints: capability probe, native file pickers, config diagnostics.", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_109", + "label": "Where cellpy resolves each setting from (read-only; secrets never included).", + "_origin": "ast", + "community": 0, + "community_name": "cells.py", + "file_type": "rationale", + "norm_label": "where cellpy resolves each setting from (read-only; secrets never included).", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L109" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_40", + "label": "The active pywebview window, or None when running as a plain server.", + "_origin": "ast", + "community": 0, + "community_name": "cells.py", + "file_type": "rationale", + "norm_label": "the active pywebview window, or none when running as a plain server.", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L40" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_85", + "label": "Recent log records \u2014 developer mode (#97). Saves a round trip to\u2026", + "_origin": "ast", + "community": 0, + "community_name": "cells.py", + "file_type": "rationale", + "norm_label": "recent log records \u2014 developer mode (#97). saves a round trip to...", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L85" + }, + { + "id": "src_cellpy_simple_gui_api_routers_system_rationale_99", + "label": "Recent jobs with queue and run times \u2014 developer mode (#97).", + "_origin": "ast", + "community": 0, + "community_name": "cells.py", + "file_type": "rationale", + "norm_label": "recent jobs with queue and run times \u2014 developer mode (#97).", + "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "source_location": "L99" + }, { "id": "src_cellpy_simple_gui_api_routers_uploads_rationale_1", "label": "Bringing files in through the browser (#133). Upload writes into\u2026", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "bringing files in through the browser (#133). upload writes into...", "source_file": "src/cellpy_simple_gui/api/routers/uploads.py", @@ -44399,7 +44720,7 @@ "label": "Clamp a client-supplied cap to the policy for this session (#97). The UI reads\u2026", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "clamp a client-supplied cap to the policy for this session (#97). the ui reads...", "source_file": "src/cellpy_simple_gui/core/files.py", @@ -44410,7 +44731,7 @@ "label": "Core layer: pure-Python domain logic for cellpy-simple-gui. Nothing in this\u2026", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "core layer: pure-python domain logic for cellpy-simple-gui. nothing in this...", "source_file": "src/cellpy_simple_gui/core/__init__.py", @@ -44421,357 +44742,254 @@ "label": "In-memory library of loaded cells \u2014 the backend's source of truth. For a\u2026", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "in-memory library of loaded cells \u2014 the backend's source of truth. for a...", "source_file": "src/cellpy_simple_gui/core/library.py", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_core_library_rationale_300", - "label": "Return the process-wide library singleton.", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "rationale", - "norm_label": "return the process-wide library singleton.", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L300" - }, { "id": "src_cellpy_simple_gui_core_models_rationale_1", "label": "Pydantic domain models shared by the core, the API and (as JSON) the UI.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "pydantic domain models shared by the core, the api and (as json) the ui.", "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_290", - "label": "Raw traces annotated with step/cycle information \u2014 developer mode. Cycle-\u2026", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "rationale", - "norm_label": "raw traces annotated with step/cycle information \u2014 developer mode. cycle-...", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L290" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_304", + "id": "src_cellpy_simple_gui_core_models_rationale_312", "label": "A plot spec plus the desired file format.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "a plot spec plus the desired file format.", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L304" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_314", - "label": "Optional explicit cell ids for library-cell export (default = selected).", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "rationale", - "norm_label": "optional explicit cell ids for library-cell export (default = selected).", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L314" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_320", - "label": "A single editable-grid change.", - "_origin": "ast", - "community": 0, - "community_name": "get_library", - "file_type": "rationale", - "norm_label": "a single editable-grid change.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L320" + "source_location": "L312" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_343", + "id": "src_cellpy_simple_gui_core_models_rationale_351", "label": "Expand typed paths / globs without loading anything (#136 staged list).", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "expand typed paths / globs without loading anything (#136 staged list).", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L343" + "source_location": "L351" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_350", + "id": "src_cellpy_simple_gui_core_models_rationale_358", "label": "List files under a remote ``sftp://`` folder via cellpy's filefinder (#162).", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "list files under a remote ``sftp://`` folder via cellpy's filefinder (#162).", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L350" + "source_location": "L358" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_359", + "id": "src_cellpy_simple_gui_core_models_rationale_367", "label": "Import one or more raw instrument files with shared metadata.", "_origin": "ast", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "file_type": "rationale", "norm_label": "import one or more raw instrument files with shared metadata.", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L359" - }, - { - "id": "cellpy_painpoints_16_ica_plotter_direction_gaps_line_plots_both", - "label": "16. \ud83d\udfe2 ICA plotter direction gaps (line plots + `both`)", - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "document", - "node_kind": "heading", - "norm_label": "16. \ud83d\udfe2 ica plotter direction gaps (line plots + `both`)", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L400" + "source_location": "L367" }, { - "id": "issueflows_03_solved_issues_issue28_plan_prior_art", - "label": "Prior art", + "id": "src_cellpy_simple_gui_core_models_rationale_92", + "label": "Rename one group (#187); an empty label restores ``group ``.", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L15" + "community": 0, + "community_name": "cells.py", + "file_type": "rationale", + "norm_label": "rename one group (#187); an empty label restores ``group ``.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L92" }, { - "id": "issueflows_03_solved_issues_issue38_plan", - "label": "issue38_plan.md", + "id": "src_cellpy_simple_gui_logging_setup_rationale_1", + "label": "Terminal logging via loguru, with a stdlib logging bridge.", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue38_plan.md", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "community": 0, + "community_name": "cells.py", + "file_type": "rationale", + "norm_label": "terminal logging via loguru, with a stdlib logging bridge.", + "source_file": "src/cellpy_simple_gui/logging_setup.py", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue72_plan", - "label": "issue72_plan.md", + "id": "src_cellpy_simple_gui_logging_setup_rationale_84", + "label": "Newest-last slice of the ring, optionally filtered to a minimum level.", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue72_plan.md", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L1" + "community": 0, + "community_name": "cells.py", + "file_type": "rationale", + "norm_label": "newest-last slice of the ring, optionally filtered to a minimum level.", + "source_file": "src/cellpy_simple_gui/logging_setup.py", + "source_location": "L84" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory", - "label": "cellpy-delegation-inventory.md", + "id": "tests_test_core_rationale_1666", + "label": "A hand-made request cannot exceed the regular-user cap.", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "document", - "node_kind": "page", - "norm_label": "cellpy-delegation-inventory.md", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L1" + "community": 0, + "community_name": "cells.py", + "file_type": "rationale", + "norm_label": "a hand-made request cannot exceed the regular-user cap.", + "source_file": "tests/test_core.py", + "source_location": "L1666" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cellpy_delegation_inventory_issue_52", - "label": "cellpy delegation inventory (issue #52)", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_10_risks_open_questions", + "label": "10. Risks & open questions", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", "file_type": "document", "node_kind": "heading", - "norm_label": "cellpy delegation inventory (issue #52)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L1" + "norm_label": "10. risks & open questions", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L191" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cycles_pane_curve_kinds_95", - "label": "Cycles pane curve kinds (#95)", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_11_sibling_repos_context_only", + "label": "11. Sibling repos (context only)", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", "file_type": "document", "node_kind": "heading", - "norm_label": "cycles pane curve kinds (#95)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L140" + "norm_label": "11. sibling repos (context only)", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L202" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_incremental_analysis_ica_dva", - "label": "Incremental analysis (ICA / DVA)", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_1_goals_locked_decisions", + "label": "1. Goals & locked decisions", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", "file_type": "document", "node_kind": "heading", - "norm_label": "incremental analysis (ica / dva)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L102" + "norm_label": "1. goals & locked decisions", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L13" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_raw_data_views_developer_mode", - "label": "Raw data views (developer mode)", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_3_technology_choices_design_vs_mvp", + "label": "3. Technology choices (design vs MVP)", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", "file_type": "document", "node_kind": "heading", - "norm_label": "raw data views (developer mode)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L123" + "norm_label": "3. technology choices (design vs mvp)", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L59" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_release_gating_note_resolved_for_816_818_819", - "label": "Release-gating note (resolved for #816/#818/#819)", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_4_package_layout", + "label": "4. Package layout", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", "file_type": "document", "node_kind": "heading", - "norm_label": "release-gating note (resolved for #816/#818/#819)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L11" + "norm_label": "4. package layout", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L78" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_removed_in_the_2_1_2a2_cleanup", - "label": "Removed in the 2.1.2a2 cleanup", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_5_core_layer_rules", + "label": "5. Core layer rules", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", "file_type": "document", "node_kind": "heading", - "norm_label": "removed in the 2.1.2a2 cleanup", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L53" - }, - { - "id": "issueflows_04_designs_and_guides_plot_appearance", - "label": "plot-appearance.md", - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "document", - "node_kind": "page", - "norm_label": "plot-appearance.md", - "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", - "source_location": "L1" + "norm_label": "5. core layer rules", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L99" }, { - "id": "issueflows_04_designs_and_guides_plot_appearance_alternatives_considered", - "label": "Alternatives considered", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_7_frontend_pages_parity_map", + "label": "7. Frontend pages (parity map)", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", "file_type": "document", "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", - "source_location": "L31" + "norm_label": "7. frontend pages (parity map)", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L148" }, { - "id": "issueflows_04_designs_and_guides_plot_appearance_context", - "label": "Context", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_8_packaging_native_deps_updates_still_open", + "label": "8. Packaging, native deps & updates (still open)", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", "file_type": "document", "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", - "source_location": "L5" + "norm_label": "8. packaging, native deps & updates (still open)", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L162" }, { - "id": "issueflows_04_designs_and_guides_plot_appearance_decision", - "label": "Decision", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_9_phased_roadmap", + "label": "9. Phased roadmap", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", "file_type": "document", "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", - "source_location": "L12" + "norm_label": "9. phased roadmap", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L176" }, { - "id": "issueflows_04_designs_and_guides_plot_appearance_plot_appearance_theme_color_scheme", - "label": "Plot appearance (theme + color scheme)", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_cellprocessor_2_0_design_guide_for_agents", + "label": "CellProcessor 2.0 \u2014 design guide (for agents)", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", "file_type": "document", "node_kind": "heading", - "norm_label": "plot appearance (theme + color scheme)", - "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", + "norm_label": "cellprocessor 2.0 \u2014 design guide (for agents)", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1441", - "label": "Serialise a tidy polars frame in-memory. Returns (bytes, media_type).", - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "rationale", - "norm_label": "serialise a tidy polars frame in-memory. returns (bytes, media_type).", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1441" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_1458", - "label": "Serialise a collection's tidy frame in-memory. Returns (bytes, media_type).", - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "rationale", - "norm_label": "serialise a collection's tidy frame in-memory. returns (bytes, media_type).", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1458" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_471", - "label": "Collect summaries, optionally under a family's own :class:`SummaryOptions`.\u2026", - "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "rationale", - "norm_label": "collect summaries, optionally under a family's own :class:`summaryoptions`....", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L471" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_550", - "label": "Filter a collected ICA frame to one half-cycle for **export**. Mirrors what\u2026", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_cellpy_2_1_1_surface_to_prefer", + "label": "cellpy 2.1.1 surface to prefer", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "rationale", - "norm_label": "filter a collected ica frame to one half-cycle for **export**. mirrors what...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L550" + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "cellpy 2.1.1 surface to prefer", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L112" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_654", - "label": "Fold theme tokens into cellpy #801 knobs before ``collection.plot``.", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_summary_dataframe_columns_handy", + "label": "Summary DataFrame columns (handy)", "_origin": "ast", - "community": 10, - "community_name": "select_ica_direction", - "file_type": "rationale", - "norm_label": "fold theme tokens into cellpy #801 knobs before ``collection.plot``.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L654" + "community": 1, + "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "summary dataframe columns (handy)", + "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "source_location": "L127" }, { "id": "e2e", @@ -44784,39 +45002,6 @@ "source_file": "", "source_location": "" }, - { - "id": "src_cellpy_simple_gui_web_static_js_app", - "label": "app.js", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "app.js", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app_plotly_config", - "label": "PLOTLY_CONFIG", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "plotly_config", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L29" - }, - { - "id": "src_cellpy_simple_gui_web_static_js_app_recent_kinds", - "label": "RECENT_KINDS", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "code", - "norm_label": "recent_kinds", - "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L44" - }, { "id": "tests_test_gui_playwright", "label": "test_gui_playwright.py", @@ -44839,30 +45024,6 @@ "source_file": "", "source_location": "" }, - { - "id": "issueflows_03_solved_issues_issue136_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue136_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L229" - }, { "id": "issueflows_03_solved_issues_issue184_status", "label": "issue184_status.md", @@ -44911,78 +45072,6 @@ "source_file": ".issueflows/03-solved-issues/issue184_status.md", "source_location": "L9" }, - { - "id": "issueflows_04_designs_and_guides_loading_ui_alternatives_considered", - "label": "Alternatives considered", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L60" - }, - { - "id": "issueflows_04_designs_and_guides_loading_ui_context", - "label": "Context", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L3" - }, - { - "id": "issueflows_04_designs_and_guides_loading_ui_decision", - "label": "Decision", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L13" - }, - { - "id": "issueflows_04_designs_and_guides_loading_ui_guard_rails_tests", - "label": "Guard rails (tests)", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "guard rails (tests)", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L49" - }, - { - "id": "issueflows_04_designs_and_guides_loading_ui_links", - "label": "Links", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "links", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L72" - }, - { - "id": "issueflows_04_designs_and_guides_loading_ui_loading_ui_add_cells_modal_staged_list_local_issue_136", - "label": "Loading UI: Add cells modal + staged list (local issue 136)", - "_origin": "ast", - "community": 101, - "community_name": "test_gui_playwright.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "loading ui: add cells modal + staged list (local issue 136)", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L1" - }, { "id": "tests_test_gui_playwright_rationale_1", "label": "Playwright GUI smoke tests against --server / browser mode. Requires the\u2026", @@ -45049,6 +45138,17 @@ "source_file": "tests/test_gui_playwright.py", "source_location": "L231" }, + { + "id": "tests_test_gui_playwright_rationale_287", + "label": "The Groups strip names a group; the name reaches state and the legend.", + "_origin": "ast", + "community": 101, + "community_name": "test_gui_playwright.py", + "file_type": "rationale", + "norm_label": "the groups strip names a group; the name reaches state and the legend.", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L287" + }, { "id": "tests_test_gui_playwright_rationale_42", "label": "In-process uvicorn with a fixed CSG_TOKEN (same surface as --server).", @@ -45061,183 +45161,244 @@ "source_location": "L42" }, { - "id": "issueflows_03_solved_issues_issue38_original", - "label": "issue38_original.md", + "id": "cellpy_painpoints_16_ica_plotter_direction_gaps_line_plots_both", + "label": "16. \ud83d\udfe2 ICA plotter direction gaps (line plots + `both`)", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", - "node_kind": "page", - "norm_label": "issue38_original.md", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "16. \ud83d\udfe2 ica plotter direction gaps (line plots + `both`)", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L400" }, { - "id": "issueflows_03_solved_issues_issue38_original_acceptance_criteria", - "label": "Acceptance criteria", + "id": "examples_starter_readme_what_to_add_next_and_where_to_look", + "label": "What to add next, and where to look", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L19" + "norm_label": "what to add next, and where to look", + "source_file": "examples/starter/README.md", + "source_location": "L91" }, { - "id": "issueflows_03_solved_issues_issue38_original_issue_38_use_cellpy_label_builders_for_summary_cycle_axis_titles", - "label": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "id": "issueflows_03_solved_issues_issue28_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #38: use cellpy label builders for summary/cycle axis titles", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L1" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_location": "L15" }, { - "id": "issueflows_03_solved_issues_issue38_original_original_issue_text", - "label": "Original issue text", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cellpy_delegation_inventory_issue_52", + "label": "cellpy delegation inventory (issue #52)", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L5" + "norm_label": "cellpy delegation inventory (issue #52)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue38_original_out_of_scope", - "label": "Out of scope", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_cycles_pane_curve_kinds_95", + "label": "Cycles pane curve kinds (#95)", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L26" + "norm_label": "cycles pane curve kinds (#95)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L140" }, { - "id": "issueflows_03_solved_issues_issue38_original_problem_context", - "label": "Problem / context", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_incremental_analysis_ica_dva", + "label": "Incremental analysis (ICA / DVA)", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L7" + "norm_label": "incremental analysis (ica / dva)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L102" }, { - "id": "issueflows_03_solved_issues_issue38_original_spec", - "label": "Spec", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_raw_data_views_developer_mode", + "label": "Raw data views (developer mode)", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue38_original.md", - "source_location": "L11" + "norm_label": "raw data views (developer mode)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L123" }, { - "id": "issueflows_03_solved_issues_issue38_plan_approach", - "label": "Approach", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_release_gating_note_resolved_for_816_818_819", + "label": "Release-gating note (resolved for #816/#818/#819)", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L38" + "norm_label": "release-gating note (resolved for #816/#818/#819)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L11" }, { - "id": "issueflows_03_solved_issues_issue38_plan_constraints", - "label": "Constraints", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_removed_in_the_2_1_2a2_cleanup", + "label": "Removed in the 2.1.2a2 cleanup", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L9" + "norm_label": "removed in the 2.1.2a2 cleanup", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L53" }, { - "id": "issueflows_03_solved_issues_issue38_plan_goal", - "label": "Goal", + "id": "src_cellpy_simple_gui_core_collect_rationale_1465", + "label": "Serialise a tidy polars frame in-memory. Returns (bytes, media_type).", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L3" + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "serialise a tidy polars frame in-memory. returns (bytes, media_type).", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1465" }, { - "id": "issueflows_03_solved_issues_issue38_plan_open_questions", - "label": "Open questions", + "id": "src_cellpy_simple_gui_core_collect_rationale_1482", + "label": "Serialise a collection's tidy frame in-memory. Returns (bytes, media_type).", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L91" + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "serialise a collection's tidy frame in-memory. returns (bytes, media_type).", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1482" }, { - "id": "issueflows_03_solved_issues_issue38_plan_plan_issue_38_cellpy_label_builders_for_axis_titles", - "label": "Plan \u2014 Issue #38: cellpy label builders for axis titles", + "id": "src_cellpy_simple_gui_core_collect_rationale_155", + "label": "Every summary family cellpy registers, marked available or not (#97).\u2026", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plan \u2014 issue #38: cellpy label builders for axis titles", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L1" + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "every summary family cellpy registers, marked available or not (#97)....", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L155" }, { - "id": "issueflows_03_solved_issues_issue38_plan_prior_art", - "label": "Prior art", + "id": "src_cellpy_simple_gui_core_collect_rationale_204", + "label": "Summary columns a family needs *before* collect-time derivation.\u2026", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L18" + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "summary columns a family needs *before* collect-time derivation....", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L204" }, { - "id": "issueflows_03_solved_issues_issue38_plan_test_strategy", - "label": "Test strategy", + "id": "src_cellpy_simple_gui_core_collect_rationale_231", + "label": "Summary column that must already exist before collect derives ``name``.", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L86" + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "summary column that must already exist before collect derives ``name``.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L231" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1186", - "label": "Best-effort cleanup if a ``variable=\u2026`` strip slipped past cellpy. cellpy\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_240", + "label": "Ready :class:`SummaryOptions` for a registry family, or ``None``. Carries the\u2026", "_origin": "ast", "community": 102, - "community_name": "_tidy_facet_annotations", + "community_name": "select_ica_direction", "file_type": "rationale", - "norm_label": "best-effort cleanup if a ``variable=...`` strip slipped past cellpy. cellpy...", + "norm_label": "ready :class:`summaryoptions` for a registry family, or ``none``. carries the...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L240" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_258", + "label": "``(header, available_columns)`` across the loaded cells, or ``(None, None)``.\u2026", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "``(header, available_columns)`` across the loaded cells, or ``(none, none)``....", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L258" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_282", + "label": "Which of ``columns`` the loaded cells do not actually carry. A family's\u2026", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "which of ``columns`` the loaded cells do not actually carry. a family's...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L282" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_304", + "label": "Collect options for a plot type, or ``None`` for the curated ones. Only a\u2026", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "collect options for a plot type, or ``none`` for the curated ones. only a...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L304" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_317", + "label": "The summary columns the data must already carry for this plot type. Same as\u2026", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "the summary columns the data must already carry for this plot type. same as...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L317" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_492", + "label": "Collect summaries, optionally under a family's own :class:`SummaryOptions`.\u2026", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "collect summaries, optionally under a family's own :class:`summaryoptions`....", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L492" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_571", + "label": "Filter a collected ICA frame to one half-cycle for **export**. Mirrors what\u2026", + "_origin": "ast", + "community": 102, + "community_name": "select_ica_direction", + "file_type": "rationale", + "norm_label": "filter a collected ica frame to one half-cycle for **export**. mirrors what...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1186" + "source_location": "L571" }, { "id": "tests_test_core", @@ -45262,27 +45423,266 @@ "source_location": "" }, { - "id": "tests_test_core_py_fixture", - "label": "fixture", + "id": "tests_test_core_py_parametrize", + "label": "parametrize", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "code", - "norm_label": "fixture", + "norm_label": "parametrize", "source_file": "", "source_location": "" }, { - "id": "tests_test_core_py_parametrize", - "label": "parametrize", + "id": "tests_test_core_py_skipif", + "label": "skipif", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "code", - "norm_label": "parametrize", + "norm_label": "skipif", "source_file": "", "source_location": "" }, + { + "id": "issueflows_03_solved_issues_issue27_status", + "label": "issue27_status.md", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue27_status.md", + "source_file": ".issueflows/03-solved-issues/issue27_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue27_status_issue_27_status_iterative_fixes_group_average_checkbox", + "label": "Issue #27 status \u2014 Iterative fixes: group average checkbox", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #27 status \u2014 iterative fixes: group average checkbox", + "source_file": ".issueflows/03-solved-issues/issue27_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue27_status_iterative_fixes_log", + "label": "Iterative fixes log", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "iterative fixes log", + "source_file": ".issueflows/03-solved-issues/issue27_status.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue2_original", + "label": "issue2_original.md", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue2_original.md", + "source_file": ".issueflows/03-solved-issues/issue2_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue2_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue2_original.md", + "source_location": "L21" + }, + { + "id": "issueflows_03_solved_issues_issue2_original_issue_2_allow_independent_y_limits_on_multi_panel_summary_plots", + "label": "Issue #2: Allow independent y-limits on multi-panel summary plots", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #2: allow independent y-limits on multi-panel summary plots", + "source_file": ".issueflows/03-solved-issues/issue2_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue2_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue2_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue2_original_out_of_scope", + "label": "Out of scope", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue2_original.md", + "source_location": "L29" + }, + { + "id": "issueflows_03_solved_issues_issue2_original_problem_context", + "label": "Problem / context", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue2_original.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue2_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue2_original.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue54_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_location": "L38" + }, + { + "id": "issueflows_03_solved_issues_issue54_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_location": "L9" + }, + { + "id": "issueflows_03_solved_issues_issue54_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_location": "L69" + }, + { + "id": "issueflows_03_solved_issues_issue54_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue54_plan_issue_54_plan_per_panel_summary_y_range_widgets", + "label": "Issue #54 plan: per-panel summary y-range widgets", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #54 plan: per-panel summary y-range widgets", + "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue54_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_location": "L96" + }, + { + "id": "issueflows_03_solved_issues_issue54_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_location": "L23" + }, + { + "id": "issueflows_03_solved_issues_issue54_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_location": "L83" + }, + { + "id": "issueflows_03_solved_issues_issue62_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L10" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_98", + "label": "Drives a cellpy ``collect_summaries`` collection + its plot/export.", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "drives a cellpy ``collect_summaries`` collection + its plot/export.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L98" + }, { "id": "tests_test_core_rationale_1", "label": "Unit tests for the core layer (no web server involved).", @@ -45361,260 +45761,260 @@ "source_location": "L1100" }, { - "id": "tests_test_core_rationale_1250", - "label": "Y-axis title texts ordered by Plotly domain (top facet first).", + "id": "tests_test_core_rationale_1152", + "label": "Two demo cells in one group (so Group avg averages) plus a singleton.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "y-axis title texts ordered by plotly domain (top facet first).", + "norm_label": "two demo cells in one group (so group avg averages) plus a singleton.", "source_file": "tests/test_core.py", - "source_location": "L1250" + "source_location": "L1152" }, { - "id": "tests_test_core_rationale_1265", - "label": "CE stays on top with Group avg on or off (#81).", + "id": "tests_test_core_rationale_1168", + "label": "Layout y-axis whose title contains ``needle`` (case-insensitive).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "ce stays on top with group avg on or off (#81).", + "norm_label": "layout y-axis whose title contains ``needle`` (case-insensitive).", "source_file": "tests/test_core.py", - "source_location": "L1265" + "source_location": "L1168" }, { - "id": "tests_test_core_rationale_1291", - "label": "Group avg + Spread must still honour share_y (#47; cellpy spread_plot gap).", + "id": "tests_test_core_rationale_1181", + "label": "Group avg + Spread must honour per-panel y_ranges (#186). The spread hover\u2026", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "group avg + spread must still honour share_y (#47; cellpy spread_plot gap).", + "norm_label": "group avg + spread must honour per-panel y_ranges (#186). the spread hover...", "source_file": "tests/test_core.py", - "source_location": "L1291" + "source_location": "L1181" }, { - "id": "tests_test_core_rationale_1318", - "label": "Extreme CE must not force capacity panels onto a million-scale (#2).", + "id": "tests_test_core_rationale_1218", + "label": "A blank end is filled from the spread panel's own extent (#186).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "extreme ce must not force capacity panels onto a million-scale (#2).", + "norm_label": "a blank end is filled from the spread panel's own extent (#186).", "source_file": "tests/test_core.py", - "source_location": "L1318" + "source_location": "L1218" }, { - "id": "tests_test_core_rationale_1480", - "label": "Panel data: sections with provenance, paths/units first, no secrets.", + "id": "tests_test_core_rationale_1279", + "label": "cellpy names group-averaged traces after the label ``_batch`` hands it.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "panel data: sections with provenance, paths/units first, no secrets.", + "norm_label": "cellpy names group-averaged traces after the label ``_batch`` hands it.", "source_file": "tests/test_core.py", - "source_location": "L1480" + "source_location": "L1279" }, { - "id": "tests_test_core_rationale_1496", - "label": "A legacy Arbin SQL password must never render (cellpy #849).", + "id": "tests_test_core_rationale_1295", + "label": "Per-cell traces of a named group get that name as legend-group title.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "a legacy arbin sql password must never render (cellpy #849).", + "norm_label": "per-cell traces of a named group get that name as legend-group title.", "source_file": "tests/test_core.py", - "source_location": "L1496" + "source_location": "L1295" }, { - "id": "tests_test_core_rationale_1514", - "label": "No cellpy.toml + a legacy YAML => tell the user to migrate.", + "id": "tests_test_core_rationale_1332", + "label": "Y-axis title texts ordered by Plotly domain (top facet first).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "no cellpy.toml + a legacy yaml => tell the user to migrate.", + "norm_label": "y-axis title texts ordered by plotly domain (top facet first).", "source_file": "tests/test_core.py", - "source_location": "L1514" + "source_location": "L1332" }, { - "id": "tests_test_core_rationale_1533", - "label": "A failing sources() must degrade to 'default', not break the panel.", + "id": "tests_test_core_rationale_1347", + "label": "CE stays on top with Group avg on or off (#81).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "a failing sources() must degrade to 'default', not break the panel.", + "norm_label": "ce stays on top with group avg on or off (#81).", "source_file": "tests/test_core.py", - "source_location": "L1533" + "source_location": "L1347" }, { - "id": "tests_test_core_rationale_1550", - "label": "Run a block with CSG_DEV_MODE=1 and a fresh settings cache.", + "id": "tests_test_core_rationale_1373", + "label": "Group avg + Spread must still honour share_y (#47; cellpy spread_plot gap).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "run a block with csg_dev_mode=1 and a fresh settings cache.", + "norm_label": "group avg + spread must still honour share_y (#47; cellpy spread_plot gap).", "source_file": "tests/test_core.py", - "source_location": "L1550" + "source_location": "L1373" }, { - "id": "tests_test_core_rationale_1584", - "label": "A hand-made request cannot exceed the regular-user cap.", + "id": "tests_test_core_rationale_1400", + "label": "Extreme CE must not force capacity panels onto a million-scale (#2).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "a hand-made request cannot exceed the regular-user cap.", + "norm_label": "extreme ce must not force capacity panels onto a million-scale (#2).", "source_file": "tests/test_core.py", - "source_location": "L1584" + "source_location": "L1400" }, { - "id": "tests_test_core_rationale_1598", - "label": "Every cellpy family is listed; the unusable ones say what is missing.", + "id": "tests_test_core_rationale_1562", + "label": "Panel data: sections with provenance, paths/units first, no secrets.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "every cellpy family is listed; the unusable ones say what is missing.", + "norm_label": "panel data: sections with provenance, paths/units first, no secrets.", "source_file": "tests/test_core.py", - "source_location": "L1598" + "source_location": "L1562" }, { - "id": "tests_test_core_rationale_1626", - "label": "A family the data cannot support must say so, not render blank (#97).", + "id": "tests_test_core_rationale_1578", + "label": "A legacy Arbin SQL password must never render (cellpy #849).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "a family the data cannot support must say so, not render blank (#97).", + "norm_label": "a legacy arbin sql password must never render (cellpy #849).", "source_file": "tests/test_core.py", - "source_location": "L1626" + "source_location": "L1578" }, { - "id": "tests_test_core_rationale_1642", - "label": "cellpy 2.1.2 tags families by entry point \u2014 raw/ica/dva have own tabs.", + "id": "tests_test_core_rationale_1596", + "label": "No cellpy.toml + a legacy YAML => tell the user to migrate.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "cellpy 2.1.2 tags families by entry point \u2014 raw/ica/dva have own tabs.", + "norm_label": "no cellpy.toml + a legacy yaml => tell the user to migrate.", "source_file": "tests/test_core.py", - "source_location": "L1642" + "source_location": "L1596" }, { - "id": "tests_test_core_rationale_1649", - "label": "#106 / cellpy #868: collect-time columns must not read as missing data.\u2026", + "id": "tests_test_core_rationale_1615", + "label": "A failing sources() must degrade to 'default', not break the panel.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "#106 / cellpy #868: collect-time columns must not read as missing data....", + "norm_label": "a failing sources() must degrade to 'default', not break the panel.", "source_file": "tests/test_core.py", - "source_location": "L1649" + "source_location": "L1615" }, { - "id": "tests_test_core_rationale_1676", - "label": "The options handed to collect come from the family itself (cellpy #868).", + "id": "tests_test_core_rationale_1680", + "label": "Every cellpy family is listed; the unusable ones say what is missing.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "the options handed to collect come from the family itself (cellpy #868).", + "norm_label": "every cellpy family is listed; the unusable ones say what is missing.", "source_file": "tests/test_core.py", - "source_location": "L1676" + "source_location": "L1680" }, { - "id": "tests_test_core_rationale_1686", - "label": "Regular users still get exactly the curated list.", + "id": "tests_test_core_rationale_1708", + "label": "A family the data cannot support must say so, not render blank (#97).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "regular users still get exactly the curated list.", + "norm_label": "a family the data cannot support must say so, not render blank (#97).", "source_file": "tests/test_core.py", - "source_location": "L1686" + "source_location": "L1708" }, { - "id": "tests_test_core_rationale_1698", - "label": "dV/dQ renders per direction; cellpy's dva_plot is single-cell.", + "id": "tests_test_core_rationale_1724", + "label": "cellpy 2.1.2 tags families by entry point \u2014 raw/ica/dva have own tabs.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "dv/dq renders per direction; cellpy's dva_plot is single-cell.", + "norm_label": "cellpy 2.1.2 tags families by entry point \u2014 raw/ica/dva have own tabs.", "source_file": "tests/test_core.py", - "source_location": "L1698" + "source_location": "L1724" }, { - "id": "tests_test_core_rationale_1713", - "label": "cellpy #862/#863: the collected DVA path labels and dashes both halves.", + "id": "tests_test_core_rationale_1731", + "label": "#106 / cellpy #868: collect-time columns must not read as missing data.\u2026", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "cellpy #862/#863: the collected dva path labels and dashes both halves.", + "norm_label": "#106 / cellpy #868: collect-time columns must not read as missing data....", "source_file": "tests/test_core.py", - "source_location": "L1713" + "source_location": "L1731" }, { - "id": "tests_test_core_rationale_1730", - "label": "collect_dva (cellpy #863) makes DVA multi-cell, like ICA.", + "id": "tests_test_core_rationale_1758", + "label": "The options handed to collect come from the family itself (cellpy #868).", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "collect_dva (cellpy #863) makes dva multi-cell, like ica.", + "norm_label": "the options handed to collect come from the family itself (cellpy #868).", "source_file": "tests/test_core.py", - "source_location": "L1730" + "source_location": "L1758" }, { - "id": "tests_test_core_rationale_1752", - "label": "Export mirrors the plotted direction and rides the shared polars path.", + "id": "tests_test_core_rationale_1768", + "label": "Regular users still get exactly the curated list.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "export mirrors the plotted direction and rides the shared polars path.", + "norm_label": "regular users still get exactly the curated list.", "source_file": "tests/test_core.py", - "source_location": "L1752" + "source_location": "L1768" }, { - "id": "tests_test_core_rationale_1773", - "label": "With nothing loaded, availability is unknown \u2014 do not claim data is missing.\u2026", + "id": "tests_test_core_rationale_1812", + "label": "collect_dva (cellpy #863) makes DVA multi-cell, like ICA.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "with nothing loaded, availability is unknown \u2014 do not claim data is missing....", + "norm_label": "collect_dva (cellpy #863) makes dva multi-cell, like ica.", "source_file": "tests/test_core.py", - "source_location": "L1773" + "source_location": "L1812" }, { - "id": "tests_test_core_rationale_1787", - "label": "One cell with an unreadable summary must not hide the others' columns.", + "id": "tests_test_core_rationale_1855", + "label": "With nothing loaded, availability is unknown \u2014 do not claim data is missing.\u2026", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "one cell with an unreadable summary must not hide the others' columns.", + "norm_label": "with nothing loaded, availability is unknown \u2014 do not claim data is missing....", "source_file": "tests/test_core.py", - "source_location": "L1787" + "source_location": "L1855" }, { - "id": "tests_test_core_rationale_1846", - "label": "cycle_info_plot returns None for plotly unless get_axes=True.", + "id": "tests_test_core_rationale_1869", + "label": "One cell with an unreadable summary must not hide the others' columns.", "_origin": "ast", "community": 103, "community_name": "test_core.py", "file_type": "rationale", - "norm_label": "cycle_info_plot returns none for plotly unless get_axes=true.", + "norm_label": "one cell with an unreadable summary must not hide the others' columns.", "source_file": "tests/test_core.py", - "source_location": "L1846" + "source_location": "L1869" }, { - "id": "tests_test_core_rationale_1876", + "id": "tests_test_core_rationale_1958", "label": "cellpy #846: prefer refresh_after over a full make_summary rebuild.", "_origin": "ast", "community": 103, @@ -45622,10 +46022,10 @@ "file_type": "rationale", "norm_label": "cellpy #846: prefer refresh_after over a full make_summary rebuild.", "source_file": "tests/test_core.py", - "source_location": "L1876" + "source_location": "L1958" }, { - "id": "tests_test_core_rationale_1901", + "id": "tests_test_core_rationale_1983", "label": "Older cellpy has no refresh_after \u2014 must still rebuild the summary.", "_origin": "ast", "community": 103, @@ -45633,73 +46033,7 @@ "file_type": "rationale", "norm_label": "older cellpy has no refresh_after \u2014 must still rebuild the summary.", "source_file": "tests/test_core.py", - "source_location": "L1901" - }, - { - "id": "tests_test_core_rationale_201", - "label": "#95: the Cycles pane draws dQ/dV and dV/dQ across the same selection.", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "#95: the cycles pane draws dq/dv and dv/dq across the same selection.", - "source_file": "tests/test_core.py", - "source_location": "L201" - }, - { - "id": "tests_test_core_rationale_214", - "label": "``layout=\"film\"`` must draw a density plot, whoever is responsible. This used\u2026", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "``layout=\"film\"`` must draw a density plot, whoever is responsible. this used...", - "source_file": "tests/test_core.py", - "source_location": "L214" - }, - { - "id": "tests_test_core_rationale_247", - "label": "Exported data must be what the chart shows, not always the curves (#95).", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "exported data must be what the chart shows, not always the curves (#95).", - "source_file": "tests/test_core.py", - "source_location": "L247" - }, - { - "id": "tests_test_core_rationale_260", - "label": "Cell-explorer / Cycles-collector x/y range widgets pin Plotly axes.", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "cell-explorer / cycles-collector x/y range widgets pin plotly axes.", - "source_file": "tests/test_core.py", - "source_location": "L260" - }, - { - "id": "tests_test_core_rationale_283", - "label": "Collector layout also honours axis ranges for export parity.", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "collector layout also honours axis ranges for export parity.", - "source_file": "tests/test_core.py", - "source_location": "L283" - }, - { - "id": "tests_test_core_rationale_301", - "label": "Cycles x/y accept a single end; the other is filled from data.", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "cycles x/y accept a single end; the other is filled from data.", - "source_file": "tests/test_core.py", - "source_location": "L301" + "source_location": "L1983" }, { "id": "tests_test_core_rationale_391", @@ -45712,28 +46046,6 @@ "source_file": "tests/test_core.py", "source_location": "L391" }, - { - "id": "tests_test_core_rationale_405", - "label": "Multi-cell collector supports per_cell and per_cycle layouts (#55).", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "multi-cell collector supports per_cell and per_cycle layouts (#55).", - "source_file": "tests/test_core.py", - "source_location": "L405" - }, - { - "id": "tests_test_core_rationale_468", - "label": "Single-cell explorer: a gap is a note, all-missing is an explanation.", - "_origin": "ast", - "community": 103, - "community_name": "test_core.py", - "file_type": "rationale", - "norm_label": "single-cell explorer: a gap is a note, all-missing is an explanation.", - "source_file": "tests/test_core.py", - "source_location": "L468" - }, { "id": "tests_test_core_rationale_488", "label": "Flatten Plotly trace y values (list or binary ``{dtype,bdata}``).", @@ -45767,6 +46079,17 @@ "source_file": "tests/test_core.py", "source_location": "L567" }, + { + "id": "tests_test_core_rationale_612", + "label": "Group avg averages multi-member groups even when a singleton exists. cellpy\u2026", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "group avg averages multi-member groups even when a singleton exists. cellpy...", + "source_file": "tests/test_core.py", + "source_location": "L612" + }, { "id": "tests_test_core_rationale_649", "label": "Avg group + singleton both render on every variable facet (#39/#816). cellpy\u2026", @@ -45844,6 +46167,17 @@ "source_file": "tests/test_core.py", "source_location": "L805" }, + { + "id": "tests_test_core_rationale_818", + "label": "safe colorway paints at least one trace from library.PALETTE (#32).", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "safe colorway paints at least one trace from library.palette (#32).", + "source_file": "tests/test_core.py", + "source_location": "L818" + }, { "id": "tests_test_core_rationale_840", "label": "safe/muted spread bands use translucent rgba fill, solid mean lines (#37).", @@ -45866,6 +46200,17 @@ "source_file": "tests/test_core.py", "source_location": "L877" }, + { + "id": "tests_test_core_rationale_919", + "label": "No regression: cellpy already gives these paths good hover (#40).", + "_origin": "ast", + "community": 103, + "community_name": "test_core.py", + "file_type": "rationale", + "norm_label": "no regression: cellpy already gives these paths good hover (#40).", + "source_file": "tests/test_core.py", + "source_location": "L919" + }, { "id": "tests_test_core_rationale_940", "label": "Unpack Plotly figure-json ``y`` (plain list or binary ``bdata`` dict).", @@ -45926,56 +46271,34 @@ "label": "field_validator", "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "code", "norm_label": "field_validator", "source_file": "", "source_location": "" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_169", + "id": "src_cellpy_simple_gui_core_models_rationale_177", "label": "One cell and the cycles to draw from it.", "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "rationale", "norm_label": "one cell and the cycles to draw from it.", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L169" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_272", - "label": "Raw time-series traces for one cell \u2014 developer mode.", - "_origin": "ast", - "community": 105, - "community_name": "RawPlotSpec", - "file_type": "rationale", - "norm_label": "raw time-series traces for one cell \u2014 developer mode.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L272" + "source_location": "L177" }, { "id": "src_cellpy_simple_gui_core_models_rationale_42", "label": "Accept ``[lo, hi]`` with either end optional (blank \u2192 data extent). Both ends\u2026", "_origin": "ast", "community": 105, - "community_name": "RawPlotSpec", + "community_name": "_clean_axis_range", "file_type": "rationale", "norm_label": "accept ``[lo, hi]`` with either end optional (blank \u2192 data extent). both ends...", "source_file": "src/cellpy_simple_gui/core/models.py", "source_location": "L42" }, - { - "id": "tests_test_core_rationale_1812", - "label": "cellpy #867 landed in 2.1.2: raw_plot bounds the payload via max_points.", - "_origin": "ast", - "community": 105, - "community_name": "RawPlotSpec", - "file_type": "rationale", - "norm_label": "cellpy #867 landed in 2.1.2: raw_plot bounds the payload via max_points.", - "source_file": "tests/test_core.py", - "source_location": "L1812" - }, { "id": "src_cellpy_simple_gui_core_cycle_report", "label": "cycle_report.py", @@ -45987,6 +46310,17 @@ "source_file": "src/cellpy_simple_gui/core/cycle_report.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_core_export_py_comparepicks", + "label": "ComparePicks", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "code", + "norm_label": "comparepicks", + "source_file": "", + "source_location": "" + }, { "id": "src_cellpy_simple_gui_core_plotting", "label": "plotting.py", @@ -46021,6 +46355,18 @@ "source_file": ".issueflows/03-solved-issues/issue169_plan.md", "source_location": "L136" }, + { + "id": "issueflows_03_solved_issues_issue169_plan_4_api_api_routers_plots_py_api_routers_export_py_core_export_py", + "label": "4. API \u2014 `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "document", + "node_kind": "heading", + "norm_label": "4. api \u2014 `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L146" + }, { "id": "issueflows_03_solved_issues_issue169_plan_files_to_touch", "label": "Files to touch", @@ -46033,6 +46379,18 @@ "source_file": ".issueflows/03-solved-issues/issue169_plan.md", "source_location": "L189" }, + { + "id": "issueflows_03_solved_issues_issue169_status_2026_10_02_built", + "label": "2026-10-02 \u2014 built", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "document", + "node_kind": "heading", + "norm_label": "2026-10-02 \u2014 built", + "source_file": ".issueflows/03-solved-issues/issue169_status.md", + "source_location": "L19" + }, { "id": "issueflows_03_solved_issues_issue175_plan", "label": "issue175_plan.md", @@ -46346,7 +46704,18 @@ "source_location": "L53" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_536", + "id": "src_cellpy_simple_gui_core_collect_rationale_101", + "label": "``legendgroup`` \u2192 user-given group name, for the groups that have one.\u2026", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "rationale", + "norm_label": "``legendgroup`` \u2192 user-given group name, for the groups that have one....", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L101" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_557", "label": "Collect DVA (dV/dQ) curves \u2014 the sibling of :func:`ica_collection`. cellpy\u2026", "_origin": "ast", "community": 107, @@ -46354,10 +46723,10 @@ "file_type": "rationale", "norm_label": "collect dva (dv/dq) curves \u2014 the sibling of :func:`ica_collection`. cellpy...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L536" + "source_location": "L557" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_579", + "id": "src_cellpy_simple_gui_core_collect_rationale_600", "label": "Keep only the ``(cell label, cycle)`` rows in ``pairs`` (#169). cellpy collects\u2026", "_origin": "ast", "community": 107, @@ -46365,10 +46734,10 @@ "file_type": "rationale", "norm_label": "keep only the ``(cell label, cycle)`` rows in ``pairs`` (#169). cellpy collects...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L579" + "source_location": "L600" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_614", + "id": "src_cellpy_simple_gui_core_collect_rationale_635", "label": "The ``(cell label, cycle)`` pairs that actually have rows (#175). The mirror of\u2026", "_origin": "ast", "community": 107, @@ -46376,7 +46745,7 @@ "file_type": "rationale", "norm_label": "the ``(cell label, cycle)`` pairs that actually have rows (#175). the mirror of...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L614" + "source_location": "L635" }, { "id": "src_cellpy_simple_gui_core_collect_rationale_66", @@ -46401,18 +46770,7 @@ "source_location": "L86" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_925", - "label": "Raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2\u2026", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L925" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_954", + "id": "src_cellpy_simple_gui_core_collect_rationale_978", "label": "Raw traces annotated with step/cycle info, via cellpy's ``cycle_info_plot``.\u2026", "_origin": "ast", "community": 107, @@ -46420,7 +46778,7 @@ "file_type": "rationale", "norm_label": "raw traces annotated with step/cycle info, via cellpy's ``cycle_info_plot``....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L954" + "source_location": "L978" }, { "id": "src_cellpy_simple_gui_core_cycle_report_rationale_1", @@ -46467,7 +46825,18 @@ "source_location": "L78" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_45", + "id": "src_cellpy_simple_gui_core_export_rationale_114", + "label": "Rows for exactly the picked ``(cell, cycle)`` pairs the chart shows (#169).", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "rationale", + "norm_label": "rows for exactly the picked ``(cell, cycle)`` pairs the chart shows (#169).", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L114" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_50", "label": "A loaded cell plus its mutable, user-editable metadata.", "_origin": "ast", "community": 107, @@ -46475,7 +46844,29 @@ "file_type": "rationale", "norm_label": "a loaded cell plus its mutable, user-editable metadata.", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L45" + "source_location": "L50" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_189", + "label": "Several cells, each with its own cycles, in one figure (#169). cellpy collects\u2026", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "rationale", + "norm_label": "several cells, each with its own cycles, in one figure (#169). cellpy collects...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L189" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_239", + "label": "Every ``(cell_id, cycle)`` the spec asks for.", + "_origin": "ast", + "community": 107, + "community_name": "CellRecord", + "file_type": "rationale", + "norm_label": "every ``(cell_id, cycle)`` the spec asks for.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L239" }, { "id": "src_cellpy_simple_gui_core_plotting_rationale_1", @@ -46489,7 +46880,7 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_100", + "id": "src_cellpy_simple_gui_core_plotting_rationale_102", "label": "Batch label and cycle numbers per record, in record order (#175).", "_origin": "ast", "community": 107, @@ -46497,10 +46888,10 @@ "file_type": "rationale", "norm_label": "batch label and cycle numbers per record, in record order (#175).", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L100" + "source_location": "L102" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_112", + "id": "src_cellpy_simple_gui_core_plotting_rationale_114", "label": "Empty figure that says *why* nothing was drawn (#175).", "_origin": "ast", "community": 107, @@ -46508,10 +46899,10 @@ "file_type": "rationale", "norm_label": "empty figure that says *why* nothing was drawn (#175).", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L112" + "source_location": "L114" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_124", + "id": "src_cellpy_simple_gui_core_plotting_rationale_126", "label": "Missing + unreadable cycles for the one-cell explorer views. Only judged for a\u2026", "_origin": "ast", "community": 107, @@ -46519,10 +46910,10 @@ "file_type": "rationale", "norm_label": "missing + unreadable cycles for the one-cell explorer views. only judged for a...", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L124" + "source_location": "L126" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_143", + "id": "src_cellpy_simple_gui_core_plotting_rationale_145", "label": "Empty-figure JSON when *no* record has *any* requested cycle, else None. cellpy\u2026", "_origin": "ast", "community": 107, @@ -46530,10 +46921,10 @@ "file_type": "rationale", "norm_label": "empty-figure json when *no* record has *any* requested cycle, else none. cellpy...", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L143" + "source_location": "L145" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_222", + "id": "src_cellpy_simple_gui_core_plotting_rationale_225", "label": "Collect the picked cells over the *union* of their cycles, then narrow. Shared\u2026", "_origin": "ast", "community": 107, @@ -46541,10 +46932,10 @@ "file_type": "rationale", "norm_label": "collect the picked cells over the *union* of their cycles, then narrow. shared...", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L222" + "source_location": "L225" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_265", + "id": "src_cellpy_simple_gui_core_plotting_rationale_268", "label": "Curves from several cells, each with its own cycles, in one figure (#169).\u2026", "_origin": "ast", "community": 107, @@ -46552,21 +46943,10 @@ "file_type": "rationale", "norm_label": "curves from several cells, each with its own cycles, in one figure (#169)....", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L265" - }, - { - "id": "src_cellpy_simple_gui_core_plotting_rationale_296", - "label": "Raw time-series traces for one cell \u2014 developer mode.", - "_origin": "ast", - "community": 107, - "community_name": "CellRecord", - "file_type": "rationale", - "norm_label": "raw time-series traces for one cell \u2014 developer mode.", - "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L296" + "source_location": "L268" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_309", + "id": "src_cellpy_simple_gui_core_plotting_rationale_312", "label": "Raw traces with step/cycle annotations \u2014 developer mode.", "_origin": "ast", "community": 107, @@ -46574,10 +46954,10 @@ "file_type": "rationale", "norm_label": "raw traces with step/cycle annotations \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L309" + "source_location": "L312" }, { - "id": "src_cellpy_simple_gui_core_plotting_rationale_325", + "id": "src_cellpy_simple_gui_core_plotting_rationale_328", "label": "Differential voltage (dV/dQ vs capacity) for one cell \u2014 developer mode.", "_origin": "ast", "community": 107, @@ -46585,7 +46965,7 @@ "file_type": "rationale", "norm_label": "differential voltage (dv/dq vs capacity) for one cell \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L325" + "source_location": "L328" }, { "id": "issueflows_03_solved_issues_issue36_original", @@ -46839,105 +47219,6 @@ "source_file": ".issueflows/03-solved-issues/issue3_original.md", "source_location": "L13" }, - { - "id": "tests_test_mcp_prototype", - "label": "test_mcp_prototype.py", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "code", - "norm_label": "test_mcp_prototype.py", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L1" - }, - { - "id": "tests_test_mcp_prototype_py_fixture", - "label": "fixture", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "code", - "norm_label": "fixture", - "source_file": "", - "source_location": "" - }, - { - "id": "tests_test_mcp_prototype_rationale_1", - "label": "Drive the MCP prototype over the real protocol (#128). A prototype exists to\u2026", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "rationale", - "norm_label": "drive the mcp prototype over the real protocol (#128). a prototype exists to...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L1" - }, - { - "id": "tests_test_mcp_prototype_rationale_276", - "label": "Resolving a dotted path is importing it, and the caller is a model. The refusal\u2026", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "rationale", - "norm_label": "resolving a dotted path is importing it, and the caller is a model. the refusal...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L276" - }, - { - "id": "tests_test_mcp_prototype_rationale_33", - "label": "The server module, with its sandbox pointed at a temp directory. `ROOT` is read\u2026", - "_origin": "ast", - "community": 114, - "community_name": "test_mcp_prototype.py", - "file_type": "rationale", - "norm_label": "the server module, with its sandbox pointed at a temp directory. `root` is read...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L33" - }, - { - "id": "tools_gen_llms_txt", - "label": "gen_llms_txt.py", - "_origin": "ast", - "community": 115, - "community_name": "gen_llms_txt.py", - "file_type": "code", - "norm_label": "gen_llms_txt.py", - "source_file": "tools/gen_llms_txt.py", - "source_location": "L1" - }, - { - "id": "tools_gen_llms_txt_py_path", - "label": "Path", - "_origin": "ast", - "community": 115, - "community_name": "gen_llms_txt.py", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" - }, - { - "id": "tools_gen_llms_txt_rationale_1", - "label": "Generate `llms.txt` and `llms-full.txt` (#127). Half the audience for the\u2026", - "_origin": "ast", - "community": 115, - "community_name": "gen_llms_txt.py", - "file_type": "rationale", - "norm_label": "generate `llms.txt` and `llms-full.txt` (#127). half the audience for the...", - "source_file": "tools/gen_llms_txt.py", - "source_location": "L1" - }, - { - "id": "tools_gen_llms_txt_rationale_99", - "label": "`(title, one-liner)` read out of the guide itself. The guides open with `# 3.\u2026", - "_origin": "ast", - "community": 115, - "community_name": "gen_llms_txt.py", - "file_type": "rationale", - "norm_label": "`(title, one-liner)` read out of the guide itself. the guides open with `# 3....", - "source_file": "tools/gen_llms_txt.py", - "source_location": "L99" - }, { "id": "issueflows_03_solved_issues_issue4_original", "label": "issue4_original.md", @@ -47023,48 +47304,124 @@ "source_location": "L17" }, { - "id": "tests_test_api_rationale_671", - "label": "Make ``import webview`` fail, as it would on a server-only install.", + "id": "docs_windows_installer_arbin_res_needs_a_microsoft_odbc_driver", + "label": "Arbin `.res` needs a Microsoft ODBC driver", "_origin": "ast", "community": 117, - "community_name": "_without_webview", - "file_type": "rationale", - "norm_label": "make ``import webview`` fail, as it would on a server-only install.", - "source_file": "tests/test_api.py", - "source_location": "L671" + "community_name": "The Windows installer", + "file_type": "document", + "node_kind": "heading", + "norm_label": "arbin `.res` needs a microsoft odbc driver", + "source_file": "docs/windows-installer.md", + "source_location": "L122" }, { - "id": "tests_test_api_rationale_681", - "label": "A server-only install must serve the whole app (#118). pywebview moved to the\u2026", + "id": "docs_windows_installer_building_it_yourself", + "label": "Building it yourself", "_origin": "ast", "community": 117, - "community_name": "_without_webview", - "file_type": "rationale", - "norm_label": "a server-only install must serve the whole app (#118). pywebview moved to the...", - "source_file": "tests/test_api.py", - "source_location": "L681" + "community_name": "The Windows installer", + "file_type": "document", + "node_kind": "heading", + "norm_label": "building it yourself", + "source_file": "docs/windows-installer.md", + "source_location": "L181" }, { - "id": "tests_test_api_rationale_700", - "label": "The two endpoints that genuinely need a window fail clearly, not with a 500.", + "id": "docs_windows_installer_downloading", + "label": "Downloading", "_origin": "ast", "community": 117, - "community_name": "_without_webview", - "file_type": "rationale", - "norm_label": "the two endpoints that genuinely need a window fail clearly, not with a 500.", - "source_file": "tests/test_api.py", - "source_location": "L700" + "community_name": "The Windows installer", + "file_type": "document", + "node_kind": "heading", + "norm_label": "downloading", + "source_file": "docs/windows-installer.md", + "source_location": "L41" }, { - "id": "tests_test_api_rationale_712", - "label": "Falling back to the browser should say what to install, not raise ImportError.", + "id": "docs_windows_installer_installing", + "label": "Installing", "_origin": "ast", "community": 117, - "community_name": "_without_webview", - "file_type": "rationale", - "norm_label": "falling back to the browser should say what to install, not raise importerror.", - "source_file": "tests/test_api.py", - "source_location": "L712" + "community_name": "The Windows installer", + "file_type": "document", + "node_kind": "heading", + "norm_label": "installing", + "source_file": "docs/windows-installer.md", + "source_location": "L68" + }, + { + "id": "docs_windows_installer_static_figure_export_needs_chrome", + "label": "Static figure export needs Chrome", + "_origin": "ast", + "community": 117, + "community_name": "The Windows installer", + "file_type": "document", + "node_kind": "heading", + "norm_label": "static figure export needs chrome", + "source_file": "docs/windows-installer.md", + "source_location": "L147" + }, + { + "id": "docs_windows_installer_the_windows_installer", + "label": "The Windows installer", + "_origin": "ast", + "community": 117, + "community_name": "The Windows installer", + "file_type": "document", + "node_kind": "heading", + "norm_label": "the windows installer", + "source_file": "docs/windows-installer.md", + "source_location": "L1" + }, + { + "id": "docs_windows_installer_uninstalling", + "label": "Uninstalling", + "_origin": "ast", + "community": 117, + "community_name": "The Windows installer", + "file_type": "document", + "node_kind": "heading", + "norm_label": "uninstalling", + "source_file": "docs/windows-installer.md", + "source_location": "L162" + }, + { + "id": "docs_windows_installer_webview2", + "label": "WebView2", + "_origin": "ast", + "community": 117, + "community_name": "The Windows installer", + "file_type": "document", + "node_kind": "heading", + "norm_label": "webview2", + "source_file": "docs/windows-installer.md", + "source_location": "L85" + }, + { + "id": "docs_windows_installer_what_you_will_see_first_a_smartscreen_warning", + "label": "What you will see first: a SmartScreen warning", + "_origin": "ast", + "community": 117, + "community_name": "The Windows installer", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what you will see first: a smartscreen warning", + "source_file": "docs/windows-installer.md", + "source_location": "L9" + }, + { + "id": "docs_windows_installer_when_something_goes_wrong", + "label": "When something goes wrong", + "_origin": "ast", + "community": 117, + "community_name": "The Windows installer", + "file_type": "document", + "node_kind": "heading", + "norm_label": "when something goes wrong", + "source_file": "docs/windows-installer.md", + "source_location": "L98" }, { "id": "issueflows_03_solved_issues_issue58_original", @@ -47161,6 +47518,77 @@ "source_file": "tests/test_api.py", "source_location": "L1" }, + { + "id": "tests_test_api_py_essential", + "label": "essential", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "code", + "norm_label": "essential", + "source_file": "", + "source_location": "" + }, + { + "id": "issueflows_03_solved_issues_issue31_status", + "label": "issue31_status.md", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue31_status.md", + "source_file": ".issueflows/03-solved-issues/issue31_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue31_status_issue_31_status_iterative_fixes_export_download_location", + "label": "Issue #31 status \u2014 Iterative fixes: export download location", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #31 status \u2014 iterative fixes: export download location", + "source_file": ".issueflows/03-solved-issues/issue31_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue31_status_iterative_fixes_log", + "label": "Iterative fixes log", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "iterative fixes log", + "source_file": ".issueflows/03-solved-issues/issue31_status.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue48_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue48_plan.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue48_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue48_plan.md", + "source_location": "L14" + }, { "id": "tests_test_api_rationale_1", "label": "Integration tests for the FastAPI layer using TestClient.", @@ -47173,7 +47601,18 @@ "source_location": "L1" }, { - "id": "tests_test_api_rationale_259", + "id": "tests_test_api_rationale_242", + "label": "Groups are named through their own endpoint; state carries them (#187).", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "groups are named through their own endpoint; state carries them (#187).", + "source_file": "tests/test_api.py", + "source_location": "L242" + }, + { + "id": "tests_test_api_rationale_286", "label": "Settings are pinned to a project folder, so there must be one.", "_origin": "ast", "community": 12, @@ -47181,10 +47620,10 @@ "file_type": "rationale", "norm_label": "settings are pinned to a project folder, so there must be one.", "source_file": "tests/test_api.py", - "source_location": "L259" + "source_location": "L286" }, { - "id": "tests_test_api_rationale_266", + "id": "tests_test_api_rationale_293", "label": "Regular users see only the curated list \u2014 no registry families.", "_origin": "ast", "community": 12, @@ -47192,10 +47631,10 @@ "file_type": "rationale", "norm_label": "regular users see only the curated list \u2014 no registry families.", "source_file": "tests/test_api.py", - "source_location": "L266" + "source_location": "L293" }, { - "id": "tests_test_api_rationale_298", + "id": "tests_test_api_rationale_325", "label": "Load one example cell through the API and build a dV/dQ spec for it.", "_origin": "ast", "community": 12, @@ -47203,10 +47642,10 @@ "file_type": "rationale", "norm_label": "load one example cell through the api and build a dv/dq spec for it.", "source_file": "tests/test_api.py", - "source_location": "L298" + "source_location": "L325" }, { - "id": "tests_test_api_rationale_309", + "id": "tests_test_api_rationale_336", "label": "dV/dQ is a regular Cell-explorer view (#94), like the dQ/dV beside it.", "_origin": "ast", "community": 12, @@ -47214,10 +47653,10 @@ "file_type": "rationale", "norm_label": "dv/dq is a regular cell-explorer view (#94), like the dq/dv beside it.", "source_file": "tests/test_api.py", - "source_location": "L309" + "source_location": "L336" }, { - "id": "tests_test_api_rationale_329", + "id": "tests_test_api_rationale_356", "label": "Ungating must not turn an unknown cell into a permissions error.", "_origin": "ast", "community": 12, @@ -47225,7 +47664,40 @@ "file_type": "rationale", "norm_label": "ungating must not turn an unknown cell into a permissions error.", "source_file": "tests/test_api.py", - "source_location": "L329" + "source_location": "L356" + }, + { + "id": "tests_test_api_rationale_551", + "label": "Every state key, getter and method declared at the top level of app().", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "every state key, getter and method declared at the top level of app().", + "source_file": "tests/test_api.py", + "source_location": "L551" + }, + { + "id": "tests_test_api_rationale_567", + "label": "Identifiers an Alpine expression reads from the component scope. Property\u2026", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "identifiers an alpine expression reads from the component scope. property...", + "source_file": "tests/test_api.py", + "source_location": "L567" + }, + { + "id": "tests_test_api_rationale_589", + "label": "Every ``@click`` / ``x-show`` in the template resolves in the component. The\u2026", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "every ``@click`` / ``x-show`` in the template resolves in the component. the...", + "source_file": "tests/test_api.py", + "source_location": "L589" }, { "id": "tests_test_api_rationale_60", @@ -47239,132 +47711,158 @@ "source_location": "L60" }, { - "id": "tests_test_api_rationale_797", - "label": "What the staged list shows is exactly what Load would take.", + "id": "tests_test_api_rationale_620", + "label": "One primary button per modal, whatever tab is showing (#136).", "_origin": "ast", "community": 12, "community_name": "test_api.py", "file_type": "rationale", - "norm_label": "what the staged list shows is exactly what load would take.", + "norm_label": "one primary button per modal, whatever tab is showing (#136).", "source_file": "tests/test_api.py", - "source_location": "L797" + "source_location": "L620" }, { - "id": "tests_test_api_rationale_827", - "label": "A served instance previews only inside its data directory (#120).", + "id": "tests_test_api_rationale_632", + "label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor.\u2026", "_origin": "ast", "community": 12, "community_name": "test_api.py", "file_type": "rationale", - "norm_label": "a served instance previews only inside its data directory (#120).", + "norm_label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor....", "source_file": "tests/test_api.py", - "source_location": "L827" + "source_location": "L632" }, { - "id": "tests_test_api_rationale_840", - "label": "The desktop app takes host paths on purpose \u2014 that must not regress.", + "id": "tests_test_api_rationale_674", + "label": "At most four help lines are visible before the user touches anything (#136).\u2026", "_origin": "ast", "community": 12, "community_name": "test_api.py", "file_type": "rationale", - "norm_label": "the desktop app takes host paths on purpose \u2014 that must not regress.", + "norm_label": "at most four help lines are visible before the user touches anything (#136)....", "source_file": "tests/test_api.py", - "source_location": "L840" + "source_location": "L674" }, { - "id": "tests_test_api_rationale_92", - "label": "pywebview rejects descriptions outside [\\\\w ] \u2014 keep dialog filters parseable.\u2026", + "id": "tests_test_api_rationale_698", + "label": "Make ``import webview`` fail, as it would on a server-only install.", "_origin": "ast", "community": 12, "community_name": "test_api.py", "file_type": "rationale", - "norm_label": "pywebview rejects descriptions outside [\\\\w ] \u2014 keep dialog filters parseable....", + "norm_label": "make ``import webview`` fail, as it would on a server-only install.", "source_file": "tests/test_api.py", - "source_location": "L92" + "source_location": "L698" }, { - "id": "issueflows_03_solved_issues_issue184_plan", - "label": "issue184_plan.md", + "id": "tests_test_api_rationale_708", + "label": "A server-only install must serve the whole app (#118). pywebview moved to the\u2026", "_origin": "ast", - "community": 120, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue184_plan.md", - "source_file": ".issueflows/03-solved-issues/issue184_plan.md", - "source_location": "L1" + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "a server-only install must serve the whole app (#118). pywebview moved to the...", + "source_file": "tests/test_api.py", + "source_location": "L708" }, { - "id": "issueflows_03_solved_issues_issue184_plan_approach_front_end_only_app_js_modal_markup", - "label": "Approach (front-end only, `app.js` + modal markup)", + "id": "tests_test_api_rationale_727", + "label": "The two endpoints that genuinely need a window fail clearly, not with a 500.", "_origin": "ast", - "community": 120, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach (front-end only, `app.js` + modal markup)", - "source_file": ".issueflows/03-solved-issues/issue184_plan.md", - "source_location": "L21" + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "the two endpoints that genuinely need a window fail clearly, not with a 500.", + "source_file": "tests/test_api.py", + "source_location": "L727" }, { - "id": "issueflows_03_solved_issues_issue184_plan_files_to_touch", - "label": "Files to touch", + "id": "tests_test_api_rationale_739", + "label": "Falling back to the browser should say what to install, not raise ImportError.", "_origin": "ast", - "community": 120, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue184_plan.md", - "source_location": "L37" + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "falling back to the browser should say what to install, not raise importerror.", + "source_file": "tests/test_api.py", + "source_location": "L739" }, { - "id": "issueflows_03_solved_issues_issue184_plan_goal", - "label": "Goal", + "id": "tests_test_api_rationale_74", + "label": "The config panel gets sections + provenance, and never a secrets section.", "_origin": "ast", - "community": 120, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue184_plan.md", - "source_location": "L3" + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "the config panel gets sections + provenance, and never a secrets section.", + "source_file": "tests/test_api.py", + "source_location": "L74" }, { - "id": "issueflows_03_solved_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", - "label": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "id": "tests_test_api_rationale_773", + "label": "The blast radius of the old behaviour was the host, not the app (#120).", "_origin": "ast", - "community": 120, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plan \u2014 #184 update plots when the manage cells modal closes", - "source_file": ".issueflows/03-solved-issues/issue184_plan.md", - "source_location": "L1" + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "the blast radius of the old behaviour was the host, not the app (#120).", + "source_file": "tests/test_api.py", + "source_location": "L773" }, { - "id": "issueflows_03_solved_issues_issue184_plan_test_strategy", - "label": "Test strategy", + "id": "tests_test_api_rationale_789", + "label": "Loading is a job, so the refusal comes back as an error, not a status.", "_origin": "ast", - "community": 120, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue184_plan.md", - "source_location": "L46" + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "loading is a job, so the refusal comes back as an error, not a status.", + "source_file": "tests/test_api.py", + "source_location": "L789" }, { - "id": "issueflows_03_solved_issues_issue184_plan_what_happens_today", - "label": "What happens today", + "id": "tests_test_api_rationale_824", + "label": "What the staged list shows is exactly what Load would take.", "_origin": "ast", - "community": 120, - "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what happens today", - "source_file": ".issueflows/03-solved-issues/issue184_plan.md", - "source_location": "L10" + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "what the staged list shows is exactly what load would take.", + "source_file": "tests/test_api.py", + "source_location": "L824" + }, + { + "id": "tests_test_api_rationale_854", + "label": "A served instance previews only inside its data directory (#120).", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "a served instance previews only inside its data directory (#120).", + "source_file": "tests/test_api.py", + "source_location": "L854" + }, + { + "id": "tests_test_api_rationale_867", + "label": "The desktop app takes host paths on purpose \u2014 that must not regress.", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "the desktop app takes host paths on purpose \u2014 that must not regress.", + "source_file": "tests/test_api.py", + "source_location": "L867" + }, + { + "id": "tests_test_api_rationale_92", + "label": "pywebview rejects descriptions outside [\\\\w ] \u2014 keep dialog filters parseable.\u2026", + "_origin": "ast", + "community": 12, + "community_name": "test_api.py", + "file_type": "rationale", + "norm_label": "pywebview rejects descriptions outside [\\\\w ] \u2014 keep dialog filters parseable....", + "source_file": "tests/test_api.py", + "source_location": "L92" }, { "id": "issueflows_03_solved_issues_issue5_original", @@ -47582,90 +48080,6 @@ "source_file": ".issueflows/04-designs-and-guides/test-registry.md", "source_location": "L1" }, - { - "id": "issueflows_03_solved_issues_issue62_original", - "label": "issue62_original.md", - "_origin": "ast", - "community": 124, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue62_original.md", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue62_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 124, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L17" - }, - { - "id": "issueflows_03_solved_issues_issue62_original_comments_curated_summary", - "label": "Comments (curated summary)", - "_origin": "ast", - "community": 124, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "comments (curated summary)", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L27" - }, - { - "id": "issueflows_03_solved_issues_issue62_original_issue_62_add_checkbox_for_group_vs_individual_plotly_legend_muting_on_summary_plots", - "label": "Issue #62: Add checkbox for group vs individual Plotly legend muting on summary plots", - "_origin": "ast", - "community": 124, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #62: add checkbox for group vs individual plotly legend muting on summary plots", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue62_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 124, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue62_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 124, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L23" - }, - { - "id": "issueflows_03_solved_issues_issue62_original_problem_context", - "label": "Problem / context", - "_origin": "ast", - "community": 124, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L7" - }, { "id": "cursor_skills_iflow_archive_skill", "label": "iflow-archive/SKILL.md", @@ -49226,6 +49640,17 @@ "source_file": ".issueflows/03-solved-issues/issue63_original.md", "source_location": "L5" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_readcallback", + "label": "._readCallback()", + "_origin": "ast", + "community": 15, + "community_name": "e", + "file_type": "code", + "norm_label": "._readcallback()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "issueflows_03_solved_issues_issue27_original", "label": "issue27_original.md", @@ -49382,62 +49807,6 @@ "source_file": ".issueflows/03-solved-issues/issue63_status.md", "source_location": "L7" }, - { - "id": "prompt", - "label": "prompt", - "_origin": "ast", - "community": 153, - "community_name": "The prompts", - "file_type": "code", - "norm_label": "prompt", - "source_file": "", - "source_location": "" - }, - { - "id": "examples_mcp_readme_the_prompts", - "label": "The prompts", - "_origin": "ast", - "community": 153, - "community_name": "The prompts", - "file_type": "document", - "node_kind": "heading", - "norm_label": "the prompts", - "source_file": "examples/mcp/README.md", - "source_location": "L74" - }, - { - "id": "examples_mcp_server_rationale_947", - "label": "Load one cell and produce the standard set of plots.", - "_origin": "ast", - "community": 153, - "community_name": "The prompts", - "file_type": "rationale", - "norm_label": "load one cell and produce the standard set of plots.", - "source_file": "examples/mcp/server.py", - "source_location": "L947" - }, - { - "id": "examples_mcp_server_rationale_971", - "label": "Set up the notebook template for a new set of experiments.", - "_origin": "ast", - "community": 153, - "community_name": "The prompts", - "file_type": "rationale", - "norm_label": "set up the notebook template for a new set of experiments.", - "source_file": "examples/mcp/server.py", - "source_location": "L971" - }, - { - "id": "examples_mcp_server_rationale_988", - "label": "Explain a cellpy function: arguments, defaults, and the traps.", - "_origin": "ast", - "community": 153, - "community_name": "The prompts", - "file_type": "rationale", - "norm_label": "explain a cellpy function: arguments, defaults, and the traps.", - "source_file": "examples/mcp/server.py", - "source_location": "L988" - }, { "id": "issueflows_00_tools_readme", "label": "00-tools/README.md", @@ -49558,39 +49927,6 @@ "source_file": ".issueflows/03-solved-issues/cycle_status_2026-07-30.md", "source_location": "L17" }, - { - "id": "examples_mcp_server_py_path", - "label": "Path", - "_origin": "ast", - "community": 157, - "community_name": "_client_config_path", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" - }, - { - "id": "examples_mcp_server_rationale_1016", - "label": "Where Claude Desktop keeps its MCP server list, per platform.", - "_origin": "ast", - "community": 157, - "community_name": "_client_config_path", - "file_type": "rationale", - "norm_label": "where claude desktop keeps its mcp server list, per platform.", - "source_file": "examples/mcp/server.py", - "source_location": "L1016" - }, - { - "id": "examples_mcp_server_rationale_1026", - "label": "Merge a `cellpy` entry into the client config, leaving the rest alone.", - "_origin": "ast", - "community": 157, - "community_name": "_client_config_path", - "file_type": "rationale", - "norm_label": "merge a `cellpy` entry into the client config, leaving the rest alone.", - "source_file": "examples/mcp/server.py", - "source_location": "L1026" - }, { "id": "issueflows_03_solved_issues_issue15_original", "label": "issue15_original.md", @@ -49640,68 +49976,79 @@ "source_location": "L5" }, { - "id": "tests_test_api_py_fixture", - "label": "fixture", + "id": "src_cellpy_simple_gui_api_routers_cells_py_delete", + "label": "delete", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", - "norm_label": "fixture", + "norm_label": "delete", "source_file": "", "source_location": "" }, { - "id": "tests_test_remote_find", - "label": "test_remote_find.py", + "id": "src_cellpy_simple_gui_api_routers_cells_py_post", + "label": "post", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", - "norm_label": "test_remote_find.py", - "source_file": "tests/test_remote_find.py", - "source_location": "L1" + "norm_label": "post", + "source_file": "", + "source_location": "" }, { - "id": "tests_test_remote_find_py_fixture", - "label": "fixture", + "id": "src_cellpy_simple_gui_api_routers_plots_py_get", + "label": "get", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", - "norm_label": "fixture", + "norm_label": "get", "source_file": "", "source_location": "" }, { - "id": "tests_test_uploads", - "label": "test_uploads.py", + "id": "tests_test_api_py_fixture", + "label": "fixture", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", - "norm_label": "test_uploads.py", - "source_file": "tests/test_uploads.py", - "source_location": "L1" + "norm_label": "fixture", + "source_file": "", + "source_location": "" }, { - "id": "tests_test_uploads_py_fixture", + "id": "tests_test_core_py_fixture", "label": "fixture", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", "norm_label": "fixture", "source_file": "", "source_location": "" }, { - "id": "tests_test_uploads_py_parametrize", - "label": "parametrize", + "id": "tests_test_remote_find", + "label": "test_remote_find.py", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "code", - "norm_label": "parametrize", + "norm_label": "test_remote_find.py", + "source_file": "tests/test_remote_find.py", + "source_location": "L1" + }, + { + "id": "tests_test_remote_find_py_fixture", + "label": "fixture", + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "code", + "norm_label": "fixture", "source_file": "", "source_location": "" }, @@ -49710,62 +50057,117 @@ "label": "Guard API routes. The index page plants the token as a cookie; the frontend\u2026", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "rationale", "norm_label": "guard api routes. the index page plants the token as a cookie; the frontend...", "source_file": "src/cellpy_simple_gui/api/deps.py", "source_location": "L37" }, + { + "id": "src_cellpy_simple_gui_api_routers_cells_rationale_152", + "label": "Name a group (#187). Groups are implicit \u2014 any positive number works.", + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "name a group (#187). groups are implicit \u2014 any positive number works.", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L152" + }, { "id": "src_cellpy_simple_gui_api_routers_plots_rationale_26", "label": "Curated summary plot types, with panel ids for the current capacity basis.\u2026", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "rationale", "norm_label": "curated summary plot types, with panel ids for the current capacity basis....", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L26" }, { - "id": "tests_test_api_rationale_403", + "id": "src_cellpy_simple_gui_api_routers_plots_rationale_93", + "label": "Union of cycle numbers across currently selected cells (Cycles tab).", + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "union of cycle numbers across currently selected cells (cycles tab).", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L93" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_361", + "label": "Return the process-wide library singleton.", + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "return the process-wide library singleton.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L361" + }, + { + "id": "tests_test_api_rationale_430", "label": "cellpy logs through stdlib, so the bridge must feed the ring buffer.", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "rationale", "norm_label": "cellpy logs through stdlib, so the bridge must feed the ring buffer.", "source_file": "tests/test_api.py", - "source_location": "L403" + "source_location": "L430" }, { - "id": "tests_test_api_rationale_728", + "id": "tests_test_api_rationale_755", "label": "A client for an instance bound to a network address.", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "rationale", "norm_label": "a client for an instance bound to a network address.", "source_file": "tests/test_api.py", - "source_location": "L728" + "source_location": "L755" }, { - "id": "tests_test_journal_rationale_84", + "id": "tests_test_core_rationale_1632", + "label": "Run a block with CSG_DEV_MODE=1 and a fresh settings cache.", + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "run a block with csg_dev_mode=1 and a fresh settings cache.", + "source_file": "tests/test_core.py", + "source_location": "L1632" + }, + { + "id": "tests_test_journal_rationale_149", "label": "Job must finish with an errors[] payload the UI can toast \u2014 not hang.", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "rationale", "norm_label": "job must finish with an errors[] payload the ui can toast \u2014 not hang.", "source_file": "tests/test_journal.py", - "source_location": "L84" + "source_location": "L149" + }, + { + "id": "tests_test_journal_rationale_80", + "label": "The journal job names the library's groups from the journal (#187).", + "_origin": "ast", + "community": 16, + "community_name": "get_library", + "file_type": "rationale", + "norm_label": "the journal job names the library's groups from the journal (#187).", + "source_file": "tests/test_journal.py", + "source_location": "L80" }, { "id": "tests_test_remote_find_rationale_1", "label": "Remote folder find via cellpy's filefinder (#162). No live SFTP: everything\u2026", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "rationale", "norm_label": "remote folder find via cellpy's filefinder (#162). no live sftp: everything...", "source_file": "tests/test_remote_find.py", @@ -49776,34 +50178,12 @@ "label": "Record filefinder calls and answer from a canned listing per extension.", "_origin": "ast", "community": 16, - "community_name": "get_settings", + "community_name": "get_library", "file_type": "rationale", "norm_label": "record filefinder calls and answer from a canned listing per extension.", "source_file": "tests/test_remote_find.py", "source_location": "L47" }, - { - "id": "tests_test_uploads_rationale_1", - "label": "Browser upload for served instances (#133). The sandbox (#120) is right to\u2026", - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "browser upload for served instances (#133). the sandbox (#120) is right to...", - "source_file": "tests/test_uploads.py", - "source_location": "L1" - }, - { - "id": "tests_test_uploads_rationale_28", - "label": "A served instance with its data dir under tmp_path.", - "_origin": "ast", - "community": 16, - "community_name": "get_settings", - "file_type": "rationale", - "norm_label": "a served instance with its data dir under tmp_path.", - "source_file": "tests/test_uploads.py", - "source_location": "L28" - }, { "id": "agents", "label": "AGENTS.md", @@ -50150,162 +50530,358 @@ "source_location": "L1" }, { - "id": "tools_gen_api_reference_rationale_147", - "label": "Import as far as possible, then getattr the rest.", + "id": "tools_gen_api_reference_rationale_147", + "label": "Import as far as possible, then getattr the rest.", + "_origin": "ast", + "community": 162, + "community_name": "gen_api_reference.py", + "file_type": "rationale", + "norm_label": "import as far as possible, then getattr the rest.", + "source_file": "tools/gen_api_reference.py", + "source_location": "L147" + }, + { + "id": "tools_gen_api_reference_rationale_188", + "label": "How you would write the call: `cellpy.get`, `CellpyCell.get_cap`. A reference\u2026", + "_origin": "ast", + "community": 162, + "community_name": "gen_api_reference.py", + "file_type": "rationale", + "norm_label": "how you would write the call: `cellpy.get`, `cellpycell.get_cap`. a reference...", + "source_file": "tools/gen_api_reference.py", + "source_location": "L188" + }, + { + "id": "tools_gen_api_reference_rationale_200", + "label": "A one-line rendering of what this thing is, from the live object.", + "_origin": "ast", + "community": 162, + "community_name": "gen_api_reference.py", + "file_type": "rationale", + "norm_label": "a one-line rendering of what this thing is, from the live object.", + "source_file": "tools/gen_api_reference.py", + "source_location": "L200" + }, + { + "id": "issueflows_03_solved_issues_issue3_status", + "label": "issue3_status.md", + "_origin": "ast", + "community": 163, + "community_name": "Status \u2014 Issue #3: Manage cells expanded editor", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue3_status.md", + "source_file": ".issueflows/03-solved-issues/issue3_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue3_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 163, + "community_name": "Status \u2014 Issue #3: Manage cells expanded editor", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue3_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue3_status_status_issue_3_manage_cells_expanded_editor", + "label": "Status \u2014 Issue #3: Manage cells expanded editor", + "_origin": "ast", + "community": 163, + "community_name": "Status \u2014 Issue #3: Manage cells expanded editor", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 issue #3: manage cells expanded editor", + "source_file": ".issueflows/03-solved-issues/issue3_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue3_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 163, + "community_name": "Status \u2014 Issue #3: Manage cells expanded editor", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue3_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue60_original", + "label": "issue60_original.md", + "_origin": "ast", + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue60_original.md", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L22" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_issue_60_fix_summary_y_ranges_warn_miss_on_charge_capacity_facet", + "label": "Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet", + "_origin": "ast", + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #60: fix: summary y_ranges warn/miss on charge_capacity facet", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_out_of_scope", + "label": "Out of scope", + "_origin": "ast", + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L27" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_problem_context", + "label": "Problem / context", + "_origin": "ast", + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue60_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue60_original.md", + "source_location": "L16" + }, + { + "id": "issueflows_03_solved_issues_issue81_plan", + "label": "issue81_plan.md", + "_origin": "ast", + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue81_plan.md", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue81_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L27" + }, + { + "id": "issueflows_03_solved_issues_issue81_plan_constraints", + "label": "Constraints", "_origin": "ast", - "community": 162, - "community_name": "gen_api_reference.py", - "file_type": "rationale", - "norm_label": "import as far as possible, then getattr the rest.", - "source_file": "tools/gen_api_reference.py", - "source_location": "L147" + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L9" }, { - "id": "tools_gen_api_reference_rationale_188", - "label": "How you would write the call: `cellpy.get`, `CellpyCell.get_cap`. A reference\u2026", + "id": "issueflows_03_solved_issues_issue81_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", - "community": 162, - "community_name": "gen_api_reference.py", - "file_type": "rationale", - "norm_label": "how you would write the call: `cellpy.get`, `cellpycell.get_cap`. a reference...", - "source_file": "tools/gen_api_reference.py", - "source_location": "L188" + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L49" }, { - "id": "tools_gen_api_reference_rationale_200", - "label": "A one-line rendering of what this thing is, from the live object.", + "id": "issueflows_03_solved_issues_issue81_plan_goal", + "label": "Goal", "_origin": "ast", - "community": 162, - "community_name": "gen_api_reference.py", - "file_type": "rationale", - "norm_label": "a one-line rendering of what this thing is, from the live object.", - "source_file": "tools/gen_api_reference.py", - "source_location": "L200" + "community": 164, + "community_name": "summary_columns_for", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue3_status", - "label": "issue3_status.md", + "id": "issueflows_03_solved_issues_issue81_plan_issue_81_plan_consistent_ce_summary_panel_order", + "label": "Issue #81 \u2014 Plan: consistent CE summary panel order", "_origin": "ast", - "community": 163, - "community_name": "Status \u2014 Issue #3: Manage cells expanded editor", + "community": 164, + "community_name": "summary_columns_for", "file_type": "document", - "node_kind": "page", - "norm_label": "issue3_status.md", - "source_file": ".issueflows/03-solved-issues/issue3_status.md", + "node_kind": "heading", + "norm_label": "issue #81 \u2014 plan: consistent ce summary panel order", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue3_status_remaining_work", - "label": "Remaining work", + "id": "issueflows_03_solved_issues_issue81_plan_open_questions", + "label": "Open questions", "_origin": "ast", - "community": 163, - "community_name": "Status \u2014 Issue #3: Manage cells expanded editor", + "community": 164, + "community_name": "summary_columns_for", "file_type": "document", "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue3_status.md", - "source_location": "L14" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L67" }, { - "id": "issueflows_03_solved_issues_issue3_status_status_issue_3_manage_cells_expanded_editor", - "label": "Status \u2014 Issue #3: Manage cells expanded editor", + "id": "issueflows_03_solved_issues_issue81_plan_prior_art", + "label": "Prior art", "_origin": "ast", - "community": 163, - "community_name": "Status \u2014 Issue #3: Manage cells expanded editor", + "community": 164, + "community_name": "summary_columns_for", "file_type": "document", "node_kind": "heading", - "norm_label": "status \u2014 issue #3: manage cells expanded editor", - "source_file": ".issueflows/03-solved-issues/issue3_status.md", - "source_location": "L1" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L18" }, { - "id": "issueflows_03_solved_issues_issue3_status_what_s_done", - "label": "What's done", + "id": "issueflows_03_solved_issues_issue81_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", - "community": 163, - "community_name": "Status \u2014 Issue #3: Manage cells expanded editor", + "community": 164, + "community_name": "summary_columns_for", "file_type": "document", "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue3_status.md", - "source_location": "L5" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_location": "L59" }, { - "id": "cursor_skills_gh_ci_skill", - "label": "gh-ci/SKILL.md", + "id": "issueflows_03_solved_issues_issue81_status", + "label": "issue81_status.md", "_origin": "ast", "community": 164, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", + "community_name": "summary_columns_for", "file_type": "document", - "frontmatter": { - "name": "gh-ci", - "description": ">-", - "issue-flow-version": "0.4.2a4" - }, "node_kind": "page", - "norm_label": "gh-ci/skill.md", - "source_file": ".cursor/skills/gh-ci/SKILL.md", + "norm_label": "issue81_status.md", + "source_file": ".issueflows/03-solved-issues/issue81_status.md", "source_location": "L1" }, { - "id": "cursor_skills_gh_ci_skill_fallback_workflow_runs", - "label": "Fallback (workflow runs)", + "id": "issueflows_03_solved_issues_issue81_status_issue_81_status", + "label": "Issue #81 \u2014 Status", "_origin": "ast", "community": 164, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", + "community_name": "summary_columns_for", "file_type": "document", "node_kind": "heading", - "norm_label": "fallback (workflow runs)", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L34" + "norm_label": "issue #81 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue81_status.md", + "source_location": "L1" }, { - "id": "cursor_skills_gh_ci_skill_gh_ci_wait_on_github_ci_with_gh", - "label": "gh-ci \u2014 wait on GitHub CI with `gh`", + "id": "issueflows_03_solved_issues_issue81_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 164, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", + "community_name": "summary_columns_for", "file_type": "document", "node_kind": "heading", - "norm_label": "gh-ci \u2014 wait on github ci with `gh`", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L12" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue81_status.md", + "source_location": "L13" }, { - "id": "cursor_skills_gh_ci_skill_primary_pr_attached_checks", - "label": "Primary (PR-attached checks)", + "id": "issueflows_03_solved_issues_issue81_status_what_s_done", + "label": "What's done", "_origin": "ast", "community": 164, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", + "community_name": "summary_columns_for", "file_type": "document", "node_kind": "heading", - "norm_label": "primary (pr-attached checks)", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L17" + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue81_status.md", + "source_location": "L5" }, { - "id": "cursor_skills_gh_ci_skill_semantics", - "label": "Semantics", + "id": "src_cellpy_simple_gui_core_collect_rationale_294", + "label": "Columns for a registry family, resolved against the loaded cells.", "_origin": "ast", "community": 164, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "semantics", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L47" + "community_name": "summary_columns_for", + "file_type": "rationale", + "norm_label": "columns for a registry family, resolved against the loaded cells.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L294" }, { - "id": "cursor_skills_gh_ci_skill_where_this_fits", - "label": "Where this fits", + "id": "src_cellpy_simple_gui_core_collect_rationale_387", + "label": "Short UI label for a summary facet column id.", "_origin": "ast", "community": 164, - "community_name": "gh-ci \u2014 wait on GitHub CI with `gh`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "where this fits", - "source_file": ".cursor/skills/gh-ci/SKILL.md", - "source_location": "L55" + "community_name": "summary_columns_for", + "file_type": "rationale", + "norm_label": "short ui label for a summary facet column id.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L387" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_459", + "label": "Panel descriptors (column id + short label) for summary y-range widgets.", + "_origin": "ast", + "community": 164, + "community_name": "summary_columns_for", + "file_type": "rationale", + "norm_label": "panel descriptors (column id + short label) for summary y-range widgets.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L459" }, { "id": "issueflows_03_solved_issues_issue47_status", @@ -50481,90 +51057,109 @@ "source_location": "L16" }, { - "id": "packaging_smoke_test_rationale_55", - "label": "A capability this machine genuinely lacks, as opposed to a broken build.\u2026", + "id": "issueflows_03_solved_issues_issue32_original", + "label": "issue32_original.md", "_origin": "ast", "community": 168, - "community_name": "Client", - "file_type": "rationale", - "norm_label": "a capability this machine genuinely lacks, as opposed to a broken build....", - "source_file": "packaging/smoke_test.py", - "source_location": "L55" + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue32_original.md", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L1" }, { - "id": "packaging_smoke_test_rationale_92", - "label": "Talks to an app that is already serving.", + "id": "issueflows_03_solved_issues_issue32_original_acceptance_criteria", + "label": "Acceptance criteria", "_origin": "ast", "community": 168, - "community_name": "Client", - "file_type": "rationale", - "norm_label": "talks to an app that is already serving.", - "source_file": "packaging/smoke_test.py", - "source_location": "L92" + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L19" }, { - "id": "tests_test_mcp_prototype_rationale_210", - "label": "The design doc lists these; drift makes the doc wrong, not the code.", + "id": "issueflows_03_solved_issues_issue32_original_comments_curated_summary", + "label": "Comments (curated summary)", "_origin": "ast", "community": 168, - "community_name": "Client", - "file_type": "rationale", - "norm_label": "the design doc lists these; drift makes the doc wrong, not the code.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L210" + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "comments (curated summary)", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L33" }, { - "id": "dataframe", - "label": "DataFrame", + "id": "issueflows_03_solved_issues_issue32_original_issue_32_plot_appearance_options_color_scheme_and_figure_theme", + "label": "Issue #32: Plot appearance options: color scheme and figure theme", "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "dataframe", - "source_file": "", - "source_location": "" + "community": 168, + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #32: plot appearance options: color scheme and figure theme", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L1" }, { - "id": "examples_starter_app", - "label": "starter/app.py", + "id": "issueflows_03_solved_issues_issue32_original_original_issue_text", + "label": "Original issue text", "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "starter/app.py", - "source_file": "examples/starter/app.py", - "source_location": "L1" + "community": 168, + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L5" }, { - "id": "examples_starter_app_py_any", - "label": "Any", + "id": "issueflows_03_solved_issues_issue32_original_out_of_scope", + "label": "Out of scope", "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "any", - "source_file": "", - "source_location": "" + "community": 168, + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L27" }, { - "id": "examples_starter_app_py_delete", - "label": "delete", + "id": "issueflows_03_solved_issues_issue32_original_problem_context", + "label": "Problem / context", "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "delete", - "source_file": "", - "source_location": "" + "community": 168, + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L7" }, { - "id": "examples_starter_app_py_post", - "label": "post", + "id": "issueflows_03_solved_issues_issue32_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 168, + "community_name": "Issue #32: Plot appearance options: color scheme and figure theme", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue32_original.md", + "source_location": "L11" + }, + { + "id": "dataframe", + "label": "DataFrame", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "code", - "norm_label": "post", + "norm_label": "dataframe", "source_file": "", "source_location": "" }, @@ -50590,17 +51185,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_any", - "label": "Any", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "any", - "source_file": "", - "source_location": "" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_baseexception", "label": "BaseException", @@ -50613,160 +51197,19 @@ "source_location": "" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_exception", - "label": "Exception", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "exception", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_path", - "label": "Path", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_progressfn", - "label": "ProgressFn", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "code", - "norm_label": "progressfn", - "source_file": "", - "source_location": "" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L141" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan", - "label": "issue19_plan.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue19_plan.md", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan_plan_issue_19_journal_load_error_surfacing", - "label": "Plan: Issue #19 \u2014 journal load error surfacing", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plan: issue #19 \u2014 journal load error surfacing", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue19_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue19_plan.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue19_status", - "label": "issue19_status.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue19_status.md", - "source_file": ".issueflows/03-solved-issues/issue19_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue19_status_done", - "label": "Done", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "done", - "source_file": ".issueflows/03-solved-issues/issue19_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue19_status_status_issue_19_journal_load_errors", - "label": "Status: Issue #19 \u2014 journal load errors", + "id": "cellpy_painpoints_5_instrument_discovery_logs_a_warning_per_non_loader_module", + "label": "5. \ud83d\udfe0 Instrument discovery logs a WARNING per non-loader module", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", - "norm_label": "status: issue #19 \u2014 journal load errors", - "source_file": ".issueflows/03-solved-issues/issue19_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue28_plan", - "label": "issue28_plan.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue28_plan.md", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L1" + "norm_label": "5. \ud83d\udfe0 instrument discovery logs a warning per non-loader module", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L219" }, { - "id": "issueflows_03_solved_issues_issue28_plan_approach", + "id": "issueflows_03_solved_issues_issue162_plan_approach", "label": "Approach", "_origin": "ast", "community": 17, @@ -50774,11 +51217,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L28" + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L77" }, { - "id": "issueflows_03_solved_issues_issue28_plan_constraints", + "id": "issueflows_03_solved_issues_issue162_plan_constraints", "label": "Constraints", "_origin": "ast", "community": 17, @@ -50786,11 +51229,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L7" + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L11" }, { - "id": "issueflows_03_solved_issues_issue28_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue162_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 17, @@ -50798,11 +51241,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L50" + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L141" }, { - "id": "issueflows_03_solved_issues_issue28_plan_goal", + "id": "issueflows_03_solved_issues_issue162_plan_goal", "label": "Goal", "_origin": "ast", "community": 17, @@ -50810,23 +51253,23 @@ "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue28_plan_issue_28_plan_export_cells_from_manage_cells", - "label": "Issue #28 plan \u2014 Export cells from Manage cells", + "id": "issueflows_03_solved_issues_issue162_plan_issue_162_plan_remote_file_find_via_cellpy_filefinder_otherpath_phase_2", + "label": "Issue #162 \u2014 Plan: remote file find via `cellpy.filefinder` (OtherPath phase 2)", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #28 plan \u2014 export cells from manage cells", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "norm_label": "issue #162 \u2014 plan: remote file find via `cellpy.filefinder` (otherpath phase 2)", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue28_plan_open_questions", + "id": "issueflows_03_solved_issues_issue162_plan_open_questions", "label": "Open questions", "_origin": "ast", "community": 17, @@ -50834,191 +51277,47 @@ "file_type": "document", "node_kind": "heading", "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L71" - }, - { - "id": "issueflows_03_solved_issues_issue28_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue28_plan.md", - "source_location": "L64" - }, - { - "id": "issueflows_03_solved_issues_issue28_status", - "label": "issue28_status.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue28_status.md", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue28_status_issue_28_status_export_cells_from_manage_cells", - "label": "Issue #28 status \u2014 Export cells from Manage cells", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #28 status \u2014 export cells from manage cells", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue28_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue28_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue28_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L39" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_phase_a_bump_smoke", - "label": "Phase A \u2014 bump + smoke", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase a \u2014 bump + smoke", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L44" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_phase_b_written_inventory", - "label": "Phase B \u2014 written inventory", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase b \u2014 written inventory", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L51" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_phase_c_implement_delegate_now", - "label": "Phase C \u2014 implement \u201cdelegate now\u201d", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase c \u2014 implement \u201cdelegate now\u201d", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L69" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_phase_d_docs", - "label": "Phase D \u2014 docs", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase d \u2014 docs", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L89" - }, - { - "id": "issueflows_03_solved_issues_issue52_status", - "label": "issue52_status.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue52_status.md", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue52_status_issue_52_status", - "label": "Issue #52 \u2014 Status", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #52 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L1" + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L176" }, { - "id": "issueflows_03_solved_issues_issue52_status_remaining_work", - "label": "Remaining work", + "id": "issueflows_03_solved_issues_issue162_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L15" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L35" }, { - "id": "issueflows_03_solved_issues_issue52_status_what_s_done", - "label": "What's done", + "id": "issueflows_03_solved_issues_issue162_plan_scope_check", + "label": "Scope check", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue52_status.md", - "source_location": "L5" + "norm_label": "scope check", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", + "source_location": "L191" }, { - "id": "issueflows_03_solved_issues_issue69_plan", - "label": "issue69_plan.md", + "id": "issueflows_03_solved_issues_issue41_plan", + "label": "issue41_plan.md", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "page", - "norm_label": "issue69_plan.md", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "norm_label": "issue41_plan.md", + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue69_plan_approach", + "id": "issueflows_03_solved_issues_issue41_plan_approach", "label": "Approach", "_origin": "ast", "community": 17, @@ -51026,11 +51325,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L26" + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue69_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue41_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 17, @@ -51038,11 +51337,11 @@ "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L36" + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", + "source_location": "L15" }, { - "id": "issueflows_03_solved_issues_issue69_plan_goal", + "id": "issueflows_03_solved_issues_issue41_plan_goal", "label": "Goal", "_origin": "ast", "community": 17, @@ -51050,171 +51349,32 @@ "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue69_plan_issue_69_plan_edit_cell_metadata", - "label": "Issue #69 \u2014 Plan: edit cell metadata", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #69 \u2014 plan: edit cell metadata", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue69_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L59" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L15" - }, - { - "id": "issueflows_04_designs_and_guides_manage_cells_modal", - "label": "manage-cells-modal.md", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "manage-cells-modal.md", - "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_manage_cells_modal_behaviour", - "label": "Behaviour", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "behaviour", - "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", - "source_location": "L5" - }, - { - "id": "issueflows_04_designs_and_guides_manage_cells_modal_manage_cells_modal", - "label": "Manage cells modal", + "id": "issueflows_03_solved_issues_issue41_plan_plan_issue_41", + "label": "Plan \u2014 Issue #41", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", - "norm_label": "manage cells modal", - "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "norm_label": "plan \u2014 issue #41", + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_manage_cells_modal_plot_refresh_timing_issue_184", - "label": "Plot refresh timing (issue #184)", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plot refresh timing (issue #184)", - "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", - "source_location": "L24" - }, - { - "id": "issueflows_04_designs_and_guides_manage_cells_modal_ui_location", - "label": "UI location", + "id": "issueflows_03_solved_issues_issue41_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "document", "node_kind": "heading", - "norm_label": "ui location", - "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", - "source_location": "L41" - }, - { - "id": "examples_starter_app_rationale_10", - "label": "A cellpy app in one file: load cells, plot them, export the numbers. uv run\u2026", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "a cellpy app in one file: load cells, plot them, export the numbers. uv run...", - "source_file": "examples/starter/app.py", - "source_location": "L10" - }, - { - "id": "examples_starter_app_rationale_113", - "label": "Store a cell under a name that is not already taken.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "store a cell under a name that is not already taken.", - "source_file": "examples/starter/app.py", - "source_location": "L113" - }, - { - "id": "examples_starter_app_rationale_231", - "label": "Load the demo cell (``{\"example\": true}``) or files (``{\"paths\": [...]}``).", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "load the demo cell (``{\"example\": true}``) or files (``{\"paths\": [...]}``).", - "source_file": "examples/starter/app.py", - "source_location": "L231" - }, - { - "id": "examples_starter_app_rationale_86", - "label": "Load cellpy's bundled demo cell. Downloads once, then caches.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "load cellpy's bundled demo cell. downloads once, then caches.", - "source_file": "examples/starter/app.py", - "source_location": "L86" - }, - { - "id": "examples_starter_app_rationale_96", - "label": "Load one file. ``instrument=None`` lets cellpy decide from the suffix. ``mass``\u2026", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "load one file. ``instrument=none`` lets cellpy decide from the suffix. ``mass``...", - "source_file": "examples/starter/app.py", - "source_location": "L96" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue41_plan.md", + "source_location": "L22" }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_1", @@ -51249,39 +51409,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L206" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_221", - "label": "Describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L221" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_228", - "label": "Peek cellpy-file metadata without loading raw/steps/summary (#799).", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "peek cellpy-file metadata without loading raw/steps/summary (#799).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L228" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_292", - "label": "Hint when the cellpy-native HDF5 reader ran instead of a raw loader.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "hint when the cellpy-native hdf5 reader ran instead of a raw loader.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L292" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_304", "label": "Return the path to a bundled example raw file (downloading if needed).", @@ -51293,28 +51420,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L304" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_322", - "label": "Local path string or remote URI suitable for ``cellpy.get`` (#160).", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "local path string or remote uri suitable for ``cellpy.get`` (#160).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L322" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_341", - "label": "Load a cellpy file (``.cellpy`` / legacy ``.h5``) from disk or remote URI.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "load a cellpy file (``.cellpy`` / legacy ``.h5``) from disk or remote uri.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L341" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_371", "label": "Result of :func:`find_remote_files`. ``paths`` is the capped, de-duplicated\u2026", @@ -51381,17 +51486,6 @@ "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", "source_location": "L557" }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_573", - "label": "Load a cellpy batch journal (.json) and return ``(label, cell, group)``. Uses\u2026", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "load a cellpy batch journal (.json) and return ``(label, cell, group)``. uses...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L573" - }, { "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_61", "label": "Load one bundled example cell. Returns a ``CellpyCell``. ``kind`` is one of\u2026", @@ -51404,40 +51498,7 @@ "source_location": "L61" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_718", - "label": "Write a cell to a self-contained ``.cellpy`` file (overwriting).", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "write a cell to a self-contained ``.cellpy`` file (overwriting).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L718" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_725", - "label": "Write a cell via cellpy ``to_excel`` (default sheets / options).", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "write a cell via cellpy ``to_excel`` (default sheets / options).", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L725" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_732", - "label": "Write cellpy ``to_csv`` outputs into ``datadir``; return created files.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "write cellpy ``to_csv`` outputs into ``datadir``; return created files.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L732" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_742", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_766", "label": "Refresh the summary after a physical meta change. cellpy \u22652.1.2a4 exposes\u2026", "_origin": "ast", "community": 17, @@ -51445,95 +51506,40 @@ "file_type": "rationale", "norm_label": "refresh the summary after a physical meta change. cellpy \u22652.1.2a4 exposes...", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L742" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_769", - "label": "Assign physical meta knobs and refresh the summary once. Returns the names of\u2026", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "assign physical meta knobs and refresh the summary once. returns the names of...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L769" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_798", - "label": "Update the active-material mass and refresh the summary.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "update the active-material mass and refresh the summary.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L798" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_803", - "label": "Update active electrode area (cm\u00b2) and refresh the summary.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "update active electrode area (cm2) and refresh the summary.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L803" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_808", - "label": "Update nominal capacity and refresh the summary.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "update nominal capacity and refresh the summary.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L808" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_813", - "label": "Update nominal-capacity basis and refresh the summary.", - "_origin": "ast", - "community": 17, - "community_name": "cellpy_adapter.py", - "file_type": "rationale", - "norm_label": "update nominal-capacity basis and refresh the summary.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L813" + "source_location": "L766" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_818", - "label": "Update cycle mode (anode/cathode/full_cell) and refresh the summary.", + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_85", + "label": "The available instrument loaders (id / label / models / suffixes). Uses\u2026", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "rationale", - "norm_label": "update cycle mode (anode/cathode/full_cell) and refresh the summary.", + "norm_label": "the available instrument loaders (id / label / models / suffixes). uses...", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L818" + "source_location": "L85" }, { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_85", - "label": "The available instrument loaders (id / label / models / suffixes). Uses\u2026", + "id": "src_cellpy_simple_gui_core_paths_rationale_50", + "label": "True when this instance may open SSH/SFTP remotes (#160). Same gate as host\u2026", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "rationale", - "norm_label": "the available instrument loaders (id / label / models / suffixes). uses...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L85" + "norm_label": "true when this instance may open ssh/sftp remotes (#160). same gate as host...", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L50" }, { - "id": "src_cellpy_simple_gui_core_export_rationale_236", - "label": "Write one cell into ``work``; return (archive_name, path) pairs.", + "id": "tests_test_api_reference_rationale_98", + "label": "Independent of any cellpy version: two committed files, same bytes. This is the\u2026", "_origin": "ast", "community": 17, "community_name": "cellpy_adapter.py", "file_type": "rationale", - "norm_label": "write one cell into ``work``; return (archive_name, path) pairs.", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L236" + "norm_label": "independent of any cellpy version: two committed files, same bytes. this is the...", + "source_file": "tests/test_api_reference.py", + "source_location": "L98" }, { "id": "issueflows_03_solved_issues_issue58_status", @@ -51715,6 +51721,28 @@ "source_file": "docs/guides/06-state-and-threading.md", "source_location": "L77" }, + { + "id": "src_cellpy_simple_gui_api_jobs_rationale_121", + "label": "A fixed set of daemon worker threads consuming a queue. Workers are daemons so\u2026", + "_origin": "ast", + "community": 172, + "community_name": "6. Process state and threading", + "file_type": "rationale", + "norm_label": "a fixed set of daemon worker threads consuming a queue. workers are daemons so...", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L121" + }, + { + "id": "src_cellpy_simple_gui_api_jobs_rationale_165", + "label": "Retire the workers. Never waits \u2014 a stuck job would block exit.", + "_origin": "ast", + "community": 172, + "community_name": "6. Process state and threading", + "file_type": "rationale", + "norm_label": "retire the workers. never waits \u2014 a stuck job would block exit.", + "source_file": "src/cellpy_simple_gui/api/jobs.py", + "source_location": "L165" + }, { "id": "issueflows_03_solved_issues_issue73_plan", "label": "issue73_plan.md", @@ -52063,17 +52091,6 @@ "source_file": ".issueflows/03-solved-issues/issue14_original.md", "source_location": "L5" }, - { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a_mouse", - "label": ".mouse()", - "_origin": "ast", - "community": 18, - "community_name": "g", - "file_type": "code", - "norm_label": ".mouse()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" - }, { "id": "issueflows_03_solved_issues_issue14_status", "label": "issue14_status.md", @@ -52632,39 +52649,6 @@ "source_file": ".cursor/skills/iflow-comments/SKILL.md", "source_location": "L46" }, - { - "id": "tests_test_api_rationale_524", - "label": "Every state key, getter and method declared at the top level of app().", - "_origin": "ast", - "community": 190, - "community_name": "test_index_click_and_show_targets_exist", - "file_type": "rationale", - "norm_label": "every state key, getter and method declared at the top level of app().", - "source_file": "tests/test_api.py", - "source_location": "L524" - }, - { - "id": "tests_test_api_rationale_540", - "label": "Identifiers an Alpine expression reads from the component scope. Property\u2026", - "_origin": "ast", - "community": 190, - "community_name": "test_index_click_and_show_targets_exist", - "file_type": "rationale", - "norm_label": "identifiers an alpine expression reads from the component scope. property...", - "source_file": "tests/test_api.py", - "source_location": "L540" - }, - { - "id": "tests_test_api_rationale_562", - "label": "Every ``@click`` / ``x-show`` in the template resolves in the component. The\u2026", - "_origin": "ast", - "community": 190, - "community_name": "test_index_click_and_show_targets_exist", - "file_type": "rationale", - "norm_label": "every ``@click`` / ``x-show`` in the template resolves in the component. the...", - "source_file": "tests/test_api.py", - "source_location": "L562" - }, { "id": "issueflows_03_solved_issues_issue36_status", "label": "issue36_status.md", @@ -52701,12 +52685,132 @@ "source_file": ".issueflows/03-solved-issues/issue36_status.md", "source_location": "L1" }, + { + "id": "docs_api_reference_attributes_worth_knowing", + "label": "Attributes worth knowing", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "attributes worth knowing", + "source_file": "docs/api-reference.md", + "source_location": "L277" + }, + { + "id": "docs_api_reference_cellpy_api_surface", + "label": "cellpy API surface", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "cellpy api surface", + "source_file": "docs/api-reference.md", + "source_location": "L1" + }, + { + "id": "docs_api_reference_cells_into_a_collection", + "label": "Cells into a Collection", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "cells into a collection", + "source_file": "docs/api-reference.md", + "source_location": "L104" + }, + { + "id": "docs_api_reference_collect_options", + "label": "Collect options", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "collect options", + "source_file": "docs/api-reference.md", + "source_location": "L138" + }, + { + "id": "docs_api_reference_configuration", + "label": "Configuration", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "configuration", + "source_file": "docs/api-reference.md", + "source_location": "L243" + }, + { + "id": "docs_api_reference_figures_to_bytes", + "label": "Figures to bytes", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "figures to bytes", + "source_file": "docs/api-reference.md", + "source_location": "L229" + }, + { + "id": "docs_api_reference_loading", + "label": "Loading", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "loading", + "source_file": "docs/api-reference.md", + "source_location": "L16" + }, + { + "id": "docs_api_reference_one_cell", + "label": "One cell", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "one cell", + "source_file": "docs/api-reference.md", + "source_location": "L70" + }, + { + "id": "docs_api_reference_single_cell_plots", + "label": "Single-cell plots", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "single-cell plots", + "source_file": "docs/api-reference.md", + "source_location": "L210" + }, + { + "id": "docs_api_reference_the_plot_registry", + "label": "The plot registry", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "the plot registry", + "source_file": "docs/api-reference.md", + "source_location": "L186" + }, { "id": "docs_guides_05_configuration_5_configuration", "label": "5. Configuration", "_origin": "ast", "community": 192, - "community_name": "5. Configuration", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "5. configuration", @@ -52718,7 +52822,7 @@ "label": "Changing settings", "_origin": "ast", "community": 192, - "community_name": "5. Configuration", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "changing settings", @@ -52730,19 +52834,31 @@ "label": "Credentials", "_origin": "ast", "community": 192, - "community_name": "5. Configuration", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "credentials", "source_file": "docs/guides/05-configuration.md", "source_location": "L162" }, + { + "id": "docs_guides_05_configuration_never_write_the_user_s_config_file", + "label": "Never write the user's config file", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "never write the user's config file", + "source_file": "docs/guides/05-configuration.md", + "source_location": "L124" + }, { "id": "docs_guides_05_configuration_the_layers", "label": "The layers", "_origin": "ast", "community": 192, - "community_name": "5. Configuration", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "the layers", @@ -52754,7 +52870,7 @@ "label": "The relative-path trap", "_origin": "ast", "community": 192, - "community_name": "5. Configuration", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "the relative-path trap", @@ -52766,7 +52882,7 @@ "label": "Where to go next", "_origin": "ast", "community": 192, - "community_name": "5. Configuration", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "where to go next", @@ -52778,13 +52894,96 @@ "label": "Which file actually won, and where each value came from", "_origin": "ast", "community": 192, - "community_name": "5. Configuration", + "community_name": "cellpy API surface", "file_type": "document", "node_kind": "heading", "norm_label": "which file actually won, and where each value came from", "source_file": "docs/guides/05-configuration.md", "source_location": "L38" }, + { + "id": "readme_find_files_in_a_remote_folder", + "label": "Find files in a remote folder", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "find files in a remote folder", + "source_file": "README.md", + "source_location": "L378" + }, + { + "id": "readme_moving_the_data_directory", + "label": "Moving the data directory", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "moving the data directory", + "source_file": "README.md", + "source_location": "L290" + }, + { + "id": "readme_per_project_cellpy_settings", + "label": "Per-project cellpy settings", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "per-project cellpy settings", + "source_file": "README.md", + "source_location": "L392" + }, + { + "id": "readme_projects_on_disk", + "label": "Projects on disk", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "projects on disk", + "source_file": "README.md", + "source_location": "L264" + }, + { + "id": "readme_remote_files_ssh_sftp", + "label": "Remote files (SSH / SFTP)", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remote files (ssh / sftp)", + "source_file": "README.md", + "source_location": "L352" + }, + { + "id": "skills_cellpy_app_reference_api_reference_configuration", + "label": "Configuration", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "document", + "node_kind": "heading", + "norm_label": "configuration", + "source_file": "skills/cellpy-app/reference/api-reference.md", + "source_location": "L243" + }, + { + "id": "examples_starter_app_rationale_123", + "label": "Every loader cellpy can offer on this machine. Discovered at runtime, so the\u2026", + "_origin": "ast", + "community": 192, + "community_name": "cellpy API surface", + "file_type": "rationale", + "norm_label": "every loader cellpy can offer on this machine. discovered at runtime, so the...", + "source_file": "examples/starter/app.py", + "source_location": "L123" + }, { "id": "issueflows_03_solved_issues_issue39_status", "label": "issue39_status.md", @@ -52953,6 +53152,203 @@ "source_file": ".issueflows/04-designs-and-guides/branding-assets.md", "source_location": "L1" }, + { + "id": "basesettings", + "label": "BaseSettings", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "code", + "norm_label": "basesettings", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_config_py_field_validator", + "label": "field_validator", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "code", + "norm_label": "field_validator", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_config_py_path", + "label": "Path", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs", + "label": "next-phase-deployment-and-docs.md", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "document", + "node_kind": "page", + "norm_label": "next-phase-deployment-and-docs.md", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L1" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_decisions_taken_up_front", + "label": "Decisions taken up front", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "document", + "node_kind": "heading", + "norm_label": "decisions taken up front", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L16" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_issues", + "label": "Issues", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issues", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L239" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_1_headless_ready", + "label": "Milestone 1 \u2014 Headless-ready", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "document", + "node_kind": "heading", + "norm_label": "milestone 1 \u2014 headless-ready", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L71" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_2_two_ways_to_run_it", + "label": "Milestone 2 \u2014 Two ways to run it", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "document", + "node_kind": "heading", + "norm_label": "milestone 2 \u2014 two ways to run it", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L96" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_3_build_your_own_cellpy_app", + "label": "Milestone 3 \u2014 Build your own cellpy app", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "document", + "node_kind": "heading", + "norm_label": "milestone 3 \u2014 build your own cellpy app", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L148" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_next_phase_deployment_routes_and_app_builder_documentation", + "label": "Next phase \u2014 deployment routes and app-builder documentation", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "document", + "node_kind": "heading", + "norm_label": "next phase \u2014 deployment routes and app-builder documentation", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L1" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_risks", + "label": "Risks", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "document", + "node_kind": "heading", + "norm_label": "risks", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L216" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_sequencing", + "label": "Sequencing", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "document", + "node_kind": "heading", + "norm_label": "sequencing", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L229" + }, + { + "id": "issueflows_05_epics_next_phase_deployment_and_docs_what_the_current_architecture_already_decides_for_us", + "label": "What the current architecture already decides for us", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what the current architecture already decides for us", + "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", + "source_location": "L29" + }, + { + "id": "src_cellpy_simple_gui_config_rationale_61", + "label": "``~`` and relative paths are normal in env vars; resolve them once. Resolving\u2026", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "rationale", + "norm_label": "``~`` and relative paths are normal in env vars; resolve them once. resolving...", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L61" + }, + { + "id": "tests_test_projects_rationale_574", + "label": "A container points this at a volume (#119).", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "rationale", + "norm_label": "a container points this at a volume (#119).", + "source_file": "tests/test_projects.py", + "source_location": "L574" + }, + { + "id": "tests_test_projects_rationale_583", + "label": "Env vars carry ~ and relative paths; downstream wants one canonical root.", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "rationale", + "norm_label": "env vars carry ~ and relative paths; downstream wants one canonical root.", + "source_file": "tests/test_projects.py", + "source_location": "L583" + }, + { + "id": "tests_test_projects_rationale_596", + "label": "Settings must not touch the filesystem \u2014 writers create what they need.", + "_origin": "ast", + "community": 20, + "community_name": "Settings", + "file_type": "rationale", + "norm_label": "settings must not touch the filesystem \u2014 writers create what they need.", + "source_file": "tests/test_projects.py", + "source_location": "L596" + }, { "id": "run", "label": "run", @@ -52997,60 +53393,214 @@ "type": "package" }, { - "id": "tests_test_packaging_rationale_30", - "label": "Import packaging/entry.py without it being on sys.path.", + "id": "tests_test_mcp_prototype", + "label": "test_mcp_prototype.py", "_origin": "ast", - "community": 202, - "community_name": "_load_entry", - "file_type": "rationale", - "norm_label": "import packaging/entry.py without it being on sys.path.", - "source_file": "tests/test_packaging.py", - "source_location": "L30" + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "test_mcp_prototype.py", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L1" }, { - "id": "tests_test_packaging_rationale_38", - "label": "The two are duplicated deliberately; this is the thing keeping them honest.\u2026", + "id": "tests_test_mcp_prototype_py_fixture", + "label": "fixture", "_origin": "ast", - "community": 202, - "community_name": "_load_entry", - "file_type": "rationale", - "norm_label": "the two are duplicated deliberately; this is the thing keeping them honest....", - "source_file": "tests/test_packaging.py", - "source_location": "L38" + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "code", + "norm_label": "fixture", + "source_file": "", + "source_location": "" }, { "id": "tests_test_mcp_prototype_py_parametrize", "label": "parametrize", "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "code", "norm_label": "parametrize", "source_file": "", "source_location": "" }, + { + "id": "packaging_smoke_test_rationale_92", + "label": "Talks to an app that is already serving.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "talks to an app that is already serving.", + "source_file": "packaging/smoke_test.py", + "source_location": "L92" + }, + { + "id": "tests_test_mcp_prototype_rationale_1", + "label": "Drive the MCP prototype over the real protocol (#128). A prototype exists to\u2026", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "drive the mcp prototype over the real protocol (#128). a prototype exists to...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L1" + }, + { + "id": "tests_test_mcp_prototype_rationale_110", + "label": "The trap made visible: fewer points than rows, reported rather than hidden.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "the trap made visible: fewer points than rows, reported rather than hidden.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L110" + }, + { + "id": "tests_test_mcp_prototype_rationale_122", + "label": "Only preview returns rows, and it caps whatever it is asked for.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "only preview returns rows, and it caps whatever it is asked for.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L122" + }, { "id": "tests_test_mcp_prototype_rationale_167", "label": "The caller is a model acting on text it may have read somewhere.", "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "rationale", "norm_label": "the caller is a model acting on text it may have read somewhere.", "source_file": "tests/test_mcp_prototype.py", "source_location": "L167" }, + { + "id": "tests_test_mcp_prototype_rationale_178", + "label": "A write primitive outside the boundary would make the read check decor.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "a write primitive outside the boundary would make the read check decor.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L178" + }, + { + "id": "tests_test_mcp_prototype_rationale_196", + "label": "Error text is read by a model, so it has to name the next call.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "error text is read by a model, so it has to name the next call.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L196" + }, + { + "id": "tests_test_mcp_prototype_rationale_210", + "label": "The design doc lists these; drift makes the doc wrong, not the code.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "the design doc lists these; drift makes the doc wrong, not the code.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L210" + }, + { + "id": "tests_test_mcp_prototype_rationale_243", + "label": "The finding this family turns on. `CellpyCell.get_cap` points at the\u2026", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "the finding this family turns on. `cellpycell.get_cap` points at the...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L243" + }, + { + "id": "tests_test_mcp_prototype_rationale_264", + "label": "`self` in a rendered signature invites a model to pass it.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "`self` in a rendered signature invites a model to pass it.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L264" + }, + { + "id": "tests_test_mcp_prototype_rationale_276", + "label": "Resolving a dotted path is importing it, and the caller is a model. The refusal\u2026", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "resolving a dotted path is importing it, and the caller is a model. the refusal...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L276" + }, + { + "id": "tests_test_mcp_prototype_rationale_297", + "label": "`utils.helpers` re-exports `CellpyCell`; a path through it sends the reader to\u2026", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "`utils.helpers` re-exports `cellpycell`; a path through it sends the reader to...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L297" + }, { "id": "tests_test_mcp_prototype_rationale_311", "label": "The happy path downloads a cookiecutter from GitHub, so CI tests the boundary \u2014\u2026", "_origin": "ast", "community": 204, - "community_name": "steps", + "community_name": "test_mcp_prototype.py", "file_type": "rationale", "norm_label": "the happy path downloads a cookiecutter from github, so ci tests the boundary \u2014...", "source_file": "tests/test_mcp_prototype.py", "source_location": "L311" }, + { + "id": "tests_test_mcp_prototype_rationale_33", + "label": "The server module, with its sandbox pointed at a temp directory. `ROOT` is read\u2026", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "the server module, with its sandbox pointed at a temp directory. `root` is read...", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L33" + }, + { + "id": "tests_test_mcp_prototype_rationale_56", + "label": "Run `steps(call)` against a connected client; return whatever it returns.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "run `steps(call)` against a connected client; return whatever it returns.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L56" + }, + { + "id": "tests_test_mcp_prototype_rationale_78", + "label": "Load -> collect -> render -> export, as a client actually does it.", + "_origin": "ast", + "community": 204, + "community_name": "test_mcp_prototype.py", + "file_type": "rationale", + "norm_label": "load -> collect -> render -> export, as a client actually does it.", + "source_file": "tests/test_mcp_prototype.py", + "source_location": "L78" + }, { "id": "cellpy_painpoints", "label": "CELLPY_PAINPOINTS.md", @@ -53171,42 +53721,6 @@ "source_file": "docs/guides/README.md", "source_location": "L1" }, - { - "id": "examples_mcp_readme", - "label": "mcp/README.md", - "_origin": "ast", - "community": 205, - "community_name": "README.md", - "file_type": "document", - "node_kind": "page", - "norm_label": "mcp/readme.md", - "source_file": "examples/mcp/README.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_agent_docs_test", - "label": "agent-docs-test.md", - "_origin": "ast", - "community": 205, - "community_name": "README.md", - "file_type": "document", - "node_kind": "page", - "norm_label": "agent-docs-test.md", - "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_mcp_server_design", - "label": "mcp-server-design.md", - "_origin": "ast", - "community": 205, - "community_name": "README.md", - "file_type": "document", - "node_kind": "page", - "norm_label": "mcp-server-design.md", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L1" - }, { "id": "readme", "label": "README.md", @@ -53375,42 +53889,6 @@ "source_file": "skills/README.md", "source_location": "L1" }, - { - "id": "issueflows_03_solved_issues_issue31_status", - "label": "issue31_status.md", - "_origin": "ast", - "community": 209, - "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue31_status.md", - "source_file": ".issueflows/03-solved-issues/issue31_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue31_status_issue_31_status_iterative_fixes_export_download_location", - "label": "Issue #31 status \u2014 Iterative fixes: export download location", - "_origin": "ast", - "community": 209, - "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #31 status \u2014 iterative fixes: export download location", - "source_file": ".issueflows/03-solved-issues/issue31_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue31_status_iterative_fixes_log", - "label": "Iterative fixes log", - "_origin": "ast", - "community": 209, - "community_name": "Issue #31 status \u2014 Iterative fixes: export download location", - "file_type": "document", - "node_kind": "heading", - "norm_label": "iterative fixes log", - "source_file": ".issueflows/03-solved-issues/issue31_status.md", - "source_location": "L7" - }, { "id": "packaging_zip_installer", "label": "zip_installer.py", @@ -53456,59 +53934,88 @@ "source_location": "L15" }, { - "id": "tests_test_mcp_prototype_rationale_122", - "label": "Only preview returns rows, and it caps whatever it is asked for.", + "id": "issueflows_03_solved_issues_issue184_plan", + "label": "issue184_plan.md", "_origin": "ast", - "community": 213, - "community_name": "drive", - "file_type": "rationale", - "norm_label": "only preview returns rows, and it caps whatever it is asked for.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L122" + "community": 214, + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue184_plan.md", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L1" }, { - "id": "tests_test_mcp_prototype_rationale_56", - "label": "Run `steps(call)` against a connected client; return whatever it returns.", + "id": "issueflows_03_solved_issues_issue184_plan_approach_front_end_only_app_js_modal_markup", + "label": "Approach (front-end only, `app.js` + modal markup)", "_origin": "ast", - "community": 213, - "community_name": "drive", - "file_type": "rationale", - "norm_label": "run `steps(call)` against a connected client; return whatever it returns.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L56" + "community": 214, + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach (front-end only, `app.js` + modal markup)", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L21" }, { - "id": "tests_test_mcp_prototype_rationale_78", - "label": "Load -> collect -> render -> export, as a client actually does it.", + "id": "issueflows_03_solved_issues_issue184_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", - "community": 213, - "community_name": "drive", - "file_type": "rationale", - "norm_label": "load -> collect -> render -> export, as a client actually does it.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L78" + "community": 214, + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L37" }, { - "id": "tests_test_packaging_py_parametrize", - "label": "parametrize", + "id": "issueflows_03_solved_issues_issue184_plan_goal", + "label": "Goal", "_origin": "ast", "community": 214, - "community_name": "test_smoke_test_skips_only_a_missing_reader", - "file_type": "code", - "norm_label": "parametrize", - "source_file": "", - "source_location": "" + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L3" }, { - "id": "tests_test_packaging_rationale_266", - "label": "The skip must track *both* vocabularies (#124, #143). It originally matched\u2026", + "id": "issueflows_03_solved_issues_issue184_plan_plan_184_update_plots_when_the_manage_cells_modal_closes", + "label": "Plan \u2014 #184 update plots when the Manage cells modal closes", "_origin": "ast", "community": 214, - "community_name": "test_smoke_test_skips_only_a_missing_reader", - "file_type": "rationale", - "norm_label": "the skip must track *both* vocabularies (#124, #143). it originally matched...", - "source_file": "tests/test_packaging.py", - "source_location": "L266" + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan \u2014 #184 update plots when the manage cells modal closes", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue184_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 214, + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L46" + }, + { + "id": "issueflows_03_solved_issues_issue184_plan_what_happens_today", + "label": "What happens today", + "_origin": "ast", + "community": 214, + "community_name": "Plan \u2014 #184 update plots when the Manage cells modal closes", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what happens today", + "source_file": ".issueflows/03-solved-issues/issue184_plan.md", + "source_location": "L10" }, { "id": "cursor_skills_iflow_split_skill", @@ -53636,34 +54143,90 @@ "source_file": ".cursor/skills/iflow-split/SKILL.md", "source_location": "L46" }, + { + "id": "examples_starter_app", + "label": "starter/app.py", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "code", + "norm_label": "starter/app.py", + "source_file": "examples/starter/app.py", + "source_location": "L1" + }, + { + "id": "examples_starter_app_py_any", + "label": "Any", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "code", + "norm_label": "any", + "source_file": "", + "source_location": "" + }, + { + "id": "examples_starter_app_py_delete", + "label": "delete", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "code", + "norm_label": "delete", + "source_file": "", + "source_location": "" + }, { "id": "examples_starter_app_py_get", "label": "get", "_origin": "ast", "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community_name": "starter/app.py", "file_type": "code", "norm_label": "get", "source_file": "", "source_location": "" }, + { + "id": "examples_starter_app_py_post", + "label": "post", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "code", + "norm_label": "post", + "source_file": "", + "source_location": "" + }, { "id": "examples_starter_app_py_response", "label": "Response", "_origin": "ast", "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community_name": "starter/app.py", "file_type": "code", "norm_label": "response", "source_file": "", "source_location": "" }, + { + "id": "issueflows_03_solved_issues_issue3_plan_ux", + "label": "UX", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "ux", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L34" + }, { "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_6_api_sketch_design", "label": "6. API sketch (design)", "_origin": "ast", "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community_name": "starter/app.py", "file_type": "document", "node_kind": "heading", "norm_label": "6. api sketch (design)", @@ -53675,7 +54238,7 @@ "label": "Entry points", "_origin": "ast", "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community_name": "starter/app.py", "file_type": "document", "node_kind": "heading", "norm_label": "entry points", @@ -53683,131 +54246,33 @@ "source_location": "L106" }, { - "id": "issueflows_05_epics_next_phase_deployment_and_docs", - "label": "next-phase-deployment-and-docs.md", - "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "page", - "norm_label": "next-phase-deployment-and-docs.md", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L1" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_decisions_taken_up_front", - "label": "Decisions taken up front", - "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "decisions taken up front", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L16" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_issues", - "label": "Issues", - "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issues", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L239" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_1_headless_ready", - "label": "Milestone 1 \u2014 Headless-ready", - "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "milestone 1 \u2014 headless-ready", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L71" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_2_two_ways_to_run_it", - "label": "Milestone 2 \u2014 Two ways to run it", - "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "milestone 2 \u2014 two ways to run it", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L96" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_milestone_3_build_your_own_cellpy_app", - "label": "Milestone 3 \u2014 Build your own cellpy app", - "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "milestone 3 \u2014 build your own cellpy app", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L148" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_next_phase_deployment_routes_and_app_builder_documentation", - "label": "Next phase \u2014 deployment routes and app-builder documentation", - "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "next phase \u2014 deployment routes and app-builder documentation", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L1" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_risks", - "label": "Risks", - "_origin": "ast", - "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "risks", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L216" - }, - { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_sequencing", - "label": "Sequencing", + "id": "examples_starter_app_rationale_10", + "label": "A cellpy app in one file: load cells, plot them, export the numbers. uv run\u2026", "_origin": "ast", "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "sequencing", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L229" + "community_name": "starter/app.py", + "file_type": "rationale", + "norm_label": "a cellpy app in one file: load cells, plot them, export the numbers. uv run...", + "source_file": "examples/starter/app.py", + "source_location": "L10" }, { - "id": "issueflows_05_epics_next_phase_deployment_and_docs_what_the_current_architecture_already_decides_for_us", - "label": "What the current architecture already decides for us", + "id": "examples_starter_app_rationale_113", + "label": "Store a cell under a name that is not already taken.", "_origin": "ast", "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what the current architecture already decides for us", - "source_file": ".issueflows/05-epics/next-phase-deployment-and-docs.md", - "source_location": "L29" + "community_name": "starter/app.py", + "file_type": "rationale", + "norm_label": "store a cell under a name that is not already taken.", + "source_file": "examples/starter/app.py", + "source_location": "L113" }, { "id": "examples_starter_app_rationale_141", "label": "The cellpy ``Collection`` behind one plot name. A Collection is a tidy `polars`\u2026", "_origin": "ast", "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community_name": "starter/app.py", "file_type": "rationale", "norm_label": "the cellpy ``collection`` behind one plot name. a collection is a tidy `polars`...", "source_file": "examples/starter/app.py", @@ -53818,7 +54283,7 @@ "label": "Which of ``columns`` none of the loaded cells actually has.", "_origin": "ast", "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community_name": "starter/app.py", "file_type": "rationale", "norm_label": "which of ``columns`` none of the loaded cells actually has.", "source_file": "examples/starter/app.py", @@ -53829,7 +54294,7 @@ "label": "Plotly figure JSON for a plot name. ``Collection.plot()`` returns a real\u2026", "_origin": "ast", "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community_name": "starter/app.py", "file_type": "rationale", "norm_label": "plotly figure json for a plot name. ``collection.plot()`` returns a real...", "source_file": "examples/starter/app.py", @@ -53840,12 +54305,45 @@ "label": "The collected frame as CSV \u2014 the numbers behind the chart. ``collection.data``\u2026", "_origin": "ast", "community": 216, - "community_name": "Next phase \u2014 deployment routes and app-builder documentation", + "community_name": "starter/app.py", "file_type": "rationale", "norm_label": "the collected frame as csv \u2014 the numbers behind the chart. ``collection.data``...", "source_file": "examples/starter/app.py", "source_location": "L200" }, + { + "id": "examples_starter_app_rationale_231", + "label": "Load the demo cell (``{\"example\": true}``) or files (``{\"paths\": [...]}``).", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "rationale", + "norm_label": "load the demo cell (``{\"example\": true}``) or files (``{\"paths\": [...]}``).", + "source_file": "examples/starter/app.py", + "source_location": "L231" + }, + { + "id": "examples_starter_app_rationale_86", + "label": "Load cellpy's bundled demo cell. Downloads once, then caches.", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "rationale", + "norm_label": "load cellpy's bundled demo cell. downloads once, then caches.", + "source_file": "examples/starter/app.py", + "source_location": "L86" + }, + { + "id": "examples_starter_app_rationale_96", + "label": "Load one file. ``instrument=None`` lets cellpy decide from the suffix. ``mass``\u2026", + "_origin": "ast", + "community": 216, + "community_name": "starter/app.py", + "file_type": "rationale", + "norm_label": "load one file. ``instrument=none`` lets cellpy decide from the suffix. ``mass``...", + "source_file": "examples/starter/app.py", + "source_location": "L96" + }, { "id": "issueflows_04_designs_and_guides_continuous_installer", "label": "continuous-installer.md", @@ -54050,18 +54548,6 @@ "source_file": ".issueflows/03-solved-issues/issue1_plan.md", "source_location": "L1" }, - { - "id": "issueflows_03_solved_issues_issue1_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", - "source_location": "L37" - }, { "id": "issueflows_03_solved_issues_issue1_plan_constraints", "label": "Constraints", @@ -54182,102 +54668,6 @@ "source_file": ".issueflows/03-solved-issues/issue1_status.md", "source_location": "L5" }, - { - "id": "issueflows_03_solved_issues_issue32_original", - "label": "issue32_original.md", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue32_original.md", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue32_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L19" - }, - { - "id": "issueflows_03_solved_issues_issue32_original_comments_curated_summary", - "label": "Comments (curated summary)", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "comments (curated summary)", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L33" - }, - { - "id": "issueflows_03_solved_issues_issue32_original_issue_32_plot_appearance_options_color_scheme_and_figure_theme", - "label": "Issue #32: Plot appearance options: color scheme and figure theme", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #32: plot appearance options: color scheme and figure theme", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue32_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue32_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L27" - }, - { - "id": "issueflows_03_solved_issues_issue32_original_problem_context", - "label": "Problem / context", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue32_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue32_original.md", - "source_location": "L11" - }, { "id": "issueflows_03_solved_issues_issue32_plan", "label": "issue32_plan.md", @@ -54586,45 +54976,129 @@ "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue37_plan.md", - "source_location": "L20" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue37_plan.md", + "source_location": "L20" + }, + { + "id": "issueflows_03_solved_issues_issue37_status", + "label": "issue37_status.md", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue37_status.md", + "source_file": ".issueflows/03-solved-issues/issue37_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue37_status_progress", + "label": "Progress", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "progress", + "source_file": ".issueflows/03-solved-issues/issue37_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue37_status_status_issue_37", + "label": "Status \u2014 Issue #37", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 issue #37", + "source_file": ".issueflows/03-solved-issues/issue37_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_original", + "label": "issue38_original.md", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue38_original.md", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L19" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_issue_38_use_cellpy_label_builders_for_summary_cycle_axis_titles", + "label": "Issue #38: Use cellpy label builders for summary/cycle axis titles", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #38: use cellpy label builders for summary/cycle axis titles", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue38_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue37_status", - "label": "issue37_status.md", + "id": "issueflows_03_solved_issues_issue38_original_out_of_scope", + "label": "Out of scope", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", - "node_kind": "page", - "norm_label": "issue37_status.md", - "source_file": ".issueflows/03-solved-issues/issue37_status.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L26" }, { - "id": "issueflows_03_solved_issues_issue37_status_progress", - "label": "Progress", + "id": "issueflows_03_solved_issues_issue38_original_problem_context", + "label": "Problem / context", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "progress", - "source_file": ".issueflows/03-solved-issues/issue37_status.md", - "source_location": "L5" + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue37_status_status_issue_37", - "label": "Status \u2014 Issue #37", + "id": "issueflows_03_solved_issues_issue38_original_spec", + "label": "Spec", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "status \u2014 issue #37", - "source_file": ".issueflows/03-solved-issues/issue37_status.md", - "source_location": "L1" + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue38_original.md", + "source_location": "L11" }, { "id": "issueflows_03_solved_issues_issue52_original", @@ -54711,19 +55185,19 @@ "source_location": "L15" }, { - "id": "issueflows_03_solved_issues_issue52_plan", - "label": "issue52_plan.md", + "id": "issueflows_03_solved_issues_issue52_plan_phase_b_written_inventory", + "label": "Phase B \u2014 written inventory", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", - "node_kind": "page", - "norm_label": "issue52_plan.md", + "node_kind": "heading", + "norm_label": "phase b \u2014 written inventory", "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L1" + "source_location": "L51" }, { - "id": "issueflows_03_solved_issues_issue52_plan_constraints", + "id": "issueflows_03_solved_issues_issue62_plan_constraints", "label": "Constraints", "_origin": "ast", "community": 221, @@ -54731,104 +55205,68 @@ "file_type": "document", "node_kind": "heading", "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L9" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L95" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L3" + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue52_plan_issue_52_plan_bump_cellpy_post4_delegate_app_glue", - "label": "Issue #52 \u2014 Plan: bump cellpy post4 + delegate app glue", + "id": "issueflows_04_designs_and_guides_plot_appearance", + "label": "plot-appearance.md", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #52 \u2014 plan: bump cellpy post4 + delegate app glue", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "node_kind": "page", + "norm_label": "plot-appearance.md", + "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue52_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 221, - "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L120" - }, - { - "id": "issueflows_03_solved_issues_issue52_plan_prior_art", - "label": "Prior art", + "id": "issueflows_04_designs_and_guides_plot_appearance_alternatives_considered", + "label": "Alternatives considered", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L21" + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", + "source_location": "L31" }, { - "id": "issueflows_03_solved_issues_issue52_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_04_designs_and_guides_plot_appearance_context", + "label": "Context", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue52_plan.md", - "source_location": "L112" + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", + "source_location": "L5" }, { - "id": "issueflows_04_designs_and_guides_summary_legend_long_names_alternatives_considered", - "label": "Alternatives considered", + "id": "issueflows_04_designs_and_guides_plot_appearance_decision", + "label": "Decision", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", - "source_location": "L20" + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", + "source_location": "L12" }, { - "id": "issueflows_04_designs_and_guides_summary_legend_long_names_context", - "label": "Context", + "id": "issueflows_04_designs_and_guides_plot_appearance_plot_appearance_theme_color_scheme", + "label": "Plot appearance (theme + color scheme)", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "document", "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", - "source_location": "L3" + "norm_label": "plot appearance (theme + color scheme)", + "source_file": ".issueflows/04-designs-and-guides/plot-appearance.md", + "source_location": "L1" }, { "id": "issueflows_04_designs_and_guides_summary_legend_long_names_decision", @@ -54843,41 +55281,40 @@ "source_location": "L10" }, { - "id": "issueflows_04_designs_and_guides_summary_legend_long_names_summary_plot_legend_long_cell_names_1", - "label": "Summary plot legend + long cell names (#1)", + "id": "src_cellpy_simple_gui_core_collect_rationale_1154", + "label": "Keep the full identity discoverable when display ``name`` is truncated. Plotly\u2026", "_origin": "ast", "community": 221, "community_name": "_restyle", - "file_type": "document", - "node_kind": "heading", - "norm_label": "summary plot legend + long cell names (#1)", - "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", - "source_location": "L1" + "file_type": "rationale", + "norm_label": "keep the full identity discoverable when display ``name`` is truncated. plotly...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1154" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1130", - "label": "Keep the full identity discoverable when display ``name`` is truncated. Plotly\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1170", + "label": "Truncate long legend-facing labels; return longest *displayed* length. Journal\u2026", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "rationale", - "norm_label": "keep the full identity discoverable when display ``name`` is truncated. plotly...", + "norm_label": "truncate long legend-facing labels; return longest *displayed* length. journal...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1130" + "source_location": "L1170" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1146", - "label": "Truncate long legend-facing labels; return longest *displayed* length. Journal\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1210", + "label": "Best-effort cleanup if a ``variable=\u2026`` strip slipped past cellpy. cellpy\u2026", "_origin": "ast", "community": 221, "community_name": "_restyle", "file_type": "rationale", - "norm_label": "truncate long legend-facing labels; return longest *displayed* length. journal...", + "norm_label": "best-effort cleanup if a ``variable=...`` strip slipped past cellpy. cellpy...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1146" + "source_location": "L1210" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1333", + "id": "src_cellpy_simple_gui_core_collect_rationale_1357", "label": "Turn ``#RRGGBB`` into ``rgba(r,g,b,a)`` for translucent Plotly fills.", "_origin": "ast", "community": 221, @@ -54885,10 +55322,10 @@ "file_type": "rationale", "norm_label": "turn ``#rrggbb`` into ``rgba(r,g,b,a)`` for translucent plotly fills.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1333" + "source_location": "L1357" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1346", + "id": "src_cellpy_simple_gui_core_collect_rationale_1370", "label": "Cycle a discrete colorway across legend series (name / legendgroup).", "_origin": "ast", "community": 221, @@ -54896,10 +55333,10 @@ "file_type": "rationale", "norm_label": "cycle a discrete colorway across legend series (name / legendgroup).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1346" + "source_location": "L1370" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1377", + "id": "src_cellpy_simple_gui_core_collect_rationale_1401", "label": "Post-plot polish: legend truncation, colorway, margins, soft axes.\u2026", "_origin": "ast", "community": 221, @@ -54907,7 +55344,18 @@ "file_type": "rationale", "norm_label": "post-plot polish: legend truncation, colorway, margins, soft axes....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1377" + "source_location": "L1401" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_675", + "label": "Fold theme tokens into cellpy #801 knobs before ``collection.plot``.", + "_origin": "ast", + "community": 221, + "community_name": "_restyle", + "file_type": "rationale", + "norm_label": "fold theme tokens into cellpy #801 knobs before ``collection.plot``.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L675" }, { "id": "tests_test_core_rationale_593", @@ -54921,167 +55369,47 @@ "source_location": "L593" }, { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design", - "label": "cellprocessor-v2-design.md", + "id": "issueflows_03_solved_issues_issue162_plan", + "label": "issue162_plan.md", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "page", - "norm_label": "cellprocessor-v2-design.md", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", + "norm_label": "issue162_plan.md", + "source_file": ".issueflows/03-solved-issues/issue162_plan.md", "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_10_risks_open_questions", - "label": "10. Risks & open questions", - "_origin": "ast", - "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "10. risks & open questions", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L191" - }, - { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_11_sibling_repos_context_only", - "label": "11. Sibling repos (context only)", - "_origin": "ast", - "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "11. sibling repos (context only)", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L202" - }, - { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_1_goals_locked_decisions", - "label": "1. Goals & locked decisions", - "_origin": "ast", - "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "1. goals & locked decisions", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L13" - }, - { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_3_technology_choices_design_vs_mvp", - "label": "3. Technology choices (design vs MVP)", - "_origin": "ast", - "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "3. technology choices (design vs mvp)", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L59" - }, - { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_4_package_layout", - "label": "4. Package layout", - "_origin": "ast", - "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "4. package layout", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L78" - }, - { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_5_core_layer_rules", - "label": "5. Core layer rules", - "_origin": "ast", - "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "5. core layer rules", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L99" - }, - { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_7_frontend_pages_parity_map", - "label": "7. Frontend pages (parity map)", - "_origin": "ast", - "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "7. frontend pages (parity map)", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L148" - }, - { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_8_packaging_native_deps_updates_still_open", - "label": "8. Packaging, native deps & updates (still open)", - "_origin": "ast", - "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "8. packaging, native deps & updates (still open)", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L162" - }, - { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_9_phased_roadmap", - "label": "9. Phased roadmap", - "_origin": "ast", - "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "9. phased roadmap", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L176" - }, - { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_cellprocessor_2_0_design_guide_for_agents", - "label": "CellProcessor 2.0 \u2014 design guide (for agents)", + "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design", + "label": "cellprocessor-v2-design.md", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", - "node_kind": "heading", - "norm_label": "cellprocessor 2.0 \u2014 design guide (for agents)", + "node_kind": "page", + "norm_label": "cellprocessor-v2-design.md", "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_cellpy_2_1_1_surface_to_prefer", - "label": "cellpy 2.1.1 surface to prefer", - "_origin": "ast", - "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cellpy 2.1.1 surface to prefer", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L112" - }, - { - "id": "issueflows_04_designs_and_guides_cellprocessor_v2_design_summary_dataframe_columns_handy", - "label": "Summary DataFrame columns (handy)", + "id": "issueflows_04_designs_and_guides_loading_ui", + "label": "loading-ui.md", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", - "node_kind": "heading", - "norm_label": "summary dataframe columns (handy)", - "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", - "source_location": "L127" + "node_kind": "page", + "norm_label": "loading-ui.md", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L1" }, { "id": "issueflows_04_designs_and_guides_multi_repo_workspaces", "label": "multi-repo-workspaces.md", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "page", "norm_label": "multi-repo-workspaces.md", @@ -55093,7 +55421,7 @@ "label": "Cross-repo guidance", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "cross-repo guidance", @@ -55105,7 +55433,7 @@ "label": "Default for lifecycle commands", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "default for lifecycle commands", @@ -55117,7 +55445,7 @@ "label": "Members", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "members", @@ -55129,7 +55457,7 @@ "label": "Multi-root workspace \u2014 cellpyapp", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "multi-root workspace \u2014 cellpyapp", @@ -55141,19 +55469,31 @@ "label": "Toolchain disambiguation", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "toolchain disambiguation", "source_file": ".issueflows/04-designs-and-guides/multi-repo-workspaces.md", "source_location": "L48" }, + { + "id": "issueflows_04_designs_and_guides_otherpath_remote_loading", + "label": "otherpath-remote-loading.md", + "_origin": "ast", + "community": 222, + "community_name": "cellpy-simple-gui", + "file_type": "document", + "node_kind": "page", + "norm_label": "otherpath-remote-loading.md", + "source_file": ".issueflows/04-designs-and-guides/otherpath-remote-loading.md", + "source_location": "L1" + }, { "id": "issueflows_04_designs_and_guides_this_project", "label": "this-project.md", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "page", "norm_label": "this-project.md", @@ -55165,7 +55505,7 @@ "label": "cellpy-simple-gui", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "cellpy-simple-gui", @@ -55177,7 +55517,7 @@ "label": "Conventions", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "conventions", @@ -55189,7 +55529,7 @@ "label": "How to run / test", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "how to run / test", @@ -55201,7 +55541,7 @@ "label": "Motivation", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "motivation", @@ -55213,7 +55553,7 @@ "label": "Non-goals / known limitations", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "non-goals / known limitations", @@ -55225,7 +55565,7 @@ "label": "Release & version bump", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "release & version bump", @@ -55237,7 +55577,7 @@ "label": "What this project is", "_origin": "ast", "community": 222, - "community_name": "CellProcessor 2.0 \u2014 design guide (for agents)", + "community_name": "cellpy-simple-gui", "file_type": "document", "node_kind": "heading", "norm_label": "what this project is", @@ -55388,6 +55728,54 @@ "source_file": ".issueflows/03-solved-issues/issue177_plan.md", "source_location": "L75" }, + { + "id": "issueflows_03_solved_issues_issue54_status", + "label": "issue54_status.md", + "_origin": "ast", + "community": 225, + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue54_status.md", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue54_status_issue_54_status", + "label": "Issue #54 status", + "_origin": "ast", + "community": 225, + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #54 status", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue54_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 225, + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue54_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 225, + "community_name": "Issue #72: Cycles tab: Mode change does not update x-axis capacity units", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_location": "L5" + }, { "id": "issueflows_03_solved_issues_issue72_original", "label": "issue72_original.md", @@ -55472,12 +55860,180 @@ "source_file": ".issueflows/03-solved-issues/issue72_original.md", "source_location": "L13" }, + { + "id": "cellpy_painpoints_1_no_public_collection_from_in_memory_cells", + "label": "1. \ud83d\udd34 No public \"collection from in-memory cells\"", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "1. \ud83d\udd34 no public \"collection from in-memory cells\"", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L126" + }, + { + "id": "cellpy_painpoints_21_no_selective_summary_rebuild_after_meta_edits", + "label": "21. \ud83d\udfe0 No selective summary rebuild after meta edits", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "21. \ud83d\udfe0 no selective summary rebuild after meta edits", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L529" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan", + "label": "issue69_plan.md", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue69_plan.md", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L26" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L36" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_issue_69_plan_edit_cell_metadata", + "label": "Issue #69 \u2014 Plan: edit cell metadata", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #69 \u2014 plan: edit cell metadata", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L59" + }, + { + "id": "issueflows_03_solved_issues_issue69_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue69_status", + "label": "issue69_status.md", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue69_status.md", + "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue69_status_issue_69_status", + "label": "Issue #69 \u2014 Status", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #69 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue69_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "source_location": "L16" + }, + { + "id": "issueflows_03_solved_issues_issue69_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "source_location": "L5" + }, { "id": "issueflows_03_solved_issues_issue86_original", "label": "issue86_original.md", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "page", "norm_label": "issue86_original.md", @@ -55489,7 +56045,7 @@ "label": "Acceptance criteria", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "heading", "norm_label": "acceptance criteria", @@ -55501,7 +56057,7 @@ "label": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "heading", "norm_label": "issue #86: manage cells: edit nominal-capacity basis (gravimetric / areal / absolute)", @@ -55513,7 +56069,7 @@ "label": "Original issue text", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "heading", "norm_label": "original issue text", @@ -55525,7 +56081,7 @@ "label": "Out of scope", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "heading", "norm_label": "out of scope", @@ -55537,7 +56093,7 @@ "label": "Problem / context", "_origin": "ast", "community": 226, - "community_name": "Issue #86: Manage Cells: edit nominal-capacity basis (gravimetric / areal / absolute)", + "community_name": "apply_physical_meta", "file_type": "document", "node_kind": "heading", "norm_label": "problem / context", @@ -55545,26 +56101,246 @@ "source_location": "L7" }, { - "id": "packaging_smoke_test_py_path", - "label": "Path", + "id": "issueflows_03_solved_issues_issue86_original_spec", + "label": "Spec", "_origin": "ast", - "community": 227, - "community_name": "LaunchedApp", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue86_original.md", + "source_location": "L11" }, { - "id": "packaging_smoke_test_rationale_141", - "label": "Launches a binary and picks its URL and token out of the startup log.", + "id": "issueflows_03_solved_issues_issue86_plan", + "label": "issue86_plan.md", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue86_plan.md", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L24" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L35" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_issue_86_plan_edit_nominal_capacity_basis", + "label": "Issue #86 \u2014 Plan: edit nominal-capacity basis", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #86 \u2014 plan: edit nominal-capacity basis", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L56" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue86_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "source_location": "L49" + }, + { + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_still_app_owned_no_upstream_yet_by_design", + "label": "Still app-owned (no upstream yet / by design)", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "document", + "node_kind": "heading", + "norm_label": "still app-owned (no upstream yet / by design)", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L178" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_494", + "label": "Return a plain-dict projection of a cell's metadata.", "_origin": "ast", - "community": 227, - "community_name": "LaunchedApp", + "community": 226, + "community_name": "apply_physical_meta", "file_type": "rationale", - "norm_label": "launches a binary and picks its url and token out of the startup log.", - "source_file": "packaging/smoke_test.py", - "source_location": "L141" + "norm_label": "return a plain-dict projection of a cell's metadata.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L494" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_793", + "label": "Assign physical meta knobs and refresh the summary once. Returns the names of\u2026", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "assign physical meta knobs and refresh the summary once. returns the names of...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L793" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_822", + "label": "Update the active-material mass and refresh the summary.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "update the active-material mass and refresh the summary.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L822" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_827", + "label": "Update active electrode area (cm\u00b2) and refresh the summary.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "update active electrode area (cm2) and refresh the summary.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L827" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_832", + "label": "Update nominal capacity and refresh the summary.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "update nominal capacity and refresh the summary.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L832" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_837", + "label": "Update nominal-capacity basis and refresh the summary.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "update nominal-capacity basis and refresh the summary.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L837" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_842", + "label": "Update cycle mode (anode/cathode/full_cell) and refresh the summary.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "update cycle mode (anode/cathode/full_cell) and refresh the summary.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L842" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_87", + "label": "The group's display name: the custom label, else ``group ``.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "the group's display name: the custom label, else ``group ``.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L87" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_328", + "label": "A single editable-grid change.", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "a single editable-grid change.", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L328" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_68", + "label": "Everything the UI needs to know about one loaded cell. The heavy ``CellpyCell``\u2026", + "_origin": "ast", + "community": 226, + "community_name": "apply_physical_meta", + "file_type": "rationale", + "norm_label": "everything the ui needs to know about one loaded cell. the heavy ``cellpycell``...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L68" }, { "id": "cursor_skills_iflow_init_skill", @@ -55813,180 +56589,148 @@ "source_location": "L1" }, { - "id": "docs_windows_installer_arbin_res_needs_a_microsoft_odbc_driver", - "label": "Arbin `.res` needs a Microsoft ODBC driver", + "id": "packaging_readme", + "label": "packaging/README.md", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", - "node_kind": "heading", - "norm_label": "arbin `.res` needs a microsoft odbc driver", - "source_file": "docs/windows-installer.md", - "source_location": "L122" + "node_kind": "page", + "norm_label": "packaging/readme.md", + "source_file": "packaging/README.md", + "source_location": "L1" }, { - "id": "docs_windows_installer_building_it_yourself", - "label": "Building it yourself", + "id": "packaging_readme_not_solvable_in_code", + "label": "Not solvable in code", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", "node_kind": "heading", - "norm_label": "building it yourself", - "source_file": "docs/windows-installer.md", - "source_location": "L181" + "norm_label": "not solvable in code", + "source_file": "packaging/README.md", + "source_location": "L224" }, { - "id": "docs_windows_installer_downloading", - "label": "Downloading", + "id": "packaging_readme_numbers", + "label": "Numbers", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", "node_kind": "heading", - "norm_label": "downloading", - "source_file": "docs/windows-installer.md", - "source_location": "L41" + "norm_label": "numbers", + "source_file": "packaging/README.md", + "source_location": "L55" }, { - "id": "docs_windows_installer_installing", - "label": "Installing", + "id": "packaging_readme_numbers_121", + "label": "Numbers", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", "node_kind": "heading", - "norm_label": "installing", - "source_file": "docs/windows-installer.md", - "source_location": "L68" + "norm_label": "numbers", + "source_file": "packaging/README.md", + "source_location": "L121" }, { - "id": "docs_windows_installer_static_figure_export_needs_chrome", - "label": "Static figure export needs Chrome", + "id": "packaging_readme_numbers_216", + "label": "Numbers", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", "node_kind": "heading", - "norm_label": "static figure export needs chrome", - "source_file": "docs/windows-installer.md", - "source_location": "L147" + "norm_label": "numbers", + "source_file": "packaging/README.md", + "source_location": "L216" }, { - "id": "docs_windows_installer_the_windows_installer", - "label": "The Windows installer", + "id": "packaging_readme_packaging", + "label": "Packaging", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", "node_kind": "heading", - "norm_label": "the windows installer", - "source_file": "docs/windows-installer.md", + "norm_label": "packaging", + "source_file": "packaging/README.md", "source_location": "L1" }, { - "id": "docs_windows_installer_uninstalling", - "label": "Uninstalling", + "id": "packaging_readme_server_side_figure_export_is_not_in_the_image", + "label": "Server-side figure export is not in the image", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", "node_kind": "heading", - "norm_label": "uninstalling", - "source_file": "docs/windows-installer.md", - "source_location": "L162" + "norm_label": "server-side figure export is not in the image", + "source_file": "packaging/README.md", + "source_location": "L103" }, { - "id": "docs_windows_installer_webview2", - "label": "WebView2", + "id": "packaging_readme_two_silent_failures_the_first_build_shipped_with", + "label": "Two silent failures the first build shipped with", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", "node_kind": "heading", - "norm_label": "webview2", - "source_file": "docs/windows-installer.md", - "source_location": "L85" + "norm_label": "two silent failures the first build shipped with", + "source_file": "packaging/README.md", + "source_location": "L80" }, { - "id": "docs_windows_installer_what_you_will_see_first_a_smartscreen_warning", - "label": "What you will see first: a SmartScreen warning", + "id": "packaging_readme_what_the_container_established_121", + "label": "What the container established (#121)", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", "node_kind": "heading", - "norm_label": "what you will see first: a smartscreen warning", - "source_file": "docs/windows-installer.md", - "source_location": "L9" + "norm_label": "what the container established (#121)", + "source_file": "packaging/README.md", + "source_location": "L72" }, { - "id": "docs_windows_installer_when_something_goes_wrong", - "label": "When something goes wrong", + "id": "packaging_readme_what_the_continuous_build_added_168", + "label": "What the continuous build added (#168)", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", "node_kind": "heading", - "norm_label": "when something goes wrong", - "source_file": "docs/windows-installer.md", - "source_location": "L98" + "norm_label": "what the continuous build added (#168)", + "source_file": "packaging/README.md", + "source_location": "L230" }, { - "id": "packaging_readme", - "label": "packaging/README.md", + "id": "packaging_readme_what_the_installer_added_122", + "label": "What the installer added (#122)", "_origin": "ast", "community": 229, "community_name": "Releasing", "file_type": "document", - "node_kind": "page", - "norm_label": "packaging/readme.md", + "node_kind": "heading", + "norm_label": "what the installer added (#122)", "source_file": "packaging/README.md", - "source_location": "L1" - }, - { - "id": "basesettings", - "label": "BaseSettings", - "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", - "file_type": "code", - "norm_label": "basesettings", - "source_file": "", - "source_location": "" - }, - { - "id": "src_cellpy_simple_gui_config", - "label": "config.py", - "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", - "file_type": "code", - "norm_label": "config.py", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_config_py_field_validator", - "label": "field_validator", - "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", - "file_type": "code", - "norm_label": "field_validator", - "source_file": "", - "source_location": "" + "source_location": "L155" }, { - "id": "src_cellpy_simple_gui_config_py_path", - "label": "Path", + "id": "packaging_readme_what_the_spike_established_117", + "label": "What the spike established (#117)", "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", - "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" + "community": 229, + "community_name": "Releasing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what the spike established (#117)", + "source_file": "packaging/README.md", + "source_location": "L26" }, { "id": "tests_test_projects", @@ -56011,40 +56755,40 @@ "source_location": "" }, { - "id": "src_cellpy_simple_gui_config_rationale_1", - "label": "Application settings and paths.", + "id": "tests_test_projects_rationale_1", + "label": "Tests for project persistence (core round-trip + API).", "_origin": "ast", "community": 23, "community_name": "test_projects.py", "file_type": "rationale", - "norm_label": "application settings and paths.", - "source_file": "src/cellpy_simple_gui/config.py", + "norm_label": "tests for project persistence (core round-trip + api).", + "source_file": "tests/test_projects.py", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_config_rationale_61", - "label": "``~`` and relative paths are normal in env vars; resolve them once. Resolving\u2026", + "id": "tests_test_projects_rationale_104", + "label": "Interrupted save must not wipe or corrupt the previous project on disk.", "_origin": "ast", "community": 23, "community_name": "test_projects.py", "file_type": "rationale", - "norm_label": "``~`` and relative paths are normal in env vars; resolve them once. resolving...", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L61" + "norm_label": "interrupted save must not wipe or corrupt the previous project on disk.", + "source_file": "tests/test_projects.py", + "source_location": "L104" }, { - "id": "tests_test_projects_rationale_1", - "label": "Tests for project persistence (core round-trip + API).", + "id": "tests_test_projects_rationale_136", + "label": "Wrap adapter.save_cell so a test can see how often it actually ran.", "_origin": "ast", "community": 23, "community_name": "test_projects.py", "file_type": "rationale", - "norm_label": "tests for project persistence (core round-trip + api).", + "norm_label": "wrap adapter.save_cell so a test can see how often it actually ran.", "source_file": "tests/test_projects.py", - "source_location": "L1" + "source_location": "L136" }, { - "id": "tests_test_projects_rationale_111", + "id": "tests_test_projects_rationale_150", "label": "A label-only change must not re-serialise the cell data (#29).", "_origin": "ast", "community": 23, @@ -56052,10 +56796,10 @@ "file_type": "rationale", "norm_label": "a label-only change must not re-serialise the cell data (#29).", "source_file": "tests/test_projects.py", - "source_location": "L111" + "source_location": "L150" }, { - "id": "tests_test_projects_rationale_139", + "id": "tests_test_projects_rationale_178", "label": "Editing mass moves the cell, so its file must be rewritten (#29).", "_origin": "ast", "community": 23, @@ -56063,10 +56807,10 @@ "file_type": "rationale", "norm_label": "editing mass moves the cell, so its file must be rewritten (#29).", "source_file": "tests/test_projects.py", - "source_location": "L139" + "source_location": "L178" }, { - "id": "tests_test_projects_rationale_155", + "id": "tests_test_projects_rationale_194", "label": "Provably untouched means the file too \u2014 not just the in-memory cell.", "_origin": "ast", "community": 23, @@ -56074,10 +56818,10 @@ "file_type": "rationale", "norm_label": "provably untouched means the file too \u2014 not just the in-memory cell.", "source_file": "tests/test_projects.py", - "source_location": "L155" + "source_location": "L194" }, { - "id": "tests_test_projects_rationale_193", + "id": "tests_test_projects_rationale_232", "label": "Save-As must produce a complete project, reuse or not (#29).", "_origin": "ast", "community": 23, @@ -56085,10 +56829,10 @@ "file_type": "rationale", "norm_label": "save-as must produce a complete project, reuse or not (#29).", "source_file": "tests/test_projects.py", - "source_location": "L193" + "source_location": "L232" }, { - "id": "tests_test_projects_rationale_211", + "id": "tests_test_projects_rationale_250", "label": "The end-to-end guarantee: a reused save is still a loadable project.", "_origin": "ast", "community": 23, @@ -56096,10 +56840,10 @@ "file_type": "rationale", "norm_label": "the end-to-end guarantee: a reused save is still a loadable project.", "source_file": "tests/test_projects.py", - "source_location": "L211" + "source_location": "L250" }, { - "id": "tests_test_projects_rationale_230", + "id": "tests_test_projects_rationale_269", "label": "The flag itself: clean on open, dirty the moment the cell moves.", "_origin": "ast", "community": 23, @@ -56107,10 +56851,10 @@ "file_type": "rationale", "norm_label": "the flag itself: clean on open, dirty the moment the cell moves.", "source_file": "tests/test_projects.py", - "source_location": "L230" + "source_location": "L269" }, { - "id": "tests_test_projects_rationale_278", + "id": "tests_test_projects_rationale_317", "label": "#75: open works for absolute folders and project.json file paths.", "_origin": "ast", "community": 23, @@ -56118,10 +56862,10 @@ "file_type": "rationale", "norm_label": "#75: open works for absolute folders and project.json file paths.", "source_file": "tests/test_projects.py", - "source_location": "L278" + "source_location": "L317" }, { - "id": "tests_test_projects_rationale_383", + "id": "tests_test_projects_rationale_422", "label": "A project's cellpy.toml wins while open, and is dropped on close.", "_origin": "ast", "community": 23, @@ -56129,10 +56873,10 @@ "file_type": "rationale", "norm_label": "a project's cellpy.toml wins while open, and is dropped on close.", "source_file": "tests/test_projects.py", - "source_location": "L383" + "source_location": "L422" }, { - "id": "tests_test_projects_rationale_402", + "id": "tests_test_projects_rationale_441", "label": "Settings must not leak from one project into the next.", "_origin": "ast", "community": 23, @@ -56140,10 +56884,10 @@ "file_type": "rationale", "norm_label": "settings must not leak from one project into the next.", "source_file": "tests/test_projects.py", - "source_location": "L402" + "source_location": "L441" }, { - "id": "tests_test_projects_rationale_422", + "id": "tests_test_projects_rationale_461", "label": "An unparseable cellpy.toml must not stop the project from opening.", "_origin": "ast", "community": 23, @@ -56151,10 +56895,10 @@ "file_type": "rationale", "norm_label": "an unparseable cellpy.toml must not stop the project from opening.", "source_file": "tests/test_projects.py", - "source_location": "L422" + "source_location": "L461" }, { - "id": "tests_test_projects_rationale_451", + "id": "tests_test_projects_rationale_490", "label": "Pinning captures interpretation settings \u2014 never paths or credentials.", "_origin": "ast", "community": 23, @@ -56162,10 +56906,10 @@ "file_type": "rationale", "norm_label": "pinning captures interpretation settings \u2014 never paths or credentials.", "source_file": "tests/test_projects.py", - "source_location": "L451" + "source_location": "L490" }, { - "id": "tests_test_projects_rationale_477", + "id": "tests_test_projects_rationale_516", "label": "What is pinned is what a later open reproduces.", "_origin": "ast", "community": 23, @@ -56173,10 +56917,10 @@ "file_type": "rationale", "norm_label": "what is pinned is what a later open reproduces.", "source_file": "tests/test_projects.py", - "source_location": "L477" + "source_location": "L516" }, { - "id": "tests_test_projects_rationale_498", + "id": "tests_test_projects_rationale_537", "label": "A legacy .conf outranked by cellpy.toml is surfaced, not hidden (cellpy #851).", "_origin": "ast", "community": 23, @@ -56184,43 +56928,10 @@ "file_type": "rationale", "norm_label": "a legacy .conf outranked by cellpy.toml is surfaced, not hidden (cellpy #851).", "source_file": "tests/test_projects.py", - "source_location": "L498" - }, - { - "id": "tests_test_projects_rationale_535", - "label": "A container points this at a volume (#119).", - "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", - "file_type": "rationale", - "norm_label": "a container points this at a volume (#119).", - "source_file": "tests/test_projects.py", - "source_location": "L535" - }, - { - "id": "tests_test_projects_rationale_544", - "label": "Env vars carry ~ and relative paths; downstream wants one canonical root.", - "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", - "file_type": "rationale", - "norm_label": "env vars carry ~ and relative paths; downstream wants one canonical root.", - "source_file": "tests/test_projects.py", - "source_location": "L544" - }, - { - "id": "tests_test_projects_rationale_557", - "label": "Settings must not touch the filesystem \u2014 writers create what they need.", - "_origin": "ast", - "community": 23, - "community_name": "test_projects.py", - "file_type": "rationale", - "norm_label": "settings must not touch the filesystem \u2014 writers create what they need.", - "source_file": "tests/test_projects.py", - "source_location": "L557" + "source_location": "L537" }, { - "id": "tests_test_projects_rationale_568", + "id": "tests_test_projects_rationale_607", "label": "End to end: point CSG_DATA_DIR at a volume and a save lands there (#119).\u2026", "_origin": "ast", "community": 23, @@ -56228,29 +56939,29 @@ "file_type": "rationale", "norm_label": "end to end: point csg_data_dir at a volume and a save lands there (#119)....", "source_file": "tests/test_projects.py", - "source_location": "L568" + "source_location": "L607" }, { "id": "tests_test_projects_rationale_65", - "label": "Interrupted save must not wipe or corrupt the previous project on disk.", + "label": "Group names live in the manifest and survive save \u2192 open (#187).", "_origin": "ast", "community": 23, "community_name": "test_projects.py", "file_type": "rationale", - "norm_label": "interrupted save must not wipe or corrupt the previous project on disk.", + "norm_label": "group names live in the manifest and survive save \u2192 open (#187).", "source_file": "tests/test_projects.py", "source_location": "L65" }, { - "id": "tests_test_projects_rationale_97", - "label": "Wrap adapter.save_cell so a test can see how often it actually ran.", + "id": "tests_test_projects_rationale_85", + "label": "Projects saved before group names existed have no ``groups`` key.", "_origin": "ast", "community": 23, "community_name": "test_projects.py", "file_type": "rationale", - "norm_label": "wrap adapter.save_cell so a test can see how often it actually ran.", + "norm_label": "projects saved before group names existed have no ``groups`` key.", "source_file": "tests/test_projects.py", - "source_location": "L97" + "source_location": "L85" }, { "id": "issueflows_04_designs_and_guides_guides_upstream_candidates", @@ -56452,17 +57163,6 @@ "source_file": "examples/mcp/server.py", "source_location": "L658" }, - { - "id": "examples_mcp_server_rationale_675", - "label": "Find cellpy calls by name, or by what their first docstring line says. Use this\u2026", - "_origin": "ast", - "community": 232, - "community_name": "describe_api", - "file_type": "rationale", - "norm_label": "find cellpy calls by name, or by what their first docstring line says. use this...", - "source_file": "examples/mcp/server.py", - "source_location": "L675" - }, { "id": "examples_mcp_server_rationale_711", "label": "What a cellpy call takes and what it does, from the installed package. `name`\u2026", @@ -56474,17 +57174,6 @@ "source_file": "examples/mcp/server.py", "source_location": "L711" }, - { - "id": "tests_test_packaging_rationale_211", - "label": "A broken probe must not stop the app from starting.", - "_origin": "ast", - "community": 234, - "community_name": "test_startup_survives_an_unreadable_cellpy_config", - "file_type": "rationale", - "norm_label": "a broken probe must not stop the app from starting.", - "source_file": "tests/test_packaging.py", - "source_location": "L211" - }, { "id": "docs_guides_01_loading_cells_1_getting_cells_into_memory", "label": "1. Getting cells into memory", @@ -56582,77 +57271,363 @@ "source_location": "L80" }, { - "id": "issueflows_03_solved_issues_issue184_original", - "label": "issue184_original.md", + "id": "issueflows_03_solved_issues_issue28_plan", + "label": "issue28_plan.md", "_origin": "ast", - "community": 237, - "community_name": "issue184_original.md", + "community": 238, + "community_name": "save_cell", "file_type": "document", "node_kind": "page", - "norm_label": "issue184_original.md", - "source_file": ".issueflows/03-solved-issues/issue184_original.md", + "norm_label": "issue28_plan.md", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue184_original_184_update_plots_when_cells_modal_closes", - "label": "#184 \u2014 update plots when cells modal closes", + "id": "issueflows_03_solved_issues_issue28_plan_approach", + "label": "Approach", "_origin": "ast", - "community": 237, - "community_name": "issue184_original.md", + "community": 238, + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", - "norm_label": "#184 \u2014 update plots when cells modal closes", - "source_file": ".issueflows/03-solved-issues/issue184_original.md", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_location": "L28" + }, + { + "id": "issueflows_03_solved_issues_issue28_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue28_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue28_plan_issue_28_plan_export_cells_from_manage_cells", + "label": "Issue #28 plan \u2014 Export cells from Manage cells", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #28 plan \u2014 export cells from manage cells", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue54_status", - "label": "issue54_status.md", + "id": "issueflows_03_solved_issues_issue28_plan_open_questions", + "label": "Open questions", "_origin": "ast", - "community": 240, - "community_name": "Issue #54 status", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_location": "L71" + }, + { + "id": "issueflows_03_solved_issues_issue28_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_location": "L64" + }, + { + "id": "issueflows_04_designs_and_guides_manage_cells_modal", + "label": "manage-cells-modal.md", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", "file_type": "document", "node_kind": "page", - "norm_label": "issue54_status.md", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "norm_label": "manage-cells-modal.md", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue54_status_issue_54_status", - "label": "Issue #54 status", + "id": "issueflows_04_designs_and_guides_manage_cells_modal_behaviour", + "label": "Behaviour", "_origin": "ast", - "community": 240, - "community_name": "Issue #54 status", + "community": 238, + "community_name": "save_cell", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #54 status", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "norm_label": "behaviour", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L5" + }, + { + "id": "issueflows_04_designs_and_guides_manage_cells_modal_manage_cells_modal", + "label": "Manage cells modal", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "manage cells modal", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue54_status_remaining_work", + "id": "issueflows_04_designs_and_guides_manage_cells_modal_plot_refresh_timing_issue_184", + "label": "Plot refresh timing (issue #184)", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plot refresh timing (issue #184)", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L24" + }, + { + "id": "issueflows_04_designs_and_guides_manage_cells_modal_ui_location", + "label": "UI location", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "document", + "node_kind": "heading", + "norm_label": "ui location", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L64" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_742", + "label": "Write a cell to a self-contained ``.cellpy`` file (overwriting).", + "_origin": "ast", + "community": 238, + "community_name": "save_cell", + "file_type": "rationale", + "norm_label": "write a cell to a self-contained ``.cellpy`` file (overwriting).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L742" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan", + "label": "issue52_plan.md", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue52_plan.md", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L39" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L9" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L95" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_issue_52_plan_bump_cellpy_post4_delegate_app_glue", + "label": "Issue #52 \u2014 Plan: bump cellpy post4 + delegate app glue", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #52 \u2014 plan: bump cellpy post4 + delegate app glue", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L120" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_phase_a_bump_smoke", + "label": "Phase A \u2014 bump + smoke", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase a \u2014 bump + smoke", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L44" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_phase_c_implement_delegate_now", + "label": "Phase C \u2014 implement \u201cdelegate now\u201d", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase c \u2014 implement \u201cdelegate now\u201d", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L69" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_phase_d_docs", + "label": "Phase D \u2014 docs", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase d \u2014 docs", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L89" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_prior_art", + "label": "Prior art", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L21" + }, + { + "id": "issueflows_03_solved_issues_issue52_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue52_plan.md", + "source_location": "L112" + }, + { + "id": "issueflows_03_solved_issues_issue52_status", + "label": "issue52_status.md", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue52_status.md", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue52_status_issue_52_status", + "label": "Issue #52 \u2014 Status", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #52 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue52_status_remaining_work", "label": "Remaining work", "_origin": "ast", - "community": 240, - "community_name": "Issue #54 status", + "community": 24, + "community_name": "instrument_meta_schema", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", - "source_location": "L14" + "source_file": ".issueflows/03-solved-issues/issue52_status.md", + "source_location": "L15" }, { - "id": "issueflows_03_solved_issues_issue54_status_what_s_done", + "id": "issueflows_03_solved_issues_issue52_status_what_s_done", "label": "What's done", "_origin": "ast", - "community": 240, - "community_name": "Issue #54 status", + "community": 24, + "community_name": "instrument_meta_schema", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue54_status.md", + "source_file": ".issueflows/03-solved-issues/issue52_status.md", "source_location": "L5" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_221", + "label": "Describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", + "_origin": "ast", + "community": 24, + "community_name": "instrument_meta_schema", + "file_type": "rationale", + "norm_label": "describe ``cellpy.get`` metadata knobs for an ingestion form (#800).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L221" + }, { "id": "issueflows_03_solved_issues_issue55_status", "label": "issue55_status.md", @@ -56785,6 +57760,28 @@ "source_file": ".issueflows/03-solved-issues/issue169_original.md", "source_location": "L5" }, + { + "id": "tests_test_packaging_rationale_30", + "label": "Import packaging/entry.py without it being on sys.path.", + "_origin": "ast", + "community": 249, + "community_name": "_load_entry", + "file_type": "rationale", + "norm_label": "import packaging/entry.py without it being on sys.path.", + "source_file": "tests/test_packaging.py", + "source_location": "L30" + }, + { + "id": "tests_test_packaging_rationale_38", + "label": "The two are duplicated deliberately; this is the thing keeping them honest.\u2026", + "_origin": "ast", + "community": 249, + "community_name": "_load_entry", + "file_type": "rationale", + "norm_label": "the two are duplicated deliberately; this is the thing keeping them honest....", + "source_file": "tests/test_packaging.py", + "source_location": "L38" + }, { "id": "cursor_skills_iflow_pr_sync_skill", "label": "iflow-pr-sync/SKILL.md", @@ -56959,90 +57956,6 @@ "source_file": "docs/guides/04-exporting.md", "source_location": "L204" }, - { - "id": "issueflows_03_solved_issues_issue41_original", - "label": "issue41_original.md", - "_origin": "ast", - "community": 253, - "community_name": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue41_original.md", - "source_file": ".issueflows/03-solved-issues/issue41_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue41_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 253, - "community_name": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue41_original.md", - "source_location": "L21" - }, - { - "id": "issueflows_03_solved_issues_issue41_original_issue_41_arbin_sql_hdf5_import_uses_cellpy_h5_loader_instead_of_arbin_sql_h5", - "label": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", - "_origin": "ast", - "community": 253, - "community_name": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #41: arbin sql hdf5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", - "source_file": ".issueflows/03-solved-issues/issue41_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue41_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 253, - "community_name": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue41_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue41_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 253, - "community_name": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue41_original.md", - "source_location": "L28" - }, - { - "id": "issueflows_03_solved_issues_issue41_original_problem_context", - "label": "Problem / context", - "_origin": "ast", - "community": 253, - "community_name": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue41_original.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue41_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 253, - "community_name": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue41_original.md", - "source_location": "L13" - }, { "id": "issueflows_03_solved_issues_issue81_original", "label": "issue81_original.md", @@ -57128,48 +58041,64 @@ "source_location": "L20" }, { - "id": "tests_test_mcp_prototype_rationale_110", - "label": "The trap made visible: fewer points than rows, reported rather than hidden.", + "id": "issueflows_03_solved_issues_issue19_plan", + "label": "issue19_plan.md", "_origin": "ast", "community": 256, - "community_name": "test_a_default_direction_plot_says_it_drew_less", - "file_type": "rationale", - "norm_label": "the trap made visible: fewer points than rows, reported rather than hidden.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L110" + "community_name": "Plan: Issue #19 \u2014 journal load error surfacing", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue19_plan.md", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L1" }, { - "id": "tests_test_mcp_prototype_rationale_178", - "label": "A write primitive outside the boundary would make the read check decor.", + "id": "issueflows_03_solved_issues_issue19_plan_approach", + "label": "Approach", "_origin": "ast", - "community": 258, - "community_name": "test_writes_are_sandboxed_too", - "file_type": "rationale", - "norm_label": "a write primitive outside the boundary would make the read check decor.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L178" + "community": 256, + "community_name": "Plan: Issue #19 \u2014 journal load error surfacing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L7" }, { - "id": "tests_test_mcp_prototype_rationale_196", - "label": "Error text is read by a model, so it has to name the next call.", + "id": "issueflows_03_solved_issues_issue19_plan_goal", + "label": "Goal", "_origin": "ast", - "community": 259, - "community_name": "test_unknown_handles_and_kinds_are_told_what_to_do", - "file_type": "rationale", - "norm_label": "error text is read by a model, so it has to name the next call.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L196" + "community": 256, + "community_name": "Plan: Issue #19 \u2014 journal load error surfacing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L3" }, { - "id": "tests_test_mcp_prototype_rationale_243", - "label": "The finding this family turns on. `CellpyCell.get_cap` points at the\u2026", + "id": "issueflows_03_solved_issues_issue19_plan_plan_issue_19_journal_load_error_surfacing", + "label": "Plan: Issue #19 \u2014 journal load error surfacing", "_origin": "ast", - "community": 261, - "community_name": "test_describe_api_follows_the_reference_the_docstring_points_at", - "file_type": "rationale", - "norm_label": "the finding this family turns on. `cellpycell.get_cap` points at the...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L243" + "community": 256, + "community_name": "Plan: Issue #19 \u2014 journal load error surfacing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan: issue #19 \u2014 journal load error surfacing", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue19_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 256, + "community_name": "Plan: Issue #19 \u2014 journal load error surfacing", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue19_plan.md", + "source_location": "L14" }, { "id": "cursor_skills_iflow_ops_skill", @@ -57249,18 +58178,6 @@ "source_file": ".cursor/skills/iflow-ops/SKILL.md", "source_location": "L36" }, - { - "id": "cellpy_painpoints_3_silent_all_or_nothing_group_averaging_when_any_group_is_a_singleton", - "label": "3. \ud83d\udfe0 Silent all-or-nothing group-averaging when any group is a singleton", - "_origin": "ast", - "community": 265, - "community_name": "2. Cells into a Collection", - "file_type": "document", - "node_kind": "heading", - "norm_label": "3. \ud83d\udfe0 silent all-or-nothing group-averaging when any group is a singleton", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L171" - }, { "id": "docs_guides_02_collections_2_cells_into_a_collection", "label": "2. Cells into a Collection", @@ -57285,18 +58202,6 @@ "source_file": "docs/guides/02-collections.md", "source_location": "L41" }, - { - "id": "docs_guides_02_collections_grouping_and_averaging", - "label": "Grouping and averaging", - "_origin": "ast", - "community": 265, - "community_name": "2. Cells into a Collection", - "file_type": "document", - "node_kind": "heading", - "norm_label": "grouping and averaging", - "source_file": "docs/guides/02-collections.md", - "source_location": "L140" - }, { "id": "docs_guides_02_collections_polars_here_pandas_there", "label": "polars here, pandas there", @@ -57340,21 +58245,10 @@ "community": 265, "community_name": "2. Cells into a Collection", "file_type": "document", - "node_kind": "heading", - "norm_label": "where to go next", - "source_file": "docs/guides/02-collections.md", - "source_location": "L278" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_643", - "label": "True when the collection carries averaged (mean/std) series.", - "_origin": "ast", - "community": 265, - "community_name": "2. Cells into a Collection", - "file_type": "rationale", - "norm_label": "true when the collection carries averaged (mean/std) series.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L643" + "node_kind": "heading", + "norm_label": "where to go next", + "source_file": "docs/guides/02-collections.md", + "source_location": "L278" }, { "id": "docs_guides_07_delegation_7_what_cellpy_will_and_will_not_do_for_you", @@ -57428,6 +58322,54 @@ "source_file": "docs/guides/07-delegation.md", "source_location": "L145" }, + { + "id": "issueflows_03_solved_issues_issue169_status", + "label": "issue169_status.md", + "_origin": "ast", + "community": 267, + "community_name": "Status \u2014 Issue #169: Compare selected cells", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue169_status.md", + "source_file": ".issueflows/03-solved-issues/issue169_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue169_status_2026_10_02_picked_captured_planned", + "label": "2026-10-02 \u2014 picked, captured, planned", + "_origin": "ast", + "community": 267, + "community_name": "Status \u2014 Issue #169: Compare selected cells", + "file_type": "document", + "node_kind": "heading", + "norm_label": "2026-10-02 \u2014 picked, captured, planned", + "source_file": ".issueflows/03-solved-issues/issue169_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue169_status_remaining", + "label": "Remaining", + "_origin": "ast", + "community": 267, + "community_name": "Status \u2014 Issue #169: Compare selected cells", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining", + "source_file": ".issueflows/03-solved-issues/issue169_status.md", + "source_location": "L51" + }, + { + "id": "issueflows_03_solved_issues_issue169_status_status_issue_169_compare_selected_cells", + "label": "Status \u2014 Issue #169: Compare selected cells", + "_origin": "ast", + "community": 267, + "community_name": "Status \u2014 Issue #169: Compare selected cells", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 issue #169: compare selected cells", + "source_file": ".issueflows/03-solved-issues/issue169_status.md", + "source_location": "L1" + }, { "id": "issueflows_03_solved_issues_issue173_status", "label": "issue173_status.md", @@ -57476,17 +58418,6 @@ "source_file": ".issueflows/03-solved-issues/issue173_status.md", "source_location": "L11" }, - { - "id": "tests_test_mcp_prototype_rationale_264", - "label": "`self` in a rendered signature invites a model to pass it.", - "_origin": "ast", - "community": 269, - "community_name": "test_describe_api_renders_a_method_the_way_you_would_call_it", - "file_type": "rationale", - "norm_label": "`self` in a rendered signature invites a model to pass it.", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L264" - }, { "id": "cursor_skills_iflow_plan_skill", "label": "iflow-plan/SKILL.md", @@ -57726,6 +58657,17 @@ "source_file": ".issueflows/03-solved-issues/issue175_original.md", "source_location": "L5" }, + { + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a_mouse", + "label": ".mouse()", + "_origin": "ast", + "community": 272, + "community_name": "N", + "file_type": "code", + "norm_label": ".mouse()", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" + }, { "id": "issueflows_03_solved_issues_issue177_original", "label": "issue177_original.md", @@ -57762,17 +58704,6 @@ "source_file": ".issueflows/03-solved-issues/issue177_original.md", "source_location": "L5" }, - { - "id": "tests_test_mcp_prototype_rationale_297", - "label": "`utils.helpers` re-exports `CellpyCell`; a path through it sends the reader to\u2026", - "_origin": "ast", - "community": 274, - "community_name": "test_search_api_points_at_the_module_that_defines_the_call", - "file_type": "rationale", - "norm_label": "`utils.helpers` re-exports `cellpycell`; a path through it sends the reader to...", - "source_file": "tests/test_mcp_prototype.py", - "source_location": "L297" - }, { "id": "tests_test_packaging_rationale_70", "label": "Not just None: a detached handle raises on write.", @@ -57784,6 +58715,28 @@ "source_file": "tests/test_packaging.py", "source_location": "L70" }, + { + "id": "tests_test_packaging_py_parametrize", + "label": "parametrize", + "_origin": "ast", + "community": 276, + "community_name": "test_smoke_test_skips_only_a_missing_reader", + "file_type": "code", + "norm_label": "parametrize", + "source_file": "", + "source_location": "" + }, + { + "id": "tests_test_packaging_rationale_266", + "label": "The skip must track *both* vocabularies (#124, #143). It originally matched\u2026", + "_origin": "ast", + "community": 276, + "community_name": "test_smoke_test_skips_only_a_missing_reader", + "file_type": "rationale", + "norm_label": "the skip must track *both* vocabularies (#124, #143). it originally matched...", + "source_file": "tests/test_packaging.py", + "source_location": "L266" + }, { "id": "tests_test_ingest", "label": "test_ingest.py", @@ -58072,6 +59025,422 @@ "source_file": "src/cellpy_simple_gui/core/uploads.py", "source_location": "L89" }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_any", + "label": "Any", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "code", + "norm_label": "any", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_path", + "label": "Path", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_progressfn", + "label": "ProgressFn", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "code", + "norm_label": "progressfn", + "source_file": "", + "source_location": "" + }, + { + "id": "issueflows_01_current_issues_issue187_plan", + "label": "issue187_plan.md", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue187_plan.md", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_01_current_issues_issue187_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L17" + }, + { + "id": "issueflows_01_current_issues_issue187_plan_findings", + "label": "Findings", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "findings", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_01_current_issues_issue187_plan_plan_187_name_of_groups", + "label": "Plan \u2014 #187 name of groups", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan \u2014 #187 name of groups", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_01_current_issues_issue187_status", + "label": "issue187_status.md", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue187_status.md", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_01_current_issues_issue187_status_remaining", + "label": "Remaining", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L43" + }, + { + "id": "issueflows_01_current_issues_issue187_status_status_187_name_of_groups", + "label": "Status \u2014 #187 name of groups", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 #187 name of groups", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_01_current_issues_issue187_status_tests", + "label": "Tests", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "tests", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L30" + }, + { + "id": "issueflows_01_current_issues_issue187_status_what_was_done", + "label": "What was done", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what was done", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue19_status", + "label": "issue19_status.md", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue19_status.md", + "source_file": ".issueflows/03-solved-issues/issue19_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue19_status_done", + "label": "Done", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "done", + "source_file": ".issueflows/03-solved-issues/issue19_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue19_status_status_issue_19_journal_load_errors", + "label": "Status: Issue #19 \u2014 journal load errors", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status: issue #19 \u2014 journal load errors", + "source_file": ".issueflows/03-solved-issues/issue19_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue28_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue28_plan.md", + "source_location": "L50" + }, + { + "id": "issueflows_03_solved_issues_issue28_status", + "label": "issue28_status.md", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue28_status.md", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue28_status_issue_28_status_export_cells_from_manage_cells", + "label": "Issue #28 status \u2014 Export cells from Manage cells", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #28 status \u2014 export cells from manage cells", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue28_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L14" + }, + { + "id": "issueflows_03_solved_issues_issue28_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue28_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_04_designs_and_guides_manage_cells_modal_group_names_issue_187", + "label": "Group names (issue #187)", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "document", + "node_kind": "heading", + "norm_label": "group names (issue #187)", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L41" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_228", + "label": "Peek cellpy-file metadata without loading raw/steps/summary (#799).", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "peek cellpy-file metadata without loading raw/steps/summary (#799).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L228" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_322", + "label": "Local path string or remote URI suitable for ``cellpy.get`` (#160).", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "local path string or remote uri suitable for ``cellpy.get`` (#160).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L322" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_341", + "label": "Load a cellpy file (``.cellpy`` / legacy ``.h5``) from disk or remote URI.", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "load a cellpy file (``.cellpy`` / legacy ``.h5``) from disk or remote uri.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L341" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_573", + "label": "Load a cellpy batch journal (.json) and return ``(label, cell, group)``. Thin\u2026", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "load a cellpy batch journal (.json) and return ``(label, cell, group)``. thin...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L573" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_585", + "label": "Load a cellpy batch journal (.json). Returns ``(cells, group_labels)``: one\u2026", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "load a cellpy batch journal (.json). returns ``(cells, group_labels)``: one...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L585" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_749", + "label": "Write a cell via cellpy ``to_excel`` (default sheets / options).", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "write a cell via cellpy ``to_excel`` (default sheets / options).", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L749" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_756", + "label": "Write cellpy ``to_csv`` outputs into ``datadir``; return created files.", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "write cellpy ``to_csv`` outputs into ``datadir``; return created files.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L756" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_292", + "label": "Name ``group``; an empty / whitespace label restores the default.", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "name ``group``; an empty / whitespace label restores the default.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L292" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_302", + "label": "The custom name of ``group`` (empty when it has none).", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "the custom name of ``group`` (empty when it has none).", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L302" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_307", + "label": "Custom names of the groups that currently hold cells.", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "custom names of the groups that currently hold cells.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L307" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_31", + "label": "The name a group has until the user gives it one (cellpy's default too).", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "the name a group has until the user gives it one (cellpy's default too).", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L31" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_313", + "label": "One row per group in use: id, custom label, display name, size, colour.", + "_origin": "ast", + "community": 280, + "community_name": "Any", + "file_type": "rationale", + "norm_label": "one row per group in use: id, custom label, display name, size, colour.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L313" + }, + { + "id": "tests_test_packaging_rationale_211", + "label": "A broken probe must not stop the app from starting.", + "_origin": "ast", + "community": 283, + "community_name": "test_startup_survives_an_unreadable_cellpy_config", + "file_type": "rationale", + "norm_label": "a broken probe must not stop the app from starting.", + "source_file": "tests/test_packaging.py", + "source_location": "L211" + }, + { + "id": "issueflows_01_current_issues_issue187_original", + "label": "issue187_original.md", + "_origin": "ast", + "community": 284, + "community_name": "issue187_original.md", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue187_original.md", + "source_file": ".issueflows/01-current-issues/issue187_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_01_current_issues_issue187_original_issue_187_name_of_groups", + "label": "Issue #187 \u2014 name of groups", + "_origin": "ast", + "community": 284, + "community_name": "issue187_original.md", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #187 \u2014 name of groups", + "source_file": ".issueflows/01-current-issues/issue187_original.md", + "source_location": "L1" + }, { "id": "docs_guides_readme_building_on_cellpy", "label": "Building on cellpy", @@ -58216,6 +59585,210 @@ "source_file": ".issueflows/03-solved-issues/issue86_status.md", "source_location": "L5" }, + { + "id": "issueflows_03_solved_issues_issue184_original", + "label": "issue184_original.md", + "_origin": "ast", + "community": 289, + "community_name": "issue184_original.md", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue184_original.md", + "source_file": ".issueflows/03-solved-issues/issue184_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue184_original_184_update_plots_when_cells_modal_closes", + "label": "#184 \u2014 update plots when cells modal closes", + "_origin": "ast", + "community": 289, + "community_name": "issue184_original.md", + "file_type": "document", + "node_kind": "heading", + "norm_label": "#184 \u2014 update plots when cells modal closes", + "source_file": ".issueflows/03-solved-issues/issue184_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan", + "label": "issue62_plan.md", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue62_plan.md", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L25" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L35" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L52" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_plan_issue_62_group_vs_individual_plotly_legend_muting", + "label": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "plan \u2014 issue #62: group vs individual plotly legend muting", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue62_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "source_location": "L46" + }, + { + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export", + "label": "group-average-and-figure-export.md", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "page", + "norm_label": "group-average-and-figure-export.md", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_static_figure_export", + "label": "Group average + static figure export", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "group average + static figure export", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_with_mixed_group_sizes", + "label": "Group average with mixed group sizes", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "group average with mixed group sizes", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L5" + }, + { + "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_static_figure_export_png_svg_pdf", + "label": "Static figure export (PNG / SVG / PDF)", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "static figure export (png / svg / pdf)", + "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "source_location": "L23" + }, + { + "id": "issueflows_04_designs_and_guides_summary_legend_long_names", + "label": "summary-legend-long-names.md", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "page", + "norm_label": "summary-legend-long-names.md", + "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", + "source_location": "L1" + }, + { + "id": "issueflows_04_designs_and_guides_summary_legend_long_names_alternatives_considered", + "label": "Alternatives considered", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", + "source_location": "L20" + }, + { + "id": "issueflows_04_designs_and_guides_summary_legend_long_names_context", + "label": "Context", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", + "source_location": "L3" + }, + { + "id": "issueflows_04_designs_and_guides_summary_legend_long_names_summary_plot_legend_long_cell_names_1", + "label": "Summary plot legend + long cell names (#1)", + "_origin": "ast", + "community": 29, + "community_name": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "file_type": "document", + "node_kind": "heading", + "norm_label": "summary plot legend + long cell names (#1)", + "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", + "source_location": "L1" + }, { "id": "issueflows_03_solved_issues_issue160_original", "label": "issue160_original.md", @@ -58264,67 +59837,67 @@ "source_location": "L1" }, { - "id": "examples_starter_readme_what_to_add_next_and_where_to_look", - "label": "What to add next, and where to look", + "id": "docs_guides_03_plotting_comparing_picked_cycles_across_cells", + "label": "Comparing picked cycles across cells", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "what to add next, and where to look", - "source_file": "examples/starter/README.md", - "source_location": "L91" + "norm_label": "comparing picked cycles across cells", + "source_file": "docs/guides/03-plotting.md", + "source_location": "L347" }, { - "id": "issueflows_03_solved_issues_issue169_plan", - "label": "issue169_plan.md", + "id": "docs_guides_03_plotting_say_when_a_cycle_is_not_there", + "label": "Say when a cycle is not there", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", - "node_kind": "page", - "norm_label": "issue169_plan.md", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "say when a cycle is not there", + "source_file": "docs/guides/03-plotting.md", + "source_location": "L382" }, { - "id": "issueflows_03_solved_issues_issue169_plan_1_spec_core_models_py", - "label": "1. Spec \u2014 `core/models.py`", + "id": "issueflows_03_solved_issues_issue169_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "1. spec \u2014 `core/models.py`", + "norm_label": "prior art", "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L92" + "source_location": "L64" }, { - "id": "issueflows_03_solved_issues_issue169_plan_5_ui_web_templates_index_html_web_static_js_app_js_app_css", - "label": "5. UI \u2014 `web/templates/index.html`, `web/static/js/app.js`, `app.css`", + "id": "issueflows_03_solved_issues_issue169_plan_what_exists_today_and_the_gap", + "label": "What exists today, and the gap", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "5. ui \u2014 `web/templates/index.html`, `web/static/js/app.js`, `app.css`", + "norm_label": "what exists today, and the gap", "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L155" + "source_location": "L13" }, { - "id": "issueflows_03_solved_issues_issue169_plan_6_docs", - "label": "6. Docs", + "id": "issueflows_03_solved_issues_issue186_plan", + "label": "issue186_plan.md", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", - "node_kind": "heading", - "norm_label": "6. docs", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L178" + "node_kind": "page", + "norm_label": "issue186_plan.md", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue169_plan_approach", + "id": "issueflows_03_solved_issues_issue186_plan_approach", "label": "Approach", "_origin": "ast", "community": 3, @@ -58332,23 +59905,23 @@ "file_type": "document", "node_kind": "heading", "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L90" + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L22" }, { - "id": "issueflows_03_solved_issues_issue169_plan_constraints", - "label": "Constraints", + "id": "issueflows_03_solved_issues_issue186_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L38" + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L30" }, { - "id": "issueflows_03_solved_issues_issue169_plan_goal", + "id": "issueflows_03_solved_issues_issue186_plan_goal", "label": "Goal", "_origin": "ast", "community": 3, @@ -58356,236 +59929,312 @@ "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L5" + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue169_plan_open_questions", - "label": "Open questions", + "id": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", + "label": "Plan \u2014 #186 y ranges ignored with Group avg + Spread", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L232" + "norm_label": "plan \u2014 #186 y ranges ignored with group avg + spread", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue169_plan_plan_issue_169_compare_selected_cells", - "label": "Plan \u2014 Issue #169: Compare selected cells", + "id": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", + "label": "Root cause (reproduced with two demo cells in one group)", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "plan \u2014 issue #169: compare selected cells", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "norm_label": "root cause (reproduced with two demo cells in one group)", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L8" + }, + { + "id": "issueflows_03_solved_issues_issue186_plan_test_strategy", + "label": "Test strategy", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue186_plan.md", + "source_location": "L36" + }, + { + "id": "issueflows_03_solved_issues_issue186_status", + "label": "issue186_status.md", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue186_status.md", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue169_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue186_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L64" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L24" }, { - "id": "issueflows_03_solved_issues_issue169_plan_what_exists_today_and_the_gap", - "label": "What exists today, and the gap", + "id": "issueflows_03_solved_issues_issue186_status_status_186_y_ranges_ignored_with_group_avg_spread", + "label": "Status \u2014 #186 y ranges ignored with Group avg + Spread", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "what exists today, and the gap", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L13" + "norm_label": "status \u2014 #186 y ranges ignored with group avg + spread", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_hover", - "label": "Hover", + "id": "issueflows_03_solved_issues_issue186_status_what_s_done", + "label": "What's done", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "document", "node_kind": "heading", - "norm_label": "hover", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L150" + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "source_location": "L7" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1", - "label": "Bridge the in-memory library into cellpy's own collect / plot / export stack.\u2026", + "id": "issueflows_03_solved_issues_issue60_plan_approach", + "label": "Approach", "_origin": "ast", "community": 3, "community_name": "collect.py", - "file_type": "rationale", - "norm_label": "bridge the in-memory library into cellpy's own collect / plot / export stack....", - "source_file": "src/cellpy_simple_gui/core/collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L23" + }, + { + "id": "issueflows_03_solved_issues_issue60_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L10" + }, + { + "id": "issueflows_03_solved_issues_issue60_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L36" + }, + { + "id": "issueflows_03_solved_issues_issue60_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue60_plan_issue_60_plan_summary_y_ranges_facet_miss", + "label": "Issue #60 plan \u2014 summary y_ranges facet miss", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #60 plan \u2014 summary y_ranges facet miss", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1034", - "label": "Plotly layout key for a trace ``yaxis`` id (``y`` \u2192 ``yaxis``, \u2026).", + "id": "issueflows_03_solved_issues_issue60_plan_open_questions", + "label": "Open questions", "_origin": "ast", "community": 3, "community_name": "collect.py", - "file_type": "rationale", - "norm_label": "plotly layout key for a trace ``yaxis`` id (``y`` \u2192 ``yaxis``, ...).", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1034" + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L52" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1174", - "label": "True when PX facet annotations sit on the right edge (collide with legend).", + "id": "issueflows_03_solved_issues_issue60_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 3, "community_name": "collect.py", - "file_type": "rationale", - "norm_label": "true when px facet annotations sit on the right edge (collide with legend).", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1174" + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", + "source_location": "L44" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1206", - "label": "Which cell a per-cell facet trace belongs to. Plotly Express writes\u2026", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_hover", + "label": "Hover", "_origin": "ast", "community": 3, "community_name": "collect.py", - "file_type": "rationale", - "norm_label": "which cell a per-cell facet trace belongs to. plotly express writes...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1206" + "file_type": "document", + "node_kind": "heading", + "norm_label": "hover", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", + "source_location": "L150" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1222", - "label": "Facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. PX\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1", + "label": "Bridge the in-memory library into cellpy's own collect / plot / export stack.\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. px...", + "norm_label": "bridge the in-memory library into cellpy's own collect / plot / export stack....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1222" + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1250", - "label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation.\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1005", + "label": "Say so when cellpy downsampled \u2014 a silently thinned plot is misleading.\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation....", + "norm_label": "say so when cellpy downsampled \u2014 a silently thinned plot is misleading....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1250" + "source_location": "L1005" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_134", - "label": "Every summary family cellpy registers, marked available or not (#97).\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1030", + "label": "Map facet ``variable`` \u2192 ``(xaxis_id, yaxis_id)`` from base traces. Prefer\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "every summary family cellpy registers, marked available or not (#97)....", + "norm_label": "map facet ``variable`` \u2192 ``(xaxis_id, yaxis_id)`` from base traces. prefer...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L134" + "source_location": "L1030" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_183", - "label": "Summary columns a family needs *before* collect-time derivation.\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1049", + "label": "Pull ``variable=`` from a PX hovertemplate, if present.", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "summary columns a family needs *before* collect-time derivation....", + "norm_label": "pull ``variable=`` from a px hovertemplate, if present.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L183" + "source_location": "L1049" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_210", - "label": "Summary column that must already exist before collect derives ``name``.", + "id": "src_cellpy_simple_gui_core_collect_rationale_1058", + "label": "Plotly layout key for a trace ``yaxis`` id (``y`` \u2192 ``yaxis``, \u2026).", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "summary column that must already exist before collect derives ``name``.", + "norm_label": "plotly layout key for a trace ``yaxis`` id (``y`` \u2192 ``yaxis``, ...).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L210" + "source_location": "L1058" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_219", - "label": "Ready :class:`SummaryOptions` for a registry family, or ``None``. Carries the\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1065", + "label": "Set per-facet ``[lo, hi]`` on the merged summary figure (#60 / #54). Prefer\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "ready :class:`summaryoptions` for a registry family, or ``none``. carries the...", + "norm_label": "set per-facet ``[lo, hi]`` on the merged summary figure (#60 / #54). prefer...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L219" + "source_location": "L1065" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_237", - "label": "``(header, available_columns)`` across the loaded cells, or ``(None, None)``.\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1198", + "label": "True when PX facet annotations sit on the right edge (collide with legend).", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "``(header, available_columns)`` across the loaded cells, or ``(none, none)``....", + "norm_label": "true when px facet annotations sit on the right edge (collide with legend).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L237" + "source_location": "L1198" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_261", - "label": "Which of ``columns`` the loaded cells do not actually carry. A family's\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1230", + "label": "Which cell a per-cell facet trace belongs to. Plotly Express writes\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "which of ``columns`` the loaded cells do not actually carry. a family's...", + "norm_label": "which cell a per-cell facet trace belongs to. plotly express writes...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L261" + "source_location": "L1230" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_273", - "label": "Columns for a registry family, resolved against the loaded cells.", + "id": "src_cellpy_simple_gui_core_collect_rationale_1246", + "label": "Facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. PX\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "columns for a registry family, resolved against the loaded cells.", + "norm_label": "facet strip text per ``(xaxis, yaxis)`` pair, matched on axis domain. px...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L273" + "source_location": "L1246" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_283", - "label": "Collect options for a plot type, or ``None`` for the curated ones. Only a\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1274", + "label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation.\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "collect options for a plot type, or ``none`` for the curated ones. only a...", + "norm_label": "``\" \u00b7 cycle \"`` that still fits the legend after truncation....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L283" + "source_location": "L1274" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_296", - "label": "The summary columns the data must already carry for this plot type. Same as\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_1289", + "label": "Fold a cellpy ``per_cell`` facet figure onto one axis pair (#169). cellpy's\u2026", "_origin": "ast", "community": 3, "community_name": "collect.py", "file_type": "rationale", - "norm_label": "the summary columns the data must already carry for this plot type. same as...", + "norm_label": "fold a cellpy ``per_cell`` facet figure onto one axis pair (#169). cellpy's...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L296" + "source_location": "L1289" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_376", + "id": "src_cellpy_simple_gui_core_collect_rationale_397", "label": "Normalize cellpy unit markup for plot titles (``cm**2`` \u2192 ``cm\u00b2``).", "_origin": "ast", "community": 3, @@ -58593,10 +60242,10 @@ "file_type": "rationale", "norm_label": "normalize cellpy unit markup for plot titles (``cm**2`` \u2192 ``cm2``).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L376" + "source_location": "L397" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_381", + "id": "src_cellpy_simple_gui_core_collect_rationale_402", "label": "Strip basis suffix; return ``(base_id, mode|None)``.", "_origin": "ast", "community": 3, @@ -58604,10 +60253,10 @@ "file_type": "rationale", "norm_label": "strip basis suffix; return ``(base_id, mode|none)``.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L381" + "source_location": "L402" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_407", + "id": "src_cellpy_simple_gui_core_collect_rationale_428", "label": "One human axis title for a summary ``variable`` column id (#38).", "_origin": "ast", "community": 3, @@ -58615,10 +60264,10 @@ "file_type": "rationale", "norm_label": "one human axis title for a summary ``variable`` column id (#38).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L407" + "source_location": "L428" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_446", + "id": "src_cellpy_simple_gui_core_collect_rationale_467", "label": "Legacy charge/discharge/CE column selection (kept for tests).", "_origin": "ast", "community": 3, @@ -58626,10 +60275,10 @@ "file_type": "rationale", "norm_label": "legacy charge/discharge/ce column selection (kept for tests).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L446" + "source_location": "L467" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_681", + "id": "src_cellpy_simple_gui_core_collect_rationale_702", "label": "Min/max over finite numeric samples on trace ``x`` or ``y``. When ``axis_id``\u2026", "_origin": "ast", "community": 3, @@ -58637,10 +60286,10 @@ "file_type": "rationale", "norm_label": "min/max over finite numeric samples on trace ``x`` or ``y``. when ``axis_id``...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L681" + "source_location": "L702" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_721", + "id": "src_cellpy_simple_gui_core_collect_rationale_742", "label": "Turn ``[lo|None, hi|None]`` into a concrete ``[lo, hi]`` using data.", "_origin": "ast", "community": 3, @@ -58648,10 +60297,21 @@ "file_type": "rationale", "norm_label": "turn ``[lo|none, hi|none]`` into a concrete ``[lo, hi]`` using data.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L721" + "source_location": "L742" + }, + { + "id": "src_cellpy_simple_gui_core_collect_rationale_766", + "label": "``yaxis`` \u2192 ``y``, ``yaxis2`` \u2192 ``y2``.", + "_origin": "ast", + "community": 3, + "community_name": "collect.py", + "file_type": "rationale", + "norm_label": "``yaxis`` \u2192 ``y``, ``yaxis2`` \u2192 ``y2``.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L766" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_754", + "id": "src_cellpy_simple_gui_core_collect_rationale_775", "label": "Pin axes to ``[lo, hi]``; missing ends use the data extent.", "_origin": "ast", "community": 3, @@ -58659,10 +60319,10 @@ "file_type": "rationale", "norm_label": "pin axes to ``[lo, hi]``; missing ends use the data extent.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L754" + "source_location": "L775" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_774", + "id": "src_cellpy_simple_gui_core_collect_rationale_795", "label": "Give spread traces the hover the plain group-average plot already has (#40).\u2026", "_origin": "ast", "community": 3, @@ -58670,10 +60330,10 @@ "file_type": "rationale", "norm_label": "give spread traces the hover the plain group-average plot already has (#40)....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L774" + "source_location": "L795" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_808", + "id": "src_cellpy_simple_gui_core_collect_rationale_829", "label": "Match the fields the non-averaged plot shows: series, variable, x, y.", "_origin": "ast", "community": 3, @@ -58681,10 +60341,10 @@ "file_type": "rationale", "norm_label": "match the fields the non-averaged plot shows: series, variable, x, y.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L808" + "source_location": "L829" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_816", + "id": "src_cellpy_simple_gui_core_collect_rationale_837", "label": "Put the band half-width on the mean trace so hover can show ``\u00b1 std``.", "_origin": "ast", "community": 3, @@ -58692,10 +60352,10 @@ "file_type": "rationale", "norm_label": "put the band half-width on the mean trace so hover can show ``\u00b1 std``.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L816" + "source_location": "L837" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_834", + "id": "src_cellpy_simple_gui_core_collect_rationale_855", "label": "Traces grouped by the subplot they live on, in figure order.", "_origin": "ast", "community": 3, @@ -58703,10 +60363,10 @@ "file_type": "rationale", "norm_label": "traces grouped by the subplot they live on, in figure order.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L834" + "source_location": "L855" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_843", + "id": "src_cellpy_simple_gui_core_collect_rationale_864", "label": "The y-axis title for ``y``/``y2``/\u2026 \u2014 what names the facet on screen.", "_origin": "ast", "community": 3, @@ -58714,18 +60374,7 @@ "file_type": "rationale", "norm_label": "the y-axis title for ``y``/``y2``/... \u2014 what names the facet on screen.", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L843" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_981", - "label": "Say so when cellpy downsampled \u2014 a silently thinned plot is misleading.\u2026", - "_origin": "ast", - "community": 3, - "community_name": "collect.py", - "file_type": "rationale", - "norm_label": "say so when cellpy downsampled \u2014 a silently thinned plot is misleading....", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L981" + "source_location": "L864" }, { "id": "httpexception", @@ -58782,17 +60431,6 @@ "source_file": "", "source_location": "" }, - { - "id": "src_cellpy_simple_gui_api_routers_plots_py_comparepicks", - "label": "ComparePicks", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "code", - "norm_label": "comparepicks", - "source_file": "", - "source_location": "" - }, { "id": "src_cellpy_simple_gui_core_export", "label": "core/export.py", @@ -58804,17 +60442,6 @@ "source_file": "src/cellpy_simple_gui/core/export.py", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_core_export_py_comparepicks", - "label": "ComparePicks", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "code", - "norm_label": "comparepicks", - "source_file": "", - "source_location": "" - }, { "id": "src_cellpy_simple_gui_core_export_py_path", "label": "Path", @@ -58826,90 +60453,6 @@ "source_file": "", "source_location": "" }, - { - "id": "issueflows_03_solved_issues_issue169_plan_4_api_api_routers_plots_py_api_routers_export_py_core_export_py", - "label": "4. API \u2014 `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "4. api \u2014 `api/routers/plots.py`, `api/routers/export.py`, `core/export.py`", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L146" - }, - { - "id": "issueflows_03_solved_issues_issue169_status", - "label": "issue169_status.md", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue169_status.md", - "source_file": ".issueflows/03-solved-issues/issue169_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue169_status_2026_10_02_built", - "label": "2026-10-02 \u2014 built", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "2026-10-02 \u2014 built", - "source_file": ".issueflows/03-solved-issues/issue169_status.md", - "source_location": "L19" - }, - { - "id": "issueflows_03_solved_issues_issue169_status_2026_10_02_picked_captured_planned", - "label": "2026-10-02 \u2014 picked, captured, planned", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "2026-10-02 \u2014 picked, captured, planned", - "source_file": ".issueflows/03-solved-issues/issue169_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue169_status_remaining", - "label": "Remaining", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining", - "source_file": ".issueflows/03-solved-issues/issue169_status.md", - "source_location": "L51" - }, - { - "id": "issueflows_03_solved_issues_issue169_status_status_issue_169_compare_selected_cells", - "label": "Status \u2014 Issue #169: Compare selected cells", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "status \u2014 issue #169: compare selected cells", - "source_file": ".issueflows/03-solved-issues/issue169_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue175_plan_4_ui_app_js_index_html_app_css", - "label": "4. UI (`app.js`, `index.html`, `app.css`)", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "4. ui (`app.js`, `index.html`, `app.css`)", - "source_file": ".issueflows/03-solved-issues/issue175_plan.md", - "source_location": "L110" - }, { "id": "src_cellpy_simple_gui_api_routers_export_rationale_1", "label": "Export endpoints: collected data, library cells, and static figures.", @@ -58954,28 +60497,6 @@ "source_file": "src/cellpy_simple_gui/api/routers/export.py", "source_location": "L179" }, - { - "id": "src_cellpy_simple_gui_api_routers_plots_rationale_113", - "label": "Resolve every pick's cell; a missing one names itself in the 404.", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "rationale", - "norm_label": "resolve every pick's cell; a missing one names itself in the 404.", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L113" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_1265", - "label": "Fold a cellpy ``per_cell`` facet figure onto one axis pair (#169). cellpy's\u2026", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "rationale", - "norm_label": "fold a cellpy ``per_cell`` facet figure onto one axis pair (#169). cellpy's...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1265" - }, { "id": "src_cellpy_simple_gui_core_export_rationale_1", "label": "Data + static-figure export. Data path: cellpy collections \u2192 csv / xlsx /\u2026", @@ -58987,17 +60508,6 @@ "source_file": "src/cellpy_simple_gui/core/export.py", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_core_export_rationale_114", - "label": "Rows for exactly the picked ``(cell, cycle)`` pairs the chart shows (#169).", - "_origin": "ast", - "community": 30, - "community_name": "core/export.py", - "file_type": "rationale", - "norm_label": "rows for exactly the picked ``(cell, cycle)`` pairs the chart shows (#169).", - "source_file": "src/cellpy_simple_gui/core/export.py", - "source_location": "L114" - }, { "id": "src_cellpy_simple_gui_core_export_rationale_169", "label": "Render Plotly figure JSON to static image bytes (requires kaleido). Delegates\u2026", @@ -59020,6 +60530,17 @@ "source_file": "src/cellpy_simple_gui/core/export.py", "source_location": "L214" }, + { + "id": "src_cellpy_simple_gui_core_export_rationale_236", + "label": "Write one cell into ``work``; return (archive_name, path) pairs.", + "_origin": "ast", + "community": 30, + "community_name": "core/export.py", + "file_type": "rationale", + "norm_label": "write one cell into ``work``; return (archive_name, path) pairs.", + "source_file": "src/cellpy_simple_gui/core/export.py", + "source_location": "L236" + }, { "id": "src_cellpy_simple_gui_core_export_rationale_256", "label": "Export library cells via cellpy save/to_csv/to_excel. Returns ``(bytes,\u2026", @@ -59043,55 +60564,132 @@ "source_location": "L52" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_181", - "label": "Several cells, each with its own cycles, in one figure (#169). cellpy collects\u2026", + "id": "src_cellpy_simple_gui_core_models_rationale_264", + "label": "Differential voltage (dV/dQ vs capacity) for one cell \u2014 developer mode. Same\u2026", "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "rationale", - "norm_label": "several cells, each with its own cycles, in one figure (#169). cellpy collects...", + "norm_label": "differential voltage (dv/dq vs capacity) for one cell \u2014 developer mode. same...", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L181" + "source_location": "L264" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_231", - "label": "Every ``(cell_id, cycle)`` the spec asks for.", + "id": "src_cellpy_simple_gui_core_models_rationale_322", + "label": "Optional explicit cell ids for library-cell export (default = selected).", "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "rationale", - "norm_label": "every ``(cell_id, cycle)`` the spec asks for.", + "norm_label": "optional explicit cell ids for library-cell export (default = selected).", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L231" + "source_location": "L322" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_256", - "label": "Differential voltage (dV/dQ vs capacity) for one cell \u2014 developer mode. Same\u2026", + "id": "tests_test_core_rationale_1780", + "label": "dV/dQ renders per direction; cellpy's dva_plot is single-cell.", "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "rationale", - "norm_label": "differential voltage (dv/dq vs capacity) for one cell \u2014 developer mode. same...", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L256" + "norm_label": "dv/dq renders per direction; cellpy's dva_plot is single-cell.", + "source_file": "tests/test_core.py", + "source_location": "L1780" }, { - "id": "tests_test_api_rationale_475", - "label": "Every x-model in the template must exist in the component, or Alpine throws.\u2026", + "id": "tests_test_core_rationale_1795", + "label": "cellpy #862/#863: the collected DVA path labels and dashes both halves.", "_origin": "ast", "community": 30, "community_name": "core/export.py", "file_type": "rationale", - "norm_label": "every x-model in the template must exist in the component, or alpine throws....", - "source_file": "tests/test_api.py", - "source_location": "L475" + "norm_label": "cellpy #862/#863: the collected dva path labels and dashes both halves.", + "source_file": "tests/test_core.py", + "source_location": "L1795" + }, + { + "id": "tests_test_core_rationale_1834", + "label": "Export mirrors the plotted direction and rides the shared polars path.", + "_origin": "ast", + "community": 30, + "community_name": "core/export.py", + "file_type": "rationale", + "norm_label": "export mirrors the plotted direction and rides the shared polars path.", + "source_file": "tests/test_core.py", + "source_location": "L1834" + }, + { + "id": "examples_mcp_server", + "label": "mcp/server.py", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "mcp/server.py", + "source_file": "examples/mcp/server.py", + "source_location": "L1" + }, + { + "id": "examples_mcp_server_py_path", + "label": "Path", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" + }, + { + "id": "packaging_smoke_test", + "label": "smoke_test.py", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "smoke_test.py", + "source_file": "packaging/smoke_test.py", + "source_location": "L1" + }, + { + "id": "packaging_smoke_test_py_path", + "label": "Path", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" + }, + { + "id": "prompt", + "label": "prompt", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "prompt", + "source_file": "", + "source_location": "" + }, + { + "id": "tests_conftest", + "label": "conftest.py", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "conftest.py", + "source_file": "tests/conftest.py", + "source_location": "L1" }, { "id": "tests_test_agent_docs", "label": "test_agent_docs.py", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_agent_docs.py", "source_file": "tests/test_agent_docs.py", @@ -59102,7 +60700,7 @@ "label": "fixture", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "fixture", "source_file": "", @@ -59113,7 +60711,7 @@ "label": "test_api_reference.py", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_api_reference.py", "source_file": "tests/test_api_reference.py", @@ -59124,29 +60722,40 @@ "label": "fixture", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "fixture", "source_file": "", "source_location": "" }, { - "id": "tests_test_journal", - "label": "test_journal.py", + "id": "tests_test_guides", + "label": "test_guides.py", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", - "norm_label": "test_journal.py", - "source_file": "tests/test_journal.py", + "norm_label": "test_guides.py", + "source_file": "tests/test_guides.py", "source_location": "L1" }, + { + "id": "tests_test_guides_py_parametrize", + "label": "parametrize", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "parametrize", + "source_file": "", + "source_location": "" + }, { "id": "tests_test_starter", "label": "test_starter.py", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "test_starter.py", "source_file": "tests/test_starter.py", @@ -59157,18 +60766,173 @@ "label": "fixture", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "code", "norm_label": "fixture", "source_file": "", "source_location": "" }, + { + "id": "tools_gen_llms_txt", + "label": "gen_llms_txt.py", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "gen_llms_txt.py", + "source_file": "tools/gen_llms_txt.py", + "source_location": "L1" + }, + { + "id": "tools_gen_llms_txt_py_path", + "label": "Path", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "code", + "norm_label": "path", + "source_file": "", + "source_location": "" + }, + { + "id": "examples_mcp_readme_the_prompts", + "label": "The prompts", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "the prompts", + "source_file": "examples/mcp/README.md", + "source_location": "L74" + }, + { + "id": "examples_mcp_server_rationale_1016", + "label": "Where Claude Desktop keeps its MCP server list, per platform.", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "where claude desktop keeps its mcp server list, per platform.", + "source_file": "examples/mcp/server.py", + "source_location": "L1016" + }, + { + "id": "examples_mcp_server_rationale_1026", + "label": "Merge a `cellpy` entry into the client config, leaving the rest alone.", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "merge a `cellpy` entry into the client config, leaving the rest alone.", + "source_file": "examples/mcp/server.py", + "source_location": "L1026" + }, + { + "id": "examples_mcp_server_rationale_51", + "label": "# NOTE: `mcp.server.mcpserver.Context` \u2014 *not* `mcp.server.context.Context`.", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "# note: `mcp.server.mcpserver.context` \u2014 *not* `mcp.server.context.context`.", + "source_file": "examples/mcp/server.py", + "source_location": "L51" + }, + { + "id": "examples_mcp_server_rationale_9", + "label": "A prototype MCP server for cellpy \u2014 enough to prove or disprove the design.\u2026", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "a prototype mcp server for cellpy \u2014 enough to prove or disprove the design....", + "source_file": "examples/mcp/server.py", + "source_location": "L9" + }, + { + "id": "examples_mcp_server_rationale_947", + "label": "Load one cell and produce the standard set of plots.", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "load one cell and produce the standard set of plots.", + "source_file": "examples/mcp/server.py", + "source_location": "L947" + }, + { + "id": "examples_mcp_server_rationale_971", + "label": "Set up the notebook template for a new set of experiments.", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "set up the notebook template for a new set of experiments.", + "source_file": "examples/mcp/server.py", + "source_location": "L971" + }, + { + "id": "examples_mcp_server_rationale_988", + "label": "Explain a cellpy function: arguments, defaults, and the traps.", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "explain a cellpy function: arguments, defaults, and the traps.", + "source_file": "examples/mcp/server.py", + "source_location": "L988" + }, + { + "id": "packaging_smoke_test_rationale_1", + "label": "Smoke-test a built app by driving it over HTTP. Deliberately talks to a\u2026", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "smoke-test a built app by driving it over http. deliberately talks to a...", + "source_file": "packaging/smoke_test.py", + "source_location": "L1" + }, + { + "id": "packaging_smoke_test_rationale_141", + "label": "Launches a binary and picks its URL and token out of the startup log.", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "launches a binary and picks its url and token out of the startup log.", + "source_file": "packaging/smoke_test.py", + "source_location": "L141" + }, + { + "id": "packaging_smoke_test_rationale_55", + "label": "A capability this machine genuinely lacks, as opposed to a broken build.\u2026", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "a capability this machine genuinely lacks, as opposed to a broken build....", + "source_file": "packaging/smoke_test.py", + "source_location": "L55" + }, + { + "id": "tests_conftest_rationale_1", + "label": "Shared test fixtures. The example cells are downloaded from GitHub on first use\u2026", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "shared test fixtures. the example cells are downloaded from github on first use...", + "source_file": "tests/conftest.py", + "source_location": "L1" + }, { "id": "tests_test_agent_docs_rationale_1", "label": "`llms.txt`, `llms-full.txt` and the Claude Skill (#127). These are the\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "`llms.txt`, `llms-full.txt` and the claude skill (#127). these are the...", "source_file": "tests/test_agent_docs.py", @@ -59179,7 +60943,7 @@ "label": "The API listing is the cheap half. These are why the skill exists.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "the api listing is the cheap half. these are why the skill exists.", "source_file": "tests/test_agent_docs.py", @@ -59190,7 +60954,7 @@ "label": "Installed elsewhere, the skill has no repo to fall back on.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "installed elsewhere, the skill has no repo to fall back on.", "source_file": "tests/test_agent_docs.py", @@ -59201,7 +60965,7 @@ "label": "A dead link in an index written for machines is silent until it is not.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "a dead link in an index written for machines is silent until it is not.", "source_file": "tests/test_agent_docs.py", @@ -59212,7 +60976,7 @@ "label": "Adding a guide without listing it is the easy mistake; catch it here.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "adding a guide without listing it is the easy mistake; catch it here.", "source_file": "tests/test_agent_docs.py", @@ -59223,7 +60987,7 @@ "label": "An index is cheap; the concatenation is what an agent will rely on.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "an index is cheap; the concatenation is what an agent will rely on.", "source_file": "tests/test_agent_docs.py", @@ -59234,7 +60998,7 @@ "label": "Keep `docs/api-reference.md` honest (#127). The reference exists so an agent\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "keep `docs/api-reference.md` honest (#127). the reference exists so an agent...", "source_file": "tests/test_api_reference.py", @@ -59245,7 +61009,7 @@ "label": "The curated list is hand-written; a typo in it would ship a dead entry.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "the curated list is hand-written; a typo in it would ship a dead entry.", "source_file": "tests/test_api_reference.py", @@ -59256,7 +61020,7 @@ "label": "The reference and the guides must not drift apart. Not a count \u2014 a count passes\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "the reference and the guides must not drift apart. not a count \u2014 a count passes...", "source_file": "tests/test_api_reference.py", @@ -59267,7 +61031,7 @@ "label": "A signature cannot say `get_axes=True` is required. The prose has to. Each of\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "a signature cannot say `get_axes=true` is required. the prose has to. each of...", "source_file": "tests/test_api_reference.py", @@ -59278,7 +61042,7 @@ "label": "The cellpy version the committed reference was generated from.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "the cellpy version the committed reference was generated from.", "source_file": "tests/test_api_reference.py", @@ -59289,7 +61053,7 @@ "label": "Only the locked environment can hold the reference to the byte. CI deliberately\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "only the locked environment can hold the reference to the byte. ci deliberately...", "source_file": "tests/test_api_reference.py", @@ -59300,51 +61064,40 @@ "label": "`inspect.signature` renders some types differently per interpreter. Found by\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "`inspect.signature` renders some types differently per interpreter. found by...", "source_file": "tests/test_api_reference.py", "source_location": "L80" }, { - "id": "tests_test_journal_rationale_1", - "label": "Tests for loading native cellpy batch journals.", + "id": "tests_test_guides_rationale_1", + "label": "Run the code in `docs/guides/` (#126). A guide whose examples do not work is\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", - "norm_label": "tests for loading native cellpy batch journals.", - "source_file": "tests/test_journal.py", + "norm_label": "run the code in `docs/guides/` (#126). a guide whose examples do not work is...", + "source_file": "tests/test_guides.py", "source_location": "L1" }, { - "id": "tests_test_journal_rationale_10", - "label": "Write a real cellpy batch journal referencing the bundled example files.", - "_origin": "ast", - "community": 304, - "community_name": "test_starter.py", - "file_type": "rationale", - "norm_label": "write a real cellpy batch journal referencing the bundled example files.", - "source_file": "tests/test_journal.py", - "source_location": "L10" - }, - { - "id": "tests_test_journal_rationale_52", - "label": "A journal pointing at non-existent .cellpy files yields no linkable cells.", + "id": "tests_test_guides_rationale_45", + "label": "A glob that silently matches nothing is the classic way to pass by doing\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", - "norm_label": "a journal pointing at non-existent .cellpy files yields no linkable cells.", - "source_file": "tests/test_journal.py", - "source_location": "L52" + "norm_label": "a glob that silently matches nothing is the classic way to pass by doing...", + "source_file": "tests/test_guides.py", + "source_location": "L45" }, { "id": "tests_test_starter_rationale_1", "label": "The starter app in ``examples/starter/`` (#125). The starter is documentation\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "the starter app in ``examples/starter/`` (#125). the starter is documentation...", "source_file": "tests/test_starter.py", @@ -59355,7 +61108,7 @@ "label": "Size is the feature. The reference implementation is the other artifact. A\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "size is the feature. the reference implementation is the other artifact. a...", "source_file": "tests/test_starter.py", @@ -59366,7 +61119,7 @@ "label": "cellpy draws an empty chart for a missing column rather than raising.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "cellpy draws an empty chart for a missing column rather than raising.", "source_file": "tests/test_starter.py", @@ -59377,7 +61130,7 @@ "label": "The starter imported as a module, with no cells loaded.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "the starter imported as a module, with no cells loaded.", "source_file": "tests/test_starter.py", @@ -59388,7 +61141,7 @@ "label": "Load -> collect -> plot -> export, which is the entire point of the file.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "load -> collect -> plot -> export, which is the entire point of the file.", "source_file": "tests/test_starter.py", @@ -59399,7 +61152,7 @@ "label": "Curves come from ``collect_cycles``, not from another column list.", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "curves come from ``collect_cycles``, not from another column list.", "source_file": "tests/test_starter.py", @@ -59410,7 +61163,7 @@ "label": "The README's worked example, run. If this ever needs a second edit somewhere\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "the readme's worked example, run. if this ever needs a second edit somewhere...", "source_file": "tests/test_starter.py", @@ -59421,12 +61174,34 @@ "label": "``uv run --script app.py`` has to work outside this repository. The PEP 723\u2026", "_origin": "ast", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "file_type": "rationale", "norm_label": "``uv run --script app.py`` has to work outside this repository. the pep 723...", "source_file": "tests/test_starter.py", "source_location": "L93" }, + { + "id": "tools_gen_llms_txt_rationale_1", + "label": "Generate `llms.txt` and `llms-full.txt` (#127). Half the audience for the\u2026", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "generate `llms.txt` and `llms-full.txt` (#127). half the audience for the...", + "source_file": "tools/gen_llms_txt.py", + "source_location": "L1" + }, + { + "id": "tools_gen_llms_txt_rationale_99", + "label": "`(title, one-liner)` read out of the guide itself. The guides open with `# 3.\u2026", + "_origin": "ast", + "community": 304, + "community_name": "mcp/server.py", + "file_type": "rationale", + "norm_label": "`(title, one-liner)` read out of the guide itself. the guides open with `# 3....", + "source_file": "tools/gen_llms_txt.py", + "source_location": "L99" + }, { "id": "cursor_skills_iflow_close_skill", "label": "iflow-close/SKILL.md", @@ -59666,6 +61441,83 @@ "source_file": ".cursor/skills/iflow-status/SKILL.md", "source_location": "L1" }, + { + "id": "cursor_skills_gh_ci_skill", + "label": "gh-ci/SKILL.md", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "frontmatter": { + "name": "gh-ci", + "description": ">-", + "issue-flow-version": "0.4.2a4" + }, + "node_kind": "page", + "norm_label": "gh-ci/skill.md", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L1" + }, + { + "id": "cursor_skills_gh_ci_skill_fallback_workflow_runs", + "label": "Fallback (workflow runs)", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "fallback (workflow runs)", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L34" + }, + { + "id": "cursor_skills_gh_ci_skill_gh_ci_wait_on_github_ci_with_gh", + "label": "gh-ci \u2014 wait on GitHub CI with `gh`", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "gh-ci \u2014 wait on github ci with `gh`", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L12" + }, + { + "id": "cursor_skills_gh_ci_skill_primary_pr_attached_checks", + "label": "Primary (PR-attached checks)", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "primary (pr-attached checks)", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L17" + }, + { + "id": "cursor_skills_gh_ci_skill_semantics", + "label": "Semantics", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "semantics", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L47" + }, + { + "id": "cursor_skills_gh_ci_skill_where_this_fits", + "label": "Where this fits", + "_origin": "ast", + "community": 32, + "community_name": "gh", + "file_type": "document", + "node_kind": "heading", + "norm_label": "where this fits", + "source_file": ".cursor/skills/gh-ci/SKILL.md", + "source_location": "L55" + }, { "id": "cursor_skills_iflow_setup_skill_constraints", "label": "Constraints", @@ -60119,30 +61971,6 @@ "source_file": "", "source_location": "" }, - { - "id": "docs_api_reference_configuration", - "label": "Configuration", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "configuration", - "source_file": "docs/api-reference.md", - "source_location": "L243" - }, - { - "id": "docs_guides_05_configuration_never_write_the_user_s_config_file", - "label": "Never write the user's config file", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "never write the user's config file", - "source_file": "docs/guides/05-configuration.md", - "source_location": "L124" - }, { "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_configuration_cellpy_config_new_in_2_1_2", "label": "Configuration (`cellpy.config`, new in 2.1.2)", @@ -60167,89 +61995,6 @@ "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", "source_location": "L84" }, - { - "id": "readme_find_files_in_a_remote_folder", - "label": "Find files in a remote folder", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "find files in a remote folder", - "source_file": "README.md", - "source_location": "L378" - }, - { - "id": "readme_moving_the_data_directory", - "label": "Moving the data directory", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "moving the data directory", - "source_file": "README.md", - "source_location": "L290" - }, - { - "id": "readme_per_project_cellpy_settings", - "label": "Per-project cellpy settings", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "per-project cellpy settings", - "source_file": "README.md", - "source_location": "L392" - }, - { - "id": "readme_projects_on_disk", - "label": "Projects on disk", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "projects on disk", - "source_file": "README.md", - "source_location": "L264" - }, - { - "id": "readme_remote_files_ssh_sftp", - "label": "Remote files (SSH / SFTP)", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remote files (ssh / sftp)", - "source_file": "README.md", - "source_location": "L352" - }, - { - "id": "skills_cellpy_app_reference_api_reference_configuration", - "label": "Configuration", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "document", - "node_kind": "heading", - "norm_label": "configuration", - "source_file": "skills/cellpy-app/reference/api-reference.md", - "source_location": "L243" - }, - { - "id": "examples_starter_app_rationale_123", - "label": "Every loader cellpy can offer on this machine. Discovered at runtime, so the\u2026", - "_origin": "ast", - "community": 35, - "community_name": "cellpy_config.py", - "file_type": "rationale", - "norm_label": "every loader cellpy can offer on this machine. discovered at runtime, so the...", - "source_file": "examples/starter/app.py", - "source_location": "L123" - }, { "id": "src_cellpy_simple_gui_core_cellpy_config_rationale_1", "label": "Read-only view of cellpy's layered configuration. Answers \"where is cellpy\u2026", @@ -60620,583 +62365,202 @@ "source_location": "L491" }, { - "id": "issueflows_03_solved_issues_issue186_status", - "label": "issue186_status.md", - "_origin": "ast", - "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue186_status.md", - "source_file": ".issueflows/03-solved-issues/issue186_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue186_status_remaining_work", - "label": "Remaining work", + "id": "tests_conftest_py_fixture", + "label": "fixture", "_origin": "ast", "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue186_status.md", - "source_location": "L24" + "community_name": "Plan \u2014 Issue #169: Compare selected cells", + "file_type": "code", + "norm_label": "fixture", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue186_status_status_186_y_ranges_ignored_with_group_avg_spread", - "label": "Status \u2014 #186 y ranges ignored with Group avg + Spread", + "id": "issueflows_03_solved_issues_issue169_plan", + "label": "issue169_plan.md", "_origin": "ast", "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", - "node_kind": "heading", - "norm_label": "status \u2014 #186 y ranges ignored with group avg + spread", - "source_file": ".issueflows/03-solved-issues/issue186_status.md", + "node_kind": "page", + "norm_label": "issue169_plan.md", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue186_status_what_s_done", - "label": "What's done", + "id": "issueflows_03_solved_issues_issue169_plan_1_spec_core_models_py", + "label": "1. Spec \u2014 `core/models.py`", "_origin": "ast", "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue186_status.md", - "source_location": "L7" - }, - { - "id": "tests_test_core_rationale_1152", - "label": "Two demo cells in one group (so Group avg averages) plus a singleton.", - "_origin": "ast", - "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "file_type": "rationale", - "norm_label": "two demo cells in one group (so group avg averages) plus a singleton.", - "source_file": "tests/test_core.py", - "source_location": "L1152" - }, - { - "id": "tests_test_core_rationale_1168", - "label": "Layout y-axis whose title contains ``needle`` (case-insensitive).", - "_origin": "ast", - "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "file_type": "rationale", - "norm_label": "layout y-axis whose title contains ``needle`` (case-insensitive).", - "source_file": "tests/test_core.py", - "source_location": "L1168" - }, - { - "id": "tests_test_core_rationale_1181", - "label": "Group avg + Spread must honour per-panel y_ranges (#186). The spread hover\u2026", - "_origin": "ast", - "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "file_type": "rationale", - "norm_label": "group avg + spread must honour per-panel y_ranges (#186). the spread hover...", - "source_file": "tests/test_core.py", - "source_location": "L1181" + "norm_label": "1. spec \u2014 `core/models.py`", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L92" }, { - "id": "tests_test_core_rationale_1218", - "label": "A blank end is filled from the spread panel's own extent (#186).", + "id": "issueflows_03_solved_issues_issue169_plan_5_ui_web_templates_index_html_web_static_js_app_js_app_css", + "label": "5. UI \u2014 `web/templates/index.html`, `web/static/js/app.js`, `app.css`", "_origin": "ast", "community": 38, - "community_name": "test_summary_figure_y_ranges_apply_with_group_avg_and_spread", - "file_type": "rationale", - "norm_label": "a blank end is filled from the spread panel's own extent (#186).", - "source_file": "tests/test_core.py", - "source_location": "L1218" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan", - "label": "issue186_plan.md", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue186_plan.md", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L22" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L30" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_plan_186_y_ranges_ignored_with_group_avg_spread", - "label": "Plan \u2014 #186 y ranges ignored with Group avg + Spread", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", - "norm_label": "plan \u2014 #186 y ranges ignored with group avg + spread", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_root_cause_reproduced_with_two_demo_cells_in_one_group", - "label": "Root cause (reproduced with two demo cells in one group)", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "root cause (reproduced with two demo cells in one group)", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L8" - }, - { - "id": "issueflows_03_solved_issues_issue186_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue186_plan.md", - "source_location": "L36" - }, - { - "id": "issueflows_03_solved_issues_issue54_plan", - "label": "issue54_plan.md", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue54_plan.md", - "source_file": ".issueflows/03-solved-issues/issue54_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue60_original", - "label": "issue60_original.md", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue60_original.md", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue60_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L22" - }, - { - "id": "issueflows_03_solved_issues_issue60_original_issue_60_fix_summary_y_ranges_warn_miss_on_charge_capacity_facet", - "label": "Issue #60: fix: summary y_ranges warn/miss on charge_capacity facet", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #60: fix: summary y_ranges warn/miss on charge_capacity facet", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue60_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue60_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L27" - }, - { - "id": "issueflows_03_solved_issues_issue60_original_problem_context", - "label": "Problem / context", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue60_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue60_original.md", - "source_location": "L16" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan", - "label": "issue60_plan.md", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue60_plan.md", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L23" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L10" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L36" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_issue_60_plan_summary_y_ranges_facet_miss", - "label": "Issue #60 plan \u2014 summary y_ranges facet miss", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #60 plan \u2014 summary y_ranges facet miss", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue60_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L52" + "norm_label": "5. ui \u2014 `web/templates/index.html`, `web/static/js/app.js`, `app.css`", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L155" }, { - "id": "issueflows_03_solved_issues_issue60_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_03_solved_issues_issue169_plan_6_docs", + "label": "6. Docs", "_origin": "ast", - "community": 39, - "community_name": "figure_json", + "community": 38, + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue60_plan.md", - "source_location": "L44" + "norm_label": "6. docs", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L178" }, { - "id": "issueflows_03_solved_issues_issue72_plan_approach", + "id": "issueflows_03_solved_issues_issue169_plan_approach", "label": "Approach", "_origin": "ast", - "community": 39, - "community_name": "figure_json", + "community": 38, + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L32" - }, - { - "id": "issueflows_03_solved_issues_issue72_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L8" - }, - { - "id": "issueflows_03_solved_issues_issue72_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L46" + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L90" }, { - "id": "issueflows_03_solved_issues_issue72_plan_goal", + "id": "issueflows_03_solved_issues_issue169_plan_goal", "label": "Goal", "_origin": "ast", - "community": 39, - "community_name": "figure_json", + "community": 38, + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L3" + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue72_plan_open_questions", + "id": "issueflows_03_solved_issues_issue169_plan_open_questions", "label": "Open questions", "_origin": "ast", - "community": 39, - "community_name": "figure_json", + "community": 38, + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L61" + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L232" }, { - "id": "issueflows_03_solved_issues_issue72_plan_plan_issue_72_cycles_mode_x_axis_capacity_units", - "label": "Plan \u2014 Issue #72: Cycles Mode \u2194 x-axis capacity units", + "id": "issueflows_03_solved_issues_issue169_plan_plan_issue_169_compare_selected_cells", + "label": "Plan \u2014 Issue #169: Compare selected cells", "_origin": "ast", - "community": 39, - "community_name": "figure_json", + "community": 38, + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", - "norm_label": "plan \u2014 issue #72: cycles mode \u2194 x-axis capacity units", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "norm_label": "plan \u2014 issue #169: compare selected cells", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue72_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L16" - }, - { - "id": "issueflows_03_solved_issues_issue72_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue169_plan_test_strategy", "label": "Test strategy", "_origin": "ast", - "community": 39, - "community_name": "figure_json", + "community": 38, + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue72_plan.md", - "source_location": "L56" - }, - { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales", - "label": "summary-independent-y-scales.md", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "page", - "norm_label": "summary-independent-y-scales.md", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_alternatives_considered", - "label": "Alternatives considered", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", - "source_location": "L31" + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L208" }, { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_context", - "label": "Context", + "id": "issueflows_03_solved_issues_issue1_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", - "community": 39, - "community_name": "figure_json", + "community": 38, + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", - "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", - "source_location": "L3" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L95" }, { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_decision", - "label": "Decision", + "id": "issueflows_03_solved_issues_issue2_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", - "community": 39, - "community_name": "figure_json", + "community": 38, + "community_name": "Plan \u2014 Issue #169: Compare selected cells", "file_type": "document", "node_kind": "heading", - "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", - "source_location": "L9" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue2_plan.md", + "source_location": "L106" }, { - "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_summary_plot_y_scales_2_54", - "label": "Summary plot y-scales (#2, #54)", + "id": "tests_test_journal", + "label": "test_journal.py", "_origin": "ast", "community": 39, - "community_name": "figure_json", - "file_type": "document", - "node_kind": "heading", - "norm_label": "summary plot y-scales (#2, #54)", - "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", + "community_name": "test_journal.py", + "file_type": "code", + "norm_label": "test_journal.py", + "source_file": "tests/test_journal.py", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1006", - "label": "Map facet ``variable`` \u2192 ``(xaxis_id, yaxis_id)`` from base traces. Prefer\u2026", - "_origin": "ast", - "community": 39, - "community_name": "figure_json", - "file_type": "rationale", - "norm_label": "map facet ``variable`` \u2192 ``(xaxis_id, yaxis_id)`` from base traces. prefer...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1006" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_1025", - "label": "Pull ``variable=`` from a PX hovertemplate, if present.", + "id": "tests_test_journal_rationale_1", + "label": "Tests for loading native cellpy batch journals.", "_origin": "ast", "community": 39, - "community_name": "figure_json", + "community_name": "test_journal.py", "file_type": "rationale", - "norm_label": "pull ``variable=`` from a px hovertemplate, if present.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1025" + "norm_label": "tests for loading native cellpy batch journals.", + "source_file": "tests/test_journal.py", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_1041", - "label": "Set per-facet ``[lo, hi]`` on the merged summary figure (#60 / #54). Prefer\u2026", + "id": "tests_test_journal_rationale_10", + "label": "Write a real cellpy batch journal referencing the bundled example files.", "_origin": "ast", "community": 39, - "community_name": "figure_json", + "community_name": "test_journal.py", "file_type": "rationale", - "norm_label": "set per-facet ``[lo, hi]`` on the merged summary figure (#60 / #54). prefer...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1041" + "norm_label": "write a real cellpy batch journal referencing the bundled example files.", + "source_file": "tests/test_journal.py", + "source_location": "L10" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_745", - "label": "``yaxis`` \u2192 ``y``, ``yaxis2`` \u2192 ``y2``.", + "id": "tests_test_journal_rationale_117", + "label": "A journal pointing at non-existent .cellpy files yields no linkable cells.", "_origin": "ast", "community": 39, - "community_name": "figure_json", + "community_name": "test_journal.py", "file_type": "rationale", - "norm_label": "``yaxis`` \u2192 ``y``, ``yaxis2`` \u2192 ``y2``.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L745" + "norm_label": "a journal pointing at non-existent .cellpy files yields no linkable cells.", + "source_file": "tests/test_journal.py", + "source_location": "L117" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_902", - "label": "Carry user-facing notes in ``layout.meta.warnings`` (#175). Plotly's ``meta``\u2026", + "id": "tests_test_journal_rationale_53", + "label": "The journal's ``group_label`` column names the groups (#187).", "_origin": "ast", "community": 39, - "community_name": "figure_json", + "community_name": "test_journal.py", "file_type": "rationale", - "norm_label": "carry user-facing notes in ``layout.meta.warnings`` (#175). plotly's ``meta``...", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L902" + "norm_label": "the journal's ``group_label`` column names the groups (#187).", + "source_file": "tests/test_journal.py", + "source_location": "L53" }, { "id": "issueflows_03_solved_issues_issue168_plan", @@ -61653,28 +63017,6 @@ "source_file": ".issueflows/04-designs-and-guides/this-project.md", "source_location": "L15" }, - { - "id": "src_cellpy_simple_gui_api_jobs_rationale_121", - "label": "A fixed set of daemon worker threads consuming a queue. Workers are daemons so\u2026", - "_origin": "ast", - "community": 44, - "community_name": "Job", - "file_type": "rationale", - "norm_label": "a fixed set of daemon worker threads consuming a queue. workers are daemons so...", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L121" - }, - { - "id": "src_cellpy_simple_gui_api_jobs_rationale_165", - "label": "Retire the workers. Never waits \u2014 a stuck job would block exit.", - "_origin": "ast", - "community": 44, - "community_name": "Job", - "file_type": "rationale", - "norm_label": "retire the workers. never waits \u2014 a stuck job would block exit.", - "source_file": "src/cellpy_simple_gui/api/jobs.py", - "source_location": "L165" - }, { "id": "src_cellpy_simple_gui_api_jobs_rationale_188", "label": "Cancel running jobs and stop the pool without waiting on stuck work.", @@ -61801,18 +63143,6 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L320" }, - { - "id": "cellpy_painpoints_14_h5_auto_picks_cellpy_format_over_raw_instrument_loaders", - "label": "14. \ud83d\udfe0 `.h5` auto-picks cellpy format over raw instrument loaders", - "_origin": "ast", - "community": 47, - "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "14. \ud83d\udfe0 `.h5` auto-picks cellpy format over raw instrument loaders", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L357" - }, { "id": "cellpy_painpoints_15_cycles_collector_facet_strips_still_use_raw_cycle_num_cell", "label": "15. \ud83d\udfe2 Cycles collector facet strips still use raw `cycle_num=` / `cell=`", @@ -61873,18 +63203,6 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L508" }, - { - "id": "cellpy_painpoints_21_no_selective_summary_rebuild_after_meta_edits", - "label": "21. \ud83d\udfe0 No selective summary rebuild after meta edits", - "_origin": "ast", - "community": 47, - "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "21. \ud83d\udfe0 no selective summary rebuild after meta edits", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L529" - }, { "id": "cellpy_painpoints_22_model_dump_for_file_wrote_credentials_in_plaintext", "label": "22. \ud83d\udd34 `model_dump_for_file()` wrote credentials in plaintext", @@ -62018,28 +63336,28 @@ "source_location": "L1017" }, { - "id": "cellpy_painpoints_4_curveoptions_can_t_set_capacity_mode_method", - "label": "4. \ud83d\udfe0 `CurveOptions` can't set capacity mode / method", + "id": "cellpy_painpoints_3_silent_all_or_nothing_group_averaging_when_any_group_is_a_singleton", + "label": "3. \ud83d\udfe0 Silent all-or-nothing group-averaging when any group is a singleton", "_origin": "ast", "community": 47, "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", "file_type": "document", "node_kind": "heading", - "norm_label": "4. \ud83d\udfe0 `curveoptions` can't set capacity mode / method", + "norm_label": "3. \ud83d\udfe0 silent all-or-nothing group-averaging when any group is a singleton", "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L209" + "source_location": "L171" }, { - "id": "cellpy_painpoints_5_instrument_discovery_logs_a_warning_per_non_loader_module", - "label": "5. \ud83d\udfe0 Instrument discovery logs a WARNING per non-loader module", + "id": "cellpy_painpoints_4_curveoptions_can_t_set_capacity_mode_method", + "label": "4. \ud83d\udfe0 `CurveOptions` can't set capacity mode / method", "_origin": "ast", "community": 47, "community_name": "cellpy pain-points & wishlist (from building cellpy-simple-gui)", "file_type": "document", "node_kind": "heading", - "norm_label": "5. \ud83d\udfe0 instrument discovery logs a warning per non-loader module", + "norm_label": "4. \ud83d\udfe0 `curveoptions` can't set capacity mode / method", "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L219" + "source_location": "L209" }, { "id": "cellpy_painpoints_6_collection_save_only_supports_parquet_csv", @@ -62149,37 +63467,26 @@ "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L1049" }, - { - "id": "examples_mcp_server", - "label": "mcp/server.py", - "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", - "file_type": "code", - "norm_label": "mcp/server.py", - "source_file": "examples/mcp/server.py", - "source_location": "L1" - }, { "id": "logrecord", "label": "LogRecord", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "code", "norm_label": "logrecord", "source_file": "", "source_location": "" }, { - "id": "packaging_smoke_test", - "label": "smoke_test.py", + "id": "src_cellpy_simple_gui_config", + "label": "config.py", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "code", - "norm_label": "smoke_test.py", - "source_file": "packaging/smoke_test.py", + "norm_label": "config.py", + "source_file": "src/cellpy_simple_gui/config.py", "source_location": "L1" }, { @@ -62187,29 +63494,18 @@ "label": "desktop.py", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "code", "norm_label": "desktop.py", "source_file": "src/cellpy_simple_gui/desktop.py", "source_location": "L1" }, - { - "id": "src_cellpy_simple_gui_logging_setup", - "label": "logging_setup.py", - "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", - "file_type": "code", - "norm_label": "logging_setup.py", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_logging_setup_py_path", "label": "Path", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "code", "norm_label": "path", "source_file": "", @@ -62220,7 +63516,7 @@ "label": "__main__.py", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "code", "norm_label": "__main__.py", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -62231,40 +63527,18 @@ "label": "cellpy_simple_gui/server.py", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "code", "norm_label": "cellpy_simple_gui/server.py", "source_file": "src/cellpy_simple_gui/server.py", "source_location": "L1" }, - { - "id": "tests_test_guides", - "label": "test_guides.py", - "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", - "file_type": "code", - "norm_label": "test_guides.py", - "source_file": "tests/test_guides.py", - "source_location": "L1" - }, - { - "id": "tests_test_guides_py_parametrize", - "label": "parametrize", - "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", - "file_type": "code", - "norm_label": "parametrize", - "source_file": "", - "source_location": "" - }, { "id": "issueflows_03_solved_issues_issue12_plan", "label": "issue12_plan.md", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "page", "norm_label": "issue12_plan.md", @@ -62276,7 +63550,7 @@ "label": "Approach", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -62288,7 +63562,7 @@ "label": "Files to touch", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -62300,7 +63574,7 @@ "label": "Goal", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -62312,7 +63586,7 @@ "label": "Plan: Issue #12 \u2014 add logging", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "heading", "norm_label": "plan: issue #12 \u2014 add logging", @@ -62324,67 +63598,139 @@ "label": "Test strategy", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue12_plan.md", + "source_location": "L21" + }, + { + "id": "issueflows_03_solved_issues_issue12_status", + "label": "issue12_status.md", + "_origin": "ast", + "community": 48, + "community_name": "config.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue12_status.md", + "source_file": ".issueflows/03-solved-issues/issue12_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue12_status_done", + "label": "Done", + "_origin": "ast", + "community": 48, + "community_name": "config.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "done", + "source_file": ".issueflows/03-solved-issues/issue12_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue12_status_status_issue_12_add_logging", + "label": "Status: Issue #12 \u2014 add logging", + "_origin": "ast", + "community": 48, + "community_name": "config.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status: issue #12 \u2014 add logging", + "source_file": ".issueflows/03-solved-issues/issue12_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue48_plan", + "label": "issue48_plan.md", + "_origin": "ast", + "community": 48, + "community_name": "config.py", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue48_plan.md", + "source_file": ".issueflows/03-solved-issues/issue48_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue48_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 48, + "community_name": "config.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue48_plan.md", + "source_location": "L21" + }, + { + "id": "issueflows_03_solved_issues_issue48_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 48, + "community_name": "config.py", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue12_plan.md", - "source_location": "L21" + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue48_plan.md", + "source_location": "L28" }, { - "id": "issueflows_03_solved_issues_issue12_status", - "label": "issue12_status.md", + "id": "issueflows_03_solved_issues_issue48_plan_goal", + "label": "Goal", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", - "node_kind": "page", - "norm_label": "issue12_status.md", - "source_file": ".issueflows/03-solved-issues/issue12_status.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue48_plan.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue12_status_done", - "label": "Done", + "id": "issueflows_03_solved_issues_issue48_plan_issue_48_create_gui_tests_plan", + "label": "Issue #48 \u2014 create gui tests (plan)", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "heading", - "norm_label": "done", - "source_file": ".issueflows/03-solved-issues/issue12_status.md", - "source_location": "L5" + "norm_label": "issue #48 \u2014 create gui tests (plan)", + "source_file": ".issueflows/03-solved-issues/issue48_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue12_status_status_issue_12_add_logging", - "label": "Status: Issue #12 \u2014 add logging", + "id": "issueflows_03_solved_issues_issue48_plan_open_questions", + "label": "Open questions", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "heading", - "norm_label": "status: issue #12 \u2014 add logging", - "source_file": ".issueflows/03-solved-issues/issue12_status.md", - "source_location": "L1" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue48_plan.md", + "source_location": "L48" }, { - "id": "issueflows_03_solved_issues_issue48_plan_approach", - "label": "Approach", + "id": "issueflows_03_solved_issues_issue48_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "heading", - "norm_label": "approach", + "norm_label": "test strategy", "source_file": ".issueflows/03-solved-issues/issue48_plan.md", - "source_location": "L21" + "source_location": "L38" }, { "id": "issueflows_03_solved_issues_issue48_status", "label": "issue48_status.md", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "page", "norm_label": "issue48_status.md", @@ -62396,7 +63742,7 @@ "label": "Issue #48 \u2014 status", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "heading", "norm_label": "issue #48 \u2014 status", @@ -62408,7 +63754,7 @@ "label": "Remaining work", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -62420,7 +63766,7 @@ "label": "What's done", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", @@ -62428,36 +63774,14 @@ "source_location": "L5" }, { - "id": "examples_mcp_server_rationale_51", - "label": "# NOTE: `mcp.server.mcpserver.Context` \u2014 *not* `mcp.server.context.Context`.", - "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", - "file_type": "rationale", - "norm_label": "# note: `mcp.server.mcpserver.context` \u2014 *not* `mcp.server.context.context`.", - "source_file": "examples/mcp/server.py", - "source_location": "L51" - }, - { - "id": "examples_mcp_server_rationale_9", - "label": "A prototype MCP server for cellpy \u2014 enough to prove or disprove the design.\u2026", - "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", - "file_type": "rationale", - "norm_label": "a prototype mcp server for cellpy \u2014 enough to prove or disprove the design....", - "source_file": "examples/mcp/server.py", - "source_location": "L9" - }, - { - "id": "packaging_smoke_test_rationale_1", - "label": "Smoke-test a built app by driving it over HTTP. Deliberately talks to a\u2026", + "id": "src_cellpy_simple_gui_config_rationale_1", + "label": "Application settings and paths.", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", - "norm_label": "smoke-test a built app by driving it over http. deliberately talks to a...", - "source_file": "packaging/smoke_test.py", + "norm_label": "application settings and paths.", + "source_file": "src/cellpy_simple_gui/config.py", "source_location": "L1" }, { @@ -62465,7 +63789,7 @@ "label": "Desktop shell: run the local app inside a native window via pywebview.", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "desktop shell: run the local app inside a native window via pywebview.", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -62476,7 +63800,7 @@ "label": "Destroy open windows so webview.start() can return.", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "destroy open windows so webview.start() can return.", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -62487,7 +63811,7 @@ "label": "Make Ctrl+C close the native window (SIGINT alone often never fires in the GUI\u2026", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "make ctrl+c close the native window (sigint alone often never fires in the gui...", "source_file": "src/cellpy_simple_gui/desktop.py", @@ -62498,29 +63822,18 @@ "label": "Stop jobs + uvicorn so the process can exit and free the terminal.", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "stop jobs + uvicorn so the process can exit and free the terminal.", "source_file": "src/cellpy_simple_gui/desktop.py", "source_location": "L70" }, - { - "id": "src_cellpy_simple_gui_logging_setup_rationale_1", - "label": "Terminal logging via loguru, with a stdlib logging bridge.", - "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", - "file_type": "rationale", - "norm_label": "terminal logging via loguru, with a stdlib logging bridge.", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L1" - }, { "id": "src_cellpy_simple_gui_logging_setup_rationale_104", "label": "Forward stdlib logging records into loguru.", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "forward stdlib logging records into loguru.", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62531,7 +63844,7 @@ "label": "Configure colorized loguru output on stderr and intercept stdlib logging. Level\u2026", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "configure colorized loguru output on stderr and intercept stdlib logging. level...", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62542,7 +63855,7 @@ "label": "Where a windowed build writes its log, resolved without app config.\u2026", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "where a windowed build writes its log, resolved without app config....", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62553,7 +63866,7 @@ "label": "False in a windowed PyInstaller build, where there is no console.\u2026", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "false in a windowed pyinstaller build, where there is no console....", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62564,7 +63877,7 @@ "label": "Start capturing records for the in-app viewer (idempotent). Also installs the\u2026", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "start capturing records for the in-app viewer (idempotent). also installs the...", "source_file": "src/cellpy_simple_gui/logging_setup.py", @@ -62575,7 +63888,7 @@ "label": "Entry point. cellpy-simple-gui -> open in a native desktop window (default)\u2026", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "entry point. cellpy-simple-gui -> open in a native desktop window (default)...", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -62586,7 +63899,7 @@ "label": "Give cellpy's writable directories an absolute home before it picks one.\u2026", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "give cellpy's writable directories an absolute home before it picks one....", "source_file": "src/cellpy_simple_gui/__main__.py", @@ -62597,7 +63910,7 @@ "label": "Server helpers shared by the plain-browser and desktop entry points.", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "server helpers shared by the plain-browser and desktop entry points.", "source_file": "src/cellpy_simple_gui/server.py", @@ -62608,7 +63921,7 @@ "label": "Run uvicorn in a background thread so a desktop window can own the main thread.", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "run uvicorn in a background thread so a desktop window can own the main thread.", "source_file": "src/cellpy_simple_gui/server.py", @@ -62619,34 +63932,12 @@ "label": "Ask uvicorn to exit and briefly wait for the daemon thread.", "_origin": "ast", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "file_type": "rationale", "norm_label": "ask uvicorn to exit and briefly wait for the daemon thread.", "source_file": "src/cellpy_simple_gui/server.py", "source_location": "L63" }, - { - "id": "tests_test_guides_rationale_1", - "label": "Run the code in `docs/guides/` (#126). A guide whose examples do not work is\u2026", - "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", - "file_type": "rationale", - "norm_label": "run the code in `docs/guides/` (#126). a guide whose examples do not work is...", - "source_file": "tests/test_guides.py", - "source_location": "L1" - }, - { - "id": "tests_test_guides_rationale_45", - "label": "A glob that silently matches nothing is the classic way to pass by doing\u2026", - "_origin": "ast", - "community": 48, - "community_name": "mcp/server.py", - "file_type": "rationale", - "norm_label": "a glob that silently matches nothing is the classic way to pass by doing...", - "source_file": "tests/test_guides.py", - "source_location": "L45" - }, { "id": "cursor_skills_iflow_pick_skill", "label": "iflow-pick/SKILL.md", @@ -62778,20 +64069,20 @@ "label": "plots.py", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "code", "norm_label": "plots.py", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_py_get", - "label": "get", + "id": "src_cellpy_simple_gui_api_routers_plots_py_comparepicks", + "label": "ComparePicks", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "code", - "norm_label": "get", + "norm_label": "comparepicks", "source_file": "", "source_location": "" }, @@ -62800,7 +64091,7 @@ "label": "post", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "code", "norm_label": "post", "source_file": "", @@ -62811,7 +64102,7 @@ "label": "Response", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "code", "norm_label": "response", "source_file": "", @@ -62822,7 +64113,7 @@ "label": "25. \ud83d\udfe0 `dva_plot(direction=\"both\")` drew both half-cycles identically", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "25. \ud83d\udfe0 `dva_plot(direction=\"both\")` drew both half-cycles identically", @@ -62834,7 +64125,7 @@ "label": "26. \ud83d\udfe0 No `collect_dva`", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "26. \ud83d\udfe0 no `collect_dva`", @@ -62846,7 +64137,7 @@ "label": "27. \ud83d\udfe0 `raw_plot` has no way to limit points *(fixed in 2.1.2)*", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "27. \ud83d\udfe0 `raw_plot` has no way to limit points *(fixed in 2.1.2)*", @@ -62858,31 +64149,19 @@ "label": "28. \ud83d\udd34 Seven registered families cannot be collected at all *(fixed in 2.1.2)*", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "28. \ud83d\udd34 seven registered families cannot be collected at all *(fixed in 2.1.2)*", "source_file": "CELLPY_PAINPOINTS.md", "source_location": "L651" }, - { - "id": "cellpy_painpoints_29_an_unknown_layout_is_accepted_silently_fixed_in_2_1_3", - "label": "29. \ud83d\udfe0 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*", - "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "29. \ud83d\udfe0 an unknown `layout=` is accepted silently *(fixed in 2.1.3)*", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L717" - }, { "id": "cellpy_painpoints_30_spread_plot_traces_carry_no_hover_at_all_open", "label": "30. \ud83d\udfe0 `spread_plot` traces carry no hover at all *(open)*", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "30. \ud83d\udfe0 `spread_plot` traces carry no hover at all *(open)*", @@ -62894,7 +64173,7 @@ "label": "Round 4 \u2014 DVA and raw data", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "round 4 \u2014 dva and raw data", @@ -62906,7 +64185,7 @@ "label": "3. Plotting a collection", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "3. plotting a collection", @@ -62918,31 +64197,19 @@ "label": "Asked-for columns are not drawn columns", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "asked-for columns are not drawn columns", "source_file": "docs/guides/03-plotting.md", "source_location": "L126" }, - { - "id": "docs_guides_03_plotting_comparing_picked_cycles_across_cells", - "label": "Comparing picked cycles across cells", - "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "comparing picked cycles across cells", - "source_file": "docs/guides/03-plotting.md", - "source_location": "L347" - }, { "id": "docs_guides_03_plotting_direction_is_a_plot_argument_and_it_defaults_to_charge", "label": "`direction` is a plot argument, and it defaults to charge", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "`direction` is a plot argument, and it defaults to charge", @@ -62954,7 +64221,7 @@ "label": "Films: `kind=`, and what version you are on", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "films: `kind=`, and what version you are on", @@ -62966,31 +64233,19 @@ "label": "Making it look like your app", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "making it look like your app", "source_file": "docs/guides/03-plotting.md", "source_location": "L34" }, - { - "id": "docs_guides_03_plotting_say_when_a_cycle_is_not_there", - "label": "Say when a cycle is not there", - "_origin": "ast", - "community": 52, - "community_name": "CyclesPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "say when a cycle is not there", - "source_file": "docs/guides/03-plotting.md", - "source_location": "L382" - }, { "id": "docs_guides_03_plotting_single_cell_plots", "label": "Single-cell plots", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "single-cell plots", @@ -63002,7 +64257,7 @@ "label": "Spread plots lose their hover", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "spread plots lose their hover", @@ -63014,7 +64269,7 @@ "label": "`summary_options` \u2014 the accessor that matters", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "`summary_options` \u2014 the accessor that matters", @@ -63026,7 +64281,7 @@ "label": "The plot menu you should not hard-code", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "the plot menu you should not hard-code", @@ -63038,19 +64293,31 @@ "label": "Where to go next", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "where to go next", "source_file": "docs/guides/03-plotting.md", "source_location": "L451" }, + { + "id": "issueflows_03_solved_issues_issue169_plan_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue169_plan.md", + "source_location": "L38" + }, { "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_summary_plot_families", "label": "Summary plot families", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "summary plot families", @@ -63062,7 +64329,7 @@ "label": "Traps", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "document", "node_kind": "heading", "norm_label": "traps", @@ -63074,18 +64341,29 @@ "label": "Plot endpoints \u2014 return Plotly figure JSON built by the core.", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "rationale", "norm_label": "plot endpoints \u2014 return plotly figure json built by the core.", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_api_routers_plots_rationale_113", + "label": "Resolve every pick's cell; a missing one names itself in the 404.", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "rationale", + "norm_label": "resolve every pick's cell; a missing one names itself in the 404.", + "source_file": "src/cellpy_simple_gui/api/routers/plots.py", + "source_location": "L113" + }, { "id": "src_cellpy_simple_gui_api_routers_plots_rationale_126", "label": "Several cells, each with its own cycles, overlaid or side by side (#169).", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "rationale", "norm_label": "several cells, each with its own cycles, overlaid or side by side (#169).", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", @@ -63096,7 +64374,7 @@ "label": "Resolve a cell for a per-cell view.", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "rationale", "norm_label": "resolve a cell for a per-cell view.", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", @@ -63107,7 +64385,7 @@ "label": "Resolve a cell for a developer-mode view.", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "rationale", "norm_label": "resolve a cell for a developer-mode view.", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", @@ -63118,7 +64396,7 @@ "label": "Differential voltage (dV/dQ vs capacity) for one cell (#94). A regular view,\u2026", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "rationale", "norm_label": "differential voltage (dv/dq vs capacity) for one cell (#94). a regular view,...", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", @@ -63129,7 +64407,7 @@ "label": "Raw time-series traces for one cell \u2014 developer mode.", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "rationale", "norm_label": "raw time-series traces for one cell \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", @@ -63140,7 +64418,7 @@ "label": "Raw traces with step/cycle annotations \u2014 developer mode.", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "rationale", "norm_label": "raw traces with step/cycle annotations \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", @@ -63151,33 +64429,77 @@ "label": "One cell when ``cell_id`` is set; otherwise library selection.", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "rationale", "norm_label": "one cell when ``cell_id`` is set; otherwise library selection.", "source_file": "src/cellpy_simple_gui/api/routers/plots.py", "source_location": "L81" }, { - "id": "src_cellpy_simple_gui_api_routers_plots_rationale_93", - "label": "Union of cycle numbers across currently selected cells (Cycles tab).", + "id": "src_cellpy_simple_gui_core_collect_rationale_949", + "label": "Raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2\u2026", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "rationale", - "norm_label": "union of cycle numbers across currently selected cells (cycles tab).", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L93" + "norm_label": "raw time-series traces for one cell, via cellpy's ``raw_plot``. cellpy 2.1.2...", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L949" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_125", - "label": "Drives a cellpy ``collect_cycles`` collection. With ``cell_id`` set: one\u2026", + "id": "src_cellpy_simple_gui_core_models_rationale_280", + "label": "Raw time-series traces for one cell \u2014 developer mode.", "_origin": "ast", "community": 52, - "community_name": "CyclesPlotSpec", + "community_name": "plots.py", "file_type": "rationale", - "norm_label": "drives a cellpy ``collect_cycles`` collection. with ``cell_id`` set: one...", + "norm_label": "raw time-series traces for one cell \u2014 developer mode.", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L125" + "source_location": "L280" + }, + { + "id": "src_cellpy_simple_gui_core_models_rationale_298", + "label": "Raw traces annotated with step/cycle information \u2014 developer mode. Cycle-\u2026", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "rationale", + "norm_label": "raw traces annotated with step/cycle information \u2014 developer mode. cycle-...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L298" + }, + { + "id": "src_cellpy_simple_gui_core_plotting_rationale_299", + "label": "Raw time-series traces for one cell \u2014 developer mode.", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "rationale", + "norm_label": "raw time-series traces for one cell \u2014 developer mode.", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L299" + }, + { + "id": "tests_test_core_rationale_1894", + "label": "cellpy #867 landed in 2.1.2: raw_plot bounds the payload via max_points.", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "rationale", + "norm_label": "cellpy #867 landed in 2.1.2: raw_plot bounds the payload via max_points.", + "source_file": "tests/test_core.py", + "source_location": "L1894" + }, + { + "id": "tests_test_core_rationale_1928", + "label": "cycle_info_plot returns None for plotly unless get_axes=True.", + "_origin": "ast", + "community": 52, + "community_name": "plots.py", + "file_type": "rationale", + "norm_label": "cycle_info_plot returns none for plotly unless get_axes=true.", + "source_file": "tests/test_core.py", + "source_location": "L1928" }, { "id": "cursor_skills_iflow_issue_skill", @@ -63492,15 +64814,118 @@ "source_location": "L20" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_l_readcallback", - "label": "._readCallback()", + "id": "cursor_skills_iflow_drive_skill", + "label": "iflow-drive/SKILL.md", "_origin": "ast", - "community": 57, - "community_name": "I", - "file_type": "code", - "norm_label": "._readcallback()", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "community": 55, + "community_name": ".cancel", + "file_type": "document", + "frontmatter": { + "name": "iflow-drive", + "description": ">-", + "disable-model-invocation": "true", + "issue-flow-version": "0.4.2a4" + }, + "node_kind": "page", + "norm_label": "iflow-drive/skill.md", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L1" + }, + { + "id": "agents_command_lifecycle", + "label": "Command lifecycle", + "_origin": "ast", + "community": 55, + "community_name": ".cancel", + "file_type": "document", + "node_kind": "heading", + "norm_label": "command lifecycle", + "source_file": "AGENTS.md", + "source_location": "L167" + }, + { + "id": "cursor_skills_iflow_drive_skill_constraints", + "label": "Constraints", + "_origin": "ast", + "community": 55, + "community_name": ".cancel", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L178" + }, + { + "id": "cursor_skills_iflow_drive_skill_input", + "label": "Input", + "_origin": "ast", + "community": 55, + "community_name": ".cancel", + "file_type": "document", + "node_kind": "heading", + "norm_label": "input", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L24" + }, + { + "id": "cursor_skills_iflow_drive_skill_instructions", + "label": "Instructions", + "_origin": "ast", + "community": 55, + "community_name": ".cancel", + "file_type": "document", + "node_kind": "heading", + "norm_label": "instructions", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L83" + }, + { + "id": "cursor_skills_iflow_drive_skill_issue_flow_drive_iflow_drive", + "label": "issue-flow \u2014 drive (`/iflow-drive`)", + "_origin": "ast", + "community": 55, + "community_name": ".cancel", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue-flow \u2014 drive (`/iflow-drive`)", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L11" + }, + { + "id": "cursor_skills_iflow_drive_skill_model_execution_directive", + "label": "MODEL & EXECUTION DIRECTIVE", + "_origin": "ast", + "community": 55, + "community_name": ".cancel", + "file_type": "document", + "node_kind": "heading", + "norm_label": "model & execution directive", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L48" + }, + { + "id": "cursor_skills_iflow_drive_skill_resolve_project_root_multi_root_workspaces", + "label": "Resolve project root (multi-root workspaces)", + "_origin": "ast", + "community": 55, + "community_name": ".cancel", + "file_type": "document", + "node_kind": "heading", + "norm_label": "resolve project root (multi-root workspaces)", + "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "source_location": "L62" + }, + { + "id": "docs_issue_workflow_16_iflow_drive_compose_epic_publish_auto_all", + "label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", + "_origin": "ast", + "community": 55, + "community_name": ".cancel", + "file_type": "document", + "node_kind": "heading", + "norm_label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", + "source_file": "docs/issue-workflow.md", + "source_location": "L550" }, { "id": "context", @@ -63536,16 +64961,16 @@ "source_location": "" }, { - "id": "examples_mcp_readme_cellpy_mcp_server_prototype", - "label": "cellpy MCP server (prototype)", + "id": "docs_guides_02_collections_grouping_and_averaging", + "label": "Grouping and averaging", "_origin": "ast", "community": 59, "community_name": "collect", "file_type": "document", "node_kind": "heading", - "norm_label": "cellpy mcp server (prototype)", - "source_file": "examples/mcp/README.md", - "source_location": "L1" + "norm_label": "grouping and averaging", + "source_file": "docs/guides/02-collections.md", + "source_location": "L140" }, { "id": "examples_mcp_readme_four_things_it_does_on_purpose", @@ -63559,30 +64984,6 @@ "source_file": "examples/mcp/README.md", "source_location": "L80" }, - { - "id": "examples_mcp_readme_limits_worth_knowing_before_you_rely_on_it", - "label": "Limits worth knowing before you rely on it", - "_origin": "ast", - "community": 59, - "community_name": "collect", - "file_type": "document", - "node_kind": "heading", - "norm_label": "limits worth knowing before you rely on it", - "source_file": "examples/mcp/README.md", - "source_location": "L103" - }, - { - "id": "examples_mcp_readme_run_it", - "label": "Run it", - "_origin": "ast", - "community": 59, - "community_name": "collect", - "file_type": "document", - "node_kind": "heading", - "norm_label": "run it", - "source_file": "examples/mcp/README.md", - "source_location": "L14" - }, { "id": "examples_mcp_readme_the_tools", "label": "The tools", @@ -63607,18 +65008,6 @@ "source_file": ".issueflows/04-designs-and-guides/cellprocessor-v2-design.md", "source_location": "L36" }, - { - "id": "issueflows_04_designs_and_guides_mcp_server_design_finding_4_cellpy_new_cannot_currently_be_automated", - "label": "Finding 4 \u2014 `cellpy new` cannot currently be automated", - "_origin": "ast", - "community": 59, - "community_name": "collect", - "file_type": "document", - "node_kind": "heading", - "norm_label": "finding 4 \u2014 `cellpy new` cannot currently be automated", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L297" - }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_hard_part_2_file_access", "label": "Hard part 2 \u2014 file access", @@ -63643,18 +65032,6 @@ "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", "source_location": "L39" }, - { - "id": "issueflows_04_designs_and_guides_mcp_server_design_what_is_still_open", - "label": "What is still open", - "_origin": "ast", - "community": 59, - "community_name": "collect", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what is still open", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L402" - }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_what_the_prototype_does_not_answer", "label": "What the prototype does not answer", @@ -63767,6 +65144,17 @@ "source_file": "examples/mcp/server.py", "source_location": "L451" }, + { + "id": "examples_mcp_server_rationale_675", + "label": "Find cellpy calls by name, or by what their first docstring line says. Use this\u2026", + "_origin": "ast", + "community": 59, + "community_name": "collect", + "file_type": "rationale", + "norm_label": "find cellpy calls by name, or by what their first docstring line says. use this...", + "source_file": "examples/mcp/server.py", + "source_location": "L675" + }, { "id": "examples_mcp_server_rationale_84", "label": "The request is not allowed. The message is meant for the model to read.", @@ -63790,96 +65178,615 @@ "source_location": "L850" }, { - "id": "examples_mcp_server_rationale_882", - "label": "Create a batch project from a template \u2014 the `cellpy new` workflow. `project`\u2026", + "id": "examples_mcp_server_rationale_93", + "label": "Resolve a caller-supplied path inside ROOT, or refuse it. The volume is settled\u2026", "_origin": "ast", "community": 59, "community_name": "collect", "file_type": "rationale", - "norm_label": "create a batch project from a template \u2014 the `cellpy new` workflow. `project`...", + "norm_label": "resolve a caller-supplied path inside root, or refuse it. the volume is settled...", "source_file": "examples/mcp/server.py", - "source_location": "L882" + "source_location": "L93" }, { - "id": "examples_mcp_server_rationale_93", - "label": "Resolve a caller-supplied path inside ROOT, or refuse it. The volume is settled\u2026", + "id": "src_cellpy_simple_gui_core_collect_rationale_664", + "label": "True when the collection carries averaged (mean/std) series.", "_origin": "ast", "community": 59, "community_name": "collect", "file_type": "rationale", - "norm_label": "resolve a caller-supplied path inside root, or refuse it. the volume is settled...", - "source_file": "examples/mcp/server.py", - "source_location": "L93" + "norm_label": "true when the collection carries averaged (mean/std) series.", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L664" }, { - "id": "tests_conftest", - "label": "conftest.py", + "id": "src_cellpy_simple_gui_core_library_py_any", + "label": "Any", "_origin": "ast", "community": 61, - "community_name": "conftest.py", + "community_name": "Library", "file_type": "code", - "norm_label": "conftest.py", - "source_file": "tests/conftest.py", - "source_location": "L1" + "norm_label": "any", + "source_file": "", + "source_location": "" }, { - "id": "tests_conftest_py_fixture", - "label": "fixture", + "id": "src_cellpy_simple_gui_core_library_py_path", + "label": "Path", "_origin": "ast", "community": 61, - "community_name": "conftest.py", + "community_name": "Library", "file_type": "code", - "norm_label": "fixture", + "norm_label": "path", "source_file": "", "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue169_plan_test_strategy", - "label": "Test strategy", + "id": "src_cellpy_simple_gui_core_library_rationale_119", + "label": "Thread-safe ordered collection of :class:`CellRecord`.", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "thread-safe ordered collection of :class:`cellrecord`.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L119" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_167", + "label": "Add a cell while preserving saved organisational metadata. Physical quantities\u2026", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "add a cell while preserving saved organisational metadata. physical quantities...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L167" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_249", + "label": "Record that ``rid``'s data was just written to ``path``.", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "record that ``rid``'s data was just written to ``path``.", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L249" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_256", + "label": "The on-disk copy of ``rid``'s data, when it provably still matches. Three\u2026", + "_origin": "ast", + "community": 61, + "community_name": "Library", + "file_type": "rationale", + "norm_label": "the on-disk copy of ``rid``'s data, when it provably still matches. three...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L256" + }, + { + "id": "src_cellpy_simple_gui_core_library_rationale_36", + "label": "``(size, mtime_ns)`` for ``path``, or ``None`` if it cannot be read. Cheap\u2026", "_origin": "ast", "community": 61, - "community_name": "conftest.py", + "community_name": "Library", + "file_type": "rationale", + "norm_label": "``(size, mtime_ns)`` for ``path``, or ``none`` if it cannot be read. cheap...", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L36" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_py_exception", + "label": "Exception", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "code", + "norm_label": "exception", + "source_file": "", + "source_location": "" + }, + { + "id": "cellpy_painpoints_14_h5_auto_picks_cellpy_format_over_raw_instrument_loaders", + "label": "14. \ud83d\udfe0 `.h5` auto-picks cellpy format over raw instrument loaders", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue169_plan.md", - "source_location": "L208" + "norm_label": "14. \ud83d\udfe0 `.h5` auto-picks cellpy format over raw instrument loaders", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L357" }, { - "id": "issueflows_03_solved_issues_issue1_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_03_solved_issues_issue160_plan_approach", + "label": "Approach", "_origin": "ast", - "community": 61, - "community_name": "conftest.py", + "community": 62, + "community_name": "load_raw", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue1_plan.md", - "source_location": "L95" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L66" }, { - "id": "issueflows_03_solved_issues_issue2_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue160_plan_explicitly_deferred_later_than_phase_2", + "label": "Explicitly deferred (later than phase 2)", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "explicitly deferred (later than phase 2)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L112" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_files_to_touch", + "label": "Files to touch", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L128" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_goal", + "label": "Goal", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L3" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_issue_160_plan_otherpath_remote_loading", + "label": "Issue #160 \u2014 Plan: OtherPath remote loading", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #160 \u2014 plan: otherpath remote loading", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_open_questions", + "label": "Open questions", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L163" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_ordering", + "label": "Ordering", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "ordering", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L120" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_phase_1_mvp_this_issue_after_accept", + "label": "Phase 1 \u2014 MVP (this issue after Accept)", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase 1 \u2014 mvp (this issue after accept)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L68" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_phase_1_this_pr", + "label": "Phase 1 (this PR)", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase 1 (this pr)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L130" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_phase_2_filefinder_approx_glob_follow_up_issue_decided", + "label": "Phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L94" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_phase_2_follow_up_issue", + "label": "Phase 2 (follow-up issue)", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "phase 2 (follow-up issue)", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L142" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_scope_check", + "label": "Scope check", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "scope check", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L175" + }, + { + "id": "issueflows_03_solved_issues_issue160_plan_test_strategy", "label": "Test strategy", "_origin": "ast", - "community": 61, - "community_name": "conftest.py", + "community": 62, + "community_name": "load_raw", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue2_plan.md", - "source_location": "L106" + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L151" }, { - "id": "tests_conftest_rationale_1", - "label": "Shared test fixtures. The example cells are downloaded from GitHub on first use\u2026", + "id": "issueflows_03_solved_issues_issue160_status", + "label": "issue160_status.md", "_origin": "ast", - "community": 61, - "community_name": "conftest.py", - "file_type": "rationale", - "norm_label": "shared test fixtures. the example cells are downloaded from github on first use...", - "source_file": "tests/conftest.py", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue160_status.md", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue160_status_issue_160_status", + "label": "Issue #160 \u2014 Status", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #160 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue160_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L15" + }, + { + "id": "issueflows_03_solved_issues_issue160_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue160_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue162_original", + "label": "issue162_original.md", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue162_original.md", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue162_original_goal", + "label": "Goal", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L9" + }, + { + "id": "issueflows_03_solved_issues_issue162_original_issue_162_remote_file_find_via_cellpy_filefinder_otherpath_phase_2", + "label": "Issue #162: Remote file find via cellpy.filefinder (OtherPath phase 2)", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #162: remote file find via cellpy.filefinder (otherpath phase 2)", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue162_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue162_original_out_of_scope", + "label": "Out of scope", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L20" + }, + { + "id": "issueflows_03_solved_issues_issue162_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue162_original.md", + "source_location": "L13" + }, + { + "id": "issueflows_03_solved_issues_issue162_status", + "label": "issue162_status.md", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue162_status.md", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue162_status_issue_162_status", + "label": "Issue #162 \u2014 Status", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #162 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue162_status_remaining_work", + "label": "Remaining work", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", + "source_location": "L34" + }, + { + "id": "issueflows_03_solved_issues_issue162_status_what_s_done", + "label": "What's done", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue162_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue41_original", + "label": "issue41_original.md", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue41_original.md", + "source_file": ".issueflows/03-solved-issues/issue41_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue41_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue41_original.md", + "source_location": "L21" + }, + { + "id": "issueflows_03_solved_issues_issue41_original_issue_41_arbin_sql_hdf5_import_uses_cellpy_h5_loader_instead_of_arbin_sql_h5", + "label": "Issue #41: Arbin SQL HDF5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #41: arbin sql hdf5 import uses cellpy `.h5` loader instead of `arbin_sql_h5`", + "source_file": ".issueflows/03-solved-issues/issue41_original.md", "source_location": "L1" }, + { + "id": "issueflows_03_solved_issues_issue41_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue41_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue41_original_out_of_scope", + "label": "Out of scope", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue41_original.md", + "source_location": "L28" + }, + { + "id": "issueflows_03_solved_issues_issue41_original_problem_context", + "label": "Problem / context", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue41_original.md", + "source_location": "L7" + }, + { + "id": "issueflows_03_solved_issues_issue41_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue41_original.md", + "source_location": "L13" + }, + { + "id": "issueflows_03_solved_issues_issue41_status", + "label": "issue41_status.md", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue41_status.md", + "source_file": ".issueflows/03-solved-issues/issue41_status.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue41_status_progress", + "label": "Progress", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "progress", + "source_file": ".issueflows/03-solved-issues/issue41_status.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue41_status_status_issue_41", + "label": "Status \u2014 Issue #41", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "document", + "node_kind": "heading", + "norm_label": "status \u2014 issue #41", + "source_file": ".issueflows/03-solved-issues/issue41_status.md", + "source_location": "L1" + }, + { + "id": "src_cellpy_simple_gui_config_rationale_71", + "label": "Cap on files pulled in by one glob / load (raised in dev mode).", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "rationale", + "norm_label": "cap on files pulled in by one glob / load (raised in dev mode).", + "source_file": "src/cellpy_simple_gui/config.py", + "source_location": "L71" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_253", + "label": "Load and process a raw instrument file into a ``CellpyCell``. Only the metadata\u2026", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "rationale", + "norm_label": "load and process a raw instrument file into a ``cellpycell``. only the metadata...", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L253" + }, + { + "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_292", + "label": "Hint when the cellpy-native HDF5 reader ran instead of a raw loader.", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "rationale", + "norm_label": "hint when the cellpy-native hdf5 reader ran instead of a raw loader.", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L292" + }, + { + "id": "src_cellpy_simple_gui_core_paths_rationale_44", + "label": "True when ``raw`` is an ssh/sftp/scp URI (cellpy OtherPath).", + "_origin": "ast", + "community": 62, + "community_name": "load_raw", + "file_type": "rationale", + "norm_label": "true when ``raw`` is an ssh/sftp/scp uri (cellpy otherpath).", + "source_file": "src/cellpy_simple_gui/core/paths.py", + "source_location": "L44" + }, { "id": "src_cellpy_simple_gui_api_routers_projects_py_delete", "label": "delete", @@ -63891,6 +65798,17 @@ "source_file": "", "source_location": "" }, + { + "id": "src_cellpy_simple_gui_api_routers_projects_py_get", + "label": "get", + "_origin": "ast", + "community": 65, + "community_name": "core/projects.py", + "file_type": "code", + "norm_label": "get", + "source_file": "", + "source_location": "" + }, { "id": "src_cellpy_simple_gui_core_projects", "label": "core/projects.py", @@ -64270,6 +66188,17 @@ "source_file": ".issueflows/04-designs-and-guides/pywebview-file-dialog.md", "source_location": "L1" }, + { + "id": "src_cellpy_simple_gui_api_routers_projects_rationale_20", + "label": "Current project + whether it brought its own cellpy settings.", + "_origin": "ast", + "community": 65, + "community_name": "core/projects.py", + "file_type": "rationale", + "norm_label": "current project + whether it brought its own cellpy settings.", + "source_file": "src/cellpy_simple_gui/api/routers/projects.py", + "source_location": "L20" + }, { "id": "src_cellpy_simple_gui_core_projects_rationale_1", "label": "Project persistence: save/open self-contained project folders on disk. A\u2026", @@ -64282,7 +66211,7 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_projects_rationale_104", + "id": "src_cellpy_simple_gui_core_projects_rationale_113", "label": "Accept a project folder, ``project.json`` file, or known slug/name.", "_origin": "ast", "community": 65, @@ -64290,10 +66219,10 @@ "file_type": "rationale", "norm_label": "accept a project folder, ``project.json`` file, or known slug/name.", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L104" + "source_location": "L113" }, { - "id": "src_cellpy_simple_gui_core_projects_rationale_117", + "id": "src_cellpy_simple_gui_core_projects_rationale_126", "label": "Decide whether ``path`` is a portable app project or a batch journal. Rules\u2026", "_origin": "ast", "community": 65, @@ -64301,10 +66230,10 @@ "file_type": "rationale", "norm_label": "decide whether ``path`` is a portable app project or a batch journal. rules...", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L117" + "source_location": "L126" }, { - "id": "src_cellpy_simple_gui_core_projects_rationale_148", + "id": "src_cellpy_simple_gui_core_projects_rationale_157", "label": "Remove leftover staging / backup dirs from interrupted saves.", "_origin": "ast", "community": 65, @@ -64312,38 +66241,111 @@ "file_type": "rationale", "norm_label": "remove leftover staging / backup dirs from interrupted saves.", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L148" + "source_location": "L157" }, { - "id": "request", - "label": "Request", + "id": "src_cellpy_simple_gui_core_projects_rationale_65", + "label": "A user-named group (#187). Unnamed groups are not listed.", "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "request", - "source_file": "", - "source_location": "" + "community": 65, + "community_name": "core/projects.py", + "file_type": "rationale", + "norm_label": "a user-named group (#187). unnamed groups are not listed.", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L65" }, { - "id": "src_cellpy_simple_gui_api_routers_system", - "label": "system.py", + "id": "issueflows_03_solved_issues_issue62_original", + "label": "issue62_original.md", "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "code", - "norm_label": "system.py", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", + "community": 66, + "community_name": "Original issue text", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue62_original.md", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_api_routers_system_py_get", - "label": "get", + "id": "issueflows_03_solved_issues_issue62_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 66, + "community_name": "Original issue text", + "file_type": "document", + "node_kind": "heading", + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L17" + }, + { + "id": "issueflows_03_solved_issues_issue62_original_comments_curated_summary", + "label": "Comments (curated summary)", + "_origin": "ast", + "community": 66, + "community_name": "Original issue text", + "file_type": "document", + "node_kind": "heading", + "norm_label": "comments (curated summary)", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L27" + }, + { + "id": "issueflows_03_solved_issues_issue62_original_issue_62_add_checkbox_for_group_vs_individual_plotly_legend_muting_on_summary_plots", + "label": "Issue #62: Add checkbox for group vs individual Plotly legend muting on summary plots", + "_origin": "ast", + "community": 66, + "community_name": "Original issue text", + "file_type": "document", + "node_kind": "heading", + "norm_label": "issue #62: add checkbox for group vs individual plotly legend muting on summary plots", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue62_original_original_issue_text", + "label": "Original issue text", + "_origin": "ast", + "community": 66, + "community_name": "Original issue text", + "file_type": "document", + "node_kind": "heading", + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L5" + }, + { + "id": "issueflows_03_solved_issues_issue62_original_out_of_scope", + "label": "Out of scope", + "_origin": "ast", + "community": 66, + "community_name": "Original issue text", + "file_type": "document", + "node_kind": "heading", + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L23" + }, + { + "id": "issueflows_03_solved_issues_issue62_original_problem_context", + "label": "Problem / context", + "_origin": "ast", + "community": 66, + "community_name": "Original issue text", + "file_type": "document", + "node_kind": "heading", + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue62_original.md", + "source_location": "L7" + }, + { + "id": "request", + "label": "Request", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "code", - "norm_label": "get", + "norm_label": "request", "source_file": "", "source_location": "" }, @@ -64352,7 +66354,7 @@ "label": "post", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "code", "norm_label": "post", "source_file": "", @@ -64363,7 +66365,7 @@ "label": "issue4_plan.md", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "page", "norm_label": "issue4_plan.md", @@ -64375,7 +66377,7 @@ "label": "Approach", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -64387,7 +66389,7 @@ "label": "Constraints", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -64399,7 +66401,7 @@ "label": "Files to touch", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -64411,7 +66413,7 @@ "label": "Goal", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -64423,7 +66425,7 @@ "label": "Issue #4 plan", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "issue #4 plan", @@ -64435,7 +66437,7 @@ "label": "Open questions", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -64447,7 +66449,7 @@ "label": "Prior art", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", @@ -64459,7 +66461,7 @@ "label": "Test strategy", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", @@ -64471,7 +66473,7 @@ "label": "issue4_status.md", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "page", "norm_label": "issue4_status.md", @@ -64483,7 +66485,7 @@ "label": "Issue #4 status", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "issue #4 status", @@ -64495,7 +66497,7 @@ "label": "Remaining work", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -64507,52 +66509,19 @@ "label": "What's done", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", "source_file": ".issueflows/03-solved-issues/issue4_status.md", "source_location": "L5" }, - { - "id": "src_cellpy_simple_gui_api_routers_plots_rationale_142", - "label": "Guard endpoints that only exist in developer mode (#97).", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "guard endpoints that only exist in developer mode (#97).", - "source_file": "src/cellpy_simple_gui/api/routers/plots.py", - "source_location": "L142" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_1", - "label": "System endpoints: capability probe, native file pickers, config diagnostics.", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "system endpoints: capability probe, native file pickers, config diagnostics.", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L1" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_109", - "label": "Where cellpy resolves each setting from (read-only; secrets never included).", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "where cellpy resolves each setting from (read-only; secrets never included).", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L109" - }, { "id": "src_cellpy_simple_gui_api_routers_system_rationale_119", "label": "Open a native file-open (or folder) dialog and return chosen absolute paths.", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "rationale", "norm_label": "open a native file-open (or folder) dialog and return chosen absolute paths.", "source_file": "src/cellpy_simple_gui/api/routers/system.py", @@ -64563,56 +66532,12 @@ "label": "Show a native Save As dialog and write the request body to the chosen path.\u2026", "_origin": "ast", "community": 67, - "community_name": "system.py", + "community_name": "pick", "file_type": "rationale", "norm_label": "show a native save as dialog and write the request body to the chosen path....", "source_file": "src/cellpy_simple_gui/api/routers/system.py", "source_location": "L144" }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_40", - "label": "The active pywebview window, or None when running as a plain server.", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "the active pywebview window, or none when running as a plain server.", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L40" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_85", - "label": "Recent log records \u2014 developer mode (#97). Saves a round trip to\u2026", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "recent log records \u2014 developer mode (#97). saves a round trip to...", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L85" - }, - { - "id": "src_cellpy_simple_gui_api_routers_system_rationale_99", - "label": "Recent jobs with queue and run times \u2014 developer mode (#97).", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "recent jobs with queue and run times \u2014 developer mode (#97).", - "source_file": "src/cellpy_simple_gui/api/routers/system.py", - "source_location": "L99" - }, - { - "id": "src_cellpy_simple_gui_logging_setup_rationale_84", - "label": "Newest-last slice of the ring, optionally filtered to a minimum level.", - "_origin": "ast", - "community": 67, - "community_name": "system.py", - "file_type": "rationale", - "norm_label": "newest-last slice of the ring, optionally filtered to a minimum level.", - "source_file": "src/cellpy_simple_gui/logging_setup.py", - "source_location": "L84" - }, { "id": "issueflows_03_solved_issues_issue56_plan", "label": "issue56_plan.md", @@ -64998,7 +66923,7 @@ "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_520", + "id": "src_cellpy_simple_gui_core_collect_rationale_541", "label": "Collect ICA (dQ/dV) curves, both half-cycles (``direction`` column kept).\u2026", "_origin": "ast", "community": 69, @@ -65006,10 +66931,10 @@ "file_type": "rationale", "norm_label": "collect ica (dq/dv) curves, both half-cycles (``direction`` column kept)....", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L520" + "source_location": "L541" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_236", + "id": "src_cellpy_simple_gui_core_models_rationale_244", "label": "Drives a cellpy ``collect_ica`` collection for one cell (Cell explorer).", "_origin": "ast", "community": 69, @@ -65017,10 +66942,10 @@ "file_type": "rationale", "norm_label": "drives a cellpy ``collect_ica`` collection for one cell (cell explorer).", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L236" + "source_location": "L244" }, { - "id": "tests_test_core_rationale_1866", + "id": "tests_test_core_rationale_1948", "label": "Thinning must be a no-op below the cap \u2014 no spurious 'every Nth' note.", "_origin": "ast", "community": 69, @@ -65028,7 +66953,7 @@ "file_type": "rationale", "norm_label": "thinning must be a no-op below the cap \u2014 no spurious 'every nth' note.", "source_file": "tests/test_core.py", - "source_location": "L1866" + "source_location": "L1948" }, { "id": "tests_test_core_rationale_358", @@ -65675,453 +67600,407 @@ { "id": "tests_test_packaging_rationale_291", "label": "``VersionInfoVersion`` is the Win32 version resource and ISCC rejects anything\u2026", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "``versioninfoversion`` is the win32 version resource and iscc rejects anything...", - "source_file": "tests/test_packaging.py", - "source_location": "L291" - }, - { - "id": "tests_test_packaging_rationale_376", - "label": "The zip is the installer, not a second build (#173).", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "the zip is the installer, not a second build (#173).", - "source_file": "tests/test_packaging.py", - "source_location": "L376" - }, - { - "id": "tests_test_packaging_rationale_48", - "label": "``sys.stderr`` is None in a windowed PyInstaller build. Handing that to\u2026", - "_origin": "ast", - "community": 75, - "community_name": "test_packaging.py", - "file_type": "rationale", - "norm_label": "``sys.stderr`` is none in a windowed pyinstaller build. handing that to...", - "source_file": "tests/test_packaging.py", - "source_location": "L48" - }, - { - "id": "tests_test_api_rationale_593", - "label": "One primary button per modal, whatever tab is showing (#136).", - "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", - "file_type": "rationale", - "norm_label": "one primary button per modal, whatever tab is showing (#136).", - "source_file": "tests/test_api.py", - "source_location": "L593" - }, - { - "id": "tests_test_api_rationale_605", - "label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor.\u2026", - "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", - "file_type": "rationale", - "norm_label": "``.hint`` elements shown without any ``x-show`` guard on them or an ancestor....", - "source_file": "tests/test_api.py", - "source_location": "L605" - }, - { - "id": "tests_test_api_rationale_647", - "label": "At most four help lines are visible before the user touches anything (#136).\u2026", - "_origin": "ast", - "community": 77, - "community_name": "_default_visible_hints", - "file_type": "rationale", - "norm_label": "at most four help lines are visible before the user touches anything (#136)....", - "source_file": "tests/test_api.py", - "source_location": "L647" - }, - { - "id": "issueflows_03_solved_issues_issue136_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L89" + "_origin": "ast", + "community": 75, + "community_name": "test_packaging.py", + "file_type": "rationale", + "norm_label": "``versioninfoversion`` is the win32 version resource and iscc rejects anything...", + "source_file": "tests/test_packaging.py", + "source_location": "L291" }, { - "id": "issueflows_03_solved_issues_issue136_plan_goal", - "label": "Goal", + "id": "tests_test_packaging_rationale_376", + "label": "The zip is the installer, not a second build (#173).", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L7" + "community": 75, + "community_name": "test_packaging.py", + "file_type": "rationale", + "norm_label": "the zip is the installer, not a second build (#173).", + "source_file": "tests/test_packaging.py", + "source_location": "L376" }, { - "id": "issueflows_03_solved_issues_issue136_plan_issue_136_plan_redesign_the_loading_surface_files_projects_journals_raw_import", - "label": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "id": "tests_test_packaging_rationale_48", + "label": "``sys.stderr`` is None in a windowed PyInstaller build. Handing that to\u2026", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #136 \u2014 plan: redesign the loading surface (files, projects, journals, raw import)", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L1" + "community": 75, + "community_name": "test_packaging.py", + "file_type": "rationale", + "norm_label": "``sys.stderr`` is none in a windowed pyinstaller build. handing that to...", + "source_file": "tests/test_packaging.py", + "source_location": "L48" }, { - "id": "issueflows_03_solved_issues_issue136_plan_manual_smoke_checklist_g3_g4_server_mode_csg_token_devtoken", - "label": "Manual smoke checklist (G3/G4; server mode, `CSG_TOKEN=devtoken`)", + "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a", + "label": "a", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "manual smoke checklist (g3/g4; server mode, `csg_token=devtoken`)", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L272" + "community": 8, + "community_name": "$", + "file_type": "code", + "norm_label": "a", + "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", + "source_location": "L8" }, { - "id": "issueflows_03_solved_issues_issue136_plan_new_tests_summary", - "label": "New tests (summary)", + "id": "cellpy_painpoints_29_an_unknown_layout_is_accepted_silently_fixed_in_2_1_3", + "label": "29. \ud83d\udfe0 An unknown `layout=` is accepted silently *(fixed in 2.1.3)*", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "new tests (summary)", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L288" + "norm_label": "29. \ud83d\udfe0 an unknown `layout=` is accepted silently *(fixed in 2.1.3)*", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L717" }, { - "id": "issueflows_03_solved_issues_issue136_plan_open_questions", - "label": "Open questions", + "id": "docs_api_reference_the_collection", + "label": "The Collection", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L296" + "norm_label": "the collection", + "source_file": "docs/api-reference.md", + "source_location": "L157" }, { - "id": "issueflows_03_solved_issues_issue136_plan_scope_check", - "label": "Scope check", + "id": "issueflows_03_solved_issues_issue55_plan", + "label": "issue55_plan.md", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", - "node_kind": "heading", - "norm_label": "scope check", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L314" + "node_kind": "page", + "norm_label": "issue55_plan.md", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_1_sidebar_restructure_template_css", - "label": "Stage 1 \u2014 Sidebar restructure (template + CSS)", + "id": "issueflows_03_solved_issues_issue55_plan_approach", + "label": "Approach", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 1 \u2014 sidebar restructure (template + css)", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L95" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L44" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_2_add_cells_modal_with_source_switcher", - "label": "Stage 2 \u2014 \"Add cells\" modal with source switcher", + "id": "issueflows_03_solved_issues_issue55_plan_constraints", + "label": "Constraints", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 2 \u2014 \"add cells\" modal with source switcher", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L114" + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L9" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_4_adaptive_source_zone_drop_browse_paste", - "label": "Stage 4 \u2014 Adaptive source zone (drop / browse / paste)", + "id": "issueflows_03_solved_issues_issue55_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 4 \u2014 adaptive source zone (drop / browse / paste)", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L174" + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L74" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_5_contextual_help_inline_results_recents", - "label": "Stage 5 \u2014 Contextual help, inline results, recents", + "id": "issueflows_03_solved_issues_issue55_plan_goal", + "label": "Goal", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 5 \u2014 contextual help, inline results, recents", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L192" + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue136_plan_stage_6_docs_and_design_record", - "label": "Stage 6 \u2014 Docs and design record", + "id": "issueflows_03_solved_issues_issue55_plan_issue_55_plan_cycles_collector_per_cell_per_cycle", + "label": "Issue #55 \u2014 Plan: cycles collector (per cell / per cycle)", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "stage 6 \u2014 docs and design record", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L213" + "norm_label": "issue #55 \u2014 plan: cycles collector (per cell / per cycle)", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue136_plan_test_gates_when_to_run_what", - "label": "Test gates \u2014 when to run what", + "id": "issueflows_03_solved_issues_issue55_plan_open_questions", + "label": "Open questions", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "test gates \u2014 when to run what", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L254" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L98" }, { - "id": "issueflows_03_solved_issues_issue136_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue55_plan_test_strategy", "label": "Test strategy", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L245" + "source_file": ".issueflows/03-solved-issues/issue55_plan.md", + "source_location": "L89" }, { - "id": "issueflows_03_solved_issues_issue177_status", - "label": "issue177_status.md", + "id": "issueflows_03_solved_issues_issue62_status", + "label": "issue62_status.md", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "page", - "norm_label": "issue177_status.md", - "source_file": ".issueflows/03-solved-issues/issue177_status.md", + "norm_label": "issue62_status.md", + "source_file": ".issueflows/03-solved-issues/issue62_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue177_status_remaining_work", - "label": "Remaining work", + "id": "issueflows_03_solved_issues_issue62_status_issue_62_status", + "label": "Issue #62 status", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue177_status.md", - "source_location": "L13" + "norm_label": "issue #62 status", + "source_file": ".issueflows/03-solved-issues/issue62_status.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue177_status_status_issue_177", - "label": "Status \u2014 Issue #177", + "id": "issueflows_03_solved_issues_issue62_status_remaining_work", + "label": "Remaining work", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "status \u2014 issue #177", - "source_file": ".issueflows/03-solved-issues/issue177_status.md", - "source_location": "L1" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue62_status.md", + "source_location": "L14" }, { - "id": "issueflows_03_solved_issues_issue177_status_what_s_done", + "id": "issueflows_03_solved_issues_issue62_status_what_s_done", "label": "What's done", "_origin": "ast", - "community": 78, - "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue177_status.md", + "source_file": ".issueflows/03-solved-issues/issue62_status.md", "source_location": "L5" }, { - "id": "cursor_skills_iflow_drive_skill", - "label": "iflow-drive/SKILL.md", + "id": "issueflows_04_designs_and_guides_group_legend_muting", + "label": "group-legend-muting.md", "_origin": "ast", - "community": 79, - "community_name": ".cancel", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", - "frontmatter": { - "name": "iflow-drive", - "description": ">-", - "disable-model-invocation": "true", - "issue-flow-version": "0.4.2a4" - }, "node_kind": "page", - "norm_label": "iflow-drive/skill.md", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", + "norm_label": "group-legend-muting.md", + "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", "source_location": "L1" }, { - "id": "agents_command_lifecycle", - "label": "Command lifecycle", + "id": "issueflows_04_designs_and_guides_group_legend_muting_alternatives_considered", + "label": "Alternatives considered", "_origin": "ast", - "community": 79, - "community_name": ".cancel", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "command lifecycle", - "source_file": "AGENTS.md", - "source_location": "L167" + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_location": "L20" }, { - "id": "cursor_skills_iflow_drive_skill_constraints", - "label": "Constraints", + "id": "issueflows_04_designs_and_guides_group_legend_muting_context", + "label": "Context", "_origin": "ast", - "community": 79, - "community_name": ".cancel", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L178" + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_location": "L3" }, { - "id": "cursor_skills_iflow_drive_skill_input", - "label": "Input", + "id": "issueflows_04_designs_and_guides_group_legend_muting_decision", + "label": "Decision", "_origin": "ast", - "community": 79, - "community_name": ".cancel", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "input", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L24" + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_location": "L9" }, { - "id": "cursor_skills_iflow_drive_skill_instructions", - "label": "Instructions", + "id": "issueflows_04_designs_and_guides_group_legend_muting_group_vs_individual_legend_muting_62", + "label": "Group vs individual legend muting (#62)", "_origin": "ast", - "community": 79, - "community_name": ".cancel", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "instructions", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L83" + "norm_label": "group vs individual legend muting (#62)", + "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_location": "L1" }, { - "id": "cursor_skills_iflow_drive_skill_issue_flow_drive_iflow_drive", - "label": "issue-flow \u2014 drive (`/iflow-drive`)", + "id": "skills_cellpy_app_reference_api_reference_the_collection", + "label": "The Collection", "_origin": "ast", - "community": 79, - "community_name": ".cancel", + "community": 80, + "community_name": "CyclesPlotSpec", "file_type": "document", "node_kind": "heading", - "norm_label": "issue-flow \u2014 drive (`/iflow-drive`)", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L11" + "norm_label": "the collection", + "source_file": "skills/cellpy-app/reference/api-reference.md", + "source_location": "L157" }, { - "id": "cursor_skills_iflow_drive_skill_model_execution_directive", - "label": "MODEL & EXECUTION DIRECTIVE", + "id": "src_cellpy_simple_gui_core_models_rationale_133", + "label": "Drives a cellpy ``collect_cycles`` collection. With ``cell_id`` set: one\u2026", "_origin": "ast", - "community": 79, - "community_name": ".cancel", - "file_type": "document", - "node_kind": "heading", - "norm_label": "model & execution directive", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L48" + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "drives a cellpy ``collect_cycles`` collection. with ``cell_id`` set: one...", + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L133" }, { - "id": "cursor_skills_iflow_drive_skill_resolve_project_root_multi_root_workspaces", - "label": "Resolve project root (multi-root workspaces)", + "id": "tests_test_core_rationale_151", + "label": "#62: SummaryPlotSpec.group_legend_muting reaches collection.plot kwargs.", "_origin": "ast", - "community": 79, - "community_name": ".cancel", - "file_type": "document", - "node_kind": "heading", - "norm_label": "resolve project root (multi-root workspaces)", - "source_file": ".cursor/skills/iflow-drive/SKILL.md", - "source_location": "L62" + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "#62: summaryplotspec.group_legend_muting reaches collection.plot kwargs.", + "source_file": "tests/test_core.py", + "source_location": "L151" }, { - "id": "docs_issue_workflow_16_iflow_drive_compose_epic_publish_auto_all", - "label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", + "id": "tests_test_core_rationale_172", + "label": "#62: CyclesPlotSpec.group_legend_muting reaches collection.plot kwargs.", "_origin": "ast", - "community": 79, - "community_name": ".cancel", - "file_type": "document", - "node_kind": "heading", - "norm_label": "16. `/iflow-drive` \u2014 compose epic \u2192 publish \u2192 auto-all", - "source_file": "docs/issue-workflow.md", - "source_location": "L550" + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "#62: cyclesplotspec.group_legend_muting reaches collection.plot kwargs.", + "source_file": "tests/test_core.py", + "source_location": "L172" }, { - "id": "src_cellpy_simple_gui_web_static_js_plotly_min_js_a", - "label": "a", + "id": "tests_test_core_rationale_201", + "label": "#95: the Cycles pane draws dQ/dV and dV/dQ across the same selection.", "_origin": "ast", - "community": 8, - "community_name": "$", - "file_type": "code", - "norm_label": "a", - "source_file": "src/cellpy_simple_gui/web/static/js/plotly.min.js", - "source_location": "L8" + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "#95: the cycles pane draws dq/dv and dv/dq across the same selection.", + "source_file": "tests/test_core.py", + "source_location": "L201" }, { - "id": "tests_test_api_py_essential", - "label": "essential", + "id": "tests_test_core_rationale_214", + "label": "``layout=\"film\"`` must draw a density plot, whoever is responsible. This used\u2026", "_origin": "ast", "community": 80, - "community_name": "essential", - "file_type": "code", - "norm_label": "essential", - "source_file": "", - "source_location": "" + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "``layout=\"film\"`` must draw a density plot, whoever is responsible. this used...", + "source_file": "tests/test_core.py", + "source_location": "L214" }, { - "id": "tests_test_api_rationale_74", - "label": "The config panel gets sections + provenance, and never a secrets section.", + "id": "tests_test_core_rationale_247", + "label": "Exported data must be what the chart shows, not always the curves (#95).", + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "exported data must be what the chart shows, not always the curves (#95).", + "source_file": "tests/test_core.py", + "source_location": "L247" + }, + { + "id": "tests_test_core_rationale_260", + "label": "Cell-explorer / Cycles-collector x/y range widgets pin Plotly axes.", "_origin": "ast", "community": 80, - "community_name": "essential", + "community_name": "CyclesPlotSpec", "file_type": "rationale", - "norm_label": "the config panel gets sections + provenance, and never a secrets section.", - "source_file": "tests/test_api.py", - "source_location": "L74" + "norm_label": "cell-explorer / cycles-collector x/y range widgets pin plotly axes.", + "source_file": "tests/test_core.py", + "source_location": "L260" }, { - "id": "tests_test_api_rationale_746", - "label": "The blast radius of the old behaviour was the host, not the app (#120).", + "id": "tests_test_core_rationale_283", + "label": "Collector layout also honours axis ranges for export parity.", "_origin": "ast", "community": 80, - "community_name": "essential", + "community_name": "CyclesPlotSpec", "file_type": "rationale", - "norm_label": "the blast radius of the old behaviour was the host, not the app (#120).", - "source_file": "tests/test_api.py", - "source_location": "L746" + "norm_label": "collector layout also honours axis ranges for export parity.", + "source_file": "tests/test_core.py", + "source_location": "L283" }, { - "id": "tests_test_api_rationale_762", - "label": "Loading is a job, so the refusal comes back as an error, not a status.", + "id": "tests_test_core_rationale_301", + "label": "Cycles x/y accept a single end; the other is filled from data.", "_origin": "ast", "community": 80, - "community_name": "essential", + "community_name": "CyclesPlotSpec", "file_type": "rationale", - "norm_label": "loading is a job, so the refusal comes back as an error, not a status.", - "source_file": "tests/test_api.py", - "source_location": "L762" + "norm_label": "cycles x/y accept a single end; the other is filled from data.", + "source_file": "tests/test_core.py", + "source_location": "L301" + }, + { + "id": "tests_test_core_rationale_405", + "label": "Multi-cell collector supports per_cell and per_cycle layouts (#55).", + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "multi-cell collector supports per_cell and per_cycle layouts (#55).", + "source_file": "tests/test_core.py", + "source_location": "L405" + }, + { + "id": "tests_test_core_rationale_468", + "label": "Single-cell explorer: a gap is a note, all-missing is an explanation.", + "_origin": "ast", + "community": 80, + "community_name": "CyclesPlotSpec", + "file_type": "rationale", + "norm_label": "single-cell explorer: a gap is a note, all-missing is an explanation.", + "source_file": "tests/test_core.py", + "source_location": "L468" }, { "id": "cursor_skills_iflow_epic_skill", @@ -66372,637 +68251,85 @@ "source_location": "" }, { - "id": "src_cellpy_simple_gui_core_paths_py_valueerror", - "label": "ValueError", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "code", - "norm_label": "valueerror", - "source_file": "", - "source_location": "" - }, - { - "id": "tests_test_files", - "label": "test_files.py", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "code", - "norm_label": "test_files.py", - "source_file": "tests/test_files.py", - "source_location": "L1" - }, - { - "id": "tests_test_files_py_essential", - "label": "essential", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "code", - "norm_label": "essential", - "source_file": "", - "source_location": "" - }, - { - "id": "issueflows_03_solved_issues_issue136_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L48" - }, - { - "id": "issueflows_03_solved_issues_issue136_plan_stage_3_staged_file_list_glob_preview_endpoint", - "label": "Stage 3 \u2014 Staged file list + glob preview endpoint", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "stage 3 \u2014 staged file list + glob preview endpoint", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L138" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L66" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L13" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_explicitly_deferred_later_than_phase_2", - "label": "Explicitly deferred (later than phase 2)", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "explicitly deferred (later than phase 2)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L112" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L128" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_issue_160_plan_otherpath_remote_loading", - "label": "Issue #160 \u2014 Plan: OtherPath remote loading", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #160 \u2014 plan: otherpath remote loading", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L163" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_ordering", - "label": "Ordering", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "ordering", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L120" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_phase_1_mvp_this_issue_after_accept", - "label": "Phase 1 \u2014 MVP (this issue after Accept)", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase 1 \u2014 mvp (this issue after accept)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L68" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_phase_1_this_pr", - "label": "Phase 1 (this PR)", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase 1 (this pr)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L130" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_phase_2_filefinder_approx_glob_follow_up_issue_decided", - "label": "Phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase 2 \u2014 filefinder \u201capprox glob\u201d (follow-up issue; decided)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L94" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_phase_2_follow_up_issue", - "label": "Phase 2 (follow-up issue)", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "phase 2 (follow-up issue)", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L142" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L38" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_scope_check", - "label": "Scope check", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "scope check", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L175" - }, - { - "id": "issueflows_03_solved_issues_issue160_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue160_plan.md", - "source_location": "L151" - }, - { - "id": "issueflows_03_solved_issues_issue160_status", - "label": "issue160_status.md", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue160_status.md", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue160_status_issue_160_status", - "label": "Issue #160 \u2014 Status", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #160 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue160_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue160_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue160_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue162_original", - "label": "issue162_original.md", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue162_original.md", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_goal", - "label": "Goal", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L9" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_issue_162_remote_file_find_via_cellpy_filefinder_otherpath_phase_2", - "label": "Issue #162: Remote file find via cellpy.filefinder (OtherPath phase 2)", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #162: remote file find via cellpy.filefinder (otherpath phase 2)", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L20" - }, - { - "id": "issueflows_03_solved_issues_issue162_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue162_original.md", - "source_location": "L13" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan", - "label": "issue162_plan.md", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue162_plan.md", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L77" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L11" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan_issue_162_plan_remote_file_find_via_cellpy_filefinder_otherpath_phase_2", - "label": "Issue #162 \u2014 Plan: remote file find via `cellpy.filefinder` (OtherPath phase 2)", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #162 \u2014 plan: remote file find via `cellpy.filefinder` (otherpath phase 2)", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L176" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L35" - }, - { - "id": "issueflows_03_solved_issues_issue162_plan_scope_check", - "label": "Scope check", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "scope check", - "source_file": ".issueflows/03-solved-issues/issue162_plan.md", - "source_location": "L191" - }, - { - "id": "issueflows_03_solved_issues_issue162_status", - "label": "issue162_status.md", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue162_status.md", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue162_status_issue_162_status", - "label": "Issue #162 \u2014 Status", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #162 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue162_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L34" - }, - { - "id": "issueflows_03_solved_issues_issue162_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue162_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan", - "label": "issue41_plan.md", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue41_plan.md", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L15" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue41_plan_plan_issue_41", - "label": "Plan \u2014 Issue #41", + "id": "src_cellpy_simple_gui_core_paths_py_valueerror", + "label": "ValueError", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "plan \u2014 issue #41", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L1" + "file_type": "code", + "norm_label": "valueerror", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue41_plan_test_strategy", - "label": "Test strategy", + "id": "tests_test_files", + "label": "test_files.py", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue41_plan.md", - "source_location": "L22" + "file_type": "code", + "norm_label": "test_files.py", + "source_file": "tests/test_files.py", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue41_status", - "label": "issue41_status.md", + "id": "tests_test_files_py_essential", + "label": "essential", "_origin": "ast", "community": 83, "community_name": "expand_paths", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue41_status.md", - "source_file": ".issueflows/03-solved-issues/issue41_status.md", - "source_location": "L1" + "file_type": "code", + "norm_label": "essential", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue41_status_progress", - "label": "Progress", + "id": "issueflows_03_solved_issues_issue136_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 83, "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "progress", - "source_file": ".issueflows/03-solved-issues/issue41_status.md", - "source_location": "L5" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L48" }, { - "id": "issueflows_03_solved_issues_issue41_status_status_issue_41", - "label": "Status \u2014 Issue #41", + "id": "issueflows_03_solved_issues_issue136_plan_stage_3_staged_file_list_glob_preview_endpoint", + "label": "Stage 3 \u2014 Staged file list + glob preview endpoint", "_origin": "ast", "community": 83, "community_name": "expand_paths", "file_type": "document", "node_kind": "heading", - "norm_label": "status \u2014 issue #41", - "source_file": ".issueflows/03-solved-issues/issue41_status.md", - "source_location": "L1" + "norm_label": "stage 3 \u2014 staged file list + glob preview endpoint", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L138" }, { - "id": "issueflows_04_designs_and_guides_loading_ui", - "label": "loading-ui.md", + "id": "issueflows_03_solved_issues_issue160_plan_constraints", + "label": "Constraints", "_origin": "ast", "community": 83, "community_name": "expand_paths", "file_type": "document", - "node_kind": "page", - "norm_label": "loading-ui.md", - "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L13" }, { - "id": "issueflows_04_designs_and_guides_otherpath_remote_loading", - "label": "otherpath-remote-loading.md", + "id": "issueflows_03_solved_issues_issue160_plan_prior_art", + "label": "Prior art", "_origin": "ast", "community": 83, "community_name": "expand_paths", "file_type": "document", - "node_kind": "page", - "norm_label": "otherpath-remote-loading.md", - "source_file": ".issueflows/04-designs-and-guides/otherpath-remote-loading.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue160_plan.md", + "source_location": "L38" }, { "id": "issueflows_04_designs_and_guides_otherpath_remote_loading_alternatives_considered", @@ -67076,28 +68403,6 @@ "source_file": "README.md", "source_location": "L319" }, - { - "id": "src_cellpy_simple_gui_config_rationale_71", - "label": "Cap on files pulled in by one glob / load (raised in dev mode).", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "rationale", - "norm_label": "cap on files pulled in by one glob / load (raised in dev mode).", - "source_file": "src/cellpy_simple_gui/config.py", - "source_location": "L71" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_253", - "label": "Load and process a raw instrument file into a ``CellpyCell``. Only the metadata\u2026", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "rationale", - "norm_label": "load and process a raw instrument file into a ``cellpycell``. only the metadata...", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L253" - }, { "id": "src_cellpy_simple_gui_core_files_rationale_1", "label": "Path/glob expansion for the file-loading inputs. Turns a list of user-typed\u2026", @@ -67175,28 +68480,6 @@ "source_file": "src/cellpy_simple_gui/core/paths.py", "source_location": "L40" }, - { - "id": "src_cellpy_simple_gui_core_paths_rationale_44", - "label": "True when ``raw`` is an ssh/sftp/scp URI (cellpy OtherPath).", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "rationale", - "norm_label": "true when ``raw`` is an ssh/sftp/scp uri (cellpy otherpath).", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L44" - }, - { - "id": "src_cellpy_simple_gui_core_paths_rationale_50", - "label": "True when this instance may open SSH/SFTP remotes (#160). Same gate as host\u2026", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "rationale", - "norm_label": "true when this instance may open ssh/sftp remotes (#160). same gate as host...", - "source_file": "src/cellpy_simple_gui/core/paths.py", - "source_location": "L50" - }, { "id": "src_cellpy_simple_gui_core_paths_rationale_59", "label": "True when the app may read and write anywhere the user can.", @@ -67230,17 +68513,6 @@ "source_file": "src/cellpy_simple_gui/core/paths.py", "source_location": "L82" }, - { - "id": "tests_test_api_reference_rationale_98", - "label": "Independent of any cellpy version: two committed files, same bytes. This is the\u2026", - "_origin": "ast", - "community": 83, - "community_name": "expand_paths", - "file_type": "rationale", - "norm_label": "independent of any cellpy version: two committed files, same bytes. this is the...", - "source_file": "tests/test_api_reference.py", - "source_location": "L98" - }, { "id": "tests_test_files_rationale_1", "label": "Tests for glob/path expansion.", @@ -67268,222 +68540,6 @@ "source_file": "skills/cellpy-app/SKILL.md", "source_location": "L1" }, - { - "id": "docs_api_reference_attributes_worth_knowing", - "label": "Attributes worth knowing", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "attributes worth knowing", - "source_file": "docs/api-reference.md", - "source_location": "L277" - }, - { - "id": "docs_api_reference_cellpy_api_surface", - "label": "cellpy API surface", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cellpy api surface", - "source_file": "docs/api-reference.md", - "source_location": "L1" - }, - { - "id": "docs_api_reference_cells_into_a_collection", - "label": "Cells into a Collection", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "cells into a collection", - "source_file": "docs/api-reference.md", - "source_location": "L104" - }, - { - "id": "docs_api_reference_collect_options", - "label": "Collect options", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "collect options", - "source_file": "docs/api-reference.md", - "source_location": "L138" - }, - { - "id": "docs_api_reference_figures_to_bytes", - "label": "Figures to bytes", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "figures to bytes", - "source_file": "docs/api-reference.md", - "source_location": "L229" - }, - { - "id": "docs_api_reference_loading", - "label": "Loading", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "loading", - "source_file": "docs/api-reference.md", - "source_location": "L16" - }, - { - "id": "docs_api_reference_one_cell", - "label": "One cell", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "one cell", - "source_file": "docs/api-reference.md", - "source_location": "L70" - }, - { - "id": "docs_api_reference_single_cell_plots", - "label": "Single-cell plots", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "single-cell plots", - "source_file": "docs/api-reference.md", - "source_location": "L210" - }, - { - "id": "docs_api_reference_the_collection", - "label": "The Collection", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "the collection", - "source_file": "docs/api-reference.md", - "source_location": "L157" - }, - { - "id": "docs_api_reference_the_plot_registry", - "label": "The plot registry", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "the plot registry", - "source_file": "docs/api-reference.md", - "source_location": "L186" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan", - "label": "issue55_plan.md", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue55_plan.md", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L44" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L9" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L74" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_issue_55_plan_cycles_collector_per_cell_per_cycle", - "label": "Issue #55 \u2014 Plan: cycles collector (per cell / per cycle)", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #55 \u2014 plan: cycles collector (per cell / per cycle)", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L98" - }, - { - "id": "issueflows_03_solved_issues_issue55_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue55_plan.md", - "source_location": "L89" - }, { "id": "skills_cellpy_app_reference_api_reference", "label": "reference/api-reference.md", @@ -67592,18 +68648,6 @@ "source_file": "skills/cellpy-app/reference/api-reference.md", "source_location": "L210" }, - { - "id": "skills_cellpy_app_reference_api_reference_the_collection", - "label": "The Collection", - "_origin": "ast", - "community": 84, - "community_name": "cellpy API surface", - "file_type": "document", - "node_kind": "heading", - "norm_label": "the collection", - "source_file": "skills/cellpy-app/reference/api-reference.md", - "source_location": "L157" - }, { "id": "skills_cellpy_app_reference_api_reference_the_plot_registry", "label": "The plot registry", @@ -67688,102 +68732,6 @@ "source_file": "skills/cellpy-app/SKILL.md", "source_location": "L146" }, - { - "id": "issueflows_03_solved_issues_issue48_plan", - "label": "issue48_plan.md", - "_origin": "ast", - "community": 85, - "community_name": "Issue #48 \u2014 create gui tests (plan)", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue48_plan.md", - "source_file": ".issueflows/03-solved-issues/issue48_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue48_plan_constraints", - "label": "Constraints", - "_origin": "ast", - "community": 85, - "community_name": "Issue #48 \u2014 create gui tests (plan)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue48_plan.md", - "source_location": "L7" - }, - { - "id": "issueflows_03_solved_issues_issue48_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 85, - "community_name": "Issue #48 \u2014 create gui tests (plan)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue48_plan.md", - "source_location": "L28" - }, - { - "id": "issueflows_03_solved_issues_issue48_plan_goal", - "label": "Goal", - "_origin": "ast", - "community": 85, - "community_name": "Issue #48 \u2014 create gui tests (plan)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue48_plan.md", - "source_location": "L3" - }, - { - "id": "issueflows_03_solved_issues_issue48_plan_issue_48_create_gui_tests_plan", - "label": "Issue #48 \u2014 create gui tests (plan)", - "_origin": "ast", - "community": 85, - "community_name": "Issue #48 \u2014 create gui tests (plan)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #48 \u2014 create gui tests (plan)", - "source_file": ".issueflows/03-solved-issues/issue48_plan.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue48_plan_open_questions", - "label": "Open questions", - "_origin": "ast", - "community": 85, - "community_name": "Issue #48 \u2014 create gui tests (plan)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue48_plan.md", - "source_location": "L48" - }, - { - "id": "issueflows_03_solved_issues_issue48_plan_prior_art", - "label": "Prior art", - "_origin": "ast", - "community": 85, - "community_name": "Issue #48 \u2014 create gui tests (plan)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue48_plan.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue48_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 85, - "community_name": "Issue #48 \u2014 create gui tests (plan)", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue48_plan.md", - "source_location": "L38" - }, { "id": "cursor_skills_iflow_yolo_skill", "label": "iflow-yolo/SKILL.md", @@ -67887,613 +68835,666 @@ "source_location": "L36" }, { - "id": "src_cellpy_simple_gui_core_library_py_any", - "label": "Any", + "id": "src_cellpy_simple_gui_web_static_js_app", + "label": "app.js", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "code", - "norm_label": "any", - "source_file": "", - "source_location": "" + "norm_label": "app.js", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_library_py_path", - "label": "Path", + "id": "src_cellpy_simple_gui_web_static_js_app_plotly_config", + "label": "PLOTLY_CONFIG", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "code", - "norm_label": "path", - "source_file": "", - "source_location": "" + "norm_label": "plotly_config", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L29" }, { - "id": "cellpy_painpoints_1_no_public_collection_from_in_memory_cells", - "label": "1. \ud83d\udd34 No public \"collection from in-memory cells\"", + "id": "src_cellpy_simple_gui_web_static_js_app_recent_kinds", + "label": "RECENT_KINDS", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "code", + "norm_label": "recent_kinds", + "source_file": "src/cellpy_simple_gui/web/static/js/app.js", + "source_location": "L44" + }, + { + "id": "issueflows_03_solved_issues_issue136_original", + "label": "issue136_original.md", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue136_original.md", + "source_file": ".issueflows/03-solved-issues/issue136_original.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue136_original_acceptance_criteria", + "label": "Acceptance criteria", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "1. \ud83d\udd34 no public \"collection from in-memory cells\"", - "source_file": "CELLPY_PAINPOINTS.md", - "source_location": "L126" + "norm_label": "acceptance criteria", + "source_file": ".issueflows/03-solved-issues/issue136_original.md", + "source_location": "L87" }, { - "id": "issueflows_03_solved_issues_issue3_plan", - "label": "issue3_plan.md", + "id": "issueflows_03_solved_issues_issue136_original_issue_136_redesign_the_loading_surface_one_add_cells_flow_staged_file_list_contextual_help", + "label": "Issue #136: Redesign the loading surface: one \"Add cells\" flow, staged file list, contextual help", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", - "node_kind": "page", - "norm_label": "issue3_plan.md", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "node_kind": "heading", + "norm_label": "issue #136: redesign the loading surface: one \"add cells\" flow, staged file list, contextual help", + "source_file": ".issueflows/03-solved-issues/issue136_original.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue3_plan_approach", - "label": "Approach", + "id": "issueflows_03_solved_issues_issue136_original_original_issue_text", + "label": "Original issue text", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L24" + "norm_label": "original issue text", + "source_file": ".issueflows/03-solved-issues/issue136_original.md", + "source_location": "L10" }, { - "id": "issueflows_03_solved_issues_issue3_plan_backend", - "label": "Backend", + "id": "issueflows_03_solved_issues_issue136_original_out_of_scope", + "label": "Out of scope", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "backend", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L49" + "norm_label": "out of scope", + "source_file": ".issueflows/03-solved-issues/issue136_original.md", + "source_location": "L114" }, { - "id": "issueflows_03_solved_issues_issue3_plan_chrome_decision_centered_modal_not_drawer_not_resizable_sidebar", - "label": "Chrome decision: **centered modal** (not drawer / not resizable sidebar)", + "id": "issueflows_03_solved_issues_issue136_original_problem_context", + "label": "Problem / context", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "chrome decision: **centered modal** (not drawer / not resizable sidebar)", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L26" + "norm_label": "problem / context", + "source_file": ".issueflows/03-solved-issues/issue136_original.md", + "source_location": "L12" }, { - "id": "issueflows_03_solved_issues_issue3_plan_constraints", + "id": "issueflows_03_solved_issues_issue136_original_spec", + "label": "Spec", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "spec", + "source_file": ".issueflows/03-solved-issues/issue136_original.md", + "source_location": "L47" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan", + "label": "issue136_plan.md", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue136_plan.md", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L1" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_approach", + "label": "Approach", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L89" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_constraints", "label": "Constraints", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L7" + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L15" }, { - "id": "issueflows_03_solved_issues_issue3_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue136_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L64" + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L229" }, { - "id": "issueflows_03_solved_issues_issue3_plan_goal", + "id": "issueflows_03_solved_issues_issue136_plan_goal", "label": "Goal", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L3" + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue3_plan_niceties_in_scope", - "label": "Niceties in scope", + "id": "issueflows_03_solved_issues_issue136_plan_issue_136_plan_redesign_the_loading_surface_files_projects_journals_raw_import", + "label": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "niceties in scope", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L54" + "norm_label": "issue #136 \u2014 plan: redesign the loading surface (files, projects, journals, raw import)", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue3_plan_open_questions", - "label": "Open questions", + "id": "issueflows_03_solved_issues_issue136_plan_manual_smoke_checklist_g3_g4_server_mode_csg_token_devtoken", + "label": "Manual smoke checklist (G3/G4; server mode, `CSG_TOKEN=devtoken`)", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L78" + "norm_label": "manual smoke checklist (g3/g4; server mode, `csg_token=devtoken`)", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L272" }, { - "id": "issueflows_03_solved_issues_issue3_plan_plan_issue_3_manage_cells_in_an_expanded_editor", - "label": "Plan \u2014 Issue #3: Manage cells in an expanded editor", + "id": "issueflows_03_solved_issues_issue136_plan_new_tests_summary", + "label": "New tests (summary)", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "plan \u2014 issue #3: manage cells in an expanded editor", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L1" + "norm_label": "new tests (summary)", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L288" }, { - "id": "issueflows_03_solved_issues_issue3_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue136_plan_open_questions", + "label": "Open questions", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L15" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L296" }, { - "id": "issueflows_03_solved_issues_issue3_plan_scope_check", + "id": "issueflows_03_solved_issues_issue136_plan_scope_check", "label": "Scope check", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "scope check", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L85" + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L314" }, { - "id": "issueflows_03_solved_issues_issue3_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_03_solved_issues_issue136_plan_stage_1_sidebar_restructure_template_css", + "label": "Stage 1 \u2014 Sidebar restructure (template + CSS)", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L73" + "norm_label": "stage 1 \u2014 sidebar restructure (template + css)", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L95" }, { - "id": "issueflows_03_solved_issues_issue3_plan_ux", - "label": "UX", + "id": "issueflows_03_solved_issues_issue136_plan_stage_2_add_cells_modal_with_source_switcher", + "label": "Stage 2 \u2014 \"Add cells\" modal with source switcher", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "ux", - "source_file": ".issueflows/03-solved-issues/issue3_plan.md", - "source_location": "L34" + "norm_label": "stage 2 \u2014 \"add cells\" modal with source switcher", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L114" }, { - "id": "issueflows_03_solved_issues_issue69_plan_constraints", - "label": "Constraints", + "id": "issueflows_03_solved_issues_issue136_plan_stage_4_adaptive_source_zone_drop_browse_paste", + "label": "Stage 4 \u2014 Adaptive source zone (drop / browse / paste)", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L7" + "norm_label": "stage 4 \u2014 adaptive source zone (drop / browse / paste)", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L174" }, { - "id": "issueflows_03_solved_issues_issue69_plan_prior_art", - "label": "Prior art", + "id": "issueflows_03_solved_issues_issue136_plan_stage_5_contextual_help_inline_results_recents", + "label": "Stage 5 \u2014 Contextual help, inline results, recents", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L15" + "norm_label": "stage 5 \u2014 contextual help, inline results, recents", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L192" }, { - "id": "issueflows_03_solved_issues_issue69_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue136_plan_stage_6_docs_and_design_record", + "label": "Stage 6 \u2014 Docs and design record", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "stage 6 \u2014 docs and design record", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L213" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_test_gates_when_to_run_what", + "label": "Test gates \u2014 when to run what", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "test gates \u2014 when to run what", + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L254" + }, + { + "id": "issueflows_03_solved_issues_issue136_plan_test_strategy", "label": "Test strategy", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue69_plan.md", - "source_location": "L52" + "source_file": ".issueflows/03-solved-issues/issue136_plan.md", + "source_location": "L245" }, { - "id": "issueflows_03_solved_issues_issue69_status", - "label": "issue69_status.md", + "id": "issueflows_03_solved_issues_issue136_status", + "label": "issue136_status.md", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "page", - "norm_label": "issue69_status.md", - "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "norm_label": "issue136_status.md", + "source_file": ".issueflows/03-solved-issues/issue136_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue69_status_issue_69_status", - "label": "Issue #69 \u2014 Status", + "id": "issueflows_03_solved_issues_issue136_status_issue_136_status", + "label": "Issue #136 \u2014 Status", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #69 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "norm_label": "issue #136 \u2014 status", + "source_file": ".issueflows/03-solved-issues/issue136_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue69_status_remaining_work", + "id": "issueflows_03_solved_issues_issue136_status_notes_deviations", + "label": "Notes / deviations", + "_origin": "ast", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", + "file_type": "document", + "node_kind": "heading", + "norm_label": "notes / deviations", + "source_file": ".issueflows/03-solved-issues/issue136_status.md", + "source_location": "L65" + }, + { + "id": "issueflows_03_solved_issues_issue136_status_remaining_work", "label": "Remaining work", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue69_status.md", - "source_location": "L16" + "source_file": ".issueflows/03-solved-issues/issue136_status.md", + "source_location": "L80" }, { - "id": "issueflows_03_solved_issues_issue69_status_what_s_done", + "id": "issueflows_03_solved_issues_issue136_status_what_s_done", "label": "What's done", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue69_status.md", + "source_file": ".issueflows/03-solved-issues/issue136_status.md", "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue86_original_spec", - "label": "Spec", + "id": "issueflows_03_solved_issues_issue175_plan_4_ui_app_js_index_html_app_css", + "label": "4. UI (`app.js`, `index.html`, `app.css`)", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue86_original.md", - "source_location": "L11" + "norm_label": "4. ui (`app.js`, `index.html`, `app.css`)", + "source_file": ".issueflows/03-solved-issues/issue175_plan.md", + "source_location": "L110" }, { - "id": "issueflows_03_solved_issues_issue86_plan", - "label": "issue86_plan.md", + "id": "issueflows_03_solved_issues_issue177_status", + "label": "issue177_status.md", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "page", - "norm_label": "issue86_plan.md", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "norm_label": "issue177_status.md", + "source_file": ".issueflows/03-solved-issues/issue177_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue86_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 88, - "community_name": "Library", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L24" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 88, - "community_name": "Library", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L35" - }, - { - "id": "issueflows_03_solved_issues_issue86_plan_goal", - "label": "Goal", + "id": "issueflows_03_solved_issues_issue177_status_remaining_work", + "label": "Remaining work", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L3" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue177_status.md", + "source_location": "L13" }, { - "id": "issueflows_03_solved_issues_issue86_plan_issue_86_plan_edit_nominal_capacity_basis", - "label": "Issue #86 \u2014 Plan: edit nominal-capacity basis", + "id": "issueflows_03_solved_issues_issue177_status_status_issue_177", + "label": "Status \u2014 Issue #177", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #86 \u2014 plan: edit nominal-capacity basis", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "norm_label": "status \u2014 issue #177", + "source_file": ".issueflows/03-solved-issues/issue177_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue86_plan_open_questions", - "label": "Open questions", + "id": "issueflows_03_solved_issues_issue177_status_what_s_done", + "label": "What's done", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", - "source_location": "L56" + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue177_status.md", + "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue86_plan_test_strategy", - "label": "Test strategy", + "id": "issueflows_04_designs_and_guides_loading_ui_guard_rails_tests", + "label": "Guard rails (tests)", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "document", "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue86_plan.md", + "norm_label": "guard rails (tests)", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", "source_location": "L49" }, { - "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory_still_app_owned_no_upstream_yet_by_design", - "label": "Still app-owned (no upstream yet / by design)", - "_origin": "ast", - "community": 88, - "community_name": "Library", - "file_type": "document", - "node_kind": "heading", - "norm_label": "still app-owned (no upstream yet / by design)", - "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", - "source_location": "L178" - }, - { - "id": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_494", - "label": "Return a plain-dict projection of a cell's metadata.", - "_origin": "ast", - "community": 88, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "return a plain-dict projection of a cell's metadata.", - "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L494" - }, - { - "id": "src_cellpy_simple_gui_core_library_rationale_104", - "label": "Thread-safe ordered collection of :class:`CellRecord`.", + "id": "tests_test_api_rationale_481", + "label": "A syntax error in app.js breaks the whole UI while Python tests stay green.\u2026", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "rationale", - "norm_label": "thread-safe ordered collection of :class:`cellrecord`.", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L104" + "norm_label": "a syntax error in app.js breaks the whole ui while python tests stay green....", + "source_file": "tests/test_api.py", + "source_location": "L481" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_148", - "label": "Add a cell while preserving saved organisational metadata. Physical quantities\u2026", + "id": "tests_test_api_rationale_502", + "label": "Every x-model in the template must exist in the component, or Alpine throws.\u2026", "_origin": "ast", - "community": 88, - "community_name": "Library", + "community": 87, + "community_name": "Issue #136 \u2014 Plan: redesign the loading surface (files, projects, journals, raw import)", "file_type": "rationale", - "norm_label": "add a cell while preserving saved organisational metadata. physical quantities...", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L148" + "norm_label": "every x-model in the template must exist in the component, or alpine throws....", + "source_file": "tests/test_api.py", + "source_location": "L502" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_230", - "label": "Record that ``rid``'s data was just written to ``path``.", + "id": "issueflows_03_solved_issues_issue3_plan", + "label": "issue3_plan.md", "_origin": "ast", "community": 88, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "record that ``rid``'s data was just written to ``path``.", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L230" + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", + "file_type": "document", + "node_kind": "page", + "norm_label": "issue3_plan.md", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_237", - "label": "The on-disk copy of ``rid``'s data, when it provably still matches. Three\u2026", + "id": "issueflows_03_solved_issues_issue3_plan_approach", + "label": "Approach", "_origin": "ast", "community": 88, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "the on-disk copy of ``rid``'s data, when it provably still matches. three...", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L237" + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", + "file_type": "document", + "node_kind": "heading", + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L24" }, { - "id": "src_cellpy_simple_gui_core_library_rationale_31", - "label": "``(size, mtime_ns)`` for ``path``, or ``None`` if it cannot be read. Cheap\u2026", - "_origin": "ast", - "community": 88, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "``(size, mtime_ns)`` for ``path``, or ``none`` if it cannot be read. cheap...", - "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L31" + "id": "issueflows_03_solved_issues_issue3_plan_backend", + "label": "Backend", + "_origin": "ast", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", + "file_type": "document", + "node_kind": "heading", + "norm_label": "backend", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L49" }, { - "id": "src_cellpy_simple_gui_core_models_rationale_68", - "label": "Everything the UI needs to know about one loaded cell. The heavy ``CellpyCell``\u2026", + "id": "issueflows_03_solved_issues_issue3_plan_chrome_decision_centered_modal_not_drawer_not_resizable_sidebar", + "label": "Chrome decision: **centered modal** (not drawer / not resizable sidebar)", "_origin": "ast", "community": 88, - "community_name": "Library", - "file_type": "rationale", - "norm_label": "everything the ui needs to know about one loaded cell. the heavy ``cellpycell``...", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L68" + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", + "file_type": "document", + "node_kind": "heading", + "norm_label": "chrome decision: **centered modal** (not drawer / not resizable sidebar)", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L26" }, { - "id": "tests_test_core_py_skipif", - "label": "skipif", + "id": "issueflows_03_solved_issues_issue3_plan_constraints", + "label": "Constraints", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "code", - "norm_label": "skipif", - "source_file": "", - "source_location": "" + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", + "file_type": "document", + "node_kind": "heading", + "norm_label": "constraints", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L7" }, { - "id": "issueflows_03_solved_issues_issue27_status", - "label": "issue27_status.md", + "id": "issueflows_03_solved_issues_issue3_plan_files_to_touch", + "label": "Files to touch", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", "file_type": "document", - "node_kind": "page", - "norm_label": "issue27_status.md", - "source_file": ".issueflows/03-solved-issues/issue27_status.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "files to touch", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L64" }, { - "id": "issueflows_03_solved_issues_issue27_status_issue_27_status_iterative_fixes_group_average_checkbox", - "label": "Issue #27 status \u2014 Iterative fixes: group average checkbox", + "id": "issueflows_03_solved_issues_issue3_plan_goal", + "label": "Goal", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #27 status \u2014 iterative fixes: group average checkbox", - "source_file": ".issueflows/03-solved-issues/issue27_status.md", - "source_location": "L1" + "norm_label": "goal", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue27_status_iterative_fixes_log", - "label": "Iterative fixes log", + "id": "issueflows_03_solved_issues_issue3_plan_niceties_in_scope", + "label": "Niceties in scope", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", "file_type": "document", "node_kind": "heading", - "norm_label": "iterative fixes log", - "source_file": ".issueflows/03-solved-issues/issue27_status.md", - "source_location": "L7" + "norm_label": "niceties in scope", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L54" }, { - "id": "issueflows_03_solved_issues_issue2_original", - "label": "issue2_original.md", + "id": "issueflows_03_solved_issues_issue3_plan_open_questions", + "label": "Open questions", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", "file_type": "document", - "node_kind": "page", - "norm_label": "issue2_original.md", - "source_file": ".issueflows/03-solved-issues/issue2_original.md", - "source_location": "L1" + "node_kind": "heading", + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L78" }, { - "id": "issueflows_03_solved_issues_issue2_original_acceptance_criteria", - "label": "Acceptance criteria", + "id": "issueflows_03_solved_issues_issue3_plan_plan_issue_3_manage_cells_in_an_expanded_editor", + "label": "Plan \u2014 Issue #3: Manage cells in an expanded editor", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", "file_type": "document", "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue2_original.md", - "source_location": "L21" + "norm_label": "plan \u2014 issue #3: manage cells in an expanded editor", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue2_original_issue_2_allow_independent_y_limits_on_multi_panel_summary_plots", - "label": "Issue #2: Allow independent y-limits on multi-panel summary plots", + "id": "issueflows_03_solved_issues_issue3_plan_prior_art", + "label": "Prior art", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #2: allow independent y-limits on multi-panel summary plots", - "source_file": ".issueflows/03-solved-issues/issue2_original.md", - "source_location": "L1" + "norm_label": "prior art", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L15" }, { - "id": "issueflows_03_solved_issues_issue2_original_original_issue_text", - "label": "Original issue text", + "id": "issueflows_03_solved_issues_issue3_plan_scope_check", + "label": "Scope check", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", "file_type": "document", "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue2_original.md", - "source_location": "L5" + "norm_label": "scope check", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L85" }, { - "id": "issueflows_03_solved_issues_issue2_original_out_of_scope", - "label": "Out of scope", + "id": "issueflows_03_solved_issues_issue3_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", "file_type": "document", "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue2_original.md", - "source_location": "L29" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue3_plan.md", + "source_location": "L73" }, { - "id": "issueflows_03_solved_issues_issue2_original_problem_context", - "label": "Problem / context", + "id": "issueflows_03_solved_issues_issue69_plan_test_strategy", + "label": "Test strategy", "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", + "community": 88, + "community_name": "Plan \u2014 Issue #3: Manage cells in an expanded editor", "file_type": "document", "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue2_original.md", - "source_location": "L7" + "norm_label": "test strategy", + "source_file": ".issueflows/03-solved-issues/issue69_plan.md", + "source_location": "L52" }, { - "id": "issueflows_03_solved_issues_issue2_original_spec", - "label": "Spec", + "id": "issueflows_03_solved_issues_issue1_plan_approach", + "label": "Approach", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue2_original.md", - "source_location": "L15" + "norm_label": "approach", + "source_file": ".issueflows/03-solved-issues/issue1_plan.md", + "source_location": "L37" }, { "id": "issueflows_03_solved_issues_issue2_plan", "label": "issue2_plan.md", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "page", "norm_label": "issue2_plan.md", @@ -68505,7 +69506,7 @@ "label": "Approach", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "approach", @@ -68517,7 +69518,7 @@ "label": "Constraints", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", @@ -68529,7 +69530,7 @@ "label": "Files to touch", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", @@ -68541,7 +69542,7 @@ "label": "Goal", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "goal", @@ -68553,7 +69554,7 @@ "label": "Issue #2 plan: Independent y-limits on multi-panel summary plots", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "issue #2 plan: independent y-limits on multi-panel summary plots", @@ -68565,7 +69566,7 @@ "label": "Open questions", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "open questions", @@ -68577,7 +69578,7 @@ "label": "Prior art", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", @@ -68589,7 +69590,7 @@ "label": "issue2_status.md", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "page", "norm_label": "issue2_status.md", @@ -68601,7 +69602,7 @@ "label": "Issue #2 status", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "issue #2 status", @@ -68613,7 +69614,7 @@ "label": "Remaining work", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "remaining work", @@ -68625,7 +69626,7 @@ "label": "What's done", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "what's done", @@ -68633,255 +69634,183 @@ "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue38_plan_files_to_touch", - "label": "Files to touch", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue38_plan.md", - "source_location": "L75" - }, - { - "id": "issueflows_03_solved_issues_issue38_status", - "label": "issue38_status.md", + "id": "issueflows_03_solved_issues_issue38_plan", + "label": "issue38_plan.md", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "page", - "norm_label": "issue38_status.md", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue38_status_issue_38_status", - "label": "Issue #38 status", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #38 status", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "norm_label": "issue38_plan.md", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue38_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue38_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue38_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue54_plan_approach", + "id": "issueflows_03_solved_issues_issue38_plan_approach", "label": "Approach", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", "source_location": "L38" }, { - "id": "issueflows_03_solved_issues_issue54_plan_constraints", + "id": "issueflows_03_solved_issues_issue38_plan_constraints", "label": "Constraints", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", "source_location": "L9" }, { - "id": "issueflows_03_solved_issues_issue54_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue38_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue54_plan.md", - "source_location": "L69" + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L75" }, { - "id": "issueflows_03_solved_issues_issue54_plan_goal", + "id": "issueflows_03_solved_issues_issue38_plan_goal", "label": "Goal", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue54_plan_issue_54_plan_per_panel_summary_y_range_widgets", - "label": "Issue #54 plan: per-panel summary y-range widgets", + "id": "issueflows_03_solved_issues_issue38_plan_open_questions", + "label": "Open questions", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #54 plan: per-panel summary y-range widgets", - "source_file": ".issueflows/03-solved-issues/issue54_plan.md", - "source_location": "L1" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L91" }, { - "id": "issueflows_03_solved_issues_issue54_plan_open_questions", - "label": "Open questions", + "id": "issueflows_03_solved_issues_issue38_plan_plan_issue_38_cellpy_label_builders_for_axis_titles", + "label": "Plan \u2014 Issue #38: cellpy label builders for axis titles", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue54_plan.md", - "source_location": "L96" + "norm_label": "plan \u2014 issue #38: cellpy label builders for axis titles", + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue54_plan_prior_art", + "id": "issueflows_03_solved_issues_issue38_plan_prior_art", "label": "Prior art", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue54_plan.md", - "source_location": "L23" + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L18" }, { - "id": "issueflows_03_solved_issues_issue54_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue38_plan_test_strategy", "label": "Test strategy", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue54_plan.md", - "source_location": "L83" - }, - { - "id": "issueflows_03_solved_issues_issue62_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue62_original.md", - "source_location": "L10" + "source_file": ".issueflows/03-solved-issues/issue38_plan.md", + "source_location": "L86" }, { - "id": "issueflows_03_solved_issues_issue62_plan", - "label": "issue62_plan.md", + "id": "issueflows_03_solved_issues_issue38_status", + "label": "issue38_status.md", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "page", - "norm_label": "issue62_plan.md", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "norm_label": "issue38_status.md", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue62_plan_approach", - "label": "Approach", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L25" - }, - { - "id": "issueflows_03_solved_issues_issue62_plan_constraints", - "label": "Constraints", + "id": "issueflows_03_solved_issues_issue38_status_issue_38_status", + "label": "Issue #38 status", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", - "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L7" + "norm_label": "issue #38 status", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue62_plan_files_to_touch", - "label": "Files to touch", + "id": "issueflows_03_solved_issues_issue38_status_remaining_work", + "label": "Remaining work", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", - "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L35" + "norm_label": "remaining work", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "source_location": "L14" }, { - "id": "issueflows_03_solved_issues_issue62_plan_goal", - "label": "Goal", + "id": "issueflows_03_solved_issues_issue38_status_what_s_done", + "label": "What's done", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", - "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L3" + "norm_label": "what's done", + "source_file": ".issueflows/03-solved-issues/issue38_status.md", + "source_location": "L5" }, { - "id": "issueflows_03_solved_issues_issue62_plan_open_questions", - "label": "Open questions", + "id": "issueflows_03_solved_issues_issue54_plan", + "label": "issue54_plan.md", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", - "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L52" + "node_kind": "page", + "norm_label": "issue54_plan.md", + "source_file": ".issueflows/03-solved-issues/issue54_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue62_plan_plan_issue_62_group_vs_individual_plotly_legend_muting", - "label": "Plan \u2014 Issue #62: Group vs individual Plotly legend muting", + "id": "issueflows_03_solved_issues_issue60_plan", + "label": "issue60_plan.md", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", - "node_kind": "heading", - "norm_label": "plan \u2014 issue #62: group vs individual plotly legend muting", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", + "node_kind": "page", + "norm_label": "issue60_plan.md", + "source_file": ".issueflows/03-solved-issues/issue60_plan.md", "source_location": "L1" }, { @@ -68889,7 +69818,7 @@ "label": "Prior art", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", @@ -68897,606 +69826,261 @@ "source_location": "L16" }, { - "id": "issueflows_03_solved_issues_issue62_plan_test_strategy", - "label": "Test strategy", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue62_plan.md", - "source_location": "L46" - }, - { - "id": "issueflows_03_solved_issues_issue62_status", - "label": "issue62_status.md", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue62_status.md", - "source_file": ".issueflows/03-solved-issues/issue62_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue62_status_issue_62_status", - "label": "Issue #62 status", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #62 status", - "source_file": ".issueflows/03-solved-issues/issue62_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue62_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue62_status.md", - "source_location": "L14" - }, - { - "id": "issueflows_03_solved_issues_issue62_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue62_status.md", - "source_location": "L5" - }, - { - "id": "issueflows_03_solved_issues_issue81_plan", - "label": "issue81_plan.md", + "id": "issueflows_03_solved_issues_issue72_plan", + "label": "issue72_plan.md", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "page", - "norm_label": "issue81_plan.md", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "norm_label": "issue72_plan.md", + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue81_plan_approach", + "id": "issueflows_03_solved_issues_issue72_plan_approach", "label": "Approach", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "approach", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L27" + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "source_location": "L32" }, { - "id": "issueflows_03_solved_issues_issue81_plan_constraints", + "id": "issueflows_03_solved_issues_issue72_plan_constraints", "label": "Constraints", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "constraints", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L9" + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "source_location": "L8" }, { - "id": "issueflows_03_solved_issues_issue81_plan_files_to_touch", + "id": "issueflows_03_solved_issues_issue72_plan_files_to_touch", "label": "Files to touch", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "files to touch", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L49" + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "source_location": "L46" }, { - "id": "issueflows_03_solved_issues_issue81_plan_goal", + "id": "issueflows_03_solved_issues_issue72_plan_goal", "label": "Goal", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "goal", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", "source_location": "L3" }, { - "id": "issueflows_03_solved_issues_issue81_plan_issue_81_plan_consistent_ce_summary_panel_order", - "label": "Issue #81 \u2014 Plan: consistent CE summary panel order", + "id": "issueflows_03_solved_issues_issue72_plan_open_questions", + "label": "Open questions", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", - "norm_label": "issue #81 \u2014 plan: consistent ce summary panel order", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L1" + "norm_label": "open questions", + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "source_location": "L61" }, { - "id": "issueflows_03_solved_issues_issue81_plan_open_questions", - "label": "Open questions", + "id": "issueflows_03_solved_issues_issue72_plan_plan_issue_72_cycles_mode_x_axis_capacity_units", + "label": "Plan \u2014 Issue #72: Cycles Mode \u2194 x-axis capacity units", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", - "norm_label": "open questions", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L67" + "norm_label": "plan \u2014 issue #72: cycles mode \u2194 x-axis capacity units", + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue81_plan_prior_art", + "id": "issueflows_03_solved_issues_issue72_plan_prior_art", "label": "Prior art", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "prior art", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L18" + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "source_location": "L16" }, { - "id": "issueflows_03_solved_issues_issue81_plan_test_strategy", + "id": "issueflows_03_solved_issues_issue72_plan_test_strategy", "label": "Test strategy", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "test strategy", - "source_file": ".issueflows/03-solved-issues/issue81_plan.md", - "source_location": "L59" - }, - { - "id": "issueflows_03_solved_issues_issue81_status", - "label": "issue81_status.md", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue81_status.md", - "source_file": ".issueflows/03-solved-issues/issue81_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue81_status_issue_81_status", - "label": "Issue #81 \u2014 Status", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #81 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue81_status.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue81_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue81_status.md", - "source_location": "L13" - }, - { - "id": "issueflows_03_solved_issues_issue81_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue81_status.md", - "source_location": "L5" + "source_file": ".issueflows/03-solved-issues/issue72_plan.md", + "source_location": "L56" }, { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export", - "label": "group-average-and-figure-export.md", + "id": "issueflows_04_designs_and_guides_cellpy_delegation_inventory", + "label": "cellpy-delegation-inventory.md", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "page", - "norm_label": "group-average-and-figure-export.md", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_static_figure_export", - "label": "Group average + static figure export", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "group average + static figure export", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", + "norm_label": "cellpy-delegation-inventory.md", + "source_file": ".issueflows/04-designs-and-guides/cellpy-delegation-inventory.md", "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_group_average_with_mixed_group_sizes", - "label": "Group average with mixed group sizes", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "group average with mixed group sizes", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L5" - }, - { - "id": "issueflows_04_designs_and_guides_group_average_and_figure_export_static_figure_export_png_svg_pdf", - "label": "Static figure export (PNG / SVG / PDF)", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "heading", - "norm_label": "static figure export (png / svg / pdf)", - "source_file": ".issueflows/04-designs-and-guides/group-average-and-figure-export.md", - "source_location": "L23" - }, - { - "id": "issueflows_04_designs_and_guides_group_legend_muting", - "label": "group-legend-muting.md", + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales", + "label": "summary-independent-y-scales.md", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "page", - "norm_label": "group-legend-muting.md", - "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "norm_label": "summary-independent-y-scales.md", + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", "source_location": "L1" }, { - "id": "issueflows_04_designs_and_guides_group_legend_muting_alternatives_considered", + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_alternatives_considered", "label": "Alternatives considered", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "alternatives considered", - "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", - "source_location": "L20" + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", + "source_location": "L31" }, { - "id": "issueflows_04_designs_and_guides_group_legend_muting_context", + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_context", "label": "Context", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "context", - "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", "source_location": "L3" }, { - "id": "issueflows_04_designs_and_guides_group_legend_muting_decision", + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_decision", "label": "Decision", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", "norm_label": "decision", - "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", "source_location": "L9" }, { - "id": "issueflows_04_designs_and_guides_group_legend_muting_group_vs_individual_legend_muting_62", - "label": "Group vs individual legend muting (#62)", + "id": "issueflows_04_designs_and_guides_summary_independent_y_scales_summary_plot_y_scales_2_54", + "label": "Summary plot y-scales (#2, #54)", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "document", "node_kind": "heading", - "norm_label": "group vs individual legend muting (#62)", - "source_file": ".issueflows/04-designs-and-guides/group-legend-muting.md", - "source_location": "L1" - }, - { - "id": "issueflows_04_designs_and_guides_summary_legend_long_names", - "label": "summary-legend-long-names.md", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "document", - "node_kind": "page", - "norm_label": "summary-legend-long-names.md", - "source_file": ".issueflows/04-designs-and-guides/summary-legend-long-names.md", + "norm_label": "summary plot y-scales (#2, #54)", + "source_file": ".issueflows/04-designs-and-guides/summary-independent-y-scales.md", "source_location": "L1" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_366", - "label": "Short UI label for a summary facet column id.", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "short ui label for a summary facet column id.", - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L366" - }, - { - "id": "src_cellpy_simple_gui_core_collect_rationale_433", + "id": "src_cellpy_simple_gui_core_collect_rationale_454", "label": "``variable \u2192`` unit-bearing axis title via cellpy label builders (#38).", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "rationale", "norm_label": "``variable \u2192`` unit-bearing axis title via cellpy label builders (#38).", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L433" + "source_location": "L454" }, { - "id": "src_cellpy_simple_gui_core_collect_rationale_438", - "label": "Panel descriptors (column id + short label) for summary y-range widgets.", + "id": "src_cellpy_simple_gui_core_collect_rationale_926", + "label": "Carry user-facing notes in ``layout.meta.warnings`` (#175). Plotly's ``meta``\u2026", "_origin": "ast", "community": 9, - "community_name": "SummaryPlotSpec", + "community_name": "summary_figure", "file_type": "rationale", - "norm_label": "panel descriptors (column id + short label) for summary y-range widgets.", + "norm_label": "carry user-facing notes in ``layout.meta.warnings`` (#175). plotly's ``meta``...", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L438" - }, - { - "id": "src_cellpy_simple_gui_core_models_rationale_90", - "label": "Drives a cellpy ``collect_summaries`` collection + its plot/export.", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "drives a cellpy ``collect_summaries`` collection + its plot/export.", - "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L90" - }, - { - "id": "tests_test_core_rationale_151", - "label": "#62: SummaryPlotSpec.group_legend_muting reaches collection.plot kwargs.", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "#62: summaryplotspec.group_legend_muting reaches collection.plot kwargs.", - "source_file": "tests/test_core.py", - "source_location": "L151" - }, - { - "id": "tests_test_core_rationale_172", - "label": "#62: CyclesPlotSpec.group_legend_muting reaches collection.plot kwargs.", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "#62: cyclesplotspec.group_legend_muting reaches collection.plot kwargs.", - "source_file": "tests/test_core.py", - "source_location": "L172" - }, - { - "id": "tests_test_core_rationale_612", - "label": "Group avg averages multi-member groups even when a singleton exists. cellpy\u2026", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "group avg averages multi-member groups even when a singleton exists. cellpy...", - "source_file": "tests/test_core.py", - "source_location": "L612" - }, - { - "id": "tests_test_core_rationale_818", - "label": "safe colorway paints at least one trace from library.PALETTE (#32).", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "safe colorway paints at least one trace from library.palette (#32).", - "source_file": "tests/test_core.py", - "source_location": "L818" - }, - { - "id": "tests_test_core_rationale_919", - "label": "No regression: cellpy already gives these paths good hover (#40).", - "_origin": "ast", - "community": 9, - "community_name": "SummaryPlotSpec", - "file_type": "rationale", - "norm_label": "no regression: cellpy already gives these paths good hover (#40).", - "source_file": "tests/test_core.py", - "source_location": "L919" - }, - { - "id": "issueflows_03_solved_issues_issue136_original", - "label": "issue136_original.md", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue136_original.md", - "source_file": ".issueflows/03-solved-issues/issue136_original.md", - "source_location": "L1" - }, - { - "id": "issueflows_03_solved_issues_issue136_original_acceptance_criteria", - "label": "Acceptance criteria", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "acceptance criteria", - "source_file": ".issueflows/03-solved-issues/issue136_original.md", - "source_location": "L87" + "source_location": "L926" }, { - "id": "issueflows_03_solved_issues_issue136_original_issue_136_redesign_the_loading_surface_one_add_cells_flow_staged_file_list_contextual_help", - "label": "Issue #136: Redesign the loading surface: one \"Add cells\" flow, staged file list, contextual help", + "id": "tests_test_uploads", + "label": "test_uploads.py", "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #136: redesign the loading surface: one \"add cells\" flow, staged file list, contextual help", - "source_file": ".issueflows/03-solved-issues/issue136_original.md", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "test_uploads.py", + "source_file": "tests/test_uploads.py", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue136_original_original_issue_text", - "label": "Original issue text", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "original issue text", - "source_file": ".issueflows/03-solved-issues/issue136_original.md", - "source_location": "L10" - }, - { - "id": "issueflows_03_solved_issues_issue136_original_out_of_scope", - "label": "Out of scope", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "out of scope", - "source_file": ".issueflows/03-solved-issues/issue136_original.md", - "source_location": "L114" - }, - { - "id": "issueflows_03_solved_issues_issue136_original_problem_context", - "label": "Problem / context", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "problem / context", - "source_file": ".issueflows/03-solved-issues/issue136_original.md", - "source_location": "L12" - }, - { - "id": "issueflows_03_solved_issues_issue136_original_spec", - "label": "Spec", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "spec", - "source_file": ".issueflows/03-solved-issues/issue136_original.md", - "source_location": "L47" - }, - { - "id": "issueflows_03_solved_issues_issue136_plan", - "label": "issue136_plan.md", + "id": "tests_test_uploads_py_fixture", + "label": "fixture", "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue136_plan.md", - "source_file": ".issueflows/03-solved-issues/issue136_plan.md", - "source_location": "L1" + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "fixture", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue136_status", - "label": "issue136_status.md", + "id": "tests_test_uploads_py_parametrize", + "label": "parametrize", "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "page", - "norm_label": "issue136_status.md", - "source_file": ".issueflows/03-solved-issues/issue136_status.md", - "source_location": "L1" + "community": 90, + "community_name": "test_uploads.py", + "file_type": "code", + "norm_label": "parametrize", + "source_file": "", + "source_location": "" }, { - "id": "issueflows_03_solved_issues_issue136_status_issue_136_status", - "label": "Issue #136 \u2014 Status", + "id": "tests_test_uploads_rationale_1", + "label": "Browser upload for served instances (#133). The sandbox (#120) is right to\u2026", "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "issue #136 \u2014 status", - "source_file": ".issueflows/03-solved-issues/issue136_status.md", + "community": 90, + "community_name": "test_uploads.py", + "file_type": "rationale", + "norm_label": "browser upload for served instances (#133). the sandbox (#120) is right to...", + "source_file": "tests/test_uploads.py", "source_location": "L1" }, { - "id": "issueflows_03_solved_issues_issue136_status_notes_deviations", - "label": "Notes / deviations", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "notes / deviations", - "source_file": ".issueflows/03-solved-issues/issue136_status.md", - "source_location": "L65" - }, - { - "id": "issueflows_03_solved_issues_issue136_status_remaining_work", - "label": "Remaining work", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "remaining work", - "source_file": ".issueflows/03-solved-issues/issue136_status.md", - "source_location": "L80" - }, - { - "id": "issueflows_03_solved_issues_issue136_status_what_s_done", - "label": "What's done", - "_origin": "ast", - "community": 91, - "community_name": "Original issue text", - "file_type": "document", - "node_kind": "heading", - "norm_label": "what's done", - "source_file": ".issueflows/03-solved-issues/issue136_status.md", - "source_location": "L5" - }, - { - "id": "tests_test_api_rationale_454", - "label": "A syntax error in app.js breaks the whole UI while Python tests stay green.\u2026", + "id": "tests_test_uploads_rationale_28", + "label": "A served instance with its data dir under tmp_path.", "_origin": "ast", - "community": 91, - "community_name": "Original issue text", + "community": 90, + "community_name": "test_uploads.py", "file_type": "rationale", - "norm_label": "a syntax error in app.js breaks the whole ui while python tests stay green....", - "source_file": "tests/test_api.py", - "source_location": "L454" + "norm_label": "a served instance with its data dir under tmp_path.", + "source_file": "tests/test_uploads.py", + "source_location": "L28" }, { "id": "issueflows_03_solved_issues_issue60_status", @@ -69749,159 +70333,159 @@ "source_location": "L529" }, { - "id": "issueflows_04_designs_and_guides_mcp_server_design_decided_2026_09_05", - "label": "Decided (2026-09-05)", + "id": "issueflows_04_designs_and_guides_loading_ui_alternatives_considered", + "label": "Alternatives considered", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "decided (2026-09-05)", - "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", - "source_location": "L445" + "norm_label": "alternatives considered", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L60" }, { - "id": "packaging_readme_not_solvable_in_code", - "label": "Not solvable in code", + "id": "issueflows_04_designs_and_guides_loading_ui_context", + "label": "Context", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "not solvable in code", - "source_file": "packaging/README.md", - "source_location": "L224" + "norm_label": "context", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L3" }, { - "id": "packaging_readme_numbers", - "label": "Numbers", + "id": "issueflows_04_designs_and_guides_loading_ui_decision", + "label": "Decision", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "numbers", - "source_file": "packaging/README.md", - "source_location": "L55" + "norm_label": "decision", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L13" }, { - "id": "packaging_readme_numbers_121", - "label": "Numbers", + "id": "issueflows_04_designs_and_guides_loading_ui_links", + "label": "Links", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "numbers", - "source_file": "packaging/README.md", - "source_location": "L121" + "norm_label": "links", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L72" }, { - "id": "packaging_readme_numbers_216", - "label": "Numbers", + "id": "issueflows_04_designs_and_guides_loading_ui_loading_ui_add_cells_modal_staged_list_local_issue_136", + "label": "Loading UI: Add cells modal + staged list (local issue 136)", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "numbers", - "source_file": "packaging/README.md", - "source_location": "L216" + "norm_label": "loading ui: add cells modal + staged list (local issue 136)", + "source_file": ".issueflows/04-designs-and-guides/loading-ui.md", + "source_location": "L1" }, { - "id": "packaging_readme_packaging", - "label": "Packaging", + "id": "issueflows_04_designs_and_guides_mcp_server_design_decided_2026_09_05", + "label": "Decided (2026-09-05)", "_origin": "ast", "community": 96, "community_name": ".status", "file_type": "document", "node_kind": "heading", - "norm_label": "packaging", - "source_file": "packaging/README.md", - "source_location": "L1" + "norm_label": "decided (2026-09-05)", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L445" }, { - "id": "packaging_readme_server_side_figure_export_is_not_in_the_image", - "label": "Server-side figure export is not in the image", + "id": "packaging_smoke_test_rationale_116", + "label": "The HTTP status alone \u2014 for checking that a guard actually guards.", "_origin": "ast", "community": 96, "community_name": ".status", - "file_type": "document", - "node_kind": "heading", - "norm_label": "server-side figure export is not in the image", - "source_file": "packaging/README.md", - "source_location": "L103" + "file_type": "rationale", + "norm_label": "the http status alone \u2014 for checking that a guard actually guards.", + "source_file": "packaging/smoke_test.py", + "source_location": "L116" }, { - "id": "packaging_readme_two_silent_failures_the_first_build_shipped_with", - "label": "Two silent failures the first build shipped with", + "id": "examples_mcp_readme", + "label": "mcp/README.md", "_origin": "ast", - "community": 96, - "community_name": ".status", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", "file_type": "document", - "node_kind": "heading", - "norm_label": "two silent failures the first build shipped with", - "source_file": "packaging/README.md", - "source_location": "L80" + "node_kind": "page", + "norm_label": "mcp/readme.md", + "source_file": "examples/mcp/README.md", + "source_location": "L1" }, { - "id": "packaging_readme_what_the_container_established_121", - "label": "What the container established (#121)", + "id": "examples_mcp_readme_cellpy_mcp_server_prototype", + "label": "cellpy MCP server (prototype)", "_origin": "ast", - "community": 96, - "community_name": ".status", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", "file_type": "document", "node_kind": "heading", - "norm_label": "what the container established (#121)", - "source_file": "packaging/README.md", - "source_location": "L72" + "norm_label": "cellpy mcp server (prototype)", + "source_file": "examples/mcp/README.md", + "source_location": "L1" }, { - "id": "packaging_readme_what_the_continuous_build_added_168", - "label": "What the continuous build added (#168)", + "id": "examples_mcp_readme_limits_worth_knowing_before_you_rely_on_it", + "label": "Limits worth knowing before you rely on it", "_origin": "ast", - "community": 96, - "community_name": ".status", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", "file_type": "document", "node_kind": "heading", - "norm_label": "what the continuous build added (#168)", - "source_file": "packaging/README.md", - "source_location": "L230" + "norm_label": "limits worth knowing before you rely on it", + "source_file": "examples/mcp/README.md", + "source_location": "L103" }, { - "id": "packaging_readme_what_the_installer_added_122", - "label": "What the installer added (#122)", + "id": "examples_mcp_readme_run_it", + "label": "Run it", "_origin": "ast", - "community": 96, - "community_name": ".status", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", "file_type": "document", "node_kind": "heading", - "norm_label": "what the installer added (#122)", - "source_file": "packaging/README.md", - "source_location": "L155" + "norm_label": "run it", + "source_file": "examples/mcp/README.md", + "source_location": "L14" }, { - "id": "packaging_readme_what_the_spike_established_117", - "label": "What the spike established (#117)", + "id": "issueflows_04_designs_and_guides_agent_docs_test", + "label": "agent-docs-test.md", "_origin": "ast", - "community": 96, - "community_name": ".status", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", "file_type": "document", - "node_kind": "heading", - "norm_label": "what the spike established (#117)", - "source_file": "packaging/README.md", - "source_location": "L26" + "node_kind": "page", + "norm_label": "agent-docs-test.md", + "source_file": ".issueflows/04-designs-and-guides/agent-docs-test.md", + "source_location": "L1" }, { - "id": "packaging_smoke_test_rationale_116", - "label": "The HTTP status alone \u2014 for checking that a guard actually guards.", + "id": "issueflows_04_designs_and_guides_mcp_server_design", + "label": "mcp-server-design.md", "_origin": "ast", - "community": 96, - "community_name": ".status", - "file_type": "rationale", - "norm_label": "the http status alone \u2014 for checking that a guard actually guards.", - "source_file": "packaging/smoke_test.py", - "source_location": "L116" + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", + "file_type": "document", + "node_kind": "page", + "norm_label": "mcp-server-design.md", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L1" }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_an_mcp_server_for_cellpy_design_and_what_a_prototype_found", @@ -69915,6 +70499,18 @@ "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", "source_location": "L1" }, + { + "id": "issueflows_04_designs_and_guides_mcp_server_design_finding_4_cellpy_new_cannot_currently_be_automated", + "label": "Finding 4 \u2014 `cellpy new` cannot currently be automated", + "_origin": "ast", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", + "file_type": "document", + "node_kind": "heading", + "norm_label": "finding 4 \u2014 `cellpy new` cannot currently be automated", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L297" + }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_hard_part_1_state", "label": "Hard part 1 \u2014 state", @@ -70047,6 +70643,18 @@ "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", "source_location": "L385" }, + { + "id": "issueflows_04_designs_and_guides_mcp_server_design_what_is_still_open", + "label": "What is still open", + "_origin": "ast", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", + "file_type": "document", + "node_kind": "heading", + "norm_label": "what is still open", + "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", + "source_location": "L402" + }, { "id": "issueflows_04_designs_and_guides_mcp_server_design_why_an_mcp_server_at_all", "label": "Why an MCP server at all", @@ -70059,6 +70667,17 @@ "source_file": ".issueflows/04-designs-and-guides/mcp-server-design.md", "source_location": "L17" }, + { + "id": "examples_mcp_server_rationale_882", + "label": "Create a batch project from a template \u2014 the `cellpy new` workflow. `project`\u2026", + "_origin": "ast", + "community": 97, + "community_name": "An MCP server for cellpy \u2014 design, and what a prototype found", + "file_type": "rationale", + "norm_label": "create a batch project from a template \u2014 the `cellpy new` workflow. `project`...", + "source_file": "examples/mcp/server.py", + "source_location": "L882" + }, { "id": "cursor_skills_iflow_build_skill", "label": "iflow-build/SKILL.md", @@ -70233,12 +70852,24 @@ "source_file": ".issueflows/03-solved-issues/issue67_original.md", "source_location": "L13" }, + { + "id": "collections", + "label": "collections", + "_origin": "semantic", + "community": 0, + "community_name": "cells.py", + "external": true, + "file_type": "concept", + "norm_label": "collections", + "source_file": "", + "type": "external" + }, { "id": "dataclasses", "label": "dataclasses", "_origin": "semantic", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "external": true, "file_type": "concept", "norm_label": "dataclasses", @@ -70250,7 +70881,7 @@ "label": "fastapi_responses", "_origin": "semantic", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "external": true, "file_type": "concept", "norm_label": "fastapi_responses", @@ -70262,7 +70893,7 @@ "label": "fastapi_staticfiles", "_origin": "semantic", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "external": true, "file_type": "concept", "norm_label": "fastapi_staticfiles", @@ -70274,7 +70905,7 @@ "label": "fastapi_templating", "_origin": "semantic", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "external": true, "file_type": "concept", "norm_label": "fastapi_templating", @@ -70286,31 +70917,19 @@ "label": "itertools", "_origin": "semantic", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "external": true, "file_type": "concept", "norm_label": "itertools", "source_file": "", "type": "external" }, - { - "id": "json", - "label": "json", - "_origin": "semantic", - "community": 0, - "community_name": "get_library", - "external": true, - "file_type": "concept", - "norm_label": "json", - "source_file": "", - "type": "external" - }, { "id": "logging", "label": "logging", "_origin": "semantic", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "external": true, "file_type": "concept", "norm_label": "logging", @@ -70322,7 +70941,7 @@ "label": "math", "_origin": "semantic", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "external": true, "file_type": "concept", "norm_label": "math", @@ -70334,7 +70953,7 @@ "label": "queue", "_origin": "semantic", "community": 0, - "community_name": "get_library", + "community_name": "cells.py", "external": true, "file_type": "concept", "norm_label": "queue", @@ -70342,50 +70961,38 @@ "type": "external" }, { - "id": "playwright_sync_api", - "label": "playwright_sync_api", - "_origin": "semantic", - "community": 101, - "community_name": "test_gui_playwright.py", - "external": true, - "file_type": "concept", - "norm_label": "playwright_sync_api", - "source_file": "", - "type": "external" - }, - { - "id": "collections_abc", - "label": "collections_abc", + "id": "threading", + "label": "threading", "_origin": "semantic", - "community": 107, - "community_name": "CellRecord", + "community": 0, + "community_name": "cells.py", "external": true, "file_type": "concept", - "norm_label": "collections_abc", + "norm_label": "threading", "source_file": "", "type": "external" }, { - "id": "asyncio", - "label": "asyncio", + "id": "typing", + "label": "typing", "_origin": "semantic", - "community": 114, - "community_name": "test_mcp_prototype.py", + "community": 0, + "community_name": "cells.py", "external": true, "file_type": "concept", - "norm_label": "asyncio", + "norm_label": "typing", "source_file": "", "type": "external" }, { - "id": "shutil", - "label": "shutil", + "id": "playwright_sync_api", + "label": "playwright_sync_api", "_origin": "semantic", - "community": 114, - "community_name": "test_mcp_prototype.py", + "community": 101, + "community_name": "test_gui_playwright.py", "external": true, "file_type": "concept", - "norm_label": "shutil", + "norm_label": "playwright_sync_api", "source_file": "", "type": "external" }, @@ -70438,38 +71045,38 @@ "type": "external" }, { - "id": "pathlib", - "label": "pathlib", + "id": "collections_abc", + "label": "collections_abc", "_origin": "semantic", "community": 17, "community_name": "cellpy_adapter.py", "external": true, "file_type": "concept", - "norm_label": "pathlib", + "norm_label": "collections_abc", "source_file": "", "type": "external" }, { - "id": "typing", - "label": "typing", + "id": "asyncio", + "label": "asyncio", "_origin": "semantic", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 204, + "community_name": "test_mcp_prototype.py", "external": true, "file_type": "concept", - "norm_label": "typing", + "norm_label": "asyncio", "source_file": "", "type": "external" }, { - "id": "warnings", - "label": "warnings", + "id": "shutil", + "label": "shutil", "_origin": "semantic", - "community": 17, - "community_name": "cellpy_adapter.py", + "community": 204, + "community_name": "test_mcp_prototype.py", "external": true, "file_type": "concept", - "norm_label": "warnings", + "norm_label": "shutil", "source_file": "", "type": "external" }, @@ -70497,62 +71104,14 @@ "type": "external" }, { - "id": "functools", - "label": "functools", - "_origin": "semantic", - "community": 23, - "community_name": "test_projects.py", - "external": true, - "file_type": "concept", - "norm_label": "functools", - "source_file": "", - "type": "external" - }, - { - "id": "pydantic", - "label": "pydantic", - "_origin": "semantic", - "community": 23, - "community_name": "test_projects.py", - "external": true, - "file_type": "concept", - "norm_label": "pydantic", - "source_file": "", - "type": "external" - }, - { - "id": "pydantic_settings", - "label": "pydantic_settings", - "_origin": "semantic", - "community": 23, - "community_name": "test_projects.py", - "external": true, - "file_type": "concept", - "norm_label": "pydantic_settings", - "source_file": "", - "type": "external" - }, - { - "id": "secrets", - "label": "secrets", - "_origin": "semantic", - "community": 23, - "community_name": "test_projects.py", - "external": true, - "file_type": "concept", - "norm_label": "secrets", - "source_file": "", - "type": "external" - }, - { - "id": "fastapi_testclient", - "label": "fastapi_testclient", + "id": "warnings", + "label": "warnings", "_origin": "semantic", - "community": 277, - "community_name": "test_ingest.py", + "community": 216, + "community_name": "starter/app.py", "external": true, "file_type": "concept", - "norm_label": "fastapi_testclient", + "norm_label": "warnings", "source_file": "", "type": "external" }, @@ -70581,50 +71140,50 @@ "type": "external" }, { - "id": "io", - "label": "io", + "id": "cellpy_exceptions", + "label": "cellpy_exceptions", "_origin": "semantic", - "community": 3, - "community_name": "collect.py", + "community": 30, + "community_name": "core/export.py", "external": true, "file_type": "concept", - "norm_label": "io", + "norm_label": "cellpy_exceptions", "source_file": "", "type": "external" }, { - "id": "plotly_io", - "label": "plotly_io", + "id": "cellpy_plotting", + "label": "cellpy_plotting", "_origin": "semantic", - "community": 3, - "community_name": "collect.py", + "community": 30, + "community_name": "core/export.py", "external": true, "file_type": "concept", - "norm_label": "plotly_io", + "norm_label": "cellpy_plotting", "source_file": "", "type": "external" }, { - "id": "cellpy_exceptions", - "label": "cellpy_exceptions", + "id": "io", + "label": "io", "_origin": "semantic", "community": 30, "community_name": "core/export.py", "external": true, "file_type": "concept", - "norm_label": "cellpy_exceptions", + "norm_label": "io", "source_file": "", "type": "external" }, { - "id": "cellpy_plotting", - "label": "cellpy_plotting", + "id": "plotly_io", + "label": "plotly_io", "_origin": "semantic", "community": 30, "community_name": "core/export.py", "external": true, "file_type": "concept", - "norm_label": "cellpy_plotting", + "norm_label": "plotly_io", "source_file": "", "type": "external" }, @@ -70640,24 +71199,48 @@ "source_file": "", "type": "external" }, + { + "id": "argparse", + "label": "argparse", + "_origin": "semantic", + "community": 304, + "community_name": "mcp/server.py", + "external": true, + "file_type": "concept", + "norm_label": "argparse", + "source_file": "", + "type": "external" + }, { "id": "ast", "label": "ast", "_origin": "semantic", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "external": true, "file_type": "concept", "norm_label": "ast", "source_file": "", "type": "external" }, + { + "id": "fastapi_testclient", + "label": "fastapi_testclient", + "_origin": "semantic", + "community": 304, + "community_name": "mcp/server.py", + "external": true, + "file_type": "concept", + "norm_label": "fastapi_testclient", + "source_file": "", + "type": "external" + }, { "id": "importlib_metadata", "label": "importlib_metadata", "_origin": "semantic", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "external": true, "file_type": "concept", "norm_label": "importlib_metadata", @@ -70669,7 +71252,7 @@ "label": "importlib_util", "_origin": "semantic", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "external": true, "file_type": "concept", "norm_label": "importlib_util", @@ -70677,14 +71260,38 @@ "type": "external" }, { - "id": "pandas", - "label": "pandas", + "id": "json", + "label": "json", "_origin": "semantic", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "external": true, "file_type": "concept", - "norm_label": "pandas", + "norm_label": "json", + "source_file": "", + "type": "external" + }, + { + "id": "mcp_server_mcpserver", + "label": "mcp_server_mcpserver", + "_origin": "semantic", + "community": 304, + "community_name": "mcp/server.py", + "external": true, + "file_type": "concept", + "norm_label": "mcp_server_mcpserver", + "source_file": "", + "type": "external" + }, + { + "id": "pathlib", + "label": "pathlib", + "_origin": "semantic", + "community": 304, + "community_name": "mcp/server.py", + "external": true, + "file_type": "concept", + "norm_label": "pathlib", "source_file": "", "type": "external" }, @@ -70693,25 +71300,85 @@ "label": "pytest", "_origin": "semantic", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "external": true, "file_type": "concept", "norm_label": "pytest", "source_file": "", "type": "external" }, + { + "id": "re", + "label": "re", + "_origin": "semantic", + "community": 304, + "community_name": "mcp/server.py", + "external": true, + "file_type": "concept", + "norm_label": "re", + "source_file": "", + "type": "external" + }, + { + "id": "subprocess", + "label": "subprocess", + "_origin": "semantic", + "community": 304, + "community_name": "mcp/server.py", + "external": true, + "file_type": "concept", + "norm_label": "subprocess", + "source_file": "", + "type": "external" + }, + { + "id": "sys", + "label": "sys", + "_origin": "semantic", + "community": 304, + "community_name": "mcp/server.py", + "external": true, + "file_type": "concept", + "norm_label": "sys", + "source_file": "", + "type": "external" + }, { "id": "tomllib", "label": "tomllib", "_origin": "semantic", "community": 304, - "community_name": "test_starter.py", + "community_name": "mcp/server.py", "external": true, "file_type": "concept", "norm_label": "tomllib", "source_file": "", "type": "external" }, + { + "id": "urllib_error", + "label": "urllib_error", + "_origin": "semantic", + "community": 304, + "community_name": "mcp/server.py", + "external": true, + "file_type": "concept", + "norm_label": "urllib_error", + "source_file": "", + "type": "external" + }, + { + "id": "urllib_request", + "label": "urllib_request", + "_origin": "semantic", + "community": 304, + "community_name": "mcp/server.py", + "external": true, + "file_type": "concept", + "norm_label": "urllib_request", + "source_file": "", + "type": "external" + }, { "id": "basemodel", "label": "BaseModel", @@ -70735,26 +71402,26 @@ "source_location": "" }, { - "id": "argparse", - "label": "argparse", + "id": "pandas", + "label": "pandas", "_origin": "semantic", - "community": 48, - "community_name": "mcp/server.py", + "community": 39, + "community_name": "test_journal.py", "external": true, "file_type": "concept", - "norm_label": "argparse", + "norm_label": "pandas", "source_file": "", "type": "external" }, { - "id": "collections", - "label": "collections", + "id": "functools", + "label": "functools", "_origin": "semantic", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "external": true, "file_type": "concept", - "norm_label": "collections", + "norm_label": "functools", "source_file": "", "type": "external" }, @@ -70763,7 +71430,7 @@ "label": "loguru", "_origin": "semantic", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "external": true, "file_type": "concept", "norm_label": "loguru", @@ -70771,38 +71438,38 @@ "type": "external" }, { - "id": "mcp_server_mcpserver", - "label": "mcp_server_mcpserver", + "id": "pydantic", + "label": "pydantic", "_origin": "semantic", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "external": true, "file_type": "concept", - "norm_label": "mcp_server_mcpserver", + "norm_label": "pydantic", "source_file": "", "type": "external" }, { - "id": "os", - "label": "os", + "id": "pydantic_settings", + "label": "pydantic_settings", "_origin": "semantic", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "external": true, "file_type": "concept", - "norm_label": "os", + "norm_label": "pydantic_settings", "source_file": "", "type": "external" }, { - "id": "re", - "label": "re", + "id": "secrets", + "label": "secrets", "_origin": "semantic", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "external": true, "file_type": "concept", - "norm_label": "re", + "norm_label": "secrets", "source_file": "", "type": "external" }, @@ -70811,7 +71478,7 @@ "label": "signal", "_origin": "semantic", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "external": true, "file_type": "concept", "norm_label": "signal", @@ -70823,79 +71490,19 @@ "label": "socket", "_origin": "semantic", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "external": true, "file_type": "concept", "norm_label": "socket", "source_file": "", "type": "external" }, - { - "id": "subprocess", - "label": "subprocess", - "_origin": "semantic", - "community": 48, - "community_name": "mcp/server.py", - "external": true, - "file_type": "concept", - "norm_label": "subprocess", - "source_file": "", - "type": "external" - }, - { - "id": "sys", - "label": "sys", - "_origin": "semantic", - "community": 48, - "community_name": "mcp/server.py", - "external": true, - "file_type": "concept", - "norm_label": "sys", - "source_file": "", - "type": "external" - }, - { - "id": "threading", - "label": "threading", - "_origin": "semantic", - "community": 48, - "community_name": "mcp/server.py", - "external": true, - "file_type": "concept", - "norm_label": "threading", - "source_file": "", - "type": "external" - }, - { - "id": "urllib_error", - "label": "urllib_error", - "_origin": "semantic", - "community": 48, - "community_name": "mcp/server.py", - "external": true, - "file_type": "concept", - "norm_label": "urllib_error", - "source_file": "", - "type": "external" - }, - { - "id": "urllib_request", - "label": "urllib_request", - "_origin": "semantic", - "community": 48, - "community_name": "mcp/server.py", - "external": true, - "file_type": "concept", - "norm_label": "urllib_request", - "source_file": "", - "type": "external" - }, { "id": "uvicorn", "label": "uvicorn", "_origin": "semantic", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "external": true, "file_type": "concept", "norm_label": "uvicorn", @@ -70907,7 +71514,7 @@ "label": "webbrowser", "_origin": "semantic", "community": 48, - "community_name": "mcp/server.py", + "community_name": "config.py", "external": true, "file_type": "concept", "norm_label": "webbrowser", @@ -70973,6 +71580,18 @@ "norm_label": "glob", "source_file": "", "type": "external" + }, + { + "id": "os", + "label": "os", + "_origin": "semantic", + "community": 83, + "community_name": "expand_paths", + "external": true, + "file_type": "concept", + "norm_label": "os", + "source_file": "", + "type": "external" } ], "links": [ @@ -71765,7 +72384,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L162", + "source_location": "L173", "weight": 1.0 }, { @@ -71777,7 +72396,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L166", + "source_location": "L177", "weight": 1.0 }, { @@ -71789,7 +72408,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L168", + "source_location": "L179", "weight": 1.0 }, { @@ -71801,7 +72420,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L156", + "source_location": "L167", "weight": 1.0 }, { @@ -71813,7 +72432,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L157", + "source_location": "L168", "weight": 1.0 }, { @@ -71825,7 +72444,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L46", + "source_location": "L48", "weight": 1.0 }, { @@ -71837,7 +72456,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L91", + "source_location": "L93", "weight": 1.0 }, { @@ -71849,7 +72468,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L53", + "source_location": "L55", "weight": 1.0 }, { @@ -71861,7 +72480,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L59", + "source_location": "L61", "weight": 1.0 }, { @@ -71873,7 +72492,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L121", + "source_location": "L123", "weight": 1.0 }, { @@ -71885,7 +72504,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L72", + "source_location": "L74", "weight": 1.0 }, { @@ -71897,7 +72516,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L73", + "source_location": "L75", "weight": 1.0 }, { @@ -71909,7 +72528,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L73", + "source_location": "L75", "weight": 1.0 }, { @@ -71921,7 +72540,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L79", + "source_location": "L81", "weight": 1.0 }, { @@ -71933,7 +72552,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L107", + "source_location": "L109", "weight": 1.0 }, { @@ -71945,7 +72564,31 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L107", + "source_location": "L109", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L155", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "target": "src_cellpy_simple_gui_api_routers_cells_state", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L156", "weight": 1.0 }, { @@ -71957,7 +72600,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L150", + "source_location": "L161", "weight": 1.0 }, { @@ -71969,7 +72612,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L151", + "source_location": "L162", "weight": 1.0 }, { @@ -71981,7 +72624,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L25", + "source_location": "L26", "weight": 1.0 }, { @@ -71993,7 +72636,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L130", + "source_location": "L132", "weight": 1.0 }, { @@ -72005,7 +72648,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L145", + "source_location": "L147", "weight": 1.0 }, { @@ -73133,7 +73776,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L195", + "source_location": "L198", "weight": 1.0 }, { @@ -73145,7 +73788,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L196", + "source_location": "L199", "weight": 1.0 }, { @@ -73157,7 +73800,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L199", + "source_location": "L202", "weight": 1.0 }, { @@ -73169,7 +73812,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L202", + "source_location": "L205", "weight": 1.0 }, { @@ -73181,7 +73824,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L204", + "source_location": "L207", "weight": 1.0 }, { @@ -73193,7 +73836,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L205", + "source_location": "L208", "weight": 1.0 }, { @@ -73241,7 +73884,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L184", + "source_location": "L187", "weight": 1.0 }, { @@ -73253,7 +73896,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L188", + "source_location": "L191", "weight": 1.0 }, { @@ -73270,7 +73913,7 @@ }, { "source": "src_cellpy_simple_gui_api_routers_projects_load_journal_job", - "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", "relation": "calls", "_origin": "ast", "confidence": "EXTRACTED", @@ -73721,7 +74364,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L793", + "source_location": "L817", "weight": 1.0 }, { @@ -73868,6 +74511,18 @@ "source_location": "L346", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L578", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_raw", "target": "src_cellpy_simple_gui_core_cellpy_adapter_filename_for_get", @@ -73913,7 +74568,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L804", + "source_location": "L828", "weight": 1.0 }, { @@ -73925,7 +74580,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L819", + "source_location": "L843", "weight": 1.0 }, { @@ -73937,7 +74592,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L799", + "source_location": "L823", "weight": 1.0 }, { @@ -73949,7 +74604,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L814", + "source_location": "L838", "weight": 1.0 }, { @@ -73961,7 +74616,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L809", + "source_location": "L833", "weight": 1.0 }, { @@ -74165,7 +74820,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L788", + "source_location": "L809", "weight": 1.0 }, { @@ -74177,7 +74832,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L789", + "source_location": "L810", "weight": 1.0 }, { @@ -74189,7 +74844,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L798", + "source_location": "L819", "weight": 1.0 }, { @@ -74201,7 +74856,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L802", + "source_location": "L823", "weight": 1.0 }, { @@ -74213,7 +74868,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1366", + "source_location": "L1390", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect_apply_group_titles", + "target": "src_cellpy_simple_gui_core_collect_truncate_label", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L117", "weight": 1.0 }, { @@ -74225,7 +74892,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L755", + "source_location": "L776", "weight": 1.0 }, { @@ -74237,7 +74904,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1068", + "source_location": "L1092", "weight": 1.0 }, { @@ -74249,7 +74916,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1077", + "source_location": "L1101", "weight": 1.0 }, { @@ -74261,7 +74928,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1084", + "source_location": "L1108", "weight": 1.0 }, { @@ -74273,7 +74940,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1091", + "source_location": "L1115", "weight": 1.0 }, { @@ -74285,7 +74952,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L826", + "source_location": "L847", "weight": 1.0 }, { @@ -74309,7 +74976,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L968", + "source_location": "L992", "weight": 1.0 }, { @@ -74321,7 +74988,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L972", + "source_location": "L996", "weight": 1.0 }, { @@ -74333,7 +75000,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L511", + "source_location": "L532", "weight": 1.0 }, { @@ -74345,7 +75012,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L546", + "source_location": "L567", "weight": 1.0 }, { @@ -74357,7 +75024,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1108", + "source_location": "L1132", "weight": 1.0 }, { @@ -74369,7 +75036,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1115", + "source_location": "L1139", "weight": 1.0 }, { @@ -74381,7 +75048,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1459", + "source_location": "L1483", "weight": 1.0 }, { @@ -74393,7 +75060,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1230", + "source_location": "L1254", "weight": 1.0 }, { @@ -74405,7 +75072,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1232", + "source_location": "L1256", "weight": 1.0 }, { @@ -74417,7 +75084,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1233", + "source_location": "L1257", "weight": 1.0 }, { @@ -74429,7 +75096,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L276", + "source_location": "L297", "weight": 1.0 }, { @@ -74441,7 +75108,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L203", + "source_location": "L224", "weight": 1.0 }, { @@ -74453,7 +75120,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L226", + "source_location": "L247", "weight": 1.0 }, { @@ -74465,7 +75132,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L862", + "source_location": "L884", "weight": 1.0 }, { @@ -74477,7 +75144,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L870", + "source_location": "L892", "weight": 1.0 }, { @@ -74489,7 +75156,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L877", + "source_location": "L899", "weight": 1.0 }, { @@ -74501,7 +75168,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L879", + "source_location": "L901", "weight": 1.0 }, { @@ -74513,7 +75180,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L883", + "source_location": "L905", "weight": 1.0 }, { @@ -74525,7 +75192,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L886", + "source_location": "L908", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect_figure_json", + "target": "src_cellpy_simple_gui_core_collect_apply_group_titles", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L910", "weight": 1.0 }, { @@ -74537,7 +75216,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L888", + "source_location": "L912", "weight": 1.0 }, { @@ -74549,7 +75228,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L890", + "source_location": "L914", "weight": 1.0 }, { @@ -74561,7 +75240,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L891", + "source_location": "L915", "weight": 1.0 }, { @@ -74573,7 +75252,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L894", + "source_location": "L918", "weight": 1.0 }, { @@ -74585,7 +75264,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L527", + "source_location": "L548", "weight": 1.0 }, { @@ -74597,7 +75276,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L266", + "source_location": "L287", "weight": 1.0 }, { @@ -74609,7 +75288,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1277", + "source_location": "L1301", "weight": 1.0 }, { @@ -74621,7 +75300,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1300", + "source_location": "L1324", "weight": 1.0 }, { @@ -74633,7 +75312,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1302", + "source_location": "L1326", "weight": 1.0 }, { @@ -74645,7 +75324,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1261", + "source_location": "L1285", "weight": 1.0 }, { @@ -74657,7 +75336,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L937", + "source_location": "L961", "weight": 1.0 }, { @@ -74669,7 +75348,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L938", + "source_location": "L962", "weight": 1.0 }, { @@ -74681,7 +75360,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L939", + "source_location": "L963", "weight": 1.0 }, { @@ -74693,7 +75372,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L942", + "source_location": "L966", "weight": 1.0 }, { @@ -74705,7 +75384,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L148", + "source_location": "L169", "weight": 1.0 }, { @@ -74717,7 +75396,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L164", + "source_location": "L185", "weight": 1.0 }, { @@ -74729,7 +75408,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L728", + "source_location": "L749", "weight": 1.0 }, { @@ -74741,7 +75420,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1384", + "source_location": "L1408", "weight": 1.0 }, { @@ -74753,7 +75432,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1385", + "source_location": "L1409", "weight": 1.0 }, { @@ -74765,7 +75444,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1388", + "source_location": "L1412", "weight": 1.0 }, { @@ -74777,7 +75456,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1391", + "source_location": "L1415", "weight": 1.0 }, { @@ -74789,7 +75468,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1157", + "source_location": "L1181", "weight": 1.0 }, { @@ -74801,7 +75480,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1158", + "source_location": "L1182", "weight": 1.0 }, { @@ -74813,7 +75492,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L480", + "source_location": "L501", "weight": 1.0 }, { @@ -74825,7 +75504,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L410", + "source_location": "L431", "weight": 1.0 }, { @@ -74837,7 +75516,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L416", + "source_location": "L437", "weight": 1.0 }, { @@ -74849,7 +75528,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L324", + "source_location": "L345", "weight": 1.0 }, { @@ -74861,7 +75540,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L290", + "source_location": "L311", "weight": 1.0 }, { @@ -74873,7 +75552,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L440", + "source_location": "L461", "weight": 1.0 }, { @@ -74885,7 +75564,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L441", + "source_location": "L462", "weight": 1.0 }, { @@ -74897,7 +75576,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L305", + "source_location": "L326", "weight": 1.0 }, { @@ -74909,7 +75588,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L309", + "source_location": "L330", "weight": 1.0 }, { @@ -74921,7 +75600,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L313", + "source_location": "L334", "weight": 1.0 }, { @@ -74933,7 +75612,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L434", + "source_location": "L455", "weight": 1.0 }, { @@ -74945,7 +75624,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1015", + "source_location": "L1039", "weight": 1.0 }, { @@ -75512,6 +76191,30 @@ "source_location": "L86", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_library_cellrecord_group_name", + "target": "src_cellpy_simple_gui_core_library_default_group_label", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L88", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", + "target": "src_cellpy_simple_gui_core_library_cellrecord_group_name", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L102", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", "target": "src_cellpy_simple_gui_core_library_cellrecord_color", @@ -75521,7 +76224,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L90", + "source_location": "L105", "weight": 1.0 }, { @@ -75533,7 +76236,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L303", + "source_location": "L364", "weight": 1.0 }, { @@ -75545,7 +76248,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L120", + "source_location": "L139", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library_groups", + "target": "src_cellpy_simple_gui_core_library_default_group_label", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L322", "weight": 1.0 }, { @@ -75557,7 +76272,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L225", + "source_location": "L244", "weight": 1.0 }, { @@ -75569,7 +76284,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L234", + "source_location": "L253", "weight": 1.0 }, { @@ -75581,7 +76296,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L163", + "source_location": "L182", "weight": 1.0 }, { @@ -75593,7 +76308,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L180", + "source_location": "L199", "weight": 1.0 }, { @@ -75605,7 +76320,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L250", + "source_location": "L269", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library_set_group_label", + "target": "src_cellpy_simple_gui_core_library_default_group_label", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L296", "weight": 1.0 }, { @@ -75617,7 +76344,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L208", + "source_location": "L216", "weight": 1.0 }, { @@ -75629,7 +76356,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L155", + "source_location": "L163", "weight": 1.0 }, { @@ -75641,7 +76368,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L252", + "source_location": "L260", "weight": 1.0 }, { @@ -75653,7 +76380,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L286", + "source_location": "L294", "weight": 1.0 }, { @@ -75665,7 +76392,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L118", + "source_location": "L126", "weight": 1.0 }, { @@ -75845,7 +76572,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L234", + "source_location": "L237", "weight": 1.0 }, { @@ -75857,7 +76584,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L246", + "source_location": "L249", "weight": 1.0 }, { @@ -75869,7 +76596,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L255", + "source_location": "L258", "weight": 1.0 }, { @@ -75881,7 +76608,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L259", + "source_location": "L262", "weight": 1.0 }, { @@ -75893,7 +76620,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L260", + "source_location": "L263", "weight": 1.0 }, { @@ -75905,7 +76632,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L271", + "source_location": "L274", "weight": 1.0 }, { @@ -75917,7 +76644,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L274", + "source_location": "L277", "weight": 1.0 }, { @@ -75929,7 +76656,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L275", + "source_location": "L278", "weight": 1.0 }, { @@ -75941,7 +76668,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L287", + "source_location": "L290", "weight": 1.0 }, { @@ -75953,7 +76680,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L290", + "source_location": "L293", "weight": 1.0 }, { @@ -75965,7 +76692,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L101", + "source_location": "L103", "weight": 1.0 }, { @@ -75977,7 +76704,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L103", + "source_location": "L105", "weight": 1.0 }, { @@ -75989,7 +76716,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L312", + "source_location": "L315", "weight": 1.0 }, { @@ -76001,7 +76728,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L316", + "source_location": "L319", "weight": 1.0 }, { @@ -76013,7 +76740,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L164", + "source_location": "L166", "weight": 1.0 }, { @@ -76025,7 +76752,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L174", + "source_location": "L176", "weight": 1.0 }, { @@ -76037,7 +76764,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L175", + "source_location": "L177", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_plotting_cycles_figure", + "target": "src_cellpy_simple_gui_core_collect_group_titles", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L183", "weight": 1.0 }, { @@ -76049,7 +76788,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L199", + "source_location": "L202", "weight": 1.0 }, { @@ -76061,7 +76800,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L199", + "source_location": "L202", "weight": 1.0 }, { @@ -76073,7 +76812,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L201", + "source_location": "L204", "weight": 1.0 }, { @@ -76085,7 +76824,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L205", + "source_location": "L208", "weight": 1.0 }, { @@ -76097,7 +76836,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L328", + "source_location": "L331", "weight": 1.0 }, { @@ -76109,7 +76848,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L332", + "source_location": "L335", "weight": 1.0 }, { @@ -76121,7 +76860,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L333", + "source_location": "L336", "weight": 1.0 }, { @@ -76133,7 +76872,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L336", + "source_location": "L339", "weight": 1.0 }, { @@ -76145,7 +76884,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L339", + "source_location": "L342", "weight": 1.0 }, { @@ -76157,7 +76896,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L344", + "source_location": "L347", "weight": 1.0 }, { @@ -76169,7 +76908,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L344", + "source_location": "L347", "weight": 1.0 }, { @@ -76181,7 +76920,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L151", + "source_location": "L153", "weight": 1.0 }, { @@ -76193,7 +76932,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L157", + "source_location": "L159", "weight": 1.0 }, { @@ -76205,7 +76944,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L159", + "source_location": "L161", "weight": 1.0 }, { @@ -76217,7 +76956,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L355", + "source_location": "L358", "weight": 1.0 }, { @@ -76229,7 +76968,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L359", + "source_location": "L362", "weight": 1.0 }, { @@ -76241,7 +76980,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L360", + "source_location": "L363", "weight": 1.0 }, { @@ -76253,7 +76992,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L363", + "source_location": "L366", "weight": 1.0 }, { @@ -76265,7 +77004,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L368", + "source_location": "L371", "weight": 1.0 }, { @@ -76277,7 +77016,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L375", + "source_location": "L378", "weight": 1.0 }, { @@ -76289,7 +77028,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L375", + "source_location": "L378", "weight": 1.0 }, { @@ -76301,7 +77040,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L113", + "source_location": "L115", "weight": 1.0 }, { @@ -76313,7 +77052,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L115", + "source_location": "L117", "weight": 1.0 }, { @@ -76325,7 +77064,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L297", + "source_location": "L300", "weight": 1.0 }, { @@ -76337,7 +77076,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L132", + "source_location": "L134", "weight": 1.0 }, { @@ -76349,7 +77088,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L133", + "source_location": "L135", "weight": 1.0 }, { @@ -76436,6 +77175,18 @@ "source_location": "L61", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_plotting_summary_figure", + "target": "src_cellpy_simple_gui_core_collect_group_titles", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/plotting.py", + "source_location": "L70", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_plotting_summary_figure", "target": "src_cellpy_simple_gui_core_collect_summary_y_label_mapper", @@ -76445,7 +77196,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L72", + "source_location": "L74", "weight": 1.0 }, { @@ -76457,7 +77208,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L313", + "source_location": "L328", "weight": 1.0 }, { @@ -76469,7 +77220,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L313", + "source_location": "L328", "weight": 1.0 }, { @@ -76481,7 +77232,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L294", + "source_location": "L309", "weight": 1.0 }, { @@ -76493,7 +77244,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L299", + "source_location": "L314", "weight": 1.0 }, { @@ -76505,7 +77256,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L303", + "source_location": "L318", "weight": 1.0 }, { @@ -76517,7 +77268,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L262", + "source_location": "L275", "weight": 1.0 }, { @@ -76529,7 +77280,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L263", + "source_location": "L276", "weight": 1.0 }, { @@ -76541,7 +77292,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L274", + "source_location": "L287", "weight": 1.0 }, { @@ -76553,7 +77304,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L89", + "source_location": "L98", "weight": 1.0 }, { @@ -76565,7 +77316,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L110", + "source_location": "L119", "weight": 1.0 }, { @@ -76577,7 +77328,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L110", + "source_location": "L119", "weight": 1.0 }, { @@ -76589,7 +77340,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L320", + "source_location": "L335", "weight": 1.0 }, { @@ -76601,7 +77352,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L163", + "source_location": "L172", "weight": 1.0 }, { @@ -76613,7 +77364,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L164", + "source_location": "L173", "weight": 1.0 }, { @@ -76625,7 +77376,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L166", + "source_location": "L175", "weight": 1.0 }, { @@ -76637,7 +77388,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L169", + "source_location": "L178", "weight": 1.0 }, { @@ -76649,7 +77400,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L173", + "source_location": "L182", "weight": 1.0 }, { @@ -76661,7 +77412,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L200", + "source_location": "L209", "weight": 1.0 }, { @@ -76673,7 +77424,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L202", + "source_location": "L211", "weight": 1.0 }, { @@ -76685,7 +77436,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L213", + "source_location": "L222", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_projects_save_project", + "target": "src_cellpy_simple_gui_core_projects_groupentry", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L224", "weight": 1.0 }, { @@ -78977,7 +79740,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/web/static/js/app.js", - "source_location": "L75", + "source_location": "L76", "weight": 1.0 }, { @@ -150761,7 +151524,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L586", + "source_location": "L613", "weight": 1.0 }, { @@ -150809,7 +151572,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L617", + "source_location": "L644", "weight": 1.0 }, { @@ -150821,7 +151584,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L299", + "source_location": "L326", "weight": 1.0 }, { @@ -150869,7 +151632,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L735", + "source_location": "L762", "weight": 1.0 }, { @@ -150881,7 +151644,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L736", + "source_location": "L763", "weight": 1.0 }, { @@ -150893,7 +151656,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L737", + "source_location": "L764", "weight": 1.0 }, { @@ -150905,7 +151668,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L596", + "source_location": "L623", "weight": 1.0 }, { @@ -150917,7 +151680,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L686", + "source_location": "L713", "weight": 1.0 }, { @@ -150929,7 +151692,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L652", + "source_location": "L679", "weight": 1.0 }, { @@ -150941,7 +151704,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L656", + "source_location": "L683", "weight": 1.0 }, { @@ -150953,7 +151716,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L657", + "source_location": "L684", "weight": 1.0 }, { @@ -150965,7 +151728,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L713", + "source_location": "L740", "weight": 1.0 }, { @@ -150977,7 +151740,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L315", + "source_location": "L342", "weight": 1.0 }, { @@ -151001,7 +151764,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L249", + "source_location": "L276", "weight": 1.0 }, { @@ -151013,7 +151776,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L569", + "source_location": "L596", "weight": 1.0 }, { @@ -151025,7 +151788,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L570", + "source_location": "L597", "weight": 1.0 }, { @@ -151037,7 +151800,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L579", + "source_location": "L606", "weight": 1.0 }, { @@ -151061,7 +151824,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L435", + "source_location": "L462", "weight": 1.0 }, { @@ -151073,7 +151836,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L436", + "source_location": "L463", "weight": 1.0 }, { @@ -151085,7 +151848,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L437", + "source_location": "L464", "weight": 1.0 }, { @@ -151109,7 +151872,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L411", + "source_location": "L438", "weight": 1.0 }, { @@ -151121,7 +151884,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L412", + "source_location": "L439", "weight": 1.0 }, { @@ -151133,7 +151896,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L701", + "source_location": "L728", "weight": 1.0 }, { @@ -151145,7 +151908,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L347", + "source_location": "L374", "weight": 1.0 }, { @@ -151157,7 +151920,19 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L366", + "source_location": "L393", + "weight": 1.0 + }, + { + "source": "tests_test_api_test_rename_group", + "target": "tests_test_api_wait_for_job", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_api.py", + "source_location": "L244", "weight": 1.0 }, { @@ -151169,7 +151944,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L770", + "source_location": "L797", "weight": 1.0 }, { @@ -151181,7 +151956,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_api.py", - "source_location": "L775", + "source_location": "L802", "weight": 1.0 }, { @@ -151565,7 +152340,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1433", + "source_location": "L1515", "weight": 1.0 }, { @@ -151577,7 +152352,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1464", + "source_location": "L1546", "weight": 1.0 }, { @@ -151589,7 +152364,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1447", + "source_location": "L1529", "weight": 1.0 }, { @@ -151604,6 +152379,30 @@ "source_location": "L398", "weight": 1.0 }, + { + "source": "tests_test_core_test_group_names_caption_ungrouped_legend", + "target": "tests_test_core_spread_library", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_core.py", + "source_location": "L1296", + "weight": 1.0 + }, + { + "source": "tests_test_core_test_group_names_reach_grouped_legend", + "target": "tests_test_core_spread_library", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_core.py", + "source_location": "L1280", + "weight": 1.0 + }, { "source": "tests_test_core_test_ica_figure_charge_differs_from_discharge", "target": "tests_test_core_ica_y_values", @@ -151625,7 +152424,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1283", + "source_location": "L1365", "weight": 1.0 }, { @@ -151637,7 +152436,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1328", + "source_location": "L1410", "weight": 1.0 }, { @@ -151649,7 +152448,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1334", + "source_location": "L1416", "weight": 1.0 }, { @@ -151661,7 +152460,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1338", + "source_location": "L1420", "weight": 1.0 }, { @@ -151709,7 +152508,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1312", + "source_location": "L1394", "weight": 1.0 }, { @@ -152036,6 +152835,30 @@ "source_location": "L236", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright_test_cells_modal_names_groups", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L289", + "weight": 1.0 + }, + { + "source": "tests_test_gui_playwright_test_cells_modal_names_groups", + "target": "tests_test_gui_playwright_load_bundled_cell", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L292", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright_test_data_panel_collapses_after_load", "target": "src_cellpy_simple_gui_core_library_get_library", @@ -152156,6 +152979,18 @@ "source_location": "L35", "weight": 1.0 }, + { + "source": "tests_test_journal_test_api_load_journal_applies_group_labels", + "target": "tests_test_journal_build_journal", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L90", + "weight": 1.0 + }, { "source": "tests_test_journal_test_load_journal_cells", "target": "tests_test_journal_build_journal", @@ -152165,7 +153000,31 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_journal.py", - "source_location": "L36", + "source_location": "L37", + "weight": 1.0 + }, + { + "source": "tests_test_journal_test_load_journal_reads_group_labels", + "target": "tests_test_journal_build_journal", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L57", + "weight": 1.0 + }, + { + "source": "tests_test_journal_test_load_journal_without_group_labels", + "target": "tests_test_journal_build_journal", + "relation": "calls", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L71", "weight": 1.0 }, { @@ -152753,7 +153612,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L347", + "source_location": "L386", "weight": 1.0 }, { @@ -152765,7 +153624,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L348", + "source_location": "L387", "weight": 1.0 }, { @@ -152777,7 +153636,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L341", + "source_location": "L380", "weight": 1.0 }, { @@ -152789,7 +153648,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L342", + "source_location": "L381", "weight": 1.0 }, { @@ -152801,7 +153660,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L314", + "source_location": "L353", "weight": 1.0 }, { @@ -152813,7 +153672,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L315", + "source_location": "L354", "weight": 1.0 }, { @@ -152825,7 +153684,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L316", + "source_location": "L355", "weight": 1.0 }, { @@ -152837,7 +153696,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L318", + "source_location": "L357", "weight": 1.0 }, { @@ -152849,7 +153708,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L427", + "source_location": "L466", "weight": 1.0 }, { @@ -152861,7 +153720,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L439", + "source_location": "L478", "weight": 1.0 }, { @@ -152873,7 +153732,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L388", + "source_location": "L427", "weight": 1.0 }, { @@ -152885,7 +153744,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L407", + "source_location": "L446", "weight": 1.0 }, { @@ -152897,7 +153756,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L120", + "source_location": "L159", "weight": 1.0 }, { @@ -152909,7 +153768,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L144", + "source_location": "L183", "weight": 1.0 }, { @@ -152921,7 +153780,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L166", + "source_location": "L205", "weight": 1.0 }, { @@ -152933,7 +153792,7 @@ "confidence_score": 1.0, "context": "call", "source_file": "tests/test_projects.py", - "source_location": "L183", + "source_location": "L222", "weight": 1.0 }, { @@ -153273,15 +154132,15 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", - "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells_progress", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_progress", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L591", + "source_location": "L608", "weight": 1.0 }, { @@ -155081,7 +155940,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L160", + "source_location": "L171", "weight": 1.0 }, { @@ -155093,7 +155952,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L154", + "source_location": "L165", "weight": 1.0 }, { @@ -155105,7 +155964,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L44", + "source_location": "L46", "weight": 1.0 }, { @@ -155117,7 +155976,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L36", + "source_location": "L38", "weight": 1.0 }, { @@ -155129,7 +155988,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L88", + "source_location": "L90", "weight": 1.0 }, { @@ -155141,7 +156000,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L116", + "source_location": "L118", "weight": 1.0 }, { @@ -155153,7 +156012,19 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L95", + "source_location": "L97", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "target": "src_cellpy_simple_gui_api_routers_cells_py_post", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "decorator", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L150", "weight": 1.0 }, { @@ -155165,7 +156036,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L148", + "source_location": "L159", "weight": 1.0 }, { @@ -155177,7 +156048,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L128", + "source_location": "L130", "weight": 1.0 }, { @@ -155465,7 +156336,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L192", + "source_location": "L195", "weight": 1.0 }, { @@ -155489,7 +156360,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L180", + "source_location": "L183", "weight": 1.0 }, { @@ -155669,7 +156540,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L174", + "source_location": "L182", "weight": 1.0 }, { @@ -155681,7 +156552,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L210", + "source_location": "L218", "weight": 1.0 }, { @@ -155693,7 +156564,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L205", + "source_location": "L213", "weight": 1.0 }, { @@ -155705,7 +156576,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L152", + "source_location": "L160", "weight": 1.0 }, { @@ -155717,7 +156588,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L249", + "source_location": "L257", "weight": 1.0 }, { @@ -155729,7 +156600,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L283", + "source_location": "L291", "weight": 1.0 }, { @@ -155741,7 +156612,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L111", + "source_location": "L119", "weight": 1.0 }, { @@ -155813,7 +156684,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_api.py", - "source_location": "L726", + "source_location": "L753", "weight": 1.0 }, { @@ -155873,7 +156744,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_api.py", - "source_location": "L744", + "source_location": "L771", "weight": 1.0 }, { @@ -155885,7 +156756,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_api.py", - "source_location": "L760", + "source_location": "L787", "weight": 1.0 }, { @@ -156077,7 +156948,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_core.py", - "source_location": "L1548", + "source_location": "L1630", "weight": 1.0 }, { @@ -156101,7 +156972,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_core.py", - "source_location": "L1389", + "source_location": "L1471", "weight": 1.0 }, { @@ -156149,7 +157020,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_core.py", - "source_location": "L1263", + "source_location": "L1345", "weight": 1.0 }, { @@ -156197,7 +157068,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_core.py", - "source_location": "L1375", + "source_location": "L1457", "weight": 1.0 }, { @@ -156284,6 +157155,18 @@ "source_location": "L229", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright_test_cells_modal_names_groups", + "target": "e2e", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "decorator", + "source_file": "tests/test_gui_playwright.py", + "source_location": "L285", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright_test_data_panel_collapses_after_load", "target": "e2e", @@ -156509,7 +157392,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L339", + "source_location": "L378", "weight": 1.0 }, { @@ -156521,7 +157404,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L248", + "source_location": "L287", "weight": 1.0 }, { @@ -156533,7 +157416,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L566", + "source_location": "L605", "weight": 1.0 }, { @@ -156545,7 +157428,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L109", + "source_location": "L148", "weight": 1.0 }, { @@ -156557,7 +157440,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L135", + "source_location": "L174", "weight": 1.0 }, { @@ -156569,7 +157452,7 @@ "confidence_score": 1.0, "context": "decorator", "source_file": "tests/test_projects.py", - "source_location": "L209", + "source_location": "L248", "weight": 1.0 }, { @@ -156737,7 +157620,7 @@ "confidence_score": 1.0, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L731", + "source_location": "L755", "weight": 1.0 }, { @@ -156764,6 +157647,18 @@ "source_location": "L84", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_py_any", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "generic_arg", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L581", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", "target": "src_cellpy_simple_gui_core_cellpy_adapter_py_any", @@ -156881,7 +157776,7 @@ "confidence_score": 1.0, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L275", + "source_location": "L334", "weight": 1.0 }, { @@ -156893,7 +157788,7 @@ "confidence_score": 1.0, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L289", + "source_location": "L350", "weight": 1.0 }, { @@ -156905,7 +157800,7 @@ "confidence_score": 1.0, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L279", + "source_location": "L341", "weight": 1.0 }, { @@ -156917,7 +157812,7 @@ "confidence_score": 1.0, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L212", + "source_location": "L220", "weight": 1.0 }, { @@ -157340,6 +158235,18 @@ "source_location": "L11", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_api_routers_cells", + "target": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "relation": "imports", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "import", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L12", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_api_routers_cells", "target": "src_cellpy_simple_gui_core_models_journalrowupdate", @@ -157397,7 +158304,7 @@ "confidence_score": 1.0, "context": "import", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L18", + "source_location": "L19", "weight": 1.0 }, { @@ -157409,7 +158316,7 @@ "confidence_score": 1.0, "context": "import", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L18", + "source_location": "L19", "weight": 1.0 }, { @@ -157445,7 +158352,7 @@ "confidence_score": 1.0, "context": "import", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L70", + "source_location": "L72", "weight": 1.0 }, { @@ -157457,7 +158364,7 @@ "confidence_score": 1.0, "context": "import", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L70", + "source_location": "L72", "weight": 1.0 }, { @@ -160181,7 +161088,7 @@ "confidence_score": 1.0, "context": "import", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L18", + "source_location": "L19", "weight": 1.0 }, { @@ -162365,7 +163272,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L760", + "source_location": "L784", "weight": 1.0 }, { @@ -162413,7 +163320,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L731", + "source_location": "L755", "weight": 1.0 }, { @@ -162425,7 +163332,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L724", + "source_location": "L748", "weight": 1.0 }, { @@ -162437,7 +163344,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L724", + "source_location": "L748", "weight": 1.0 }, { @@ -162476,6 +163383,30 @@ "source_location": "L340", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_py_path", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "parameter_type", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L581", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_py_progressfn", + "relation": "references", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "context": "parameter_type", + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L581", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", "target": "src_cellpy_simple_gui_core_cellpy_adapter_py_path", @@ -162533,7 +163464,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L741", + "source_location": "L765", "weight": 1.0 }, { @@ -162557,7 +163488,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L717", + "source_location": "L741", "weight": 1.0 }, { @@ -162569,7 +163500,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L717", + "source_location": "L741", "weight": 1.0 }, { @@ -162581,7 +163512,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L802", + "source_location": "L826", "weight": 1.0 }, { @@ -162593,7 +163524,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L817", + "source_location": "L841", "weight": 1.0 }, { @@ -162605,7 +163536,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L797", + "source_location": "L821", "weight": 1.0 }, { @@ -162617,7 +163548,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L812", + "source_location": "L836", "weight": 1.0 }, { @@ -162629,7 +163560,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L807", + "source_location": "L831", "weight": 1.0 }, { @@ -162689,7 +163620,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L30", + "source_location": "L35", "weight": 1.0 }, { @@ -162701,7 +163632,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L115", + "source_location": "L134", "weight": 1.0 }, { @@ -162713,7 +163644,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L223", + "source_location": "L242", "weight": 1.0 }, { @@ -162725,7 +163656,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L223", + "source_location": "L242", "weight": 1.0 }, { @@ -162737,7 +163668,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L229", + "source_location": "L248", "weight": 1.0 }, { @@ -162749,7 +163680,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L138", + "source_location": "L157", "weight": 1.0 }, { @@ -162761,7 +163692,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L138", + "source_location": "L157", "weight": 1.0 }, { @@ -162809,7 +163740,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L219", + "source_location": "L222", "weight": 1.0 }, { @@ -162821,7 +163752,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L264", + "source_location": "L267", "weight": 1.0 }, { @@ -162833,7 +163764,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L147", + "source_location": "L156", "weight": 1.0 }, { @@ -162845,7 +163776,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L261", + "source_location": "L274", "weight": 1.0 }, { @@ -162857,7 +163788,7 @@ "confidence_score": 1.0, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L158", + "source_location": "L167", "weight": 1.0 }, { @@ -163385,7 +164316,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L76", + "source_location": "L90", "weight": 1.0 }, { @@ -163397,7 +164328,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L271", + "source_location": "L330", "weight": 1.0 }, { @@ -163409,7 +164340,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L236", + "source_location": "L255", "weight": 1.0 }, { @@ -163421,7 +164352,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L183", + "source_location": "L202", "weight": 1.0 }, { @@ -163457,7 +164388,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L88", + "source_location": "L97", "weight": 1.0 }, { @@ -163469,7 +164400,7 @@ "confidence_score": 1.0, "context": "return_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L103", + "source_location": "L112", "weight": 1.0 }, { @@ -170010,6 +170941,94 @@ "source_location": "L8", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_original", + "target": "issueflows_01_current_issues_issue187_original_issue_187_name_of_groups", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue187_original.md", + "source_location": "L1", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan", + "target": "issueflows_01_current_issues_issue187_plan_plan_187_name_of_groups", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L1", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_plan_187_name_of_groups", + "target": "issueflows_01_current_issues_issue187_plan_approach", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L17", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_plan_187_name_of_groups", + "target": "issueflows_01_current_issues_issue187_plan_findings", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L3", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status", + "target": "issueflows_01_current_issues_issue187_status_status_187_name_of_groups", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L1", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_status_187_name_of_groups", + "target": "issueflows_01_current_issues_issue187_status_tests", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L30", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_status_187_name_of_groups", + "target": "issueflows_01_current_issues_issue187_status_remaining", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L43", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_status_187_name_of_groups", + "target": "issueflows_01_current_issues_issue187_status_what_was_done", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L5", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_cycle_status_2026_07_30", "target": "issueflows_03_solved_issues_cycle_status_2026_07_30_cycle_status", @@ -178427,7 +179446,7 @@ }, { "source": "issueflows_04_designs_and_guides_manage_cells_modal_manage_cells_modal", - "target": "issueflows_04_designs_and_guides_manage_cells_modal_ui_location", + "target": "issueflows_04_designs_and_guides_manage_cells_modal_group_names_issue_187", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -178447,6 +179466,17 @@ "source_location": "L5", "weight": 1.0 }, + { + "source": "issueflows_04_designs_and_guides_manage_cells_modal_manage_cells_modal", + "target": "issueflows_04_designs_and_guides_manage_cells_modal_ui_location", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L64", + "weight": 1.0 + }, { "source": "issueflows_04_designs_and_guides_mcp_server_design", "target": "issueflows_04_designs_and_guides_mcp_server_design_an_mcp_server_for_cellpy_design_and_what_a_prototype_found", @@ -180149,7 +181179,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L117", + "source_location": "L119", "weight": 1.0 }, { @@ -180160,7 +181190,18 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L129", + "source_location": "L131", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells", + "target": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L151", "weight": 1.0 }, { @@ -180171,7 +181212,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L149", + "source_location": "L160", "weight": 1.0 }, { @@ -180182,7 +181223,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L155", + "source_location": "L166", "weight": 1.0 }, { @@ -180193,7 +181234,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L161", + "source_location": "L172", "weight": 1.0 }, { @@ -180204,7 +181245,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L24", + "source_location": "L25", "weight": 1.0 }, { @@ -180215,7 +181256,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L37", + "source_location": "L39", "weight": 1.0 }, { @@ -180226,7 +181267,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L45", + "source_location": "L47", "weight": 1.0 }, { @@ -180237,7 +181278,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L52", + "source_location": "L54", "weight": 1.0 }, { @@ -180248,7 +181289,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L69", + "source_location": "L71", "weight": 1.0 }, { @@ -180259,7 +181300,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L89", + "source_location": "L91", "weight": 1.0 }, { @@ -180270,7 +181311,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L96", + "source_location": "L98", "weight": 1.0 }, { @@ -180688,7 +181729,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L181", + "source_location": "L184", "weight": 1.0 }, { @@ -180710,7 +181751,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L193", + "source_location": "L196", "weight": 1.0 }, { @@ -181175,6 +182216,17 @@ "source_location": "L569", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L581", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter", "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_example", @@ -181194,7 +182246,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L717", + "source_location": "L741", "weight": 1.0 }, { @@ -181205,7 +182257,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L724", + "source_location": "L748", "weight": 1.0 }, { @@ -181216,7 +182268,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L731", + "source_location": "L755", "weight": 1.0 }, { @@ -181227,7 +182279,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L741", + "source_location": "L765", "weight": 1.0 }, { @@ -181238,7 +182290,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L760", + "source_location": "L784", "weight": 1.0 }, { @@ -181249,7 +182301,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L797", + "source_location": "L821", "weight": 1.0 }, { @@ -181260,7 +182312,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L802", + "source_location": "L826", "weight": 1.0 }, { @@ -181271,7 +182323,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L807", + "source_location": "L831", "weight": 1.0 }, { @@ -181282,40 +182334,40 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L812", + "source_location": "L836", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter", - "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_cycle_mode", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_list_instruments", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L817", + "source_location": "L84", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter", - "target": "src_cellpy_simple_gui_core_cellpy_adapter_cellpy_version", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_cycle_mode", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L822", + "source_location": "L841", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter", - "target": "src_cellpy_simple_gui_core_cellpy_adapter_list_instruments", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_cellpy_version", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L84", + "source_location": "L846", "weight": 1.0 }, { @@ -181494,6 +182546,28 @@ "source_location": "L80", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_collect", + "target": "src_cellpy_simple_gui_core_collect_group_titles", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L100", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect", + "target": "src_cellpy_simple_gui_core_collect_note_downsampling", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1004", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_collect", "target": "src_cellpy_simple_gui_core_collect_variable_axis_map", @@ -181502,7 +182576,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1005", + "source_location": "L1029", "weight": 1.0 }, { @@ -181513,7 +182587,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1024", + "source_location": "L1048", "weight": 1.0 }, { @@ -181524,7 +182598,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1033", + "source_location": "L1057", "weight": 1.0 }, { @@ -181535,7 +182609,18 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1038", + "source_location": "L1062", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect", + "target": "src_cellpy_simple_gui_core_collect_apply_group_titles", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L112", "weight": 1.0 }, { @@ -181546,7 +182631,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1101", + "source_location": "L1125", "weight": 1.0 }, { @@ -181557,7 +182642,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1123", + "source_location": "L1147", "weight": 1.0 }, { @@ -181568,7 +182653,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1129", + "source_location": "L1153", "weight": 1.0 }, { @@ -181579,7 +182664,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1145", + "source_location": "L1169", "weight": 1.0 }, { @@ -181590,7 +182675,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1173", + "source_location": "L1197", "weight": 1.0 }, { @@ -181601,7 +182686,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1185", + "source_location": "L1209", "weight": 1.0 }, { @@ -181612,7 +182697,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1205", + "source_location": "L1229", "weight": 1.0 }, { @@ -181623,7 +182708,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1221", + "source_location": "L1245", "weight": 1.0 }, { @@ -181634,7 +182719,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1245", + "source_location": "L1269", "weight": 1.0 }, { @@ -181645,7 +182730,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1249", + "source_location": "L1273", "weight": 1.0 }, { @@ -181656,73 +182741,73 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1264", + "source_location": "L1288", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_registry_plot_types", + "target": "src_cellpy_simple_gui_core_collect_hex_to_rgba", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L133", + "source_location": "L1356", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_hex_to_rgba", + "target": "src_cellpy_simple_gui_core_collect_apply_colorway", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1332", + "source_location": "L1369", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_apply_colorway", + "target": "src_cellpy_simple_gui_core_collect_restyle", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1345", + "source_location": "L1395", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_restyle", + "target": "src_cellpy_simple_gui_core_collect_export_frame_bytes", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1371", + "source_location": "L1464", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_export_frame_bytes", + "target": "src_cellpy_simple_gui_core_collect_export_bytes", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1440", + "source_location": "L1481", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_export_bytes", + "target": "src_cellpy_simple_gui_core_collect_registry_plot_types", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1457", + "source_location": "L154", "weight": 1.0 }, { @@ -181733,7 +182818,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L182", + "source_location": "L203", "weight": 1.0 }, { @@ -181744,7 +182829,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L209", + "source_location": "L230", "weight": 1.0 }, { @@ -181755,7 +182840,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L218", + "source_location": "L239", "weight": 1.0 }, { @@ -181766,7 +182851,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L236", + "source_location": "L257", "weight": 1.0 }, { @@ -181777,7 +182862,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L258", + "source_location": "L279", "weight": 1.0 }, { @@ -181788,7 +182873,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L272", + "source_location": "L293", "weight": 1.0 }, { @@ -181799,7 +182884,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L282", + "source_location": "L303", "weight": 1.0 }, { @@ -181810,7 +182895,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L293", + "source_location": "L314", "weight": 1.0 }, { @@ -181821,7 +182906,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L316", + "source_location": "L337", "weight": 1.0 }, { @@ -181832,7 +182917,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L365", + "source_location": "L386", "weight": 1.0 }, { @@ -181843,7 +182928,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L375", + "source_location": "L396", "weight": 1.0 }, { @@ -181854,7 +182939,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L380", + "source_location": "L401", "weight": 1.0 }, { @@ -181865,7 +182950,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L406", + "source_location": "L427", "weight": 1.0 }, { @@ -181876,7 +182961,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L432", + "source_location": "L453", "weight": 1.0 }, { @@ -181887,7 +182972,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L437", + "source_location": "L458", "weight": 1.0 }, { @@ -181898,7 +182983,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L445", + "source_location": "L466", "weight": 1.0 }, { @@ -181909,7 +182994,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L463", + "source_location": "L484", "weight": 1.0 }, { @@ -181920,7 +183005,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L496", + "source_location": "L517", "weight": 1.0 }, { @@ -181931,7 +183016,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L514", + "source_location": "L535", "weight": 1.0 }, { @@ -181942,7 +183027,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L530", + "source_location": "L551", "weight": 1.0 }, { @@ -181953,7 +183038,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L549", + "source_location": "L570", "weight": 1.0 }, { @@ -181964,7 +183049,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L578", + "source_location": "L599", "weight": 1.0 }, { @@ -181975,29 +183060,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L613", + "source_location": "L634", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_is_grouped", + "target": "src_cellpy_simple_gui_core_collect_batch_keys", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L642", + "source_location": "L65", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_batch_keys", + "target": "src_cellpy_simple_gui_core_collect_is_grouped", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L65", + "source_location": "L663", "weight": 1.0 }, { @@ -182008,7 +183093,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L653", + "source_location": "L674", "weight": 1.0 }, { @@ -182019,7 +183104,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L675", + "source_location": "L696", "weight": 1.0 }, { @@ -182030,7 +183115,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L714", + "source_location": "L735", "weight": 1.0 }, { @@ -182041,7 +183126,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L744", + "source_location": "L765", "weight": 1.0 }, { @@ -182052,7 +183137,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L753", + "source_location": "L774", "weight": 1.0 }, { @@ -182063,7 +183148,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L773", + "source_location": "L794", "weight": 1.0 }, { @@ -182074,7 +183159,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L807", + "source_location": "L828", "weight": 1.0 }, { @@ -182085,40 +183170,40 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L815", + "source_location": "L836", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_facet_traces", + "target": "src_cellpy_simple_gui_core_collect_batch", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L833", + "source_location": "L85", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_axis_title", + "target": "src_cellpy_simple_gui_core_collect_facet_traces", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L842", + "source_location": "L854", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_batch", + "target": "src_cellpy_simple_gui_core_collect_axis_title", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L85", + "source_location": "L863", "weight": 1.0 }, { @@ -182129,7 +183214,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L851", + "source_location": "L872", "weight": 1.0 }, { @@ -182140,7 +183225,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L901", + "source_location": "L925", "weight": 1.0 }, { @@ -182151,7 +183236,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L915", + "source_location": "L939", "weight": 1.0 }, { @@ -182162,18 +183247,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L947", - "weight": 1.0 - }, - { - "source": "src_cellpy_simple_gui_core_collect", - "target": "src_cellpy_simple_gui_core_collect_note_downsampling", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L980", + "source_location": "L971", "weight": 1.0 }, { @@ -182470,18 +183544,18 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L103", + "source_location": "L118", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_library", - "target": "src_cellpy_simple_gui_core_library_get_library", + "target": "src_cellpy_simple_gui_core_library_default_group_label", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L299", + "source_location": "L30", "weight": 1.0 }, { @@ -182492,7 +183566,18 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L30", + "source_location": "L35", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L360", "weight": 1.0 }, { @@ -182503,7 +183588,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L44", + "source_location": "L49", "weight": 1.0 }, { @@ -182514,7 +183599,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L124", + "source_location": "L132", "weight": 1.0 }, { @@ -182525,7 +183610,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L168", + "source_location": "L176", "weight": 1.0 }, { @@ -182536,7 +183621,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L180", + "source_location": "L188", "weight": 1.0 }, { @@ -182547,7 +183632,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L235", + "source_location": "L243", "weight": 1.0 }, { @@ -182558,7 +183643,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L255", + "source_location": "L263", "weight": 1.0 }, { @@ -182569,7 +183654,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L271", + "source_location": "L279", "weight": 1.0 }, { @@ -182580,7 +183665,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L289", + "source_location": "L297", "weight": 1.0 }, { @@ -182591,7 +183676,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L303", + "source_location": "L311", "weight": 1.0 }, { @@ -182602,7 +183687,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L313", + "source_location": "L321", "weight": 1.0 }, { @@ -182613,7 +183698,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L319", + "source_location": "L327", "weight": 1.0 }, { @@ -182624,7 +183709,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L333", + "source_location": "L341", "weight": 1.0 }, { @@ -182635,7 +183720,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L337", + "source_location": "L345", "weight": 1.0 }, { @@ -182646,7 +183731,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L342", + "source_location": "L350", "weight": 1.0 }, { @@ -182657,7 +183742,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L349", + "source_location": "L357", "weight": 1.0 }, { @@ -182668,7 +183753,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L358", + "source_location": "L366", "weight": 1.0 }, { @@ -182679,7 +183764,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L372", + "source_location": "L380", "weight": 1.0 }, { @@ -182704,6 +183789,17 @@ "source_location": "L67", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_models", + "target": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L91", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_models", "target": "src_cellpy_simple_gui_core_models_summaryplotspec", @@ -182712,7 +183808,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L89", + "source_location": "L97", "weight": 1.0 }, { @@ -182844,7 +183940,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L109", + "source_location": "L111", "weight": 1.0 }, { @@ -182855,7 +183951,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L118", + "source_location": "L120", "weight": 1.0 }, { @@ -182866,7 +183962,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L136", + "source_location": "L138", "weight": 1.0 }, { @@ -182877,7 +183973,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L162", + "source_location": "L164", "weight": 1.0 }, { @@ -182888,7 +183984,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L219", + "source_location": "L222", "weight": 1.0 }, { @@ -182899,7 +183995,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L264", + "source_location": "L267", "weight": 1.0 }, { @@ -182921,7 +184017,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L295", + "source_location": "L298", "weight": 1.0 }, { @@ -182932,7 +184028,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L308", + "source_location": "L311", "weight": 1.0 }, { @@ -182943,7 +184039,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L324", + "source_location": "L327", "weight": 1.0 }, { @@ -182954,7 +184050,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L352", + "source_location": "L355", "weight": 1.0 }, { @@ -182965,12 +184061,12 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L97", + "source_location": "L99", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_resolve_project_path", + "target": "src_cellpy_simple_gui_core_projects_slugify", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -182979,6 +184075,28 @@ "source_location": "L103", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_projects", + "target": "src_cellpy_simple_gui_core_projects_now", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L108", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_projects", + "target": "src_cellpy_simple_gui_core_projects_resolve_project_path", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L112", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_projects", "target": "src_cellpy_simple_gui_core_projects_classify_import_path", @@ -182987,7 +184105,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L116", + "source_location": "L125", "weight": 1.0 }, { @@ -182998,7 +184116,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L147", + "source_location": "L156", "weight": 1.0 }, { @@ -183009,7 +184127,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L158", + "source_location": "L167", "weight": 1.0 }, { @@ -183020,7 +184138,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L261", + "source_location": "L274", "weight": 1.0 }, { @@ -183031,7 +184149,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L292", + "source_location": "L307", "weight": 1.0 }, { @@ -183042,7 +184160,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L312", + "source_location": "L327", "weight": 1.0 }, { @@ -183053,7 +184171,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L318", + "source_location": "L333", "weight": 1.0 }, { @@ -183069,7 +184187,7 @@ }, { "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_projectmanifest", + "target": "src_cellpy_simple_gui_core_projects_groupentry", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -183080,46 +184198,35 @@ }, { "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_projectsummary", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L75", - "weight": 1.0 - }, - { - "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_projects_root", + "target": "src_cellpy_simple_gui_core_projects_projectmanifest", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L88", + "source_location": "L71", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_slugify", + "target": "src_cellpy_simple_gui_core_projects_projectsummary", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L94", + "source_location": "L84", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_projects", - "target": "src_cellpy_simple_gui_core_projects_now", + "target": "src_cellpy_simple_gui_core_projects_projects_root", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L99", + "source_location": "L97", "weight": 1.0 }, { @@ -192683,7 +193790,7 @@ }, { "source": "tests_test_api", - "target": "tests_test_api_test_export_cells_requires_selection", + "target": "tests_test_api_test_rename_group", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -192694,24 +193801,35 @@ }, { "source": "tests_test_api", - "target": "tests_test_api_test_export_cells_cellpy", + "target": "tests_test_api_wait_for_job", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L247", + "source_location": "L25", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_wait_for_job", + "target": "tests_test_api_test_export_cells_requires_selection", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L25", + "source_location": "L268", + "weight": 1.0 + }, + { + "source": "tests_test_api", + "target": "tests_test_api_test_export_cells_cellpy", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_api.py", + "source_location": "L274", "weight": 1.0 }, { @@ -192722,7 +193840,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L258", + "source_location": "L285", "weight": 1.0 }, { @@ -192733,7 +193851,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L265", + "source_location": "L292", "weight": 1.0 }, { @@ -192744,7 +193862,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L280", + "source_location": "L307", "weight": 1.0 }, { @@ -192755,7 +193873,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L297", + "source_location": "L324", "weight": 1.0 }, { @@ -192766,7 +193884,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L308", + "source_location": "L335", "weight": 1.0 }, { @@ -192777,29 +193895,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L328", + "source_location": "L355", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_raw_and_cycle_info_are_dev_only", + "target": "tests_test_api_test_healthz", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L344", + "source_location": "L36", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_healthz", + "target": "tests_test_api_test_raw_and_cycle_info_are_dev_only", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L36", + "source_location": "L371", "weight": 1.0 }, { @@ -192810,29 +193928,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L363", + "source_location": "L390", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_diagnostics_are_dev_only", + "target": "tests_test_api_test_branding_static_assets", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L388", + "source_location": "L40", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_branding_static_assets", + "target": "tests_test_api_test_diagnostics_are_dev_only", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L40", + "source_location": "L415", "weight": 1.0 }, { @@ -192843,7 +193961,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L402", + "source_location": "L429", "weight": 1.0 }, { @@ -192854,7 +193972,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L429", + "source_location": "L456", "weight": 1.0 }, { @@ -192865,7 +193983,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L453", + "source_location": "L480", "weight": 1.0 }, { @@ -192876,29 +193994,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L474", + "source_location": "L501", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_template_html", + "target": "tests_test_api_test_index_uses_cellpy_logo", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L517", + "source_location": "L52", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_index_uses_cellpy_logo", + "target": "tests_test_api_template_html", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L52", + "source_location": "L544", "weight": 1.0 }, { @@ -192909,7 +194027,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L523", + "source_location": "L550", "weight": 1.0 }, { @@ -192920,7 +194038,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L539", + "source_location": "L566", "weight": 1.0 }, { @@ -192931,29 +194049,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L561", + "source_location": "L588", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_add_cells_modal_html", + "target": "tests_test_api_test_system_capabilities_no_file_picker", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L585", + "source_location": "L59", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_system_capabilities_no_file_picker", + "target": "tests_test_api_add_cells_modal_html", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L59", + "source_location": "L612", "weight": 1.0 }, { @@ -192964,7 +194082,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L592", + "source_location": "L619", "weight": 1.0 }, { @@ -192975,29 +194093,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L604", + "source_location": "L631", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_default_visible_hint_budget", + "target": "tests_test_api_test_system_pick_rejected_without_webview", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L646", + "source_location": "L66", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_system_pick_rejected_without_webview", + "target": "tests_test_api_test_default_visible_hint_budget", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L66", + "source_location": "L673", "weight": 1.0 }, { @@ -193008,7 +194126,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L670", + "source_location": "L697", "weight": 1.0 }, { @@ -193019,7 +194137,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L680", + "source_location": "L707", "weight": 1.0 }, { @@ -193030,40 +194148,40 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L699", + "source_location": "L726", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_desktop_import_failure_names_the_extra", + "target": "tests_test_api_test_cellpy_config_diagnostics_endpoint", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L711", + "source_location": "L73", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_served_client", + "target": "tests_test_api_test_desktop_import_failure_names_the_extra", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L727", + "source_location": "L738", "weight": 1.0 }, { "source": "tests_test_api", - "target": "tests_test_api_test_cellpy_config_diagnostics_endpoint", + "target": "tests_test_api_served_client", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L73", + "source_location": "L754", "weight": 1.0 }, { @@ -193074,7 +194192,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L745", + "source_location": "L772", "weight": 1.0 }, { @@ -193085,7 +194203,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L761", + "source_location": "L788", "weight": 1.0 }, { @@ -193096,7 +194214,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L778", + "source_location": "L805", "weight": 1.0 }, { @@ -193107,7 +194225,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L796", + "source_location": "L823", "weight": 1.0 }, { @@ -193118,7 +194236,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L821", + "source_location": "L848", "weight": 1.0 }, { @@ -193129,7 +194247,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L826", + "source_location": "L853", "weight": 1.0 }, { @@ -193140,7 +194258,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L839", + "source_location": "L866", "weight": 1.0 }, { @@ -193162,7 +194280,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L616", + "source_location": "L643", "weight": 1.0 }, { @@ -193173,7 +194291,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L622", + "source_location": "L649", "weight": 1.0 }, { @@ -193184,7 +194302,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L636", + "source_location": "L663", "weight": 1.0 }, { @@ -193869,6 +194987,50 @@ "source_location": "L1217", "weight": 1.0 }, + { + "source": "tests_test_core", + "target": "tests_test_core_test_library_group_names", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L1243", + "weight": 1.0 + }, + { + "source": "tests_test_core", + "target": "tests_test_core_test_group_names_reach_grouped_legend", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L1278", + "weight": 1.0 + }, + { + "source": "tests_test_core", + "target": "tests_test_core_test_summary_collection_and_figure", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L128", + "weight": 1.0 + }, + { + "source": "tests_test_core", + "target": "tests_test_core_test_group_names_caption_ungrouped_legend", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L1294", + "weight": 1.0 + }, { "source": "tests_test_core", "target": "tests_test_core_test_summary_panels_for_capacity_ce", @@ -193877,7 +195039,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1238", + "source_location": "L1320", "weight": 1.0 }, { @@ -193888,7 +195050,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1249", + "source_location": "L1331", "weight": 1.0 }, { @@ -193899,29 +195061,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1264", + "source_location": "L1346", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_collection_and_figure", + "target": "tests_test_core_test_summary_figure_share_y_with_group_avg_and_spread", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L128", + "source_location": "L1372", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_figure_share_y_with_group_avg_and_spread", + "target": "tests_test_core_test_summary_figure_via_plotting", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1290", + "source_location": "L138", "weight": 1.0 }, { @@ -193932,84 +195094,84 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1317", + "source_location": "L1399", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_export_all_formats", + "target": "tests_test_core_test_read_meta", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1351", + "source_location": "L14", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cycles_export_csv", + "target": "tests_test_core_test_summary_export_all_formats", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1360", + "source_location": "L1433", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_kaleido_available", + "target": "tests_test_core_test_cycles_export_csv", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1367", + "source_location": "L1442", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_figure_export_svg", + "target": "tests_test_core_kaleido_available", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1376", + "source_location": "L1449", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_figure_via_plotting", + "target": "tests_test_core_test_summary_figure_empty", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L138", + "source_location": "L145", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_figure_export_unknown_format_raises", + "target": "tests_test_core_test_summary_figure_export_svg", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1384", + "source_location": "L1458", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_read_meta", + "target": "tests_test_core_test_figure_export_unknown_format_raises", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L14", + "source_location": "L1466", "weight": 1.0 }, { @@ -194020,51 +195182,51 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1401", + "source_location": "L1483", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_rate_library", + "target": "tests_test_core_test_summary_figure_forwards_group_legend_muting", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1419", + "source_location": "L150", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cells_export_cellpy_and_xlsx", + "target": "tests_test_core_rate_library", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1432", + "source_location": "L1501", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cells_export_two_cells_zip", + "target": "tests_test_core_test_cells_export_cellpy_and_xlsx", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1444", + "source_location": "L1514", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_summary_figure_empty", + "target": "tests_test_core_test_cells_export_two_cells_zip", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L145", + "source_location": "L1526", "weight": 1.0 }, { @@ -194075,7 +195237,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1463", + "source_location": "L1545", "weight": 1.0 }, { @@ -194086,7 +195248,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1479", + "source_location": "L1561", "weight": 1.0 }, { @@ -194097,18 +195259,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1495", - "weight": 1.0 - }, - { - "source": "tests_test_core", - "target": "tests_test_core_test_summary_figure_forwards_group_legend_muting", - "relation": "contains", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": "tests/test_core.py", - "source_location": "L150", + "source_location": "L1577", "weight": 1.0 }, { @@ -194119,7 +195270,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1513", + "source_location": "L1595", "weight": 1.0 }, { @@ -194130,7 +195281,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1532", + "source_location": "L1614", "weight": 1.0 }, { @@ -194141,7 +195292,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1549", + "source_location": "L1631", "weight": 1.0 }, { @@ -194152,7 +195303,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1559", + "source_location": "L1641", "weight": 1.0 }, { @@ -194163,7 +195314,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1572", + "source_location": "L1654", "weight": 1.0 }, { @@ -194174,7 +195325,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1583", + "source_location": "L1665", "weight": 1.0 }, { @@ -194185,7 +195336,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1597", + "source_location": "L1679", "weight": 1.0 }, { @@ -194196,7 +195347,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1614", + "source_location": "L1696", "weight": 1.0 }, { @@ -194207,73 +195358,73 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1625", + "source_location": "L1707", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_registry_menu_holds_only_summary_families", + "target": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1641", + "source_location": "L171", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", + "target": "tests_test_core_test_registry_menu_holds_only_summary_families", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1648", + "source_location": "L1723", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_family_options_carry_cv_split", + "target": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1675", + "source_location": "L1730", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_curated_plot_types_unaffected", + "target": "tests_test_core_test_family_options_carry_cv_split", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1685", + "source_location": "L1757", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_dva_figure_directions", + "target": "tests_test_core_test_curated_plot_types_unaffected", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1697", + "source_location": "L1767", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", + "target": "tests_test_core_test_dva_figure_directions", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L171", + "source_location": "L1779", "weight": 1.0 }, { @@ -194284,7 +195435,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1712", + "source_location": "L1794", "weight": 1.0 }, { @@ -194295,7 +195446,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1729", + "source_location": "L1811", "weight": 1.0 }, { @@ -194306,7 +195457,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1742", + "source_location": "L1824", "weight": 1.0 }, { @@ -194317,7 +195468,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1751", + "source_location": "L1833", "weight": 1.0 }, { @@ -194328,7 +195479,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1772", + "source_location": "L1854", "weight": 1.0 }, { @@ -194339,7 +195490,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1786", + "source_location": "L1868", "weight": 1.0 }, { @@ -194350,7 +195501,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1811", + "source_location": "L1893", "weight": 1.0 }, { @@ -194361,7 +195512,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1834", + "source_location": "L1916", "weight": 1.0 }, { @@ -194372,62 +195523,62 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1845", + "source_location": "L1927", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cycle_info_needs_cycles", + "target": "tests_test_core_test_cycles_figure", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1856", + "source_location": "L193", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_thin_traces_leaves_small_figures_alone", + "target": "tests_test_core_test_cycle_info_needs_cycles", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1865", + "source_location": "L1938", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_meta_edit_uses_selective_refresh", + "target": "tests_test_core_test_thin_traces_leaves_small_figures_alone", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1875", + "source_location": "L1947", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_meta_edit_falls_back_without_refresh_after", + "target": "tests_test_core_test_meta_edit_uses_selective_refresh", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1900", + "source_location": "L1957", "weight": 1.0 }, { "source": "tests_test_core", - "target": "tests_test_core_test_cycles_figure", + "target": "tests_test_core_test_meta_edit_falls_back_without_refresh_after", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L193", + "source_location": "L1982", "weight": 1.0 }, { @@ -194977,7 +196128,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1406", + "source_location": "L1488", "weight": 1.0 }, { @@ -194988,7 +196139,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1790", + "source_location": "L1872", "weight": 1.0 }, { @@ -194999,7 +196150,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1794", + "source_location": "L1876", "weight": 1.0 }, { @@ -195123,6 +196274,17 @@ "source_location": "L230", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright", + "target": "tests_test_gui_playwright_test_cells_modal_names_groups", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_gui_playwright.py", + "source_location": "L286", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright", "target": "tests_test_gui_playwright_chromium_available", @@ -195486,6 +196648,39 @@ "source_location": "L126", "weight": 1.0 }, + { + "source": "tests_test_journal", + "target": "tests_test_journal_test_load_journal_missing_files_returns_empty", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_journal.py", + "source_location": "L116", + "weight": 1.0 + }, + { + "source": "tests_test_journal", + "target": "tests_test_journal_test_load_corrupt_journal_raises_clear_error", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_journal.py", + "source_location": "L138", + "weight": 1.0 + }, + { + "source": "tests_test_journal", + "target": "tests_test_journal_test_api_load_corrupt_journal_reports_error", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_journal.py", + "source_location": "L148", + "weight": 1.0 + }, { "source": "tests_test_journal", "target": "tests_test_journal_test_load_journal_cells", @@ -195494,40 +196689,40 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L32", + "source_location": "L33", "weight": 1.0 }, { "source": "tests_test_journal", - "target": "tests_test_journal_test_load_journal_missing_files_returns_empty", + "target": "tests_test_journal_test_load_journal_reads_group_labels", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L51", + "source_location": "L52", "weight": 1.0 }, { "source": "tests_test_journal", - "target": "tests_test_journal_test_load_corrupt_journal_raises_clear_error", + "target": "tests_test_journal_test_load_journal_without_group_labels", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L73", + "source_location": "L67", "weight": 1.0 }, { "source": "tests_test_journal", - "target": "tests_test_journal_test_api_load_corrupt_journal_reports_error", + "target": "tests_test_journal_test_api_load_journal_applies_group_labels", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L83", + "source_location": "L79", "weight": 1.0 }, { @@ -196478,40 +197673,40 @@ }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_resave_reuses_unchanged_cells", + "target": "tests_test_projects_test_failed_resave_keeps_previous_project", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L110", + "source_location": "L103", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_resave_rewrites_cells_whose_data_changed", + "target": "tests_test_projects_counting_save_cell", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L136", + "source_location": "L135", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_reuse_declines_when_file_changed_on_disk", + "target": "tests_test_projects_test_resave_reuses_unchanged_cells", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L152", + "source_location": "L149", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_reuse_declines_when_file_is_missing", + "target": "tests_test_projects_test_resave_rewrites_cells_whose_data_changed", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -196533,40 +197728,40 @@ }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_save_as_new_project_still_copies_every_cell", + "target": "tests_test_projects_test_reuse_declines_when_file_changed_on_disk", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L190", + "source_location": "L191", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_reused_project_reopens_intact", + "target": "tests_test_projects_test_reuse_declines_when_file_is_missing", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L210", + "source_location": "L214", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_opened_cells_start_clean_and_dirty_on_edit", + "target": "tests_test_projects_test_save_as_new_project_still_copies_every_cell", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L227", + "source_location": "L229", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_open_missing_raises", + "target": "tests_test_projects_test_reused_project_reopens_intact", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -196586,6 +197781,28 @@ "source_location": "L25", "weight": 1.0 }, + { + "source": "tests_test_projects", + "target": "tests_test_projects_test_opened_cells_start_clean_and_dirty_on_edit", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_projects.py", + "source_location": "L266", + "weight": 1.0 + }, + { + "source": "tests_test_projects", + "target": "tests_test_projects_test_open_missing_raises", + "relation": "contains", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_projects.py", + "source_location": "L288", + "weight": 1.0 + }, { "source": "tests_test_projects", "target": "tests_test_projects_test_classify_import_path", @@ -196594,7 +197811,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L254", + "source_location": "L293", "weight": 1.0 }, { @@ -196605,7 +197822,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L277", + "source_location": "L316", "weight": 1.0 }, { @@ -196616,7 +197833,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L303", + "source_location": "L342", "weight": 1.0 }, { @@ -196627,7 +197844,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L313", + "source_location": "L352", "weight": 1.0 }, { @@ -196638,7 +197855,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L340", + "source_location": "L379", "weight": 1.0 }, { @@ -196649,7 +197866,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L346", + "source_location": "L385", "weight": 1.0 }, { @@ -196660,7 +197877,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L373", + "source_location": "L412", "weight": 1.0 }, { @@ -196671,7 +197888,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L382", + "source_location": "L421", "weight": 1.0 }, { @@ -196682,7 +197899,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L401", + "source_location": "L440", "weight": 1.0 }, { @@ -196693,7 +197910,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L421", + "source_location": "L460", "weight": 1.0 }, { @@ -196704,7 +197921,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L436", + "source_location": "L475", "weight": 1.0 }, { @@ -196715,7 +197932,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L450", + "source_location": "L489", "weight": 1.0 }, { @@ -196726,7 +197943,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L476", + "source_location": "L515", "weight": 1.0 }, { @@ -196737,7 +197954,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L497", + "source_location": "L536", "weight": 1.0 }, { @@ -196748,7 +197965,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L527", + "source_location": "L566", "weight": 1.0 }, { @@ -196759,7 +197976,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L534", + "source_location": "L573", "weight": 1.0 }, { @@ -196770,7 +197987,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L543", + "source_location": "L582", "weight": 1.0 }, { @@ -196781,7 +197998,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L556", + "source_location": "L595", "weight": 1.0 }, { @@ -196792,12 +198009,12 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L567", + "source_location": "L606", "weight": 1.0 }, { "source": "tests_test_projects", - "target": "tests_test_projects_test_failed_resave_keeps_previous_project", + "target": "tests_test_projects_test_group_names_saved_and_restored", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", @@ -196808,13 +198025,13 @@ }, { "source": "tests_test_projects", - "target": "tests_test_projects_counting_save_cell", + "target": "tests_test_projects_test_manifest_without_groups_still_opens", "relation": "contains", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L96", + "source_location": "L84", "weight": 1.0 }, { @@ -197551,7 +198768,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L313", + "source_location": "L321", "weight": 1.0 }, { @@ -197562,7 +198779,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L168", + "source_location": "L176", "weight": 1.0 }, { @@ -197573,7 +198790,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L180", + "source_location": "L188", "weight": 1.0 }, { @@ -197584,7 +198801,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L289", + "source_location": "L297", "weight": 1.0 }, { @@ -197595,7 +198812,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L124", + "source_location": "L132", "weight": 1.0 }, { @@ -197606,7 +198823,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L255", + "source_location": "L263", "weight": 1.0 }, { @@ -197617,7 +198834,18 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L303", + "source_location": "L311", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "target": "src_cellpy_simple_gui_core_models_py_basemodel", + "relation": "inherits", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L91", "weight": 1.0 }, { @@ -197628,7 +198856,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L235", + "source_location": "L243", "weight": 1.0 }, { @@ -197639,7 +198867,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L372", + "source_location": "L380", "weight": 1.0 }, { @@ -197650,7 +198878,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L358", + "source_location": "L366", "weight": 1.0 }, { @@ -197661,7 +198889,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L319", + "source_location": "L327", "weight": 1.0 }, { @@ -197672,7 +198900,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L333", + "source_location": "L341", "weight": 1.0 }, { @@ -197683,7 +198911,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L337", + "source_location": "L345", "weight": 1.0 }, { @@ -197694,7 +198922,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L342", + "source_location": "L350", "weight": 1.0 }, { @@ -197705,7 +198933,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L271", + "source_location": "L279", "weight": 1.0 }, { @@ -197716,7 +198944,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L349", + "source_location": "L357", "weight": 1.0 }, { @@ -197727,7 +198955,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L89", + "source_location": "L97", "weight": 1.0 }, { @@ -197753,7 +198981,7 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_projects_projectmanifest", + "source": "src_cellpy_simple_gui_core_projects_groupentry", "target": "src_cellpy_simple_gui_core_projects_py_basemodel", "relation": "inherits", "_origin": "ast", @@ -197763,6 +198991,17 @@ "source_location": "L64", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_projects_projectmanifest", + "target": "src_cellpy_simple_gui_core_projects_py_basemodel", + "relation": "inherits", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L71", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_projects_projectsummary", "target": "src_cellpy_simple_gui_core_projects_py_basemodel", @@ -197771,7 +199010,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L75", + "source_location": "L84", "weight": 1.0 }, { @@ -198170,6 +199409,17 @@ "source_location": "L54", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_library_cellrecord", + "target": "src_cellpy_simple_gui_core_library_cellrecord_apply_physical_meta", + "relation": "method", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L108", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_library_cellrecord", "target": "src_cellpy_simple_gui_core_library_cellrecord_color", @@ -198178,29 +199428,29 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L73", + "source_location": "L83", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_library_cellrecord", - "target": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", + "target": "src_cellpy_simple_gui_core_library_cellrecord_group_name", "relation": "method", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L76", + "source_location": "L86", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_library_cellrecord", - "target": "src_cellpy_simple_gui_core_library_cellrecord_apply_physical_meta", + "target": "src_cellpy_simple_gui_core_library_cellrecord_to_meta", "relation": "method", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L93", + "source_location": "L90", "weight": 1.0 }, { @@ -198211,7 +199461,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L106", + "source_location": "L121", "weight": 1.0 }, { @@ -198222,7 +199472,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L115", + "source_location": "L134", "weight": 1.0 }, { @@ -198233,7 +199483,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L138", + "source_location": "L157", "weight": 1.0 }, { @@ -198244,7 +199494,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L183", + "source_location": "L202", "weight": 1.0 }, { @@ -198255,7 +199505,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L223", + "source_location": "L242", "weight": 1.0 }, { @@ -198266,7 +199516,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L229", + "source_location": "L248", "weight": 1.0 }, { @@ -198277,7 +199527,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L236", + "source_location": "L255", "weight": 1.0 }, { @@ -198288,7 +199538,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L255", + "source_location": "L274", "weight": 1.0 }, { @@ -198299,7 +199549,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L259", + "source_location": "L278", "weight": 1.0 }, { @@ -198310,7 +199560,51 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L265", + "source_location": "L285", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library", + "target": "src_cellpy_simple_gui_core_library_library_set_group_label", + "relation": "method", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L291", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "method", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L301", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library", + "target": "src_cellpy_simple_gui_core_library_library_group_labels", + "relation": "method", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L306", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_library", + "target": "src_cellpy_simple_gui_core_library_library_groups", + "relation": "method", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L312", "weight": 1.0 }, { @@ -198321,7 +199615,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L271", + "source_location": "L330", "weight": 1.0 }, { @@ -198332,7 +199626,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L275", + "source_location": "L334", "weight": 1.0 }, { @@ -198343,7 +199637,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L279", + "source_location": "L341", "weight": 1.0 }, { @@ -198354,7 +199648,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L283", + "source_location": "L344", "weight": 1.0 }, { @@ -198365,7 +199659,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L286", + "source_location": "L347", "weight": 1.0 }, { @@ -198376,7 +199670,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L289", + "source_location": "L350", "weight": 1.0 }, { @@ -198387,7 +199681,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L292", + "source_location": "L353", "weight": 1.0 }, { @@ -198398,7 +199692,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L176", + "source_location": "L184", "weight": 1.0 }, { @@ -198409,7 +199703,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L207", + "source_location": "L215", "weight": 1.0 }, { @@ -198420,7 +199714,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L212", + "source_location": "L220", "weight": 1.0 }, { @@ -198431,7 +199725,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L230", + "source_location": "L238", "weight": 1.0 }, { @@ -198442,7 +199736,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L154", + "source_location": "L162", "weight": 1.0 }, { @@ -198453,7 +199747,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L251", + "source_location": "L259", "weight": 1.0 }, { @@ -198464,7 +199758,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L285", + "source_location": "L293", "weight": 1.0 }, { @@ -198475,7 +199769,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L113", + "source_location": "L121", "weight": 1.0 }, { @@ -217861,14 +219155,25 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_api_routers_cells_rationale_97", + "source": "src_cellpy_simple_gui_api_routers_cells_rationale_152", + "target": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L152", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells_rationale_99", "target": "src_cellpy_simple_gui_api_routers_cells_preview_files", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L97", + "source_location": "L99", "weight": 1.0 }, { @@ -218476,6 +219781,17 @@ "source_location": "L573", "weight": 1.0 }, + { + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_585", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", + "source_location": "L585", + "weight": 1.0 + }, { "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_61", "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_example", @@ -218488,113 +219804,113 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_718", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_742", "target": "src_cellpy_simple_gui_core_cellpy_adapter_save_cell", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L718", + "source_location": "L742", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_725", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_749", "target": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_excel", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L725", + "source_location": "L749", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_732", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_756", "target": "src_cellpy_simple_gui_core_cellpy_adapter_export_cell_csv", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L732", + "source_location": "L756", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_742", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_766", "target": "src_cellpy_simple_gui_core_cellpy_adapter_remake_summary", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L742", + "source_location": "L766", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_769", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_793", "target": "src_cellpy_simple_gui_core_cellpy_adapter_apply_physical_meta", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L769", + "source_location": "L793", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_798", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_822", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_mass", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L798", + "source_location": "L822", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_803", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_827", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_area", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L803", + "source_location": "L827", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_808", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_832", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_nominal_capacity", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L808", + "source_location": "L832", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_813", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_837", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_nom_cap_specifics", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L813", + "source_location": "L837", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_818", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_rationale_842", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_cycle_mode", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L818", + "source_location": "L842", "weight": 1.0 }, { @@ -218741,564 +220057,575 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1006", + "source": "src_cellpy_simple_gui_core_collect_rationale_1005", + "target": "src_cellpy_simple_gui_core_collect_note_downsampling", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L1005", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect_rationale_101", + "target": "src_cellpy_simple_gui_core_collect_group_titles", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L101", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_collect_rationale_1030", "target": "src_cellpy_simple_gui_core_collect_variable_axis_map", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1006", + "source_location": "L1030", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1025", + "source": "src_cellpy_simple_gui_core_collect_rationale_1049", "target": "src_cellpy_simple_gui_core_collect_trace_variable", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1025", + "source_location": "L1049", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1034", + "source": "src_cellpy_simple_gui_core_collect_rationale_1058", "target": "src_cellpy_simple_gui_core_collect_layout_key_for_y_id", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1034", + "source_location": "L1058", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1041", + "source": "src_cellpy_simple_gui_core_collect_rationale_1065", "target": "src_cellpy_simple_gui_core_collect_apply_y_ranges", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1041", + "source_location": "L1065", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1130", + "source": "src_cellpy_simple_gui_core_collect_rationale_1154", "target": "src_cellpy_simple_gui_core_collect_preserve_full_name_on_hover", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1130", + "source_location": "L1154", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1146", + "source": "src_cellpy_simple_gui_core_collect_rationale_1170", "target": "src_cellpy_simple_gui_core_collect_shorten_legend", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1146", + "source_location": "L1170", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1174", + "source": "src_cellpy_simple_gui_core_collect_rationale_1198", "target": "src_cellpy_simple_gui_core_collect_has_right_facet_strips", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1174", + "source_location": "L1198", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1186", + "source": "src_cellpy_simple_gui_core_collect_rationale_1210", "target": "src_cellpy_simple_gui_core_collect_tidy_facet_annotations", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1186", + "source_location": "L1210", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1206", + "source": "src_cellpy_simple_gui_core_collect_rationale_1230", "target": "src_cellpy_simple_gui_core_collect_trace_cell_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1206", + "source_location": "L1230", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1222", + "source": "src_cellpy_simple_gui_core_collect_rationale_1246", "target": "src_cellpy_simple_gui_core_collect_facet_labels_by_axes", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1222", + "source_location": "L1246", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1250", + "source": "src_cellpy_simple_gui_core_collect_rationale_1274", "target": "src_cellpy_simple_gui_core_collect_overlay_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1250", + "source_location": "L1274", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1265", + "source": "src_cellpy_simple_gui_core_collect_rationale_1289", "target": "src_cellpy_simple_gui_core_collect_overlay_facets", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1265", + "source_location": "L1289", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1333", + "source": "src_cellpy_simple_gui_core_collect_rationale_1357", "target": "src_cellpy_simple_gui_core_collect_hex_to_rgba", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1333", + "source_location": "L1357", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_134", - "target": "src_cellpy_simple_gui_core_collect_registry_plot_types", + "source": "src_cellpy_simple_gui_core_collect_rationale_1370", + "target": "src_cellpy_simple_gui_core_collect_apply_colorway", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L134", + "source_location": "L1370", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1346", - "target": "src_cellpy_simple_gui_core_collect_apply_colorway", + "source": "src_cellpy_simple_gui_core_collect_rationale_1401", + "target": "src_cellpy_simple_gui_core_collect_restyle", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1346", + "source_location": "L1401", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1377", - "target": "src_cellpy_simple_gui_core_collect_restyle", + "source": "src_cellpy_simple_gui_core_collect_rationale_1465", + "target": "src_cellpy_simple_gui_core_collect_export_frame_bytes", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1377", + "source_location": "L1465", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1441", - "target": "src_cellpy_simple_gui_core_collect_export_frame_bytes", + "source": "src_cellpy_simple_gui_core_collect_rationale_1482", + "target": "src_cellpy_simple_gui_core_collect_export_bytes", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1441", + "source_location": "L1482", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_1458", - "target": "src_cellpy_simple_gui_core_collect_export_bytes", + "source": "src_cellpy_simple_gui_core_collect_rationale_155", + "target": "src_cellpy_simple_gui_core_collect_registry_plot_types", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L1458", + "source_location": "L155", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_183", + "source": "src_cellpy_simple_gui_core_collect_rationale_204", "target": "src_cellpy_simple_gui_core_collect_family_required_columns", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L183", + "source_location": "L204", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_210", + "source": "src_cellpy_simple_gui_core_collect_rationale_231", "target": "src_cellpy_simple_gui_core_collect_pre_collect_column", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L210", + "source_location": "L231", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_219", + "source": "src_cellpy_simple_gui_core_collect_rationale_240", "target": "src_cellpy_simple_gui_core_collect_family_summary_options", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L219", + "source_location": "L240", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_237", + "source": "src_cellpy_simple_gui_core_collect_rationale_258", "target": "src_cellpy_simple_gui_core_collect_summary_schema", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L237", + "source_location": "L258", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_261", + "source": "src_cellpy_simple_gui_core_collect_rationale_282", "target": "src_cellpy_simple_gui_core_collect_missing_summary_columns", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L261", + "source_location": "L282", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_273", + "source": "src_cellpy_simple_gui_core_collect_rationale_294", "target": "src_cellpy_simple_gui_core_collect_family_columns", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L273", + "source_location": "L294", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_283", + "source": "src_cellpy_simple_gui_core_collect_rationale_304", "target": "src_cellpy_simple_gui_core_collect_summary_options_for", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L283", + "source_location": "L304", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_296", + "source": "src_cellpy_simple_gui_core_collect_rationale_317", "target": "src_cellpy_simple_gui_core_collect_summary_required_columns", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L296", + "source_location": "L317", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_366", + "source": "src_cellpy_simple_gui_core_collect_rationale_387", "target": "src_cellpy_simple_gui_core_collect_panel_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L366", + "source_location": "L387", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_376", + "source": "src_cellpy_simple_gui_core_collect_rationale_397", "target": "src_cellpy_simple_gui_core_collect_pretty_unit_text", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L376", + "source_location": "L397", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_381", + "source": "src_cellpy_simple_gui_core_collect_rationale_402", "target": "src_cellpy_simple_gui_core_collect_capacity_mode_from_column", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L381", + "source_location": "L402", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_407", + "source": "src_cellpy_simple_gui_core_collect_rationale_428", "target": "src_cellpy_simple_gui_core_collect_summary_column_axis_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L407", + "source_location": "L428", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_433", + "source": "src_cellpy_simple_gui_core_collect_rationale_454", "target": "src_cellpy_simple_gui_core_collect_summary_y_label_mapper", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L433", + "source_location": "L454", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_438", + "source": "src_cellpy_simple_gui_core_collect_rationale_459", "target": "src_cellpy_simple_gui_core_collect_summary_panels_for", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L438", + "source_location": "L459", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_446", + "source": "src_cellpy_simple_gui_core_collect_rationale_467", "target": "src_cellpy_simple_gui_core_collect_summary_columns", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L446", + "source_location": "L467", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_471", + "source": "src_cellpy_simple_gui_core_collect_rationale_492", "target": "src_cellpy_simple_gui_core_collect_summary_collection", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L471", + "source_location": "L492", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_520", + "source": "src_cellpy_simple_gui_core_collect_rationale_541", "target": "src_cellpy_simple_gui_core_collect_ica_collection", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L520", + "source_location": "L541", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_536", + "source": "src_cellpy_simple_gui_core_collect_rationale_557", "target": "src_cellpy_simple_gui_core_collect_dva_collection", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L536", + "source_location": "L557", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_550", + "source": "src_cellpy_simple_gui_core_collect_rationale_571", "target": "src_cellpy_simple_gui_core_collect_select_ica_direction", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L550", + "source_location": "L571", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_579", + "source": "src_cellpy_simple_gui_core_collect_rationale_600", "target": "src_cellpy_simple_gui_core_collect_restrict_to_cycle_pairs", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L579", + "source_location": "L600", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_614", + "source": "src_cellpy_simple_gui_core_collect_rationale_635", "target": "src_cellpy_simple_gui_core_collect_present_cycle_pairs", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L614", + "source_location": "L635", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_643", - "target": "src_cellpy_simple_gui_core_collect_is_grouped", + "source": "src_cellpy_simple_gui_core_collect_rationale_66", + "target": "src_cellpy_simple_gui_core_collect_batch_keys", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L643", + "source_location": "L66", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_654", - "target": "src_cellpy_simple_gui_core_collect_inject_app_chrome", + "source": "src_cellpy_simple_gui_core_collect_rationale_664", + "target": "src_cellpy_simple_gui_core_collect_is_grouped", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L654", + "source_location": "L664", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_66", - "target": "src_cellpy_simple_gui_core_collect_batch_keys", + "source": "src_cellpy_simple_gui_core_collect_rationale_675", + "target": "src_cellpy_simple_gui_core_collect_inject_app_chrome", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L66", + "source_location": "L675", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_681", + "source": "src_cellpy_simple_gui_core_collect_rationale_702", "target": "src_cellpy_simple_gui_core_collect_trace_axis_extent", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L681", + "source_location": "L702", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_721", + "source": "src_cellpy_simple_gui_core_collect_rationale_742", "target": "src_cellpy_simple_gui_core_collect_resolve_axis_range", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L721", + "source_location": "L742", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_745", + "source": "src_cellpy_simple_gui_core_collect_rationale_766", "target": "src_cellpy_simple_gui_core_collect_y_id_from_layout_key", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L745", + "source_location": "L766", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_754", + "source": "src_cellpy_simple_gui_core_collect_rationale_775", "target": "src_cellpy_simple_gui_core_collect_apply_xy_ranges", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L754", + "source_location": "L775", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_774", + "source": "src_cellpy_simple_gui_core_collect_rationale_795", "target": "src_cellpy_simple_gui_core_collect_add_spread_hover", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L774", + "source_location": "L795", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_808", + "source": "src_cellpy_simple_gui_core_collect_rationale_829", "target": "src_cellpy_simple_gui_core_collect_spread_hovertemplate", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L808", + "source_location": "L829", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_816", + "source": "src_cellpy_simple_gui_core_collect_rationale_837", "target": "src_cellpy_simple_gui_core_collect_attach_spread", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L816", + "source_location": "L837", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_834", + "source": "src_cellpy_simple_gui_core_collect_rationale_855", "target": "src_cellpy_simple_gui_core_collect_facet_traces", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L834", - "weight": 1.0 - }, - { - "source": "src_cellpy_simple_gui_core_collect_rationale_843", - "target": "src_cellpy_simple_gui_core_collect_axis_title", - "relation": "rationale_for", - "_origin": "ast", - "confidence": "EXTRACTED", - "confidence_score": 1.0, - "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L843", + "source_location": "L855", "weight": 1.0 }, { @@ -219313,47 +220640,47 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_902", - "target": "src_cellpy_simple_gui_core_collect_stamp_warnings", + "source": "src_cellpy_simple_gui_core_collect_rationale_864", + "target": "src_cellpy_simple_gui_core_collect_axis_title", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L902", + "source_location": "L864", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_925", - "target": "src_cellpy_simple_gui_core_collect_raw_figure_json", + "source": "src_cellpy_simple_gui_core_collect_rationale_926", + "target": "src_cellpy_simple_gui_core_collect_stamp_warnings", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L925", + "source_location": "L926", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_954", - "target": "src_cellpy_simple_gui_core_collect_cycle_info_figure_json", + "source": "src_cellpy_simple_gui_core_collect_rationale_949", + "target": "src_cellpy_simple_gui_core_collect_raw_figure_json", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L954", + "source_location": "L949", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_collect_rationale_981", - "target": "src_cellpy_simple_gui_core_collect_note_downsampling", + "source": "src_cellpy_simple_gui_core_collect_rationale_978", + "target": "src_cellpy_simple_gui_core_collect_cycle_info_figure_json", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L981", + "source_location": "L978", "weight": 1.0 }, { @@ -219522,63 +220849,85 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_104", + "source": "src_cellpy_simple_gui_core_library_rationale_119", "target": "src_cellpy_simple_gui_core_library_library", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L104", + "source_location": "L119", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_148", + "source": "src_cellpy_simple_gui_core_library_rationale_167", "target": "src_cellpy_simple_gui_core_library_library_restore_cell", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L148", + "source_location": "L167", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_230", + "source": "src_cellpy_simple_gui_core_library_rationale_249", "target": "src_cellpy_simple_gui_core_library_library_mark_saved", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L230", + "source_location": "L249", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_237", + "source": "src_cellpy_simple_gui_core_library_rationale_256", "target": "src_cellpy_simple_gui_core_library_library_reusable_data_file", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L237", + "source_location": "L256", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_300", - "target": "src_cellpy_simple_gui_core_library_get_library", + "source": "src_cellpy_simple_gui_core_library_rationale_292", + "target": "src_cellpy_simple_gui_core_library_library_set_group_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L300", + "source_location": "L292", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_302", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L302", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_307", + "target": "src_cellpy_simple_gui_core_library_library_group_labels", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L307", "weight": 1.0 }, { "source": "src_cellpy_simple_gui_core_library_rationale_31", - "target": "src_cellpy_simple_gui_core_library_file_stat", + "target": "src_cellpy_simple_gui_core_library_default_group_label", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", @@ -219588,14 +220937,58 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_library_rationale_45", + "source": "src_cellpy_simple_gui_core_library_rationale_313", + "target": "src_cellpy_simple_gui_core_library_library_groups", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L313", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_36", + "target": "src_cellpy_simple_gui_core_library_file_stat", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L36", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_361", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L361", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_50", "target": "src_cellpy_simple_gui_core_library_cellrecord", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L45", + "source_location": "L50", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_library_rationale_87", + "target": "src_cellpy_simple_gui_core_library_cellrecord_group_name", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/library.py", + "source_location": "L87", "weight": 1.0 }, { @@ -219610,157 +221003,157 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_125", + "source": "src_cellpy_simple_gui_core_models_rationale_133", "target": "src_cellpy_simple_gui_core_models_cyclesplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L125", + "source_location": "L133", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_169", + "source": "src_cellpy_simple_gui_core_models_rationale_177", "target": "src_cellpy_simple_gui_core_models_comparepick", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L169", + "source_location": "L177", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_181", + "source": "src_cellpy_simple_gui_core_models_rationale_189", "target": "src_cellpy_simple_gui_core_models_compareplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L181", + "source_location": "L189", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_231", + "source": "src_cellpy_simple_gui_core_models_rationale_239", "target": "src_cellpy_simple_gui_core_models_compareplotspec_pairs", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L231", + "source_location": "L239", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_236", + "source": "src_cellpy_simple_gui_core_models_rationale_244", "target": "src_cellpy_simple_gui_core_models_icaplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L236", + "source_location": "L244", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_256", + "source": "src_cellpy_simple_gui_core_models_rationale_264", "target": "src_cellpy_simple_gui_core_models_dvaplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L256", + "source_location": "L264", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_272", + "source": "src_cellpy_simple_gui_core_models_rationale_280", "target": "src_cellpy_simple_gui_core_models_rawplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L272", + "source_location": "L280", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_290", + "source": "src_cellpy_simple_gui_core_models_rationale_298", "target": "src_cellpy_simple_gui_core_models_cycleinfoplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L290", + "source_location": "L298", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_304", + "source": "src_cellpy_simple_gui_core_models_rationale_312", "target": "src_cellpy_simple_gui_core_models_exportspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L304", + "source_location": "L312", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_314", + "source": "src_cellpy_simple_gui_core_models_rationale_322", "target": "src_cellpy_simple_gui_core_models_cellsexportspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L314", + "source_location": "L322", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_320", + "source": "src_cellpy_simple_gui_core_models_rationale_328", "target": "src_cellpy_simple_gui_core_models_journalrowupdate", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L320", + "source_location": "L328", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_343", + "source": "src_cellpy_simple_gui_core_models_rationale_351", "target": "src_cellpy_simple_gui_core_models_previewrequest", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L343", + "source_location": "L351", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_350", + "source": "src_cellpy_simple_gui_core_models_rationale_358", "target": "src_cellpy_simple_gui_core_models_remotefindrequest", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L350", + "source_location": "L358", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_359", + "source": "src_cellpy_simple_gui_core_models_rationale_367", "target": "src_cellpy_simple_gui_core_models_ingestrequest", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L359", + "source_location": "L367", "weight": 1.0 }, { @@ -219786,14 +221179,25 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_models_rationale_90", + "source": "src_cellpy_simple_gui_core_models_rationale_92", + "target": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/models.py", + "source_location": "L92", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_models_rationale_98", "target": "src_cellpy_simple_gui_core_models_summaryplotspec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/models.py", - "source_location": "L90", + "source_location": "L98", "weight": 1.0 }, { @@ -219929,102 +221333,102 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_100", + "source": "src_cellpy_simple_gui_core_plotting_rationale_102", "target": "src_cellpy_simple_gui_core_plotting_cycle_availability", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L100", + "source_location": "L102", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_112", + "source": "src_cellpy_simple_gui_core_plotting_rationale_114", "target": "src_cellpy_simple_gui_core_plotting_nothing_to_draw_json", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L112", + "source_location": "L114", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_124", + "source": "src_cellpy_simple_gui_core_plotting_rationale_126", "target": "src_cellpy_simple_gui_core_plotting_single_cell_reports", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L124", + "source_location": "L126", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_143", + "source": "src_cellpy_simple_gui_core_plotting_rationale_145", "target": "src_cellpy_simple_gui_core_plotting_guard_no_cycles", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L143", + "source_location": "L145", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_222", + "source": "src_cellpy_simple_gui_core_plotting_rationale_225", "target": "src_cellpy_simple_gui_core_plotting_compare_collection", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L222", + "source_location": "L225", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_265", + "source": "src_cellpy_simple_gui_core_plotting_rationale_268", "target": "src_cellpy_simple_gui_core_plotting_compare_figure", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L265", + "source_location": "L268", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_296", + "source": "src_cellpy_simple_gui_core_plotting_rationale_299", "target": "src_cellpy_simple_gui_core_plotting_raw_figure", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L296", + "source_location": "L299", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_309", + "source": "src_cellpy_simple_gui_core_plotting_rationale_312", "target": "src_cellpy_simple_gui_core_plotting_cycle_info_figure", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L309", + "source_location": "L312", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_plotting_rationale_325", + "source": "src_cellpy_simple_gui_core_plotting_rationale_328", "target": "src_cellpy_simple_gui_core_plotting_dva_figure", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L325", + "source_location": "L328", "weight": 1.0 }, { @@ -220039,36 +221443,47 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_projects_rationale_104", + "source": "src_cellpy_simple_gui_core_projects_rationale_113", "target": "src_cellpy_simple_gui_core_projects_resolve_project_path", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L104", + "source_location": "L113", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_projects_rationale_117", + "source": "src_cellpy_simple_gui_core_projects_rationale_126", "target": "src_cellpy_simple_gui_core_projects_classify_import_path", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L117", + "source_location": "L126", "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_projects_rationale_148", + "source": "src_cellpy_simple_gui_core_projects_rationale_157", "target": "src_cellpy_simple_gui_core_projects_cleanup_save_artifacts", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L148", + "source_location": "L157", + "weight": 1.0 + }, + { + "source": "src_cellpy_simple_gui_core_projects_rationale_65", + "target": "src_cellpy_simple_gui_core_projects_groupentry", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/cellpy_simple_gui/core/projects.py", + "source_location": "L65", "weight": 1.0 }, { @@ -220435,289 +221850,300 @@ "weight": 1.0 }, { - "source": "tests_test_api_rationale_259", + "source": "tests_test_api_rationale_242", + "target": "tests_test_api_test_rename_group", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_api.py", + "source_location": "L242", + "weight": 1.0 + }, + { + "source": "tests_test_api_rationale_286", "target": "tests_test_api_test_pin_config_requires_a_project", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L259", + "source_location": "L286", "weight": 1.0 }, { - "source": "tests_test_api_rationale_266", + "source": "tests_test_api_rationale_293", "target": "tests_test_api_test_plot_types_curated_by_default", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L266", + "source_location": "L293", "weight": 1.0 }, { - "source": "tests_test_api_rationale_298", + "source": "tests_test_api_rationale_325", "target": "tests_test_api_dva_spec", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L298", + "source_location": "L325", "weight": 1.0 }, { - "source": "tests_test_api_rationale_309", + "source": "tests_test_api_rationale_336", "target": "tests_test_api_test_dva_endpoints_need_no_dev_mode", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L309", + "source_location": "L336", "weight": 1.0 }, { - "source": "tests_test_api_rationale_329", + "source": "tests_test_api_rationale_356", "target": "tests_test_api_test_dva_missing_cell_is_404_not_403", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L329", + "source_location": "L356", "weight": 1.0 }, { - "source": "tests_test_api_rationale_403", + "source": "tests_test_api_rationale_430", "target": "tests_test_api_test_log_viewer_captures_stdlib_records", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L403", + "source_location": "L430", "weight": 1.0 }, { - "source": "tests_test_api_rationale_454", + "source": "tests_test_api_rationale_481", "target": "tests_test_api_test_app_js_parses", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L454", + "source_location": "L481", "weight": 1.0 }, { - "source": "tests_test_api_rationale_475", + "source": "tests_test_api_rationale_502", "target": "tests_test_api_test_index_alpine_state_is_defined", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L475", + "source_location": "L502", "weight": 1.0 }, { - "source": "tests_test_api_rationale_524", + "source": "tests_test_api_rationale_551", "target": "tests_test_api_component_names", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L524", + "source_location": "L551", "weight": 1.0 }, { - "source": "tests_test_api_rationale_540", + "source": "tests_test_api_rationale_567", "target": "tests_test_api_free_identifiers", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L540", + "source_location": "L567", "weight": 1.0 }, { - "source": "tests_test_api_rationale_562", + "source": "tests_test_api_rationale_589", "target": "tests_test_api_test_index_click_and_show_targets_exist", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L562", + "source_location": "L589", "weight": 1.0 }, { - "source": "tests_test_api_rationale_593", - "target": "tests_test_api_test_add_cells_modal_has_one_primary_action", + "source": "tests_test_api_rationale_60", + "target": "tests_test_api_test_system_capabilities_no_file_picker", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L593", + "source_location": "L60", "weight": 1.0 }, { - "source": "tests_test_api_rationale_60", - "target": "tests_test_api_test_system_capabilities_no_file_picker", + "source": "tests_test_api_rationale_620", + "target": "tests_test_api_test_add_cells_modal_has_one_primary_action", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L60", + "source_location": "L620", "weight": 1.0 }, { - "source": "tests_test_api_rationale_605", + "source": "tests_test_api_rationale_632", "target": "tests_test_api_default_visible_hints", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L605", + "source_location": "L632", "weight": 1.0 }, { - "source": "tests_test_api_rationale_647", + "source": "tests_test_api_rationale_674", "target": "tests_test_api_test_default_visible_hint_budget", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L647", + "source_location": "L674", "weight": 1.0 }, { - "source": "tests_test_api_rationale_671", + "source": "tests_test_api_rationale_698", "target": "tests_test_api_without_webview", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L671", + "source_location": "L698", "weight": 1.0 }, { - "source": "tests_test_api_rationale_681", + "source": "tests_test_api_rationale_708", "target": "tests_test_api_test_api_works_without_pywebview", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L681", + "source_location": "L708", "weight": 1.0 }, { - "source": "tests_test_api_rationale_700", + "source": "tests_test_api_rationale_727", "target": "tests_test_api_test_native_dialogs_refuse_without_pywebview", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L700", + "source_location": "L727", "weight": 1.0 }, { - "source": "tests_test_api_rationale_712", + "source": "tests_test_api_rationale_739", "target": "tests_test_api_test_desktop_import_failure_names_the_extra", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L712", + "source_location": "L739", "weight": 1.0 }, { - "source": "tests_test_api_rationale_728", - "target": "tests_test_api_served_client", + "source": "tests_test_api_rationale_74", + "target": "tests_test_api_test_cellpy_config_diagnostics_endpoint", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L728", + "source_location": "L74", "weight": 1.0 }, { - "source": "tests_test_api_rationale_74", - "target": "tests_test_api_test_cellpy_config_diagnostics_endpoint", + "source": "tests_test_api_rationale_755", + "target": "tests_test_api_served_client", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L74", + "source_location": "L755", "weight": 1.0 }, { - "source": "tests_test_api_rationale_746", + "source": "tests_test_api_rationale_773", "target": "tests_test_api_test_served_instance_refuses_paths_outside_its_data_dir", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L746", + "source_location": "L773", "weight": 1.0 }, { - "source": "tests_test_api_rationale_762", + "source": "tests_test_api_rationale_789", "target": "tests_test_api_test_served_instance_will_not_load_files_from_the_host", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L762", + "source_location": "L789", "weight": 1.0 }, { - "source": "tests_test_api_rationale_797", + "source": "tests_test_api_rationale_824", "target": "tests_test_api_test_files_preview_literal_missing_and_glob", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L797", + "source_location": "L824", "weight": 1.0 }, { - "source": "tests_test_api_rationale_827", + "source": "tests_test_api_rationale_854", "target": "tests_test_api_test_files_preview_honours_served_sandbox", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L827", + "source_location": "L854", "weight": 1.0 }, { - "source": "tests_test_api_rationale_840", + "source": "tests_test_api_rationale_867", "target": "tests_test_api_test_local_instance_keeps_its_freedom", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_api.py", - "source_location": "L840", + "source_location": "L867", "weight": 1.0 }, { @@ -221095,322 +222521,344 @@ "weight": 1.0 }, { - "source": "tests_test_core_rationale_1250", + "source": "tests_test_core_rationale_1279", + "target": "tests_test_core_test_group_names_reach_grouped_legend", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L1279", + "weight": 1.0 + }, + { + "source": "tests_test_core_rationale_1295", + "target": "tests_test_core_test_group_names_caption_ungrouped_legend", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_core.py", + "source_location": "L1295", + "weight": 1.0 + }, + { + "source": "tests_test_core_rationale_1332", "target": "tests_test_core_summary_facet_titles_top_to_bottom", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1250", + "source_location": "L1332", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1265", + "source": "tests_test_core_rationale_1347", "target": "tests_test_core_test_summary_capacity_ce_facet_order_stable", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1265", + "source_location": "L1347", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1291", + "source": "tests_test_core_rationale_1373", "target": "tests_test_core_test_summary_figure_share_y_with_group_avg_and_spread", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1291", + "source_location": "L1373", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1318", + "source": "tests_test_core_rationale_1400", "target": "tests_test_core_test_summary_figure_ce_outlier_does_not_crush_capacity", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1318", + "source_location": "L1400", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1480", - "target": "tests_test_core_test_config_diagnostics_shape", + "source": "tests_test_core_rationale_151", + "target": "tests_test_core_test_summary_figure_forwards_group_legend_muting", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1480", + "source_location": "L151", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1496", - "target": "tests_test_core_test_config_diagnostics_masks_credentialish_values", + "source": "tests_test_core_rationale_1562", + "target": "tests_test_core_test_config_diagnostics_shape", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1496", + "source_location": "L1562", "weight": 1.0 }, { - "source": "tests_test_core_rationale_151", - "target": "tests_test_core_test_summary_figure_forwards_group_legend_muting", + "source": "tests_test_core_rationale_1578", + "target": "tests_test_core_test_config_diagnostics_masks_credentialish_values", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L151", + "source_location": "L1578", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1514", + "source": "tests_test_core_rationale_1596", "target": "tests_test_core_test_config_diagnostics_warns_on_legacy_fallback", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1514", + "source_location": "L1596", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1533", + "source": "tests_test_core_rationale_1615", "target": "tests_test_core_test_config_diagnostics_survives_broken_provenance", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1533", + "source_location": "L1615", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1550", + "source": "tests_test_core_rationale_1632", "target": "tests_test_core_dev_mode", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1550", + "source_location": "L1632", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1584", + "source": "tests_test_core_rationale_1666", "target": "tests_test_core_test_regular_mode_clamps_file_request", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1584", + "source_location": "L1666", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1598", + "source": "tests_test_core_rationale_1680", "target": "tests_test_core_test_registry_plot_types_mark_availability", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1598", + "source_location": "L1680", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1626", + "source": "tests_test_core_rationale_1708", "target": "tests_test_core_test_unavailable_family_explains_itself", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1626", + "source_location": "L1708", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1642", - "target": "tests_test_core_test_registry_menu_holds_only_summary_families", + "source": "tests_test_core_rationale_172", + "target": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1642", + "source_location": "L172", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1649", - "target": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", + "source": "tests_test_core_rationale_1724", + "target": "tests_test_core_test_registry_menu_holds_only_summary_families", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1649", + "source_location": "L1724", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1676", - "target": "tests_test_core_test_family_options_carry_cv_split", + "source": "tests_test_core_rationale_1731", + "target": "tests_test_core_test_cv_split_and_fullcell_families_are_plottable", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1676", + "source_location": "L1731", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1686", - "target": "tests_test_core_test_curated_plot_types_unaffected", + "source": "tests_test_core_rationale_1758", + "target": "tests_test_core_test_family_options_carry_cv_split", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1686", + "source_location": "L1758", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1698", - "target": "tests_test_core_test_dva_figure_directions", + "source": "tests_test_core_rationale_1768", + "target": "tests_test_core_test_curated_plot_types_unaffected", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1698", + "source_location": "L1768", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1713", - "target": "tests_test_core_test_dva_both_distinguishes_half_cycles", + "source": "tests_test_core_rationale_1780", + "target": "tests_test_core_test_dva_figure_directions", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1713", + "source_location": "L1780", "weight": 1.0 }, { - "source": "tests_test_core_rationale_172", - "target": "tests_test_core_test_cycles_figure_forwards_group_legend_muting", + "source": "tests_test_core_rationale_1795", + "target": "tests_test_core_test_dva_both_distinguishes_half_cycles", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L172", + "source_location": "L1795", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1730", + "source": "tests_test_core_rationale_1812", "target": "tests_test_core_test_dva_collection_spans_cells", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1730", + "source_location": "L1812", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1752", + "source": "tests_test_core_rationale_1834", "target": "tests_test_core_test_dva_export_matches_chart", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1752", + "source_location": "L1834", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1773", + "source": "tests_test_core_rationale_1855", "target": "tests_test_core_test_registry_plot_types_without_cells_says_so", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1773", + "source_location": "L1855", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1787", + "source": "tests_test_core_rationale_1869", "target": "tests_test_core_test_summary_schema_unions_across_cells", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1787", + "source_location": "L1869", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1812", + "source": "tests_test_core_rationale_1894", "target": "tests_test_core_test_raw_figure_is_downsampled_for_transport", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1812", + "source_location": "L1894", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1846", + "source": "tests_test_core_rationale_1928", "target": "tests_test_core_test_cycle_info_figure", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1846", + "source_location": "L1928", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1866", + "source": "tests_test_core_rationale_1948", "target": "tests_test_core_test_thin_traces_leaves_small_figures_alone", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1866", + "source_location": "L1948", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1876", + "source": "tests_test_core_rationale_1958", "target": "tests_test_core_test_meta_edit_uses_selective_refresh", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1876", + "source_location": "L1958", "weight": 1.0 }, { - "source": "tests_test_core_rationale_1901", + "source": "tests_test_core_rationale_1983", "target": "tests_test_core_test_meta_edit_falls_back_without_refresh_after", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_core.py", - "source_location": "L1901", + "source_location": "L1983", "weight": 1.0 }, { @@ -221842,6 +223290,17 @@ "source_location": "L231", "weight": 1.0 }, + { + "source": "tests_test_gui_playwright_rationale_287", + "target": "tests_test_gui_playwright_test_cells_modal_names_groups", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_gui_playwright.py", + "source_location": "L287", + "weight": 1.0 + }, { "source": "tests_test_gui_playwright_rationale_42", "target": "tests_test_gui_playwright_live_server", @@ -222008,25 +223467,47 @@ "weight": 1.0 }, { - "source": "tests_test_journal_rationale_52", + "source": "tests_test_journal_rationale_117", "target": "tests_test_journal_test_load_journal_missing_files_returns_empty", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L52", + "source_location": "L117", "weight": 1.0 }, { - "source": "tests_test_journal_rationale_84", + "source": "tests_test_journal_rationale_149", "target": "tests_test_journal_test_api_load_corrupt_journal_reports_error", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_journal.py", - "source_location": "L84", + "source_location": "L149", + "weight": 1.0 + }, + { + "source": "tests_test_journal_rationale_53", + "target": "tests_test_journal_test_load_journal_reads_group_labels", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_journal.py", + "source_location": "L53", + "weight": 1.0 + }, + { + "source": "tests_test_journal_rationale_80", + "target": "tests_test_journal_test_api_load_journal_applies_group_labels", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_journal.py", + "source_location": "L80", "weight": 1.0 }, { @@ -222525,195 +224006,217 @@ "weight": 1.0 }, { - "source": "tests_test_projects_rationale_111", + "source": "tests_test_projects_rationale_104", + "target": "tests_test_projects_test_failed_resave_keeps_previous_project", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_projects.py", + "source_location": "L104", + "weight": 1.0 + }, + { + "source": "tests_test_projects_rationale_136", + "target": "tests_test_projects_counting_save_cell", + "relation": "rationale_for", + "_origin": "ast", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "tests/test_projects.py", + "source_location": "L136", + "weight": 1.0 + }, + { + "source": "tests_test_projects_rationale_150", "target": "tests_test_projects_test_resave_reuses_unchanged_cells", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L111", + "source_location": "L150", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_139", + "source": "tests_test_projects_rationale_178", "target": "tests_test_projects_test_resave_rewrites_cells_whose_data_changed", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L139", + "source_location": "L178", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_155", + "source": "tests_test_projects_rationale_194", "target": "tests_test_projects_test_reuse_declines_when_file_changed_on_disk", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L155", + "source_location": "L194", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_193", + "source": "tests_test_projects_rationale_232", "target": "tests_test_projects_test_save_as_new_project_still_copies_every_cell", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L193", + "source_location": "L232", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_211", + "source": "tests_test_projects_rationale_250", "target": "tests_test_projects_test_reused_project_reopens_intact", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L211", + "source_location": "L250", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_230", + "source": "tests_test_projects_rationale_269", "target": "tests_test_projects_test_opened_cells_start_clean_and_dirty_on_edit", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L230", + "source_location": "L269", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_278", + "source": "tests_test_projects_rationale_317", "target": "tests_test_projects_test_open_via_project_json_file_and_absolute_path", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L278", + "source_location": "L317", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_383", + "source": "tests_test_projects_rationale_422", "target": "tests_test_projects_test_project_config_activates_and_restores", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L383", + "source_location": "L422", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_402", + "source": "tests_test_projects_rationale_441", "target": "tests_test_projects_test_project_without_config_drops_previous", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L402", + "source_location": "L441", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_422", + "source": "tests_test_projects_rationale_461", "target": "tests_test_projects_test_broken_project_config_does_not_block_open", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L422", + "source_location": "L461", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_451", + "source": "tests_test_projects_rationale_490", "target": "tests_test_projects_test_pin_project_config_writes_safe_sections", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L451", + "source_location": "L490", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_477", + "source": "tests_test_projects_rationale_516", "target": "tests_test_projects_test_pin_project_config_round_trips", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L477", + "source_location": "L516", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_498", + "source": "tests_test_projects_rationale_537", "target": "tests_test_projects_test_discovery_reports_shadowed_legacy", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L498", + "source_location": "L537", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_535", + "source": "tests_test_projects_rationale_574", "target": "tests_test_projects_test_data_dir_follows_the_env", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L535", + "source_location": "L574", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_544", + "source": "tests_test_projects_rationale_583", "target": "tests_test_projects_test_data_dir_expands_user_and_relative", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L544", + "source_location": "L583", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_557", + "source": "tests_test_projects_rationale_596", "target": "tests_test_projects_test_reading_settings_creates_nothing", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L557", + "source_location": "L596", "weight": 1.0 }, { - "source": "tests_test_projects_rationale_568", + "source": "tests_test_projects_rationale_607", "target": "tests_test_projects_test_projects_land_under_the_configured_data_dir", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L568", + "source_location": "L607", "weight": 1.0 }, { "source": "tests_test_projects_rationale_65", - "target": "tests_test_projects_test_failed_resave_keeps_previous_project", + "target": "tests_test_projects_test_group_names_saved_and_restored", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", @@ -222723,14 +224226,14 @@ "weight": 1.0 }, { - "source": "tests_test_projects_rationale_97", - "target": "tests_test_projects_counting_save_cell", + "source": "tests_test_projects_rationale_85", + "target": "tests_test_projects_test_manifest_without_groups_still_opens", "relation": "rationale_for", "_origin": "ast", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "tests/test_projects.py", - "source_location": "L97", + "source_location": "L85", "weight": 1.0 }, { @@ -223755,7 +225258,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L91", + "source_location": "L93", "weight": 1.0 }, { @@ -223767,7 +225270,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L121", + "source_location": "L123", "weight": 1.0 }, { @@ -223803,7 +225306,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "src/cellpy_simple_gui/api/routers/projects.py", - "source_location": "L188", + "source_location": "L191", "weight": 1.0 }, { @@ -245751,7 +247254,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "tests/test_core.py", - "source_location": "L1409", + "source_location": "L1491", "weight": 1.0 }, { @@ -246087,7 +247590,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "tests/test_projects.py", - "source_location": "L105", + "source_location": "L144", "weight": 1.0 }, { @@ -246099,7 +247602,7 @@ "confidence_score": 0.85, "context": "argument", "source_file": "tests/test_projects.py", - "source_location": "L79", + "source_location": "L118", "weight": 1.0 }, { @@ -246139,7 +247642,7 @@ "weight": 1.0 }, { - "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "source": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", "target": "examples_mcp_server_load_cell", "relation": "calls", "_origin": "ast", @@ -246147,7 +247650,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "src/cellpy_simple_gui/core/cellpy_adapter.py", - "source_location": "L642", + "source_location": "L659", "weight": 1.0 }, { @@ -246159,7 +247662,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L964", + "source_location": "L988", "weight": 1.0 }, { @@ -246171,7 +247674,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L934", + "source_location": "L958", "weight": 1.0 }, { @@ -246183,7 +247686,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1555", + "source_location": "L1637", "weight": 1.0 }, { @@ -246243,7 +247746,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1565", + "source_location": "L1647", "weight": 1.0 }, { @@ -246255,7 +247758,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1579", + "source_location": "L1661", "weight": 1.0 }, { @@ -246267,7 +247770,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_core.py", - "source_location": "L1591", + "source_location": "L1673", "weight": 1.0 }, { @@ -246291,7 +247794,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_journal.py", - "source_location": "L96", + "source_location": "L161", "weight": 1.0 }, { @@ -246303,7 +247806,7 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_journal.py", - "source_location": "L97", + "source_location": "L162", "weight": 1.0 }, { @@ -246315,7 +247818,43 @@ "confidence_score": 0.85, "context": "call", "source_file": "tests/test_journal.py", - "source_location": "L98", + "source_location": "L163", + "weight": 1.0 + }, + { + "source": "tests_test_journal_test_api_load_journal_applies_group_labels", + "target": "src_cellpy_simple_gui_core_library_get_library", + "relation": "calls", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.85, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L94", + "weight": 1.0 + }, + { + "source": "tests_test_journal_test_api_load_journal_applies_group_labels", + "target": "src_cellpy_simple_gui_api_app_create_app", + "relation": "calls", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.85, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L95", + "weight": 1.0 + }, + { + "source": "tests_test_journal_test_api_load_journal_applies_group_labels", + "target": "src_cellpy_simple_gui_config_get_settings", + "relation": "calls", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.85, + "context": "call", + "source_file": "tests/test_journal.py", + "source_location": "L96", "weight": 1.0 }, { @@ -251103,7 +252642,7 @@ "confidence_score": 0.85, "context": "getattr", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L621", + "source_location": "L642", "weight": 1.0 }, { @@ -251115,7 +252654,7 @@ "confidence_score": 0.85, "context": "getattr", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L587", + "source_location": "L608", "weight": 1.0 }, { @@ -251127,7 +252666,7 @@ "confidence_score": 0.85, "context": "getattr", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L558", + "source_location": "L579", "weight": 1.0 }, { @@ -251214,6 +252753,18 @@ "source_location": "L52", "weight": 1.0 }, + { + "source": "issueflows_04_designs_and_guides_manage_cells_modal_group_names_issue_187", + "target": "src_cellpy_simple_gui_core_models_cellmeta", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "CellMeta", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L46", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue55_plan_prior_art", "target": "src_cellpy_simple_gui_core_library_cellrecord", @@ -251262,6 +252813,18 @@ "source_location": "L30", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_cellrecord_group_name", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "CellRecord.group_name()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L25", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue169_plan_files_to_touch", "target": "src_cellpy_simple_gui_core_models_comparepick", @@ -251706,6 +253269,30 @@ "source_location": "L41", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_library", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "Library", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L19", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_what_was_done", + "target": "src_cellpy_simple_gui_core_library_library", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "Library", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L7", + "weight": 1.0 + }, { "source": "issueflows_04_designs_and_guides_cellprocessor_v2_design_3_technology_choices_design_vs_mvp", "target": "src_cellpy_simple_gui_core_library_library", @@ -252546,6 +254133,18 @@ "source_location": "L25", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_collect_batch", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "_batch", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L27", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue169_plan_2_core_core_collect_py", "target": "src_cellpy_simple_gui_core_collect_batch", @@ -253206,6 +254805,18 @@ "source_location": "L32", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_api_routers_cells_state", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "_state()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L31", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue169_plan_prior_art", "target": "src_cellpy_simple_gui_core_collect_tidy_facet_annotations", @@ -253650,6 +255261,42 @@ "source_location": "L30", "weight": 1.0 }, + { + "source": "issueflows_04_designs_and_guides_manage_cells_modal_group_names_issue_187", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "cellpy_adapter.load_journal", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L56", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "cellpy_adapter.load_journal()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L35", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_what_was_done", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "cellpy_adapter.load_journal()", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L19", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue52_plan_phase_c_implement_delegate_now", "target": "src_cellpy_simple_gui_core_cellpy_adapter_read_file_meta", @@ -253902,6 +255549,42 @@ "source_location": "L11", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_findings", + "target": "src_cellpy_simple_gui_core_collect_batch", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "collect._batch", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L5", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_what_was_done", + "target": "src_cellpy_simple_gui_core_collect_batch", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "collect._batch", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L11", + "weight": 1.0 + }, + { + "source": "issueflows_04_designs_and_guides_manage_cells_modal_group_names_issue_187", + "target": "src_cellpy_simple_gui_core_collect_batch", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "collect._batch", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L45", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue169_plan_what_exists_today_and_the_gap", "target": "src_cellpy_simple_gui_core_collect_facet_traces", @@ -254214,6 +255897,18 @@ "source_location": "L13", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_status_what_was_done", + "target": "src_cellpy_simple_gui_core_collect_group_titles", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "collect.group_titles()", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L12", + "weight": 1.0 + }, { "source": "cellpy_painpoints_3_silent_all_or_nothing_group_averaging_when_any_group_is_a_singleton", "target": "src_cellpy_simple_gui_core_collect_is_grouped", @@ -255627,7 +257322,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L497", + "source_location": "L518", "weight": 0.8 }, { @@ -255639,7 +257334,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L531", + "source_location": "L552", "weight": 0.8 }, { @@ -255651,7 +257346,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L272", + "source_location": "L293", "weight": 0.8 }, { @@ -255663,7 +257358,19 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L218", + "source_location": "L239", + "weight": 0.8 + }, + { + "source": "src_cellpy_simple_gui_core_collect_group_titles", + "target": "src_cellpy_simple_gui_core_library_cellrecord", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "generic_arg", + "source_file": "src/cellpy_simple_gui/core/collect.py", + "source_location": "L100", "weight": 0.8 }, { @@ -255675,7 +257382,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L515", + "source_location": "L536", "weight": 0.8 }, { @@ -255687,7 +257394,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L259", + "source_location": "L280", "weight": 0.8 }, { @@ -255699,7 +257406,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L133", + "source_location": "L154", "weight": 0.8 }, { @@ -255711,7 +257418,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L464", + "source_location": "L485", "weight": 0.8 }, { @@ -255723,7 +257430,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L317", + "source_location": "L338", "weight": 0.8 }, { @@ -255735,7 +257442,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L282", + "source_location": "L303", "weight": 0.8 }, { @@ -255747,7 +257454,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L294", + "source_location": "L315", "weight": 0.8 }, { @@ -255759,7 +257466,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/collect.py", - "source_location": "L236", + "source_location": "L257", "weight": 0.8 }, { @@ -255843,7 +257550,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L221", + "source_location": "L224", "weight": 0.8 }, { @@ -255855,7 +257562,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L98", + "source_location": "L100", "weight": 0.8 }, { @@ -255867,7 +257574,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L162", + "source_location": "L164", "weight": 0.8 }, { @@ -255879,7 +257586,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L137", + "source_location": "L139", "weight": 0.8 }, { @@ -255891,7 +257598,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L110", + "source_location": "L112", "weight": 0.8 }, { @@ -255903,7 +257610,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L119", + "source_location": "L121", "weight": 0.8 }, { @@ -255915,7 +257622,7 @@ "confidence_score": 0.95, "context": "generic_arg", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L123", + "source_location": "L125", "weight": 0.8 }, { @@ -256542,6 +258249,174 @@ "source_location": "L33", "weight": 1.0 }, + { + "source": "cellpy_painpoints_1_no_public_collection_from_in_memory_cells", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_label", + "source_file": "CELLPY_PAINPOINTS.md", + "source_location": "L131", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_findings", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_label", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L7", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_tests", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_label", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L35", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_what_was_done", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_label", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L7", + "weight": 1.0 + }, + { + "source": "issueflows_04_designs_and_guides_manage_cells_modal_group_names_issue_187", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_label", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L56", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_library_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_label()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L22", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_findings", + "target": "src_cellpy_simple_gui_core_library_library_group_labels", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_labels", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L5", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_what_was_done", + "target": "src_cellpy_simple_gui_core_library_library_group_labels", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_labels", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L8", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_library_group_labels", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_labels()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L22", + "weight": 1.0 + }, + { + "source": "issueflows_04_designs_and_guides_manage_cells_modal_group_names_issue_187", + "target": "src_cellpy_simple_gui_core_library_library_group_labels", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "group_labels()", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L50", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_tests", + "target": "src_cellpy_simple_gui_core_library_library_groups", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "groups", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L34", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_what_was_done", + "target": "src_cellpy_simple_gui_core_library_library_groups", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "groups", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L8", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_library_groups", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "groups()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L22", + "weight": 1.0 + }, + { + "source": "issueflows_04_designs_and_guides_manage_cells_modal_group_names_issue_187", + "target": "src_cellpy_simple_gui_core_library_library_groups", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "groups()", + "source_file": ".issueflows/04-designs-and-guides/manage-cells-modal.md", + "source_location": "L49", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue136_plan_prior_art", "target": "src_cellpy_simple_gui_core_paths_host_paths_allowed", @@ -257286,6 +259161,30 @@ "source_location": "L7", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "load_journal_cells()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L37", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_status_what_was_done", + "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_journal_cells", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "load_journal_cells()", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L21", + "weight": 1.0 + }, { "source": "cellpy_painpoints_14_h5_auto_picks_cellpy_format_over_raw_instrument_loaders", "target": "src_cellpy_simple_gui_core_cellpy_adapter_load_raw", @@ -257679,7 +259578,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L89", + "source_location": "L91", "weight": 0.8 }, { @@ -257691,7 +259590,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L52", + "source_location": "L54", "weight": 0.8 }, { @@ -257703,7 +259602,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L117", + "source_location": "L119", "weight": 0.8 }, { @@ -257715,7 +259614,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L69", + "source_location": "L71", "weight": 0.8 }, { @@ -257727,7 +259626,19 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L96", + "source_location": "L98", + "weight": 0.8 + }, + { + "source": "src_cellpy_simple_gui_api_routers_cells_rename_group", + "target": "src_cellpy_simple_gui_core_models_grouplabelupdate", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "parameter_type", + "source_file": "src/cellpy_simple_gui/api/routers/cells.py", + "source_location": "L151", "weight": 0.8 }, { @@ -257739,7 +259650,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/api/routers/cells.py", - "source_location": "L129", + "source_location": "L131", "weight": 0.8 }, { @@ -258267,7 +260178,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L220", + "source_location": "L223", "weight": 0.8 }, { @@ -258279,7 +260190,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L264", + "source_location": "L267", "weight": 0.8 }, { @@ -258291,7 +260202,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L308", + "source_location": "L311", "weight": 0.8 }, { @@ -258303,7 +260214,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L308", + "source_location": "L311", "weight": 0.8 }, { @@ -258315,7 +260226,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L162", + "source_location": "L164", "weight": 0.8 }, { @@ -258327,7 +260238,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L324", + "source_location": "L327", "weight": 0.8 }, { @@ -258339,7 +260250,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L324", + "source_location": "L327", "weight": 0.8 }, { @@ -258351,7 +260262,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L352", + "source_location": "L355", "weight": 0.8 }, { @@ -258363,7 +260274,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L352", + "source_location": "L355", "weight": 0.8 }, { @@ -258375,7 +260286,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L295", + "source_location": "L298", "weight": 0.8 }, { @@ -258387,7 +260298,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/plotting.py", - "source_location": "L295", + "source_location": "L298", "weight": 0.8 }, { @@ -258411,7 +260322,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L261", + "source_location": "L274", "weight": 0.8 }, { @@ -258423,7 +260334,7 @@ "confidence_score": 0.95, "context": "parameter_type", "source_file": "src/cellpy_simple_gui/core/projects.py", - "source_location": "L158", + "source_location": "L167", "weight": 0.8 }, { @@ -259830,6 +261741,30 @@ "source_location": "L40", "weight": 1.0 }, + { + "source": "issueflows_01_current_issues_issue187_status_what_was_done", + "target": "src_cellpy_simple_gui_core_library_library_set_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "set_group_label", + "source_file": ".issueflows/01-current-issues/issue187_status.md", + "source_location": "L7", + "weight": 1.0 + }, + { + "source": "issueflows_01_current_issues_issue187_plan_approach", + "target": "src_cellpy_simple_gui_core_library_library_set_group_label", + "relation": "references", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "context": "set_group_label()", + "source_file": ".issueflows/01-current-issues/issue187_plan.md", + "source_location": "L21", + "weight": 1.0 + }, { "source": "issueflows_03_solved_issues_issue69_plan_approach", "target": "src_cellpy_simple_gui_core_cellpy_adapter_set_mass", @@ -260737,7 +262672,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L76", + "source_location": "L90", "weight": 0.8 }, { @@ -260748,7 +262683,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "src/cellpy_simple_gui/core/library.py", - "source_location": "L289", + "source_location": "L350", "weight": 0.8 }, { @@ -260847,7 +262782,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1427", + "source_location": "L1509", "weight": 0.8 }, { @@ -260869,7 +262804,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1670", + "source_location": "L1752", "weight": 0.8 }, { @@ -260880,7 +262815,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1851", + "source_location": "L1933", "weight": 0.8 }, { @@ -260891,7 +262826,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1860", + "source_location": "L1942", "weight": 0.8 }, { @@ -260924,7 +262859,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1362", + "source_location": "L1444", "weight": 0.8 }, { @@ -261034,7 +262969,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1719", + "source_location": "L1801", "weight": 0.8 }, { @@ -261045,7 +262980,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1756", + "source_location": "L1838", "weight": 0.8 }, { @@ -261056,7 +262991,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1705", + "source_location": "L1787", "weight": 0.8 }, { @@ -261067,7 +263002,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1746", + "source_location": "L1828", "weight": 0.8 }, { @@ -261078,7 +263013,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1621", + "source_location": "L1703", "weight": 0.8 }, { @@ -261125,6 +263060,39 @@ "source_location": "L670", "weight": 0.8 }, + { + "source": "tests_test_core_test_group_names_caption_ungrouped_legend", + "target": "src_cellpy_simple_gui_core_models_summaryplotspec", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "tests/test_core.py", + "source_location": "L1302", + "weight": 0.8 + }, + { + "source": "tests_test_core_test_group_names_caption_ungrouped_legend", + "target": "src_cellpy_simple_gui_core_models_cyclesplotspec", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "tests/test_core.py", + "source_location": "L1311", + "weight": 0.8 + }, + { + "source": "tests_test_core_test_group_names_reach_grouped_legend", + "target": "src_cellpy_simple_gui_core_models_summaryplotspec", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "tests/test_core.py", + "source_location": "L1285", + "weight": 0.8 + }, { "source": "tests_test_core_test_grouped_summary_renders", "target": "src_cellpy_simple_gui_core_library_library", @@ -261254,7 +263222,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1819", + "source_location": "L1901", "weight": 0.8 }, { @@ -261265,7 +263233,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1840", + "source_location": "L1922", "weight": 0.8 }, { @@ -261331,7 +263299,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1276", + "source_location": "L1358", "weight": 0.8 }, { @@ -261342,7 +263310,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1353", + "source_location": "L1435", "weight": 0.8 }, { @@ -261375,7 +263343,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1378", + "source_location": "L1460", "weight": 0.8 }, { @@ -261452,7 +263420,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1304", + "source_location": "L1386", "weight": 0.8 }, { @@ -261562,7 +263530,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1870", + "source_location": "L1952", "weight": 0.8 }, { @@ -261573,7 +263541,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_core.py", - "source_location": "L1632", + "source_location": "L1714", "weight": 0.8 }, { @@ -261595,7 +263563,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L531", + "source_location": "L570", "weight": 0.8 }, { @@ -261606,7 +263574,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L548", + "source_location": "L587", "weight": 0.8 }, { @@ -261617,7 +263585,29 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L540", + "source_location": "L579", + "weight": 0.8 + }, + { + "source": "tests_test_projects_test_group_names_saved_and_restored", + "target": "src_cellpy_simple_gui_core_library_library", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "tests/test_projects.py", + "source_location": "L77", + "weight": 0.8 + }, + { + "source": "tests_test_projects_test_manifest_without_groups_still_opens", + "target": "src_cellpy_simple_gui_core_library_library", + "relation": "uses", + "_origin": "ast", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "tests/test_projects.py", + "source_location": "L96", "weight": 0.8 }, { @@ -261628,7 +263618,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L251", + "source_location": "L290", "weight": 0.8 }, { @@ -261639,7 +263629,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L287", + "source_location": "L326", "weight": 0.8 }, { @@ -261650,7 +263640,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L234", + "source_location": "L273", "weight": 0.8 }, { @@ -261661,7 +263651,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L583", + "source_location": "L622", "weight": 0.8 }, { @@ -261672,7 +263662,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L562", + "source_location": "L601", "weight": 0.8 }, { @@ -261683,7 +263673,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L216", + "source_location": "L255", "weight": 0.8 }, { @@ -261694,7 +263684,7 @@ "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "tests/test_projects.py", - "source_location": "L204", + "source_location": "L243", "weight": 0.8 }, { @@ -261710,5 +263700,5 @@ } ], "hyperedges": [], - "built_at_commit": "0a646c6653d570ed406d97f0d83490318b54d15c" + "built_at_commit": "e63144abab01f040c9edf8f4dcb16c3222d41859" } \ No newline at end of file diff --git a/graphify-out/manifest.json b/graphify-out/manifest.json index 2d2a2f8..2975306 100644 --- a/graphify-out/manifest.json +++ b/graphify-out/manifest.json @@ -96,9 +96,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/api/routers/cells.py": { - "mtime": 1791094309.2673008, - "seen": 1791094338.062155, - "ast_hash": "5027fc25dc368704151d2c7575d580b0", + "mtime": 1791094396.1224914, + "seen": 1791094415.4932728, + "ast_hash": "5fafa262f14761ab4653320832ba5911", "semantic_hash": "" }, "src/cellpy_simple_gui/api/routers/export.py": { @@ -126,9 +126,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/api/routers/projects.py": { - "mtime": 1791094309.2673008, - "seen": 1791094338.0621598, - "ast_hash": "66130f8759561b0a57110bdff5f06503", + "mtime": 1791094396.1224914, + "seen": 1791094415.493277, + "ast_hash": "8b2bd339883bf7b6b8a6d38cdb1ed9a0", "semantic_hash": "" }, "src/cellpy_simple_gui/api/routers/remote.py": { @@ -162,9 +162,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/core/cellpy_adapter.py": { - "mtime": 1791094309.2673008, - "seen": 1791094338.0621662, - "ast_hash": "a8c3ea4b288db0b8a324a957a92a2ff8", + "mtime": 1791094396.1224914, + "seen": 1791094415.493282, + "ast_hash": "f796b43e873eeb50ab87ee9281a09e45", "semantic_hash": "" }, "src/cellpy_simple_gui/core/cellpy_config.py": { @@ -174,9 +174,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/core/collect.py": { - "mtime": 1791094309.2713008, - "seen": 1791094338.062168, - "ast_hash": "aa1420c6365c4185df824020c9b21ff7", + "mtime": 1791094396.1224914, + "seen": 1791094415.4932833, + "ast_hash": "d26a3529653cfa7c7fdc3eec75663bb7", "semantic_hash": "" }, "src/cellpy_simple_gui/core/export.py": { @@ -192,15 +192,15 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/core/library.py": { - "mtime": 1791094309.2713008, - "seen": 1791094338.0621736, - "ast_hash": "527cbf6d9421c28d8de8469c768bb183", + "mtime": 1791094396.1224914, + "seen": 1791094415.4932873, + "ast_hash": "126e1580fb3cf51f1eb5657b7612ad4c", "semantic_hash": "" }, "src/cellpy_simple_gui/core/models.py": { - "mtime": 1791094309.2713008, - "seen": 1791094338.0621746, - "ast_hash": "a078877b6262b317d7cf829a06ac326b", + "mtime": 1791094396.1224914, + "seen": 1791094415.4932885, + "ast_hash": "27342b210b04bc31025e19a3d0e7d6f7", "semantic_hash": "" }, "src/cellpy_simple_gui/core/paths.py": { @@ -210,15 +210,15 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/core/plotting.py": { - "mtime": 1791094309.2713008, - "seen": 1791094338.0621762, - "ast_hash": "056cb88a524fff4ed59395b1de327e25", + "mtime": 1791094396.1224914, + "seen": 1791094415.49329, + "ast_hash": "1ef99d82e28a213f4174671025f82cb4", "semantic_hash": "" }, "src/cellpy_simple_gui/core/projects.py": { - "mtime": 1791094309.2713008, - "seen": 1791094338.062177, - "ast_hash": "a827286e2276bb59b714df9bd6eb5b0d", + "mtime": 1791094396.1224914, + "seen": 1791094415.4932907, + "ast_hash": "1bfd2dccbe9d66b50da76769bf0331ec", "semantic_hash": "" }, "src/cellpy_simple_gui/core/uploads.py": { @@ -252,9 +252,9 @@ "semantic_hash": "" }, "src/cellpy_simple_gui/web/static/js/app.js": { - "mtime": 1791094309.2713008, - "seen": 1791094338.0621827, - "ast_hash": "48753f2f7e2e5599600e4cfb4c2eb499", + "mtime": 1791094396.1224914, + "seen": 1791094415.4932961, + "ast_hash": "6e0198af9fb8fa6aa272500d18ab3900", "semantic_hash": "" }, "src/cellpy_simple_gui/web/static/js/plotly.min.js": { @@ -276,9 +276,9 @@ "semantic_hash": "" }, "tests/test_api.py": { - "mtime": 1791094309.2713008, - "seen": 1791094338.0621862, - "ast_hash": "637bc8b66260b0854da12cad414e4252", + "mtime": 1791094396.1224914, + "seen": 1791094415.4932995, + "ast_hash": "469aabca175a93e4deff955c30e0e8c4", "semantic_hash": "" }, "tests/test_api_reference.py": { @@ -288,9 +288,9 @@ "semantic_hash": "" }, "tests/test_core.py": { - "mtime": 1791094309.2713008, - "seen": 1791094338.0621896, - "ast_hash": "f896b2e7e0c041ff978b3efaa5a6e9c6", + "mtime": 1791094396.1264913, + "seen": 1791094415.4933026, + "ast_hash": "aecb520843fad7e9883d5c3587f328c0", "semantic_hash": "" }, "tests/test_files.py": { @@ -300,9 +300,9 @@ "semantic_hash": "" }, "tests/test_gui_playwright.py": { - "mtime": 1791094309.2713008, - "seen": 1791094338.0621912, - "ast_hash": "569e797e4061aade92a02610d5deee85", + "mtime": 1791094396.1264913, + "seen": 1791094415.4933045, + "ast_hash": "3620a2d16ce9013acc6d8a0b5b42c106", "semantic_hash": "" }, "tests/test_guides.py": { @@ -324,9 +324,9 @@ "semantic_hash": "" }, "tests/test_journal.py": { - "mtime": 1791094309.2753007, - "seen": 1791094338.0621953, - "ast_hash": "e5160d16ce8fd70aa69ed1f487e114de", + "mtime": 1791094396.1264913, + "seen": 1791094415.4933078, + "ast_hash": "075d95d6e668f1379d9b70f6c2d75c3c", "semantic_hash": "" }, "tests/test_loader_availability.py": { @@ -354,9 +354,9 @@ "semantic_hash": "" }, "tests/test_projects.py": { - "mtime": 1791094309.2753007, - "seen": 1791094338.0621998, - "ast_hash": "c7d0f1ad4cdfc7e7863a84ecec098f2a", + "mtime": 1791094396.1264913, + "seen": 1791094415.4933114, + "ast_hash": "243b2433f3efac69d3abdef2241826bb", "semantic_hash": "" }, "tests/test_remote_find.py": { @@ -1375,7 +1375,7 @@ }, ".issueflows/04-designs-and-guides/group-legend-muting.md": { "mtime": 1791094309.219302, - "seen": 1791094338.0623596, + "seen": 1791094415.4934602, "ast_hash": "1e79847ccc03995fef653cbb68415d1b", "semantic_hash": "" }, @@ -1404,9 +1404,9 @@ "semantic_hash": "" }, ".issueflows/04-designs-and-guides/manage-cells-modal.md": { - "mtime": 1791094309.219302, - "seen": 1791094338.0623634, - "ast_hash": "d9ae75c590f4e782ee532bfb24c4f9a3", + "mtime": 1791094396.0864909, + "seen": 1791094415.4934638, + "ast_hash": "6089552fe38ce455b2cb0a656cbb5191", "semantic_hash": "" }, ".issueflows/04-designs-and-guides/mcp-server-design.md": { @@ -1435,7 +1435,7 @@ }, ".issueflows/04-designs-and-guides/plot-appearance.md": { "mtime": 1791094309.219302, - "seen": 1791094338.0623674, + "seen": 1791094415.4934678, "ast_hash": "9c3e8bff53d9dd7a04c8d8bab8727d2f", "semantic_hash": "" }, @@ -1447,7 +1447,7 @@ }, ".issueflows/04-designs-and-guides/project-refresh-and-import.md": { "mtime": 1791094309.219302, - "seen": 1791094338.062369, + "seen": 1791094415.4934692, "ast_hash": "3855b6c1708d926af391ad71423086ef", "semantic_hash": "" }, @@ -1500,9 +1500,9 @@ "semantic_hash": "" }, "README.md": { - "mtime": 1791094309.219302, - "seen": 1791094338.0623765, - "ast_hash": "fb543115c36360dde146ad28e19bcb32", + "mtime": 1791094396.0864909, + "seen": 1791094415.4934757, + "ast_hash": "d0b2cbb677f065e8ad8121c3ddfae10b", "semantic_hash": "" }, "docker-compose.yml": { @@ -1513,7 +1513,7 @@ }, "docs/api-reference.md": { "mtime": 1791067477.2788534, - "seen": 1791094338.0623777, + "seen": 1791067603.3826575, "ast_hash": "16518720b423e9aabd7aa651b2a93ec9", "semantic_hash": "" }, @@ -1602,14 +1602,14 @@ "semantic_hash": "" }, "llms-full.txt": { - "mtime": 1791094309.2673008, - "seen": 1791094338.0623891, - "ast_hash": "bbbd18f020f16bb299a5162321fc056b", + "mtime": 1791094396.1224914, + "seen": 1791094415.493488, + "ast_hash": "c2ca45eded88691aeac927738cf3bbd6", "semantic_hash": "" }, "llms.txt": { "mtime": 1791070359.901881, - "seen": 1791094338.06239, + "seen": 1791094415.4934888, "ast_hash": "52a82eefd8a8c310c58974d746398432", "semantic_hash": "" }, @@ -1633,14 +1633,14 @@ }, "skills/cellpy-app/reference/api-reference.md": { "mtime": 1791067525.615324, - "seen": 1791094338.0623937, + "seen": 1791067603.3826714, "ast_hash": "16518720b423e9aabd7aa651b2a93ec9", "semantic_hash": "" }, "src/cellpy_simple_gui/web/templates/index.html": { - "mtime": 1791094309.2713008, - "seen": 1791094338.0623944, - "ast_hash": "a66e02dd9d8f9b9da94cba63dba30c37", + "mtime": 1791094396.1224914, + "seen": 1791094415.4934921, + "ast_hash": "c0e03f29bf1e4778e6b3417f9482835a", "semantic_hash": "" }, "assets/cellpy-icon-bw.png": { @@ -1919,22 +1919,40 @@ "ast_hash": "09a2311e0ce760529092e6197de9bb53", "semantic_hash": "" }, + ".issueflows/01-current-issues/issue187_original.md": { + "mtime": 1791094396.0864909, + "seen": 1791094415.4933445, + "ast_hash": "b214727ef412e929b81260fad5f693cd", + "semantic_hash": "" + }, + ".issueflows/01-current-issues/issue187_plan.md": { + "mtime": 1791094396.0864909, + "seen": 1791094415.4933457, + "ast_hash": "aec42c42ccbef6da62773e07290f0666", + "semantic_hash": "" + }, ".issueflows/03-solved-issues/issue184_original.md": { "mtime": 1791065746.0076878, - "seen": 1791094338.0622733, + "seen": 1791067603.3825667, "ast_hash": "b483ff80c288e8696ed39f372e43454f", "semantic_hash": "" }, ".issueflows/03-solved-issues/issue184_plan.md": { "mtime": 1791065763.8073456, - "seen": 1791094338.0622745, + "seen": 1791067603.3825674, "ast_hash": "00553469235a2b17de1193b31e754d47", "semantic_hash": "" }, ".issueflows/03-solved-issues/issue184_status.md": { "mtime": 1791066454.5959675, - "seen": 1791094338.0622756, + "seen": 1791067603.382568, "ast_hash": "c9c175bb780e1fc771c14bd59d3d98fc", "semantic_hash": "" + }, + ".issueflows/01-current-issues/issue187_status.md": { + "mtime": 1791094396.0864909, + "seen": 1791094415.493347, + "ast_hash": "3c8c109b37bd0295a817756f2ac0c106", + "semantic_hash": "" } } \ No newline at end of file diff --git a/llms-full.txt b/llms-full.txt index cb62ae3..2460c79 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -129,8 +129,8 @@ FILE: README.md - **Cycle summary** — capacity, CE, cumulated CE, end voltages, internal resistance, C-rate, capacity loss. Gravimetric, areal, or absolute. Group mean ± std. Shared or independent y-scales. - **Cell explorer** — voltage–capacity, dQ/dV, dV/dQ. Compare cells, overlaid or side by side. - **Cycles collector** — per cycle, per cell, or film plot. -- **Cell list** — rename, group, select, filter, sort, remove. -- **Projects** — save and reopen the loaded cells, grouping, labels, and selection. Unsaved edits show as `name*`. +- **Cell list** — rename, group, name the groups, select, filter, sort, remove. +- **Projects** — save and reopen the loaded cells, grouping, group names, labels, and selection. Unsaved edits show as `name*`. - **Export** — CSV, Excel, Parquet, JSON; figures as PNG, SVG, PDF. - **Light and dark themes.** - **Background loading** with progress. @@ -279,7 +279,7 @@ A project is a portable folder — move it, zip it, share it: ``` / -├── project.json # manifest: name, timestamps, versions, per-cell grouping/labels/selection +├── project.json # manifest: name, timestamps, versions, per-cell grouping/labels/selection, group names ├── cellpy.toml # optional: cellpy settings pinned to this project └── data/ ├── c1.cellpy # every loaded cell saved as a self-contained cellpy file diff --git a/src/cellpy_simple_gui/api/routers/cells.py b/src/cellpy_simple_gui/api/routers/cells.py index ab21030..537ef2c 100644 --- a/src/cellpy_simple_gui/api/routers/cells.py +++ b/src/cellpy_simple_gui/api/routers/cells.py @@ -10,6 +10,7 @@ from ...core import cellpy_adapter, cellpy_config from ...core.library import get_library from ...core.models import ( + GroupLabelUpdate, JournalRowUpdate, LoadExampleRequest, LoadFilesRequest, @@ -28,6 +29,7 @@ def _state() -> dict: "n_cells": len(lib), "n_selected": len(lib.selected()), "n_groups": lib.n_groups(), + "groups": lib.groups(), "empty": lib.is_empty(), "project": lib.project_name, } @@ -145,6 +147,15 @@ def update_cell(cell_id: str, update: JournalRowUpdate) -> dict: return {"cell": rec.to_meta().model_dump(), "state": _state()} +@router.post("/groups/{group}") +def rename_group(group: int, update: GroupLabelUpdate) -> dict: + """Name a group (#187). Groups are implicit — any positive number works.""" + if group < 1: + raise HTTPException(400, "Group numbers start at 1") + get_library().set_group_label(group, update.label) + return _state() + + @router.post("/cells/select") def select_all(value: bool = True) -> dict: get_library().set_selection(value) diff --git a/src/cellpy_simple_gui/api/routers/projects.py b/src/cellpy_simple_gui/api/routers/projects.py index 02d155c..f84fe3c 100644 --- a/src/cellpy_simple_gui/api/routers/projects.py +++ b/src/cellpy_simple_gui/api/routers/projects.py @@ -134,7 +134,7 @@ def _load_journal_job(progress: Progress, path: str) -> dict: try: # Long cellpy call — cancel cannot interrupt mid-cell; UI has Dismiss. # Adapter reports from_journal / per-cell batch.load progress + logs. - triples = cellpy_adapter.load_journal_cells( + triples, group_labels = cellpy_adapter.load_journal( path, progress=lambda f, m: progress.update(f, m), ) @@ -168,6 +168,9 @@ def _load_journal_job(progress: Progress, path: str) -> dict: except Exception as exc: # noqa: BLE001 log.error("Journal job: failed “%s”: %s", label, exc) errors.append(f"{label}: {exc}") + # The journal's group_label column names the groups it just populated (#187). + for group, label in group_labels.items(): + lib.set_group_label(group, label) log.info( "Journal job: done “%s” — %d added, %d error(s)", name, diff --git a/src/cellpy_simple_gui/core/cellpy_adapter.py b/src/cellpy_simple_gui/core/cellpy_adapter.py index bd6a789..c5e9f1a 100644 --- a/src/cellpy_simple_gui/core/cellpy_adapter.py +++ b/src/cellpy_simple_gui/core/cellpy_adapter.py @@ -572,6 +572,23 @@ def load_journal_cells( ) -> list[tuple[str, Any, int]]: """Load a cellpy batch journal (.json) and return ``(label, cell, group)``. + Thin wrapper over :func:`load_journal` for callers that do not need the + group names. + """ + return load_journal(path, progress)[0] + + +def load_journal( + path: str | Path, + progress: ProgressFn = None, +) -> tuple[list[tuple[str, Any, int]], dict[int, str]]: + """Load a cellpy batch journal (.json). + + Returns ``(cells, group_labels)``: one ``(label, cell, group)`` triple per + linkable cell, plus the journal's ``group_label`` column as ``{group: + name}`` for the groups that carry a real name (cellpy's own ``group `` + placeholders are dropped) (#187). + Uses cellpy 2.1's ``batch.from_journal`` + ``batch.load()``. Loads **cellpy files only** (not raw instrument paths) so old journals with dead lab-share ``raw_file_names`` do not hang forever. Raises if the @@ -669,12 +686,18 @@ def _progress(fraction: float, message: str) -> None: log.info("Journal: cell load finished for “%s”", p.name) groups: dict[str, int] = {} + group_labels: dict[int, str] = {} try: pages = batch.journal.pages cols = pages.columns if FILENAME in cols and "group" in cols: for row in pages.iter_rows(named=True): - groups[row[FILENAME]] = int(row.get("group") or 1) + group = int(row.get("group") or 1) + groups[row[FILENAME]] = group + name = row.get("group_label") if "group_label" in cols else None + name = str(name).strip() if name is not None else "" + if name and name != f"group {group}": + group_labels[group] = name except Exception: # noqa: BLE001 - group metadata is best-effort pass @@ -711,7 +734,8 @@ def _progress(fraction: float, message: str) -> None: raise RuntimeError( f"Could not load cells from journal “{p.name}”: {load_exc}" ) from load_exc - return out + used = {group for _label, _cell, group in out} + return out, {g: lbl for g, lbl in group_labels.items() if g in used} def save_cell(cell: Any, path: str | Path) -> None: diff --git a/src/cellpy_simple_gui/core/collect.py b/src/cellpy_simple_gui/core/collect.py index d26e0b7..c33595a 100644 --- a/src/cellpy_simple_gui/core/collect.py +++ b/src/cellpy_simple_gui/core/collect.py @@ -92,10 +92,31 @@ def _batch(records: list[CellRecord]): cells[key] = rec.cell groups[key] = rec.group selected[key] = rec.selected - group_labels[rec.group] = f"group {rec.group}" + # cellpy names group-averaged traces after this (#187). + group_labels[rec.group] = rec.group_name() return from_cells(cells, groups=groups, selected=selected, group_labels=group_labels) +def group_titles(records: list[CellRecord]) -> dict[str, str]: + """``legendgroup`` → user-given group name, for the groups that have one. + + Ungrouped cellpy plots keep one trace per cell but put the group *number* + on ``legendgroup`` (that is what group legend muting toggles). Plotly can + caption such a legend group, so a named group shows its name above its + cells without re-plotting (#187). Unnamed groups get no caption — the + number alone adds nothing the swatch does not already say. + """ + return {str(rec.group): rec.group_label for rec in records if rec.group_label} + + +def _apply_group_titles(fig, titles: dict[str, str]) -> None: + for tr in fig.data: + group = getattr(tr, "legendgroup", None) + text = titles.get(str(group)) if group is not None else None + if text: + tr.legendgrouptitle = {"text": _truncate_label(text)} + + # --------------------------------------------------------------------------- # # Column helpers # --------------------------------------------------------------------------- # @@ -856,6 +877,7 @@ def figure_json( color_scheme: str = "cellpy", overlay: bool = False, warnings: list[str] | None = None, + group_titles: dict[str, str] | None = None, **plot_kwargs, ) -> str: # spread (mean ± std band) only makes sense once actually group-averaged. @@ -884,6 +906,8 @@ def figure_json( fig, height=opts["height_per_panel"] + opts["figure_border_height"] ) _restyle(fig, figure_theme=figure_theme, color_scheme=color_scheme) + if group_titles and not is_grouped(collection): + _apply_group_titles(fig, group_titles) if y_ranges: _apply_y_ranges(fig, y_ranges, var_to_axes=var_to_axes) else: diff --git a/src/cellpy_simple_gui/core/library.py b/src/cellpy_simple_gui/core/library.py index 796c7ba..fc07049 100644 --- a/src/cellpy_simple_gui/core/library.py +++ b/src/cellpy_simple_gui/core/library.py @@ -27,6 +27,11 @@ log = logging.getLogger(__name__) +def default_group_label(group: int) -> str: + """The name a group has until the user gives it one (cellpy's default too).""" + return f"group {int(group)}" + + def file_stat(path: str | Path) -> tuple[int, int] | None: """``(size, mtime_ns)`` for ``path``, or ``None`` if it cannot be read. @@ -69,10 +74,19 @@ class CellRecord: #: True until we can prove otherwise. New cells have no on-disk copy in the #: project yet, so the default is the safe one: write it. data_dirty: bool = True + #: User-given name of this record's group (#187). Group names are a + #: library-level thing; the library stamps this snapshot onto every record + #: it hands out so collectors see it without extra plumbing. Empty means + #: "unnamed" — :func:`default_group_label` applies. + group_label: str = "" def color(self) -> str: return PALETTE[(self.group - 1) % len(PALETTE)] + def group_name(self) -> str: + """The group's display name: the custom label, else ``group ``.""" + return self.group_label or default_group_label(self.group) + def to_meta(self) -> CellMeta: return CellMeta( id=self.id, @@ -85,6 +99,7 @@ def to_meta(self) -> CellMeta: cycle_mode=self.cycle_mode, # type: ignore[arg-type] n_cycles=self.n_cycles, group=self.group, + group_label=self.group_name(), label=self.label or self.name, selected=self.selected, color=self.color(), @@ -105,6 +120,10 @@ class Library: def __init__(self) -> None: self._records: dict[str, CellRecord] = {} + # Custom group names by group number (#187). Only names the user (or a + # journal / manifest) set are stored; unnamed groups fall back to + # ``default_group_label``. + self._group_labels: dict[int, str] = {} self._counter = itertools.count(1) self._lock = threading.RLock() # Current on-disk project this library is associated with (if any). @@ -259,6 +278,7 @@ def remove(self, rid: str) -> None: def clear(self) -> None: with self._lock: self._records.clear() + self._group_labels.clear() self.project_name = None self.project_path = None @@ -267,6 +287,45 @@ def set_selection(self, selected: bool) -> None: for r in self._records.values(): r.selected = selected + # -- group names (#187) ----------------------------------------------- # + def set_group_label(self, group: int, label: str | None) -> None: + """Name ``group``; an empty / whitespace label restores the default.""" + g = int(group) + text = (label or "").strip() + with self._lock: + if text and text != default_group_label(g): + self._group_labels[g] = text + else: + self._group_labels.pop(g, None) + + def group_label(self, group: int) -> str: + """The custom name of ``group`` (empty when it has none).""" + with self._lock: + return self._group_labels.get(int(group), "") + + def group_labels(self) -> dict[int, str]: + """Custom names of the groups that currently hold cells.""" + with self._lock: + in_use = {r.group for r in self._records.values()} + return {g: lbl for g, lbl in self._group_labels.items() if g in in_use} + + def groups(self) -> list[dict]: + """One row per group in use: id, custom label, display name, size, colour.""" + with self._lock: + counts: dict[int, int] = {} + for r in self._records.values(): + counts[r.group] = counts.get(r.group, 0) + 1 + return [ + { + "id": g, + "label": self._group_labels.get(g, ""), + "name": self._group_labels.get(g) or default_group_label(g), + "n_cells": n, + "color": PALETTE[(g - 1) % len(PALETTE)], + } + for g, n in sorted(counts.items()) + ] + # -- access ----------------------------------------------------------- # def get(self, rid: str) -> CellRecord: with self._lock: @@ -274,11 +333,13 @@ def get(self, rid: str) -> CellRecord: def all(self) -> list[CellRecord]: with self._lock: - return list(self._records.values()) + records = list(self._records.values()) + for r in records: + r.group_label = self._group_labels.get(r.group, "") + return records def selected(self) -> list[CellRecord]: - with self._lock: - return [r for r in self._records.values() if r.selected] + return [r for r in self.all() if r.selected] def __len__(self) -> int: return len(self._records) diff --git a/src/cellpy_simple_gui/core/models.py b/src/cellpy_simple_gui/core/models.py index 1524c51..ed57446 100644 --- a/src/cellpy_simple_gui/core/models.py +++ b/src/cellpy_simple_gui/core/models.py @@ -81,11 +81,19 @@ class CellMeta(BaseModel): cycle_mode: CycleMode | None = None n_cycles: int = 0 group: int = 1 + #: Display name of the cell's group — the user's name, else ``group ``. + group_label: str = "" label: str = "" selected: bool = True color: str | None = None +class GroupLabelUpdate(BaseModel): + """Rename one group (#187); an empty label restores ``group ``.""" + + label: str = "" + + class SummaryPlotSpec(BaseModel): """Drives a cellpy ``collect_summaries`` collection + its plot/export.""" diff --git a/src/cellpy_simple_gui/core/plotting.py b/src/cellpy_simple_gui/core/plotting.py index 83fef2e..17da76d 100644 --- a/src/cellpy_simple_gui/core/plotting.py +++ b/src/cellpy_simple_gui/core/plotting.py @@ -66,6 +66,8 @@ def summary_figure(records: list[CellRecord], spec: SummaryPlotSpec) -> str: match_axes=spec.share_y, y_ranges=y_ranges, group_legend_muting=spec.group_legend_muting, + # Named groups caption their cells in the legend (#187). + group_titles=collect.group_titles(records), figure_theme=spec.figure_theme, color_scheme=spec.color_scheme, # Unit-bearing titles; cellpy defaults are pretty but unit-less (§18 / #38). @@ -178,6 +180,7 @@ def cycles_figure(records: list[CellRecord], spec: CyclesPlotSpec) -> str: common = dict( family_kind=_CURVE_FAMILIES.get(spec.curve_kind, "cycles"), group_legend_muting=spec.group_legend_muting, + group_titles=collect.group_titles(records), figure_theme=spec.figure_theme, color_scheme=spec.color_scheme, x_range=spec.x_range, diff --git a/src/cellpy_simple_gui/core/projects.py b/src/cellpy_simple_gui/core/projects.py index dc9b22c..f5eb306 100644 --- a/src/cellpy_simple_gui/core/projects.py +++ b/src/cellpy_simple_gui/core/projects.py @@ -61,6 +61,13 @@ class CellEntry(BaseModel): n_cycles: int = 0 +class GroupEntry(BaseModel): + """A user-named group (#187). Unnamed groups are not listed.""" + + id: int + label: str + + class ProjectManifest(BaseModel): schema_version: int = SCHEMA_VERSION name: str @@ -70,6 +77,8 @@ class ProjectManifest(BaseModel): cellpy_version: str = "" app_version: str = APP_VERSION cells: list[CellEntry] = Field(default_factory=list) + # Optional so manifests written before group names existed still open. + groups: list[GroupEntry] = Field(default_factory=list) class ProjectSummary(BaseModel): @@ -211,6 +220,10 @@ def save_project(library: Library, name: str, progress: ProgressFn = None) -> Pr manifest = ProjectManifest( name=name, slug=slug, created=created, modified=_now(), cellpy_version=_safe_cellpy_version(), cells=entries, + groups=[ + GroupEntry(id=g, label=lbl) + for g, lbl in sorted(library.group_labels().items()) + ], ) staging_manifest = staging / "project.json" staging_manifest.write_text(json.dumps(manifest.model_dump(), indent=2)) @@ -280,6 +293,8 @@ def open_project(library: Library, path_or_slug: str, progress: ProgressFn = Non data_path=data_path, ) log.info("Project open: loaded %d/%d “%s”", i + 1, total, label) + for entry in manifest.groups: + library.set_group_label(entry.id, entry.label) library.project_name = manifest.name library.project_path = str(pdir) diff --git a/src/cellpy_simple_gui/web/static/css/app.css b/src/cellpy_simple_gui/web/static/css/app.css index b6095eb..5e2d915 100644 --- a/src/cellpy_simple_gui/web/static/css/app.css +++ b/src/cellpy_simple_gui/web/static/css/app.css @@ -539,6 +539,30 @@ input:focus, select:focus { border-color: var(--accent); } .mgr-remove-all { margin-left: auto; } .mgr-foot-hint { margin: 0 auto 0 0; font-size: 12px; } .modal-body { overflow: auto; padding: 0 8px 8px; min-height: 0; flex: 1; } +/* Group names strip (#187): one chip per group in use, name editable inline. */ +.mgr-groups { + display: flex; flex-wrap: wrap; align-items: center; gap: 8px; + padding: 10px 8px; border-bottom: 1px solid var(--line); +} +.mgr-groups-title { + font-size: 11px; color: var(--text-faint); font-weight: 600; + text-transform: uppercase; letter-spacing: .4px; margin-right: 4px; +} +.mgr-group { + display: inline-flex; align-items: center; gap: 6px; + padding: 3px 8px 3px 6px; border: 1px solid var(--line); border-radius: 999px; + background: color-mix(in srgb, var(--panel) 80%, var(--input)); +} +.mgr-group-id { + font-size: 11px; font-weight: 700; color: var(--text-faint); + font-variant-numeric: tabular-nums; min-width: 1.2em; text-align: right; +} +.mgr-group-n { font-size: 11px; color: var(--text-faint); font-variant-numeric: tabular-nums; white-space: nowrap; } +.group-name-input { + width: 130px; background: var(--input); border: 1px solid var(--line); + border-radius: var(--radius-sm); color: var(--text); padding: 3px 8px; font-size: 13px; +} +.group-name-input::placeholder { color: var(--text-faint); font-style: italic; } .cells-table { width: 100%; border-collapse: collapse; font-size: 13px; } diff --git a/src/cellpy_simple_gui/web/static/js/app.js b/src/cellpy_simple_gui/web/static/js/app.js index 5fdf6d4..c145758 100644 --- a/src/cellpy_simple_gui/web/static/js/app.js +++ b/src/cellpy_simple_gui/web/static/js/app.js @@ -59,6 +59,7 @@ function app() { figureThemePref: localStorage.getItem("csg-figure-theme") || "match", colorScheme: localStorage.getItem("csg-color-scheme") || "cellpy", cells: [], + groups: [], // {id, label, name, n_cells, color} per group in use (#187) examples: [], filesMax: 10, journalPath: "", @@ -576,9 +577,15 @@ function app() { currentCell() { return this.cells.find((c) => c.id === this.cell.cell_id); }, + /** Take the library snapshot every /api/state-shaped response carries. */ + _applyState(s) { + this.cells = s.cells; + this.groups = s.groups || []; + }, + async refreshState() { const s = await (await api("/api/state")).json(); - this.cells = s.cells; + this._applyState(s); this.project = s.project; if (this.project && !this.saveName) this.saveName = this.project; // Every load job ends here, so a successful load folds the Data panel @@ -1013,13 +1020,22 @@ function app() { } } const r = await (await api(`/api/cells/${id}/update`, { method: "POST", body })).json(); - this.cells = r.state.cells; + this._applyState(r.state); this.markDirty(); if (plot) this._replotAfterEdit(); }, + /** Name a group (#187); an empty name restores the default "group n". */ + async renameGroup(id, label) { + const current = this.groups.find((g) => g.id === id); + if (current && (current.label || "") === (label || "").trim()) return; + const s = await (await api(`/api/groups/${id}`, { method: "POST", body: { label } })).json(); + this._applyState(s); + this.markDirty(); + this._replotAfterEdit(); + }, async selectAll(v) { const s = await (await api(`/api/cells/select?value=${v}`, { method: "POST" })).json(); - this.cells = s.cells; + this._applyState(s); this.markDirty(); this._replotAfterEdit(); }, @@ -1038,7 +1054,7 @@ function app() { }, async removeCell(id) { const s = await (await api(`/api/cells/${id}`, { method: "DELETE" })).json(); - this.cells = s.cells; + this._applyState(s); this.markDirty(); if (this.cell.cell_id === id) this.cell.cell_id = ""; if (!this.cells.length) this.dataCollapsed = false; @@ -1046,7 +1062,7 @@ function app() { }, async clearAll() { const s = await (await api("/api/cells/clear", { method: "POST" })).json(); - this.cells = s.cells; this.cell.cell_id = ""; this.project = s.project; + this._applyState(s); this.cell.cell_id = ""; this.project = s.project; this.dirty = false; this.dataCollapsed = false; this.dismissResult(); diff --git a/src/cellpy_simple_gui/web/templates/index.html b/src/cellpy_simple_gui/web/templates/index.html index 43dc5df..04d8d40 100644 --- a/src/cellpy_simple_gui/web/templates/index.html +++ b/src/cellpy_simple_gui/web/templates/index.html @@ -180,7 +180,7 @@

Cells

- + grp @@ -970,6 +970,19 @@