Add planner-aware memos and unified tool configuration panels
All checks were successful
Deploy Sokko G / deploy (push) Successful in 18s
All checks were successful
Deploy Sokko G / deploy (push) Successful in 18s
This commit is contained in:
parent
acd9b2fe11
commit
808610dcf2
53 changed files with 842 additions and 329 deletions
|
|
@ -14,10 +14,34 @@ import { formatUpdatedAt, isHtmlEmpty, queryBlockFormat, queryCommandState } fro
|
|||
import { createBalancedTeams, drawWeightedEntries, filterExclusionsForPlayers, getDiceShape, rollDice } from "../website/src/features/toolboxes/modules/randomizerUtils.js";
|
||||
import { calculateAtLeastOneProbability, calculateDrawsForChance, calculateRngCostSummary, calculateRngRealDrawsSummary, calculateRngSummary, getAveragePositionStatus, getDurationPresetsForAverageHours, getEffectiveRate, normalizeCostString, normalizeRateString, simulateRngDraws } from "../website/src/features/toolboxes/modules/rngSimulatorUtils.js";
|
||||
import { getTimePatternRecurrenceMs, getTimePatternTargetMs } from "../website/src/features/toolboxes/modules/timerUtils.js";
|
||||
import { compactModuleDataForStorage, createToolboxExportPayload, moduleStorageKey, normalizeCalculatorData, normalizeChecklistData, normalizeCombosData, normalizeCountersData, normalizeEquipmentPlannerData, normalizeGoalTreeData, normalizeImageAnnotationData, normalizeLinksData, normalizeMemosData, normalizeModuleOrder, normalizeNotepadData, normalizeRandomizerData, normalizeRngSimulatorData, normalizeTableData, normalizeTaskPlannerData, normalizeTimerData, normalizeToolbox, normalizeUrl, summarizeEquipmentPlannerData } from "../website/src/features/toolboxes/storage/toolboxStorage.js";
|
||||
import { compactModuleDataForStorage, createToolboxExportPayload, moduleStorageKey, normalizeCalculatorData, normalizeChecklistData, normalizeCombosData, normalizeCountersData, normalizeEquipmentPlannerData, normalizeGoalTreeData, normalizeImageAnnotationData, normalizeLinksData, normalizeMemosData, normalizeModuleOrder, normalizeNotepadData, normalizeRandomizerData, normalizeRngSimulatorData, normalizeTableData, normalizeTaskPlannerData, normalizeTimerData, normalizeToolbox, normalizeUrl, remapMemosPlannerLink, summarizeEquipmentPlannerData } from "../website/src/features/toolboxes/storage/toolboxStorage.js";
|
||||
import { createToolboxSpace, deleteToolboxSpace, moveToolboxModule, reorderToolboxSpaces } from "../website/src/features/toolboxes/toolboxSpaceUtils.js";
|
||||
import { applyGroupedReorderOperation, completeGroupOrder, getBoundaryItemId, getGroupedEntries, moveGroupOrder, moveGroupOrderToEnd, moveGroupOrderToStart, moveItem, moveItemGroup } from "../website/src/hooks/useGroupedReorder.js";
|
||||
|
||||
test("memos persist and export a remapped task planner link", () => {
|
||||
const normalized = normalizeMemosData({ plannerLink: "planner", items: [] });
|
||||
assert.equal(normalized.plannerLink, "planner");
|
||||
assert.equal(compactModuleDataForStorage("memos", normalized).plannerLink, "planner");
|
||||
assert.equal(remapMemosPlannerLink({ plannerLink: "planner" }, (id) => `new-${id}`).plannerLink, "new-planner");
|
||||
assert.equal(remapMemosPlannerLink({ plannerLink: "all" }, () => "unused").plannerLink, "all");
|
||||
|
||||
const toolbox = normalizeToolbox({
|
||||
id: "toolbox",
|
||||
name: "Linked planners",
|
||||
modules: [
|
||||
{ id: "memos", type: "memos" },
|
||||
{ id: "planner", type: "taskPlanner" }
|
||||
]
|
||||
});
|
||||
const payload = createToolboxExportPayload(toolbox, {
|
||||
[moduleStorageKey(toolbox.id, "memos")]: { plannerLink: "planner" },
|
||||
[moduleStorageKey(toolbox.id, "planner")]: { tasks: [] }
|
||||
});
|
||||
const exportedMemos = payload.toolbox.modules.find((module) => module.type === "memos");
|
||||
const exportedPlanner = payload.toolbox.modules.find((module) => module.type === "taskPlanner");
|
||||
assert.equal(payload.modules[exportedMemos.id].plannerLink, exportedPlanner.id);
|
||||
});
|
||||
|
||||
function createTextImportContext() {
|
||||
let index = 0;
|
||||
return {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue