Compare commits
5 Commits
dev
...
beta-relea
Author | SHA1 | Date |
---|---|---|
|
53336c410c | |
|
711af96d29 | |
|
f7c3069145 | |
|
0e0d72ec9c | |
|
754000952b |
32
README.md
32
README.md
|
@ -51,7 +51,7 @@ However, it is much easier to click-and-drag the desired region.
|
||||||
If we click and hold on a well (see right pane), that specifies our start well.
|
If we click and hold on a well (see right pane), that specifies our start well.
|
||||||
Then, we can drag and subsequently release on our desired end well.
|
Then, we can drag and subsequently release on our desired end well.
|
||||||
|
|
||||||
Our selected wells will be highlighted in light blue for our source plate and light red for our destination plate.
|
Our selected wells will be bolded (thicker outline).
|
||||||
You might also notice that some wells are hatched:
|
You might also notice that some wells are hatched:
|
||||||
this indicates wells that will be used in the transfer.
|
this indicates wells that will be used in the transfer.
|
||||||
Not all selected wells will necessarily be hatched,
|
Not all selected wells will necessarily be hatched,
|
||||||
|
@ -68,6 +68,29 @@ When finished, click the "Save" button to commit these changes.
|
||||||
|
|
||||||
If you no longer need a transfer, select it as above and then click the "Delete" button.
|
If you no longer need a transfer, select it as above and then click the "Delete" button.
|
||||||
|
|
||||||
|
#### Interleave
|
||||||
|
Interleave can be set for both source and destination plates.
|
||||||
|
Essentially, it can be read as "use every Nth well".
|
||||||
|
That is, a source row interleave of 2 would use every other row of the selected region.
|
||||||
|
It is permitted to have interleave in both dimensions on both plates in a single transfer.
|
||||||
|
|
||||||
|
#### Pooling
|
||||||
|
Consider a case where you want to condense an entire column in a source plate into just one row in the destination.
|
||||||
|
Instead of creating multiple transfers, it is sufficient to set the destination row interleave to 0.
|
||||||
|
An 0 interleave can be thought of as condensing that dimension to a point.
|
||||||
|
For this reason, 0 interleaves are not permitted on source plates (consider what this would represent).
|
||||||
|
Similarly, 0 interleaves are not permitted in replicate transfers (see next section).
|
||||||
|
|
||||||
|
#### Replicates
|
||||||
|
Where pooling permits a "many-to-one" transfer, replicates are "one-to-many".
|
||||||
|
This behavior is achieved by selecting a region in the destination plate instead of just a plate.
|
||||||
|
(If the corners of the destination region are not identical, it is a replicate.)
|
||||||
|
|
||||||
|
Plate-tool will attempt to fit as many copies into the selected destination region as space permits.
|
||||||
|
Partial copies will not be created.
|
||||||
|
That is, if a source region is 3 wells wide and a destination region is 7 wells wide,
|
||||||
|
2 copies will be made, and the 7th well in the destination will be left unused.
|
||||||
|
|
||||||
### Importing and Exporting
|
### Importing and Exporting
|
||||||
|
|
||||||
#### Export as CSV
|
#### Export as CSV
|
||||||
|
@ -201,3 +224,10 @@ Here's how:
|
||||||
- You may need to check where `cargo` is installing binaries by default. For me, they're at `~/.cargo/bin`.
|
- You may need to check where `cargo` is installing binaries by default. For me, they're at `~/.cargo/bin`.
|
||||||
If trunk is not automatically placed in your path, you would then run `/your/path/to/.cargo/bin/trunk serve`.
|
If trunk is not automatically placed in your path, you would then run `/your/path/to/.cargo/bin/trunk serve`.
|
||||||
- You can instead run `trunk build --release` for a more performant binary.
|
- You can instead run `trunk build --release` for a more performant binary.
|
||||||
|
|
||||||
|
## Bug Reports and Further Help
|
||||||
|
|
||||||
|
Any requests for help or assistance with bugs can be sent to platetool(at)ilia.moe
|
||||||
|
|
||||||
|
If reporting a bug, ideally include what it was you were trying to do and, if possible, a screenshot or any logs in
|
||||||
|
your browser's console.
|
||||||
|
|
|
@ -6,13 +6,17 @@ div.plate_container {
|
||||||
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
justify-content: space-evenly;
|
justify-content: flex-start;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
border: 2px solid $color-dark;
|
border: 2px solid $color-dark;
|
||||||
grid-column: right / right;
|
grid-column: right / right;
|
||||||
grid-row: upper / 3;
|
grid-row: upper / 3;
|
||||||
|
|
||||||
|
@media (min-height: 900px) {
|
||||||
|
justify-content: space-evenly;
|
||||||
|
}
|
||||||
|
|
||||||
h2 {
|
h2 {
|
||||||
margin-bottom: 1%;
|
margin-bottom: 1%;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
|
|
@ -53,6 +53,41 @@ td.current_select div.plate_cell_inner {
|
||||||
|
|
||||||
|
|
||||||
// Styles for specific plate types:
|
// Styles for specific plate types:
|
||||||
|
.W96 {
|
||||||
|
th {
|
||||||
|
font-size: 0.9rem;
|
||||||
|
line-height: 0px;
|
||||||
|
}
|
||||||
|
tr:first-child {
|
||||||
|
th {
|
||||||
|
line-height: inherit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
td {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
td.current_select div.plate_cell_inner {
|
||||||
|
border: 2px solid black;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.W384 {
|
||||||
|
th {
|
||||||
|
font-size: 0.9rem;
|
||||||
|
line-height: 0px;
|
||||||
|
}
|
||||||
|
tr:first-child {
|
||||||
|
th {
|
||||||
|
line-height: inherit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
td {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
td.current_select div.plate_cell_inner {
|
||||||
|
border: 2px solid black;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.W1536 {
|
.W1536 {
|
||||||
th {
|
th {
|
||||||
|
|
|
@ -13,6 +13,8 @@ div.tree {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
border: 2px solid $color-dark;
|
border: 2px solid $color-dark;
|
||||||
|
|
||||||
|
overflow: scroll;
|
||||||
|
|
||||||
h3 {
|
h3 {
|
||||||
margin-left: 0.5rem;
|
margin-left: 0.5rem;
|
||||||
}
|
}
|
||||||
|
|
|
@ -121,9 +121,18 @@ pub fn Plate(props: &PlateProps) -> Html {
|
||||||
|
|
||||||
let mouseleave_callback = Callback::clone(&mouseup_callback);
|
let mouseleave_callback = Callback::clone(&mouseup_callback);
|
||||||
|
|
||||||
let screenshot_callback = Callback::from(|_| {
|
let screenshot_callback = {
|
||||||
|
match props.ptype {
|
||||||
|
PlateType::Source =>
|
||||||
|
Callback::from(|_| {
|
||||||
let _ = js_sys::eval("copy_screenshot_src()");
|
let _ = js_sys::eval("copy_screenshot_src()");
|
||||||
});
|
}),
|
||||||
|
PlateType::Destination =>
|
||||||
|
Callback::from(|_| {
|
||||||
|
let _ = js_sys::eval("copy_screenshot_dest()");
|
||||||
|
}),
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
let width = match props.ptype {
|
let width = match props.ptype {
|
||||||
PlateType::Source => props.source_plate.plate.size().1,
|
PlateType::Source => props.source_plate.plate.size().1,
|
||||||
|
|
Loading…
Reference in New Issue