From 33e6f267ea133122906795c2b5100a4365423ce5 Mon Sep 17 00:00:00 2001 From: "Thomas M. Edwards" Date: Thu, 30 Jul 2020 19:33:41 -0500 Subject: [PATCH 01/14] [Devel] Update .eslintrc.json. --- .eslintrc.json | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json index ca6d17c..7e35f5d 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -31,7 +31,8 @@ "eqeqeq" : ["error", "always", { "null" : "ignore" }], "func-call-spacing" : ["error", "never"], "func-name-matching" : ["error", "always"], - "id-length" : ["error", { "exceptions": ["O", "T", "_", "a", "b", "i", "j", "m", "w", "x", "y"] }], + "generator-star-spacing" : ["error", "after"], + "id-length" : ["error", { "exceptions": ["O", "P", "T", "_", "a", "b", "i", "j", "m", "w", "x", "y"] }], "indent" : ["error", "tab", { "ArrayExpression" : "first", "CallExpression" : { "arguments" : "first" }, "FunctionDeclaration" : { "body" : 1, "parameters" : "first" }, "FunctionExpression" : { "body" : 1, "parameters" : "first" }, "ObjectExpression" : "first", "SwitchCase" : 0, "VariableDeclarator" : 1 }], "key-spacing" : ["error", { "align" : "colon", "beforeColon" : true, "afterColon" : true }], "keyword-spacing" : "error", @@ -39,7 +40,7 @@ "lines-around-directive" : ["error", { "before" : "never", "after" : "always" }], "max-depth" : ["error", { "max" : 6 }], "max-len" : ["warn", { "code" : 120, "tabWidth" : 4, "comments" : 120, "ignoreTrailingComments" : true, "ignoreUrls" : true, "ignoreStrings" : true, "ignoreTemplateLiterals" : true, "ignoreRegExpLiterals" : true }], - "max-nested-callbacks" : ["error", { "max" : 4 }], + "max-nested-callbacks" : ["error", { "max" : 5 }], "max-params" : ["error", { "max" : 5 }], "multiline-ternary" : "off", "new-cap" : "error", @@ -72,7 +73,10 @@ "no-floating-decimal" : "error", "no-global-assign" : "error", "no-implicit-coercion" : ["error", { "boolean" : false }], + "no-import-assign" : "error", "no-iterator" : "error", + "no-labels" : ["error", { "allowLoop" : true, "allowSwitch" : true }], + "no-label-var" : "error", "no-loop-func" : "error", "no-mixed-spaces-and-tabs" : ["off", "smart-tabs"], "no-multi-assign" : "off", @@ -80,15 +84,21 @@ "no-multiple-empty-lines" : ["error", { "max" : 2 }], "no-nested-ternary" : "error", "no-new" : "off", + "no-new-func" : "error", "no-new-object" : "error", + "no-new-require" : "error", + "no-new-symbol" : "error", + "no-new-wrappers" : "error", "no-param-reassign" : ["error", { "props" : true }], "no-plusplus" : "off", "no-regex-spaces" : "error", + "no-restricted-globals" : ["error", "isFinite", "isNaN"], "no-restricted-syntax" : ["error", "WithStatement"], "no-return-await" : "error", "no-self-assign" : ["error", { "props": true }], "no-sequences" : "error", "no-template-curly-in-string" : "error", + "no-throw-literal" : "error", "no-trailing-spaces" : ["error", { "skipBlankLines" : true }], "no-undef" : "error", "no-undef-init" : "error", @@ -114,7 +124,7 @@ "padded-blocks" : ["error", "never"], "prefer-arrow-callback" : "error", "prefer-const" : "error", - "prefer-destructuring" : ["off", { "array" : true, "object" : true }], + "prefer-destructuring" : ["off", { "array" : false, "object" : true }, { "enforceForRenamedProperties" : true }], "prefer-numeric-literals" : "error", "prefer-promise-reject-errors" : "error", "prefer-rest-params" : "off", @@ -126,7 +136,7 @@ "require-await" : "error", "semi" : ["error", "always"], "sort-keys" : ["off", "asc", { "caseSensitive" : true, "natural" : true }], - "sort-imports" : ["warn", { "ignoreCase" : false, "ignoreMemberSort" : false, "memberSyntaxSortOrder" : ["none", "all", "multiple", "single"] }], + "sort-imports" : "error", "sort-vars" : ["off", { "ignoreCase" : false }], "space-before-blocks" : ["error", "always"], "space-before-function-paren" : ["error", { "anonymous" : "always", "asyncArrow" : "always", "named" : "never" }], @@ -135,6 +145,7 @@ "space-unary-ops" : ["error", { "words" : true, "nonwords" : false }], "spaced-comment" : ["error", "always", { "block" : { "exceptions" : ["*"], "markers": ["!"], "balanced" : true }, "line" : { "exceptions" : ["-"], "markers" : ["/"] } }], "strict" : ["warn", "safe"], + "switch-colon-spacing" : "error", "symbol-description" : "error", "template-curly-spacing" : ["error", "never"], "template-tag-spacing" : ["error", "never"], From 5b3564d907abc01df9c37d20f9f9336f798f0dce Mon Sep 17 00:00:00 2001 From: "Thomas M. Edwards" Date: Thu, 30 Jul 2020 22:34:22 -0500 Subject: [PATCH 02/14] [Update] Added `Config.macros.typeSkipKey`. --- src/config.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/config.js b/src/config.js index c3a392c..3c62958 100644 --- a/src/config.js +++ b/src/config.js @@ -28,6 +28,7 @@ var Config = (() => { // eslint-disable-line no-unused-vars, no-var // Macros settings. let _macrosIfAssignmentError = true; let _macrosMaxLoopIterations = 1000; + let _macrosTypeSkipKey = '\x20'; // Space let _macrosTypeVisitedPassages = true; // Navigation settings. @@ -156,6 +157,9 @@ var Config = (() => { // eslint-disable-line no-unused-vars, no-var _macrosMaxLoopIterations = value; }, + get typeSkipKey() { return _macrosTypeSkipKey; }, + set typeSkipKey(value) { _macrosTypeSkipKey = String(value); }, + get typeVisitedPassages() { return _macrosTypeVisitedPassages; }, set typeVisitedPassages(value) { _macrosTypeVisitedPassages = Boolean(value); } }), From d2c9e355a51ffe2762d5db9c340c862c6da9e2ed Mon Sep 17 00:00:00 2001 From: "Thomas M. Edwards" Date: Thu, 30 Jul 2020 22:35:45 -0500 Subject: [PATCH 03/14] [Update] Added a `skipkey` option to `<>`. --- src/macros/macrolib.js | 82 +++++++++++++++++++++++++++++++++++++++--- 1 file changed, 78 insertions(+), 4 deletions(-) diff --git a/src/macros/macrolib.js b/src/macros/macrolib.js index fe79b44..30dbc7d 100644 --- a/src/macros/macrolib.js +++ b/src/macros/macrolib.js @@ -384,7 +384,7 @@ }); /* - <> + <> */ Macro.add('type', { isAsync : true, @@ -405,6 +405,7 @@ let elClass = ''; let elId = ''; let elTag = 'div'; + let skipKey = Config.macros.typeSkipKey; let start = 400; // in milliseconds // Process optional arguments. @@ -464,6 +465,20 @@ cursor = 'none'; break; + case 'skipkey': { + if (options.length === 0) { + return this.error('skipkey option missing required key value'); + } + + skipKey = options.shift(); + + if (skipKey === '') { + throw new Error('skipkey option key value must be non-empty (received: "")'); + } + + break; + } + case 'start': { if (options.length === 0) { return this.error('start option missing required time value'); @@ -575,14 +590,15 @@ const typingStopId = ':typingstop'; const keypressAndNS = `keypress${namespace}`; const typingStopAndNS = `${typingStopId}${namespace}`; + const scrubKey = this.self.scrubKey; // Set up handlers for spacebar aborting and continuations. $(document) .off(keypressAndNS) .on(keypressAndNS, ev => { - // Finish typing if the player aborts via the spacebar. + // Finish typing if the player aborts via the skip key. if ( - ev.which === 32 /* Space */ + scrubKey(ev.key) === skipKey && (ev.target === document.body || ev.target === document.documentElement) ) { ev.preventDefault(); @@ -653,7 +669,65 @@ TempState.macroTypeQueue.first()(); } } - } + }, + + scrubKey : (function () { + let separatorKey; + let decimalKey; + + // Attempt to determine the player's separator and decimal key values. + if (typeof Intl !== 'undefined' && typeof Intl.NumberFormat === 'function') { + const match = new Intl.NumberFormat().format(111111.5).match(/(\D)\d+(\D)/); + + if (match) { + separatorKey = match[1]; + decimalKey = match[2]; + } + } + + // Failover to US centric values. + if (!separatorKey || !decimalKey) { + separatorKey = ','; + decimalKey = '.'; + } + + // Maps older browser key values to more current/correct ones. + function scrubKey(key) { + switch (key) { + // case 'OS': return 'Meta'; // Unreliable. + case 'Scroll': return 'ScrollLock'; + case 'Spacebar': return '\x20'; + case 'Left': return 'ArrowLeft'; + case 'Right': return 'ArrowRight'; + case 'Up': return 'ArrowUp'; + case 'Down': return 'ArrowDown'; + case 'Del': return 'Delete'; + case 'Crsel': return 'CrSel'; + case 'Exsel': return 'ExSel'; + case 'Esc': return 'Escape'; + case 'Apps': return 'ContextMenu'; + case 'Nonconvert': return 'NonConvert'; + case 'MediaNextTrack': return 'MediaTrackNext'; + case 'MediaPreviousTrack': return 'MediaTrackPrevious'; + case 'VolumeUp': return 'AudioVolumeUp'; + case 'VolumeDown': return 'AudioVolumeDown'; + case 'VolumeMute': return 'AudioVolumeMute'; + case 'Zoom': return 'ZoomToggle'; + case 'SelectMedia': + case 'MediaSelect': return 'LaunchMediaPlayer'; + case 'Add': return '+'; + case 'Divide': return '/'; + case 'Multiply': return '*'; + case 'Subtract': return '-'; + case 'Decimal': return decimalKey; + case 'Separator': return separatorKey; + } + + return key; + } + + return scrubKey; + })() }); /* From 6340518c5a7c8a088a3a37169d72c122e13898be Mon Sep 17 00:00:00 2001 From: "Thomas M. Edwards" Date: Fri, 31 Jul 2020 06:37:13 -0500 Subject: [PATCH 04/14] [Update] Polishing `KeyboardEvent.key` scrubbing. --- src/macros/macrolib.js | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/macros/macrolib.js b/src/macros/macrolib.js index 30dbc7d..8fee55a 100644 --- a/src/macros/macrolib.js +++ b/src/macros/macrolib.js @@ -590,7 +590,9 @@ const typingStopId = ':typingstop'; const keypressAndNS = `keypress${namespace}`; const typingStopAndNS = `${typingStopId}${namespace}`; - const scrubKey = this.self.scrubKey; + + // Cache `scrubEventKey`. + const scrubEventKey = this.self.scrubEventKey; // Set up handlers for spacebar aborting and continuations. $(document) @@ -598,7 +600,7 @@ .on(keypressAndNS, ev => { // Finish typing if the player aborts via the skip key. if ( - scrubKey(ev.key) === skipKey + scrubEventKey(ev.key) === skipKey && (ev.target === document.body || ev.target === document.documentElement) ) { ev.preventDefault(); @@ -671,13 +673,14 @@ } }, - scrubKey : (function () { + scrubEventKey : (function () { let separatorKey; let decimalKey; - // Attempt to determine the player's separator and decimal key values. + // Attempt to determine the player's 'Separator' and 'Decimal' key values + // based on their current locale. if (typeof Intl !== 'undefined' && typeof Intl.NumberFormat === 'function') { - const match = new Intl.NumberFormat().format(111111.5).match(/(\D)\d+(\D)/); + const match = new Intl.NumberFormat().format(111111.5).match(/(\D*)\d+(\D*)/); if (match) { separatorKey = match[1]; @@ -685,14 +688,14 @@ } } - // Failover to US centric values. - if (!separatorKey || !decimalKey) { + // Failover to US-centric values, if using `Intl.NumberFormat` failed. + if (!separatorKey && !decimalKey) { separatorKey = ','; decimalKey = '.'; } - // Maps older browser key values to more current/correct ones. - function scrubKey(key) { + // Maps older `KeyboardEvent.key` values to more current/correct ones. + function scrubEventKey(key) { switch (key) { // case 'OS': return 'Meta'; // Unreliable. case 'Scroll': return 'ScrollLock'; @@ -713,7 +716,7 @@ case 'VolumeDown': return 'AudioVolumeDown'; case 'VolumeMute': return 'AudioVolumeMute'; case 'Zoom': return 'ZoomToggle'; - case 'SelectMedia': + case 'SelectMedia': /* see below */ case 'MediaSelect': return 'LaunchMediaPlayer'; case 'Add': return '+'; case 'Divide': return '/'; @@ -726,7 +729,7 @@ return key; } - return scrubKey; + return scrubEventKey; })() }); From 9fdee160a05a5a29944f92e498782631ad71b8f4 Mon Sep 17 00:00:00 2001 From: "Thomas M. Edwards" Date: Fri, 31 Jul 2020 12:11:31 -0500 Subject: [PATCH 05/14] [Docs] Fixed a ToC link oopsie. --- docs/table-of-contents.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/table-of-contents.md b/docs/table-of-contents.md index b32c5e5..09a2ae2 100644 --- a/docs/table-of-contents.md +++ b/docs/table-of-contents.md @@ -258,7 +258,7 @@ * [`:stopped`](#events-simpleaudio-event-stopped) * [System Events](#events-system) * [`:storyready`](#events-system-event-storyready) - * [`:enginerestart`](#events-startup-teardown-event-enginerestart) + * [`:enginerestart`](#events-system-event-enginerestart) * [`<>` Events](#events-type-macro) * [`:typingcomplete`](#events-type-macro-event-typingcomplete) * [`:typingstart`](#events-type-macro-event-typingstart) From 8b4ae3490622ab206884011eb93e9d93dab28cd7 Mon Sep 17 00:00:00 2001 From: "Thomas M. Edwards" Date: Fri, 31 Jul 2020 13:04:30 -0500 Subject: [PATCH 06/14] [Docs] Updates to the "Since" sections. --- docs/api/api-config.md | 56 +++++------ docs/api/api-dialog.md | 16 ++-- docs/api/api-engine.md | 24 ++--- docs/api/api-fullscreen.md | 20 ++-- docs/api/api-loadscreen.md | 4 +- docs/api/api-macro.md | 12 +-- docs/api/api-macrocontext.md | 28 +++--- docs/api/api-passage.md | 12 +-- docs/api/api-save.md | 44 ++++----- docs/api/api-setting.md | 16 ++-- docs/api/api-simpleaudio-audiolist.md | 46 ++++----- docs/api/api-simpleaudio-audiorunner.md | 34 +++---- docs/api/api-simpleaudio-audiotrack.md | 70 +++++++------- docs/api/api-simpleaudio.md | 46 ++++----- docs/api/api-state.md | 58 ++++++------ docs/api/api-story.md | 14 +-- docs/api/api-template.md | 10 +- docs/api/api-ui.md | 12 +-- docs/api/api-uibar.md | 14 +-- docs/core/events.md | 44 ++++----- docs/core/functions.md | 42 ++++----- docs/core/macros.md | 120 ++++++++++++------------ docs/core/markup.md | 8 +- docs/core/methods.md | 72 +++++++------- docs/core/special-names.md | 90 +++++++++--------- docs/guides/guide-localization.md | 2 +- docs/guides/guide-test-mode.md | 2 +- docs/table-of-contents.md | 1 + 28 files changed, 459 insertions(+), 458 deletions(-) diff --git a/docs/api/api-config.md b/docs/api/api-config.md index 27e4e49..764448d 100644 --- a/docs/api/api-config.md +++ b/docs/api/api-config.md @@ -23,7 +23,7 @@ Determines whether the audio subsystem automatically pauses tracks that have bee #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Examples: @@ -43,7 +43,7 @@ It is unlikely that you will ever want to disable this setting. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Examples: @@ -65,7 +65,7 @@ Determines whether the story's history controls (Backward, Jump To, & Forward bu #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -81,7 +81,7 @@ Sets the maximum number of states (moments) to which the history is allowed to g #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -114,7 +114,7 @@ This setting exists because it's unlikely that you'll ever want to actually perf #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -135,7 +135,7 @@ This setting exists to prevent a misconfigured loop from making the browser unre #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -152,7 +152,7 @@ Determines whether the [`<>` macro](#macros-macro-type) types out content #### Since: -* `v2.32.0` +* `v2.32.0`: Introduced. #### Examples: @@ -175,7 +175,7 @@ Allows the destination of passage navigation to be overridden. The callback is #### Since: -* `v2.13.0` +* `v2.13.0`: Introduced. #### Examples: @@ -221,7 +221,7 @@ Determines whether alternate passage descriptions are used by the *Saves* and *J #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -250,7 +250,7 @@ Determines whether passage titles are combined with the story title, within the #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -270,7 +270,7 @@ Does not affect script or stylesheet tagged passages, #### Since: -* `v2.19.0` +* `v2.19.0`: Introduced. #### Examples: @@ -294,7 +294,7 @@ The function will be called just before the built-in no-break passage processing #### Since: -* `v2.30.0` +* `v2.30.0`: Introduced. #### Examples: @@ -313,7 +313,7 @@ Sets the starting passage, the very first passage that will be displayed. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -333,7 +333,7 @@ If using an integer delay, ideally, it should probably be slightly longer than t #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -390,7 +390,7 @@ If the autosave cannot be loaded, for any reason, then the start passage is load #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -419,7 +419,7 @@ When setting the value to boolean true, you will likely also need t #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.30.0`: Added function values and deprecated string values. #### Examples: @@ -445,7 +445,7 @@ Sets the story ID associated with saves. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -461,7 +461,7 @@ Determines whether saving is allowed within the current context. The callback i #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -479,7 +479,7 @@ Performs any required pre-processing before the save data is loaded—e.g., upgr #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Callback parameters: @@ -507,7 +507,7 @@ Performs any required post-processing before the save data is saved. The callba #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.33.0`: Added save operation details object parameter to the callback function. #### Callback parameters: @@ -566,7 +566,7 @@ Sets the maximum number of available save slots. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -586,7 +586,7 @@ This setting is only used to set the version property of saves. Th #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -612,7 +612,7 @@ Determines whether the UI bar (sidebar) starts in the stowed (shut) state initia #### Since: -* `v2.11.0` +* `v2.11.0`: Introduced. #### Examples: @@ -639,7 +639,7 @@ The story title is not included in updates because SugarCube uses it as the basi #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -666,7 +666,7 @@ You must provide your own styling for the link-visited cla #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -692,7 +692,7 @@ Determines whether the output of the Wikifier is post-processed into more sane m #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -712,7 +712,7 @@ This property is automatically set based on whether you're using a testing mode #### Since: -* `v2.2.0` +* `v2.2.0`: Introduced. #### Examples: @@ -739,7 +739,7 @@ Sets the integer delay (in milliseconds) before the loading screen is dismissed, #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: diff --git a/docs/api/api-dialog.md b/docs/api/api-dialog.md index 0b7f01c..1237a30 100644 --- a/docs/api/api-dialog.md +++ b/docs/api/api-dialog.md @@ -15,7 +15,7 @@ If your content contains any SugarCube markup, you'll need to use the @@ -98,7 +98,7 @@ The (execution) context object of the macro's parent, or `null` if the macro has #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. @@ -108,7 +108,7 @@ The parser instance that generated the macro call. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. @@ -124,7 +124,7 @@ The text of a container macro parsed into discrete payload objects by tag. Payl #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. @@ -134,7 +134,7 @@ The macro's definition—created via [`Macro.add()`](#macro-api-method-add). #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. @@ -144,7 +144,7 @@ Returns whether any of the macro's ancestors passed the test implemented by the #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -165,7 +165,7 @@ Returns the first of the macro's ancestors that passed the test implemented by t #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -186,7 +186,7 @@ Returns a new array containing all of the macro's ancestors that passed the test #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -215,7 +215,7 @@ Only useful when you have an asynchronous callback that invokes code/content tha #### Since: -* `v2.14.0`: Basic syntax. +* `v2.14.0`: Introduced. * `v2.23.3`: Fixed an issue where shadows would fail for multiple layers of nested asynchronous code due to loss of context. #### Parameters: @@ -271,7 +271,7 @@ Renders the message prefixed with the name of the macro and returns `false`. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: diff --git a/docs/api/api-passage.md b/docs/api/api-passage.md index d4f0075..c7676cb 100644 --- a/docs/api/api-passage.md +++ b/docs/api/api-passage.md @@ -15,7 +15,7 @@ The DOM ID of the passage, created from the slugified passage title. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. @@ -25,7 +25,7 @@ The tags of the passage. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. @@ -35,7 +35,7 @@ The raw text of the passage. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. @@ -45,7 +45,7 @@ The title of the passage. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. @@ -55,7 +55,7 @@ Returns the description of the passage, created from either an excerpt of the pa #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -75,7 +75,7 @@ Returns the processed text of the passage, created from applying `nobr` tag and #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* diff --git a/docs/api/api-save.md b/docs/api/api-save.md index 44d1d2d..ef6f465 100644 --- a/docs/api/api-save.md +++ b/docs/api/api-save.md @@ -57,7 +57,7 @@ Deletes all slot saves and the autosave, if it's enabled. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -79,7 +79,7 @@ Returns the saves object. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -97,7 +97,7 @@ Returns whether both the slot saves and autosave are available and ready. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -123,7 +123,7 @@ Returns the total number of available slots. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Examples: @@ -139,7 +139,7 @@ Returns the total number of filled slots. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -157,7 +157,7 @@ Deletes a save from the given slot. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -177,7 +177,7 @@ Returns a save object from the given slot or `null`, if there was no save in the #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -197,7 +197,7 @@ Returns whether the given slot is filled. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -219,7 +219,7 @@ Returns whether there are any filled slots. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -237,7 +237,7 @@ Loads a save from the given slot. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -257,7 +257,7 @@ Returns whether the slot saves are available and ready. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -277,7 +277,7 @@ Saves to the given slot. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -315,7 +315,7 @@ Deletes the autosave. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -333,7 +333,7 @@ Returns the save object from the autosave or `null`, if there was no autosave. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -351,7 +351,7 @@ Returns whether the autosave is filled. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -371,7 +371,7 @@ Loads the autosave. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -389,7 +389,7 @@ Returns whether the autosave is available and ready. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -409,7 +409,7 @@ Saves to the autosave. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -446,7 +446,7 @@ Saves to disk. #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.8.0`: Added `metadata` parameter. #### Parameters: @@ -480,7 +480,7 @@ Loads a save from disk. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -546,7 +546,7 @@ Returns a save as a serialized string, or `null` if saving is not allowed within #### Since: -* `v2.21.0` +* `v2.21.0`: Introduced. #### Parameters: @@ -576,7 +576,7 @@ Deserializes the given save string, created via [`Save.serialize()`](#save-api-m #### Since: -* `v2.21.0` +* `v2.21.0`: Introduced. #### Parameters: diff --git a/docs/api/api-setting.md b/docs/api/api-setting.md index ac61cd6..d8ebb1e 100644 --- a/docs/api/api-setting.md +++ b/docs/api/api-setting.md @@ -13,7 +13,7 @@ Adds a header to the Settings dialog. #### Since: -* `v2.7.1` +* `v2.7.1`: Introduced. #### Parameters: @@ -38,7 +38,7 @@ Adds the named property to the `settings` object and a toggle control for it to #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.26.0`: Added `desc` property to definition object. #### Parameters: @@ -103,7 +103,7 @@ Adds the named property to the `settings` object and a list control for it to th #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.26.0`: Added `desc` property to definition object. #### Parameters: @@ -182,7 +182,7 @@ Adds the named property to the `settings` object and a range control for it to t #### Since: -* `v2.26.0` +* `v2.26.0`: Introduced. #### Parameters: @@ -235,7 +235,7 @@ The API automatically calls this method at startup, so you should never need to #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -253,7 +253,7 @@ Resets the setting with the given name to its default value. If no name is give #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -281,7 +281,7 @@ The controls of the Settings dialog automatically call this method when settings #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: *none* @@ -301,4 +301,4 @@ Normally, the values of its properties are automatically managed by their associ #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. diff --git a/docs/api/api-simpleaudio-audiolist.md b/docs/api/api-simpleaudio-audiolist.md index d362b69..1fd4be2 100644 --- a/docs/api/api-simpleaudio-audiolist.md +++ b/docs/api/api-simpleaudio-audiolist.md @@ -17,7 +17,7 @@ Returns the playlist's total playtime in seconds, `Infinity` if it contains any #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -39,7 +39,7 @@ The Config.audio.pa #### Since: -* `v2.28.0`: Basic syntax. +* `v2.28.0`: Introduced. * `v2.29.0`: Updated to return a `Promise`. #### Parameters: @@ -63,7 +63,7 @@ Starts playback of the playlist and fades the currently playing track from the s #### Since: -* `v2.28.0`: Basic syntax. +* `v2.28.0`: Introduced. * `v2.29.0`: Updated to return a `Promise`. #### Parameters: @@ -90,7 +90,7 @@ The Config.audio.pa #### Since: -* `v2.28.0`: Basic syntax. +* `v2.28.0`: Introduced. * `v2.29.0`: Updated to return a `Promise`. #### Parameters: @@ -117,7 +117,7 @@ This does not alter the volume level. #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Parameters: *none* @@ -135,7 +135,7 @@ Returns whether playback of the playlist has ended. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -155,7 +155,7 @@ Returns whether a fade is in-progress on the currently playing track. #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Parameters: *none* @@ -175,7 +175,7 @@ Returns whether playback of the playlist has been paused. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -195,7 +195,7 @@ Returns whether the playlist is playing. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -215,7 +215,7 @@ Returns whether playback of the playlist has been stopped. #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Parameters: *none* @@ -239,7 +239,7 @@ This should not be done lightly if your audio sources are on the networ #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -257,7 +257,7 @@ Gets or sets the playlist's repeating playback state (default: `false`). When u #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -284,7 +284,7 @@ Gets or sets the playlist's volume mute state (default: `false`). When used to #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -311,7 +311,7 @@ Pauses playback of the playlist. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -329,7 +329,7 @@ Begins playback of the playlist. #### Since: -* `v2.28.0`: Basic syntax. +* `v2.28.0`: Introduced. * `v2.29.0`: Updated to return a `Promise`. #### Parameters: *none* @@ -362,7 +362,7 @@ Begins playback of the playlist or, failing that, sets the playlist to begin pla #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Parameters: *none* @@ -380,7 +380,7 @@ Returns how much remains of the playlist's total playtime in seconds, `Infinity` #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -398,7 +398,7 @@ Gets or sets the playlist's randomly shuffled playback state (default: `false`). #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -425,7 +425,7 @@ Skips ahead to the next track in the playlist, if any. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -443,7 +443,7 @@ Stops playback of the playlist. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -461,7 +461,7 @@ Returns the playlist's current time in seconds, or `NaN` if no metadata exists. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -483,7 +483,7 @@ Once unloaded, playback cannot occur until the track's data is loaded again. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -501,7 +501,7 @@ Gets or sets the playlist's volume level (default: `1`). When used to set the v #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: diff --git a/docs/api/api-simpleaudio-audiorunner.md b/docs/api/api-simpleaudio-audiorunner.md index b696ee0..019295e 100644 --- a/docs/api/api-simpleaudio-audiorunner.md +++ b/docs/api/api-simpleaudio-audiorunner.md @@ -21,7 +21,7 @@ The Config.audio.pa #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -44,7 +44,7 @@ Starts playback of the selected tracks and fades them from the specified volume #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -70,7 +70,7 @@ The Config.audio.pa #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -96,7 +96,7 @@ This does not alter the volume level. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -118,7 +118,7 @@ This should not be done lightly if your audio sources are on the networ #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -136,7 +136,7 @@ Sets the selected tracks' repeating playback state (default: `false`). Returns #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -160,7 +160,7 @@ Sets the selected tracks' volume mute state (default: `false`). Returns a refer #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -192,7 +192,7 @@ The SimpleAudio APIs use events internally for various pieces of fu #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -223,7 +223,7 @@ The SimpleAudio APIs use events internally for various pieces of fu #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -256,7 +256,7 @@ The SimpleAudio APIs use events internally for various pieces of fu #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -281,7 +281,7 @@ Pauses playback of the selected tracks. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -299,7 +299,7 @@ Begins playback of the selected tracks. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -317,7 +317,7 @@ Begins playback of the selected tracks or, failing that, sets the tracks to begi #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -335,7 +335,7 @@ Stops playback of the selected tracks. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -353,7 +353,7 @@ Sets the selected tracks' current time in seconds. Returns a reference to the c #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -378,7 +378,7 @@ Once unloaded, playback cannot occur until the selected tracks' data is loaded a #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -396,7 +396,7 @@ Sets the selected tracks' volume level (default: `1`). Returns a reference to t #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: diff --git a/docs/api/api-simpleaudio-audiotrack.md b/docs/api/api-simpleaudio-audiotrack.md index a8b7d37..b2b3bf7 100644 --- a/docs/api/api-simpleaudio-audiotrack.md +++ b/docs/api/api-simpleaudio-audiotrack.md @@ -17,7 +17,7 @@ Returns a new independent copy of the track. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -35,7 +35,7 @@ Returns the track's total playtime in seconds, `Infinity` for a stream, or `NaN` #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -57,7 +57,7 @@ The Config.audio.pa #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -80,7 +80,7 @@ Starts playback of the track and fades it from the specified volume level to `1` #### Since: -* `v2.28.0`: Basic syntax. +* `v2.28.0`: Introduced. * `v2.29.0`: Updated to return a `Promise`. #### Parameters: @@ -107,7 +107,7 @@ The Config.audio.pa #### Since: -* `v2.28.0`: Basic syntax. +* `v2.28.0`: Introduced. * `v2.29.0`: Updated to return a `Promise`. #### Parameters: @@ -134,7 +134,7 @@ This does not alter the volume level. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -156,7 +156,7 @@ This is an estimate calculated by the browser based upon the currently downloade #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -176,7 +176,7 @@ Returns whether, at least, the track's metadata has been loaded. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -196,7 +196,7 @@ Returns whether none of the track's data has been loaded. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -220,7 +220,7 @@ The <AudioTrack>. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -240,7 +240,7 @@ Returns whether any valid sources were registered. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -260,7 +260,7 @@ Returns whether playback of the track has ended. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -280,7 +280,7 @@ Returns whether a fade is in-progress on the track. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -300,7 +300,7 @@ Returns whether an error has occurred. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -320,7 +320,7 @@ Returns whether the track is loading data. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -342,7 +342,7 @@ Returns whether playback of the track has been paused. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -362,7 +362,7 @@ Returns whether the track is playing. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -382,7 +382,7 @@ Returns whether the track is seeking. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -402,7 +402,7 @@ Returns whether playback of the track has been stopped. #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Parameters: *none* @@ -422,7 +422,7 @@ Returns whether the track is currently unavailable for playback. Possible reaso #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -442,7 +442,7 @@ Returns whether the track's sources are currently unloaded. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -466,7 +466,7 @@ This should not be done lightly if your audio sources are on the networ #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -484,7 +484,7 @@ Gets or sets the track's repeating playback state (default: `false`). When used #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -511,7 +511,7 @@ Gets or sets the track's volume mute state (default: `false`). When used to set #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -546,7 +546,7 @@ The SimpleAudio APIs use events internally for various pieces of fu #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -577,7 +577,7 @@ The SimpleAudio APIs use events internally for various pieces of fu #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -610,7 +610,7 @@ The SimpleAudio APIs use events internally for various pieces of fu #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -635,7 +635,7 @@ Pauses playback of the track. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -653,7 +653,7 @@ Begins playback of the track. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -685,7 +685,7 @@ Begins playback of the track or, failing that, sets the track to begin playback #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -703,7 +703,7 @@ Returns how much remains of the track's total playtime in seconds, `Infinity` fo #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -721,7 +721,7 @@ Stops playback of the track. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -739,7 +739,7 @@ Gets or sets the track's current time in seconds. When used to set a value, ret #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -770,7 +770,7 @@ Once unloaded, playback cannot occur until the track's data is loaded again. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -788,7 +788,7 @@ Gets or sets the track's volume level (default: `1`). When used to set the volu #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: diff --git a/docs/api/api-simpleaudio.md b/docs/api/api-simpleaudio.md index 3a0e843..ba14767 100644 --- a/docs/api/api-simpleaudio.md +++ b/docs/api/api-simpleaudio.md @@ -36,7 +36,7 @@ This should not be done lightly if your audio sources are on the networ #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -58,7 +58,7 @@ This should not be done lightly if your audio sources are on the networ #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -76,7 +76,7 @@ Gets or sets the mute state for the master volume (default: `false`). #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -103,7 +103,7 @@ Gets or sets the mute-on-hidden state for the master volume (default: `false`). #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -130,7 +130,7 @@ Returns an [`AudioRunner` instance](#audiorunner-api) for the tracks matching th #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -178,7 +178,7 @@ Stops playback of *all* currently registered tracks. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -200,7 +200,7 @@ Once a track has been unloaded, playback cannot occur until it is reloaded. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -218,7 +218,7 @@ Gets or sets the master volume level (default: `1`). #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -248,7 +248,7 @@ Adds an audio track with the given track ID. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -283,7 +283,7 @@ Cannot delete tracks solely under the control of a playlist. #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: *none* @@ -309,7 +309,7 @@ Does not currently remove the track from either groups or playlists. Thus, any #### Since: -* `v2.28.0` +* `v2.28.0`: Introduced. #### Parameters: @@ -333,7 +333,7 @@ To affect multiple tracks and/or groups at once, see the @@ -21,7 +21,7 @@ The IFID (Interactive Fiction IDentifier) of the story, if any. #### Since: -* `v2.5.0` +* `v2.5.0`: Introduced. @@ -31,7 +31,7 @@ The title of the story. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. @@ -45,7 +45,7 @@ This method will not return "code" passages—i.e., script, stylesheet #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -69,7 +69,7 @@ This method will not detect "code" passages—i.e., script, stylesheet #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -93,7 +93,7 @@ This method will not return "code" passages—i.e., script, stylesheet #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -120,7 +120,7 @@ This method will not return "code" passages—i.e., script, stylesheet #### Since: -* `v2.11.0` +* `v2.11.0`: Introduced. #### Parameters: diff --git a/docs/api/api-template.md b/docs/api/api-template.md index c62803a..400f3ac 100644 --- a/docs/api/api-template.md +++ b/docs/api/api-template.md @@ -11,7 +11,7 @@ Returns the number of existing templates. #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Examples: @@ -29,7 +29,7 @@ Add new template(s). #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Parameters: @@ -90,7 +90,7 @@ Remove existing template(s). #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Parameters: @@ -114,7 +114,7 @@ Return the named template definition, or `null` on failure. #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Parameters: @@ -135,7 +135,7 @@ Returns whether the named template exists. #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Parameters: diff --git a/docs/api/api-ui.md b/docs/api/api-ui.md index af13db5..70d6c09 100644 --- a/docs/api/api-ui.md +++ b/docs/api/api-ui.md @@ -11,7 +11,7 @@ Opens the built-in alert dialog, displaying the given message to the player. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -33,7 +33,7 @@ Opens the built-in jump to dialog, which is populated via the [`bookmark` tag](# #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -54,7 +54,7 @@ Opens the built-in restart dialog, prompting the player to restart the story. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -74,7 +74,7 @@ Opens the built-in saves dialog. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -95,7 +95,7 @@ Opens the built-in settings dialog, which is populated from the [`Setting` API]( #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: @@ -116,7 +116,7 @@ Opens the built-in share dialog, which is populated from the [`StoryShare` passa #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Parameters: diff --git a/docs/api/api-uibar.md b/docs/api/api-uibar.md index 0366a83..1e7eeee 100644 --- a/docs/api/api-uibar.md +++ b/docs/api/api-uibar.md @@ -11,7 +11,7 @@ Completely removes the UI bar and all of its associated styles and event handler #### Since: -* `v2.17.0` +* `v2.17.0`: Introduced. #### Parameters: *none* @@ -33,7 +33,7 @@ This does not reclaim the space reserved for the UI bar. Thus, a call to @@ -409,7 +409,7 @@ $(document).on(':passageend', function (ev) { #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.31.0`: Deprecated. @@ -422,7 +422,7 @@ $(document).on(':passageend', function (ev) { #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.31.0`: Deprecated. @@ -435,7 +435,7 @@ $(document).on(':passageend', function (ev) { #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.31.0`: Deprecated. @@ -448,7 +448,7 @@ $(document).on(':passageend', function (ev) { #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.31.0`: Deprecated. @@ -475,7 +475,7 @@ Track event triggered when a fade completes normally. #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Event object properties: *none* @@ -501,7 +501,7 @@ Track event triggered when a fade starts. #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Event object properties: *none* @@ -531,7 +531,7 @@ Track event triggered when playback is stopped after [`.stop()`](#au #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Event object properties: *none* @@ -565,7 +565,7 @@ Global event triggered once just before the dismissal of the loading screen at s #### Since: -* `v2.31.0` +* `v2.31.0`: Introduced. #### Event object properties: *none* @@ -586,7 +586,7 @@ Global event triggered once just before the page is reloaded when [`Engine.resta #### Since: -* `v2.23.0` +* `v2.23.0`: Introduced. #### Event object properties: *none* @@ -619,7 +619,7 @@ Injecting additional <<type>> macro invocations aft #### Since: -* `v2.32.0` +* `v2.32.0`: Introduced. #### Event object properties: *none* @@ -640,7 +640,7 @@ Local event triggered on the typing wrapper when the typing of a section starts. #### Since: -* `v2.32.0`: Added. +* `v2.32.0`: Introduced * `v2.33.0`: Changed to a local event that bubbles up the DOM tree. #### Event object properties: *none* @@ -662,7 +662,7 @@ Local event triggered on the typing wrapper when the typing of a section stops. #### Since: -* `v2.32.0`: Added. +* `v2.32.0`: Introduced * `v2.33.0`: Changed to a local event that bubbles up the DOM tree. #### Event object properties: *none* diff --git a/docs/core/functions.md b/docs/core/functions.md index dda6da0..d5bdaab 100644 --- a/docs/core/functions.md +++ b/docs/core/functions.md @@ -15,7 +15,7 @@ Only the primitives, generic objects, some JavaScript natives (specifically: only necessary when you need to localize a variabl #### Since: -* `v2.14.0` +* `v2.14.0`: Introduced. #### Arguments: @@ -102,7 +102,7 @@ Sets story $variables and temporary \_variables based on the given expression. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -195,7 +195,7 @@ Unsets story $variables and temporary \_variables. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -218,7 +218,7 @@ This macro has been deprecated and should no longer be used. See the output, which is a reference to a local con #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: *none* @@ -295,7 +295,7 @@ If you only need to print the value of a TwineScript variable, then you may simp #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -323,7 +323,7 @@ If you only need to print the value of a TwineScript variable, then you may simp #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -347,7 +347,7 @@ Outputs the contents of the passage with the given name, optionally wrapping it #### Since: -* `v2.15.0` +* `v2.15.0`: Introduced. #### Arguments: @@ -382,7 +382,7 @@ The nobr special tag and >`. @@ -577,7 +577,7 @@ SugarCube does not trim whitespace from the contents of <<if>> #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -780,7 +780,7 @@ Repeatedly executes its contents. There are three forms: a conditional-only form ##### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.20.0`: Added range form. #### Notes @@ -894,7 +894,7 @@ Used within [`<>`](#macros-macro-for) macros. Terminates the execution of #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: *none* @@ -910,7 +910,7 @@ May eat line-breaks in certain situations. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: *none* @@ -926,7 +926,7 @@ SugarCube does not trim whitespace from the contents of <<case>&g #### Since: -* `v2.7.2` +* `v2.7.2`: Introduced. #### Arguments: @@ -993,7 +993,7 @@ This macro is functionally identical to <<lin #### Since: -* `v2.8.0` +* `v2.8.0`: Introduced. #### Arguments: @@ -1036,7 +1036,7 @@ Creates a checkbox, used to modify the value of the variable with the given name #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.32.0`: Added `autocheck` keyword. #### Arguments: @@ -1097,7 +1097,7 @@ Creates a cycling link, used to modify the value of the variable with the given #### Since: -* `v2.29.0` +* `v2.29.0`: Introduced. #### Arguments: @@ -1187,7 +1187,7 @@ If you simply need a passage link that modifies variables, both the >`. @@ -1591,7 +1591,7 @@ Creates a list of single-use passage links. Each link removes itself and all ot #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -1633,7 +1633,7 @@ If you want to return to a previously visited passage, rather than undo a moment #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -1697,7 +1697,7 @@ Normally, when both link and text arguments are accepted, the order is text then #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -1748,7 +1748,7 @@ If you want to undo previous moments within the history, rather than return to a #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -1827,7 +1827,7 @@ Adds classes to the selected element(s). #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -1854,7 +1854,7 @@ Executes its contents and appends the output to the contents of the selected ele #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.25.0`: Added `transition` and `t8n` keywords. #### Arguments: @@ -1911,7 +1911,7 @@ Most interactive elements—e.g., passage links, i #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -1948,7 +1948,7 @@ Executes its contents and prepends the output to the contents of the selected el #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.25.0`: Added `transition` and `t8n` keywords. #### Arguments: @@ -2005,7 +2005,7 @@ If you simply want to empty the selected element(s), not remove them outright, y #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -2038,7 +2038,7 @@ Removes classes from the selected element(s). #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -2066,7 +2066,7 @@ Executes its contents and replaces the contents of the selected element(s) with #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.25.0`: Added `transition` and `t8n` keywords. #### Arguments: @@ -2119,7 +2119,7 @@ Toggles classes on the selected element(s)—i.e., adding them if they don't exi #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -2165,7 +2165,7 @@ The Config.audio.pa #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.1.0`: Added `fadeoverto` action. * `v2.8.0`: Added group ID(s). * `v2.28.0`: Added `load` and `unload` actions. @@ -2299,7 +2299,7 @@ The StoryInit special passage< #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.28.0`: Deprecated the old optional format specifier syntax in favor of a new syntax (`formatId|`). #### Arguments: @@ -2335,7 +2335,7 @@ The StoryInit special passage< #### Since: -* `v2.19.0` +* `v2.19.0`: Introduced. #### Arguments: @@ -2375,7 +2375,7 @@ The StoryInit special passage< #### Since: -* `v2.8.0`: Basic syntax. +* `v2.8.0`: Introduced. * `v2.29.0`: Deprecated `<>` `copy` keyword in favor of `own`. #### Arguments: @@ -2421,7 +2421,7 @@ Controls the master audio settings. #### Since: -* `v2.8.0`: Basic syntax. +* `v2.8.0`: Introduced. * `v2.28.0`: Added `load`, `muteonhide`, `nomuteonhide`, and `unload` actions. #### Arguments: @@ -2491,7 +2491,7 @@ The Config.audio.pa #### Since: -* `v2.0.0`: Basic syntax, compatible with `<>`. +* `v2.0.0`: Introduced, compatible with `<>`. * `v2.1.0`: Added `fadeoverto` action. * `v2.8.0`: Added `listId` argument, compatible with `<>`. Deprecated `<>` compatible form. * `v2.28.0`: Added `load` and `unload` actions. @@ -2611,7 +2611,7 @@ You may not remove the predefined group IDs (:all, :loopedonce following any invoca #### Since: -* `v2.8.0` +* `v2.8.0`: Introduced. #### Arguments: *none* @@ -2698,7 +2698,7 @@ This macro has been deprecated and should no longer be used. See the >`. @@ -2736,7 +2736,7 @@ In most cases, you will not need to use <<goto>> as the #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -2772,7 +2772,7 @@ Passage navigation terminates all pending timed executions. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -2808,7 +2808,7 @@ Used within [`<>`](#macros-macro-repeat) macros. Terminates the executi #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: *none* @@ -2824,7 +2824,7 @@ Passage navigation terminates all pending timed executions. #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: @@ -2899,7 +2899,7 @@ The $args array-like object should be treated as though it were imm #### Since: -* `v2.0.0` +* `v2.0.0`: Introduced. #### Arguments: diff --git a/docs/core/markup.md b/docs/core/markup.md index 192d9ad..dc782ab 100644 --- a/docs/core/markup.md +++ b/docs/core/markup.md @@ -298,7 +298,7 @@ SugarCube provides a few special HTML attributes, which you may add to HTML tags #### Since: -* `v2.0.0`: Basic syntax. +* `v2.0.0`: Introduced. * `v2.24.0`: Added `data-passage` attribute support to `