Add chance simulator toolbox and refine checklist interactions
All checks were successful
Deploy Sokko G / deploy (push) Successful in 17s
All checks were successful
Deploy Sokko G / deploy (push) Successful in 17s
This commit is contained in:
parent
35fe877d58
commit
6b85e58765
25 changed files with 1518 additions and 18 deletions
|
|
@ -310,6 +310,60 @@ export function validateSiteContent(site) {
|
|||
"toolboxes.modules.randomizer.exportSuccess",
|
||||
"toolboxes.modules.randomizer.importError",
|
||||
"toolboxes.modules.randomizer.exportInfo",
|
||||
"toolboxes.modules.rngSimulator.ratesTitle",
|
||||
"toolboxes.modules.rngSimulator.addRateTitle",
|
||||
"toolboxes.modules.rngSimulator.editRateTitle",
|
||||
"toolboxes.modules.rngSimulator.emptyRates",
|
||||
"toolboxes.modules.rngSimulator.labelLabel",
|
||||
"toolboxes.modules.rngSimulator.labelPlaceholder",
|
||||
"toolboxes.modules.rngSimulator.rateLabel",
|
||||
"toolboxes.modules.rngSimulator.rateLabelRequired",
|
||||
"toolboxes.modules.rngSimulator.rateInvalid",
|
||||
"toolboxes.modules.rngSimulator.addRateButton",
|
||||
"toolboxes.modules.rngSimulator.saveRateButton",
|
||||
"toolboxes.modules.rngSimulator.cancelButton",
|
||||
"toolboxes.modules.rngSimulator.deleteTitle",
|
||||
"toolboxes.modules.rngSimulator.noActiveRateTitle",
|
||||
"toolboxes.modules.rngSimulator.simulationDrawsLabel",
|
||||
"toolboxes.modules.rngSimulator.perHourLabel",
|
||||
"toolboxes.modules.rngSimulator.perDayLabel",
|
||||
"toolboxes.modules.rngSimulator.perMonthLabel",
|
||||
"toolboxes.modules.rngSimulator.probabilitySectionTitle",
|
||||
"toolboxes.modules.rngSimulator.multiplierLabel",
|
||||
"toolboxes.modules.rngSimulator.clearMultiplierButton",
|
||||
"toolboxes.modules.rngSimulator.averageDrawsLabel",
|
||||
"toolboxes.modules.rngSimulator.simulationChanceLabel",
|
||||
"toolboxes.modules.rngSimulator.averageTimeTitle",
|
||||
"toolboxes.modules.rngSimulator.occurrenceCountLabel",
|
||||
"toolboxes.modules.rngSimulator.hourTimeLabel",
|
||||
"toolboxes.modules.rngSimulator.dayTimeLabel",
|
||||
"toolboxes.modules.rngSimulator.monthTimeLabel",
|
||||
"toolboxes.modules.rngSimulator.chanceTargetsTitle",
|
||||
"toolboxes.modules.rngSimulator.drawsUnit",
|
||||
"toolboxes.modules.rngSimulator.hoursUnit",
|
||||
"toolboxes.modules.rngSimulator.daysUnit",
|
||||
"toolboxes.modules.rngSimulator.monthsUnit",
|
||||
"toolboxes.modules.rngSimulator.emptySummary",
|
||||
"toolboxes.modules.rngSimulator.simulationTitle",
|
||||
"toolboxes.modules.rngSimulator.simulateButton",
|
||||
"toolboxes.modules.rngSimulator.clearHistoryButton",
|
||||
"toolboxes.modules.rngSimulator.emptyHistory",
|
||||
"toolboxes.modules.rngSimulator.successesLabel",
|
||||
"toolboxes.modules.rngSimulator.failsLabel",
|
||||
"toolboxes.modules.rngSimulator.observedRateLabel",
|
||||
"toolboxes.modules.rngSimulator.multiplierShortLabel",
|
||||
"toolboxes.modules.rngSimulator.longestFailStreakLabel",
|
||||
"toolboxes.modules.rngSimulator.importPlaceholder",
|
||||
"toolboxes.modules.rngSimulator.importOpenButton",
|
||||
"toolboxes.modules.rngSimulator.exportOpenButton",
|
||||
"toolboxes.modules.rngSimulator.importModalTitle",
|
||||
"toolboxes.modules.rngSimulator.exportModalTitle",
|
||||
"toolboxes.modules.rngSimulator.importButton",
|
||||
"toolboxes.modules.rngSimulator.exportButton",
|
||||
"toolboxes.modules.rngSimulator.importSuccess",
|
||||
"toolboxes.modules.rngSimulator.exportSuccess",
|
||||
"toolboxes.modules.rngSimulator.importError",
|
||||
"toolboxes.modules.rngSimulator.exportInfo",
|
||||
"toolboxes.modules.combos.deviceLabel",
|
||||
"toolboxes.modules.combos.keyboardLayoutLabel",
|
||||
"toolboxes.modules.combos.categoryPlaceholder",
|
||||
|
|
@ -711,7 +765,7 @@ export function validateSiteContent(site) {
|
|||
});
|
||||
|
||||
const libraryToolDocs = valueAt(site, "library.toolDocs");
|
||||
["memos", "notepad", "checklist", "counters", "randomizer", "images", "imageAnnotation", "links", "calculator", "table", "goalTree", "timer", "calendar", "taskPlanner", "combos", "equipmentPlanner"].forEach((toolType) => {
|
||||
["memos", "notepad", "checklist", "counters", "randomizer", "rngSimulator", "images", "imageAnnotation", "links", "calculator", "table", "goalTree", "timer", "calendar", "taskPlanner", "combos", "equipmentPlanner"].forEach((toolType) => {
|
||||
const docs = libraryToolDocs?.[toolType];
|
||||
assert.equal(typeof docs, "object", `library.toolDocs.${toolType} must be an object`);
|
||||
assert.ok(Array.isArray(docs.controls), `library.toolDocs.${toolType}.controls must be an array`);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue