narraleaf-studio 1.6.1 → 1.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_api.d.ts +173 -35
- package/package.json +1 -1
package/dist/_api.d.ts
CHANGED
|
@@ -105,7 +105,10 @@ type AgentErrorCode =
|
|
|
105
105
|
* itself, a file-system root).
|
|
106
106
|
*/
|
|
107
107
|
| "path_not_allowed"
|
|
108
|
-
/**
|
|
108
|
+
/**
|
|
109
|
+
* The project is not trusted: an agent may read it but not change it (every write, imports
|
|
110
|
+
* included), is given no folders outside it, and may not run its code (play-test, build).
|
|
111
|
+
*/
|
|
109
112
|
| "untrusted"
|
|
110
113
|
/** The call is valid but the operation is not possible in this state. */
|
|
111
114
|
| "unavailable"
|
|
@@ -129,7 +132,7 @@ export type PluginAgentToolErrorCode = Extract<AgentErrorCode, "invalid_args" |
|
|
|
129
132
|
/** An answer: text the model reads, optionally the same facts as data, optionally one picture. */
|
|
130
133
|
export type PluginAgentToolAnswer = {
|
|
131
134
|
text: string;
|
|
132
|
-
/**
|
|
135
|
+
/** Kept beside the text for Studio; not sent to the agent, which reads the text alone (`toToolResult`). Plain JSON; dropped when larger than 60 000 characters. */
|
|
133
136
|
data?: Record<string, unknown>;
|
|
134
137
|
/** One PNG or JPEG, base64 without a `data:` prefix. */
|
|
135
138
|
image?: {
|
|
@@ -2561,6 +2564,13 @@ declare const en: {
|
|
|
2561
2564
|
readonly allowWritesHint: "When off, agents can read projects but every change they try is refused.";
|
|
2562
2565
|
readonly fullAccess: "Allow agents full access";
|
|
2563
2566
|
readonly fullAccessHint: "Agents may change projects and read any folder without asking, except Studio's own folders, the home folder as a whole and drive roots.";
|
|
2567
|
+
readonly enableSetByLaunch: "Set by --agent when Studio starts in development.";
|
|
2568
|
+
readonly port: "Endpoint port";
|
|
2569
|
+
readonly portSetByLaunch: "Set by --agent-port when Studio starts in development.";
|
|
2570
|
+
readonly portHint: "Takes effect at once. Copy the connection configuration again for clients set up before.";
|
|
2571
|
+
readonly portInvalid: "Enter a port from {min} to {max}.";
|
|
2572
|
+
readonly portInUse: "Port {port} is in use by another program.";
|
|
2573
|
+
readonly portReserved: "Port {port} is reserved by the system.";
|
|
2564
2574
|
readonly endpoint: "Endpoint address";
|
|
2565
2575
|
readonly running: "Listening.";
|
|
2566
2576
|
readonly portMoved: "The endpoint moved to port {port}. Copy the connection configuration again for clients set up before.";
|
|
@@ -2878,7 +2888,7 @@ declare const en: {
|
|
|
2878
2888
|
readonly languagesTitle: "Languages";
|
|
2879
2889
|
readonly languagesHint: "Languages of the game itself. The source language is the one the story is written in; the rest are translated against it.";
|
|
2880
2890
|
readonly addLanguage: "Add language";
|
|
2881
|
-
readonly codePlaceholder: "Code
|
|
2891
|
+
readonly codePlaceholder: "Code, e.g. ja";
|
|
2882
2892
|
readonly namePlaceholder: "Display name";
|
|
2883
2893
|
readonly invalidCode: "Language codes may only contain letters, digits, and hyphens.";
|
|
2884
2894
|
readonly sourceBadge: "Source";
|
|
@@ -3034,7 +3044,7 @@ declare const en: {
|
|
|
3034
3044
|
readonly languagesTitle: "Voice languages";
|
|
3035
3045
|
readonly languagesHint: "Languages with voice-over. Independent of the text languages.";
|
|
3036
3046
|
readonly addLanguage: "Add voice language";
|
|
3037
|
-
readonly codePlaceholder: "Code
|
|
3047
|
+
readonly codePlaceholder: "Code, e.g. ja";
|
|
3038
3048
|
readonly namePlaceholder: "Display name";
|
|
3039
3049
|
readonly invalidCode: "Language codes may only contain letters, digits, and hyphens.";
|
|
3040
3050
|
readonly more: "More";
|
|
@@ -3056,6 +3066,14 @@ declare const en: {
|
|
|
3056
3066
|
readonly other: "{count} takes";
|
|
3057
3067
|
};
|
|
3058
3068
|
readonly importFailed: "Could not import the audio files";
|
|
3069
|
+
readonly replaceTakesTitle: "Replace existing takes";
|
|
3070
|
+
readonly replaceTakesMessage: {
|
|
3071
|
+
readonly one: "{count} file is named for a line that already has a take.";
|
|
3072
|
+
readonly other: "{count} files are named for lines that already have a take.";
|
|
3073
|
+
};
|
|
3074
|
+
readonly replaceTakesDetail: "Replacing writes each new file into the take it matches. Importing as new audio leaves the old takes in the asset library, linked to no line.";
|
|
3075
|
+
readonly replaceTakesImport: "Import as new audio";
|
|
3076
|
+
readonly replaceTakesReplace: "Replace takes";
|
|
3059
3077
|
readonly importScript: "Import recording script\u2026";
|
|
3060
3078
|
readonly importScriptCounts: "Applied {applied} ({unchanged} unchanged, {unknown} not voiced)";
|
|
3061
3079
|
readonly scriptRowCount: {
|
|
@@ -3096,8 +3114,9 @@ declare const en: {
|
|
|
3096
3114
|
readonly assign: "Assign audio";
|
|
3097
3115
|
readonly replace: "Replace audio";
|
|
3098
3116
|
readonly remove: "Remove voice";
|
|
3099
|
-
readonly play: "Play";
|
|
3100
|
-
readonly
|
|
3117
|
+
readonly play: "Play take";
|
|
3118
|
+
readonly showInStory: "Show in story";
|
|
3119
|
+
readonly stop: "Stop take";
|
|
3101
3120
|
readonly approve: "Approve";
|
|
3102
3121
|
readonly reject: "Return";
|
|
3103
3122
|
readonly clipMissing: "Clip missing";
|
|
@@ -3130,6 +3149,17 @@ declare const en: {
|
|
|
3130
3149
|
readonly unknown: "A story cannot be read, so orphan voice is not listed.";
|
|
3131
3150
|
};
|
|
3132
3151
|
};
|
|
3152
|
+
readonly script: {
|
|
3153
|
+
readonly column: {
|
|
3154
|
+
readonly filename: "File name";
|
|
3155
|
+
readonly character: "Speaker";
|
|
3156
|
+
readonly scene: "Scene";
|
|
3157
|
+
readonly line: "Line";
|
|
3158
|
+
readonly status: "Status";
|
|
3159
|
+
readonly note: "Note";
|
|
3160
|
+
readonly unitId: "Line ID";
|
|
3161
|
+
};
|
|
3162
|
+
};
|
|
3133
3163
|
};
|
|
3134
3164
|
readonly textSourceMigration: {
|
|
3135
3165
|
readonly message: {
|
|
@@ -3259,6 +3289,8 @@ declare const en: {
|
|
|
3259
3289
|
readonly replaceText: "text replacement";
|
|
3260
3290
|
readonly agentEdit: "agent edit";
|
|
3261
3291
|
readonly agentPluginEdit: "agent: {tool}";
|
|
3292
|
+
readonly importPsd: "PSD import";
|
|
3293
|
+
readonly importAudio: "audio import";
|
|
3262
3294
|
};
|
|
3263
3295
|
};
|
|
3264
3296
|
readonly agent: {
|
|
@@ -4136,6 +4168,7 @@ declare const en: {
|
|
|
4136
4168
|
readonly localization: "Translation Table";
|
|
4137
4169
|
readonly voice: "Voice Table";
|
|
4138
4170
|
readonly lint: "Problems";
|
|
4171
|
+
readonly search: "Search";
|
|
4139
4172
|
readonly other: "Other";
|
|
4140
4173
|
};
|
|
4141
4174
|
readonly catalog: {
|
|
@@ -4193,6 +4226,10 @@ declare const en: {
|
|
|
4193
4226
|
readonly cut: "Cut Nodes";
|
|
4194
4227
|
readonly paste: "Paste Nodes";
|
|
4195
4228
|
};
|
|
4229
|
+
readonly search: {
|
|
4230
|
+
readonly undo: "Undo Replace";
|
|
4231
|
+
readonly redo: "Redo Replace";
|
|
4232
|
+
};
|
|
4196
4233
|
readonly storyMotion: {
|
|
4197
4234
|
readonly undo: "Undo";
|
|
4198
4235
|
readonly redo: "Redo";
|
|
@@ -4356,6 +4393,23 @@ declare const en: {
|
|
|
4356
4393
|
readonly replaceAll: "Replace all";
|
|
4357
4394
|
readonly replaceRow: "Replace this line";
|
|
4358
4395
|
readonly replaceStale: "The project changed. Search again.";
|
|
4396
|
+
readonly replacedInScene: {
|
|
4397
|
+
readonly one: "Replaced {count} occurrence in {scene}";
|
|
4398
|
+
readonly other: "Replaced {count} occurrences in {scene}";
|
|
4399
|
+
};
|
|
4400
|
+
readonly replacedInScenes: {
|
|
4401
|
+
readonly one: "Replaced {count} occurrence in {scenes} scenes";
|
|
4402
|
+
readonly other: "Replaced {count} occurrences in {scenes} scenes";
|
|
4403
|
+
};
|
|
4404
|
+
readonly replacedUndoHint: "{key} in the Search panel undoes it in every scene.";
|
|
4405
|
+
readonly undoSkipped: {
|
|
4406
|
+
readonly one: "Replace not undone in {count} scene edited after it";
|
|
4407
|
+
readonly other: "Replace not undone in {count} scenes edited after it";
|
|
4408
|
+
};
|
|
4409
|
+
readonly redoSkipped: {
|
|
4410
|
+
readonly one: "Replace not redone in {count} scene edited after the undo";
|
|
4411
|
+
readonly other: "Replace not redone in {count} scenes edited after the undo";
|
|
4412
|
+
};
|
|
4359
4413
|
readonly groups: {
|
|
4360
4414
|
readonly scene: "Scenes";
|
|
4361
4415
|
readonly story: "Stories";
|
|
@@ -4823,6 +4877,20 @@ declare const en: {
|
|
|
4823
4877
|
readonly stage: {
|
|
4824
4878
|
readonly notOnStage: "Not on stage";
|
|
4825
4879
|
readonly builtin: "Built-in";
|
|
4880
|
+
readonly reserved: {
|
|
4881
|
+
readonly camera: "Camera";
|
|
4882
|
+
readonly background: "Scene background";
|
|
4883
|
+
readonly backgroundLayer: "Background layer";
|
|
4884
|
+
readonly displayableLayer: "Base layer";
|
|
4885
|
+
};
|
|
4886
|
+
readonly defaultName: {
|
|
4887
|
+
readonly text: "text";
|
|
4888
|
+
};
|
|
4889
|
+
readonly reservedHint: {
|
|
4890
|
+
readonly background: "The scene's background image";
|
|
4891
|
+
readonly backgroundLayer: "Built-in layer, behind everything";
|
|
4892
|
+
readonly displayableLayer: "Built-in default layer";
|
|
4893
|
+
};
|
|
4826
4894
|
};
|
|
4827
4895
|
readonly targetField: {
|
|
4828
4896
|
readonly label: "Target";
|
|
@@ -4962,10 +5030,6 @@ declare const en: {
|
|
|
4962
5030
|
readonly removeStarred: "Remove from starred";
|
|
4963
5031
|
readonly starredEmpty: "Starred commands are listed first in the \u201C/\u201D menu.";
|
|
4964
5032
|
};
|
|
4965
|
-
readonly music: {
|
|
4966
|
-
readonly missingAudio: "Missing audio";
|
|
4967
|
-
readonly none: "No music";
|
|
4968
|
-
};
|
|
4969
5033
|
readonly background: {
|
|
4970
5034
|
readonly missingImage: "Missing image";
|
|
4971
5035
|
readonly none: "No background";
|
|
@@ -4983,7 +5047,7 @@ declare const en: {
|
|
|
4983
5047
|
readonly times: "Times";
|
|
4984
5048
|
readonly character: "Character";
|
|
4985
5049
|
readonly speaker: "Speaker";
|
|
4986
|
-
readonly form: "
|
|
5050
|
+
readonly form: "Appearance";
|
|
4987
5051
|
readonly motion: "Motion";
|
|
4988
5052
|
readonly skin: "Skin";
|
|
4989
5053
|
readonly puppetParam: "Parameter";
|
|
@@ -5256,9 +5320,9 @@ declare const en: {
|
|
|
5256
5320
|
readonly video: "Video asset";
|
|
5257
5321
|
readonly character: "Character";
|
|
5258
5322
|
readonly characterOrName: "Character, or any name";
|
|
5259
|
-
readonly characterForm: "One of that character's
|
|
5323
|
+
readonly characterForm: "One of that character's appearances";
|
|
5260
5324
|
readonly puppet: {
|
|
5261
|
-
readonly motion: "A motion provided by the runtime (blank returns it to rest)";
|
|
5325
|
+
readonly motion: "A motion provided by the runtime, played in a loop (blank returns it to rest)";
|
|
5262
5326
|
readonly expression: "An expression provided by the runtime (blank clears it)";
|
|
5263
5327
|
readonly skin: "A skin provided by the runtime (blank restores the default)";
|
|
5264
5328
|
readonly param: "A numeric parameter of the model, by id";
|
|
@@ -5333,8 +5397,8 @@ declare const en: {
|
|
|
5333
5397
|
readonly createCharacterUnavailable: "Unavailable in a live session. Choose an existing character.";
|
|
5334
5398
|
readonly voiceOutdated: "Voice outdated, open voice table";
|
|
5335
5399
|
readonly voiceManage: "Open voice table";
|
|
5336
|
-
readonly voicePlay: "Play
|
|
5337
|
-
readonly voiceStop: "Stop
|
|
5400
|
+
readonly voicePlay: "Play take";
|
|
5401
|
+
readonly voiceStop: "Stop take";
|
|
5338
5402
|
};
|
|
5339
5403
|
readonly sceneEditor: {
|
|
5340
5404
|
readonly defaultSceneName: "Untitled Scene";
|
|
@@ -5347,16 +5411,6 @@ declare const en: {
|
|
|
5347
5411
|
readonly noDescription: "No description";
|
|
5348
5412
|
readonly defaultBackground: "Default background";
|
|
5349
5413
|
readonly clearBackground: "Clear background";
|
|
5350
|
-
readonly sceneMusic: "Scene music";
|
|
5351
|
-
readonly clearSceneMusic: "Clear scene music";
|
|
5352
|
-
readonly selectSceneMusic: "Select Scene Music";
|
|
5353
|
-
readonly sceneMusicVolume: "Volume";
|
|
5354
|
-
readonly sceneMusicLoop: "Loop";
|
|
5355
|
-
readonly sceneMusicFade: "Fade in (s)";
|
|
5356
|
-
readonly sceneMusicLoopRegion: "Loops {from}s to {to}s";
|
|
5357
|
-
readonly sceneMusicIntroLoop: "Plays {from}s, loops {loop}s to {to}s";
|
|
5358
|
-
readonly sceneMusicFromIn: "Starts at {from}s";
|
|
5359
|
-
readonly sceneMusicWholeClip: "Whole clip";
|
|
5360
5414
|
readonly selectDefaultBackground: "Select Default Background";
|
|
5361
5415
|
readonly tabInvalid: "Story scene editor tab is invalid.";
|
|
5362
5416
|
readonly loadingScene: "Loading story scene\u2026";
|
|
@@ -5646,7 +5700,7 @@ declare const en: {
|
|
|
5646
5700
|
};
|
|
5647
5701
|
readonly motion: {
|
|
5648
5702
|
readonly label: "Motion";
|
|
5649
|
-
readonly detail: "Set the motion a runtime-drawn character
|
|
5703
|
+
readonly detail: "Set the motion a runtime-drawn character loops until another row changes it";
|
|
5650
5704
|
};
|
|
5651
5705
|
readonly param: {
|
|
5652
5706
|
readonly label: "Parameter";
|
|
@@ -5674,7 +5728,7 @@ declare const en: {
|
|
|
5674
5728
|
};
|
|
5675
5729
|
readonly vfx: {
|
|
5676
5730
|
readonly label: "Ambience";
|
|
5677
|
-
readonly detail: "Declare a looping full-screen overlay
|
|
5731
|
+
readonly detail: "Declare a looping full-screen overlay (petals, rain, dust, light); /show reveals it";
|
|
5678
5732
|
};
|
|
5679
5733
|
readonly layer: {
|
|
5680
5734
|
readonly label: "Layer";
|
|
@@ -6010,6 +6064,7 @@ declare const en: {
|
|
|
6010
6064
|
readonly changeSpeaker: "Change speaker";
|
|
6011
6065
|
readonly speakerNameOnly: "{name} (name only)";
|
|
6012
6066
|
readonly openInspector: "Open inspector";
|
|
6067
|
+
readonly editAsText: "Edit as text";
|
|
6013
6068
|
readonly delete: "Delete";
|
|
6014
6069
|
};
|
|
6015
6070
|
readonly history: {
|
|
@@ -6072,6 +6127,7 @@ declare const en: {
|
|
|
6072
6127
|
readonly undo: "Undo story scene edit";
|
|
6073
6128
|
readonly redo: "Redo story scene edit";
|
|
6074
6129
|
readonly editRow: "Edit the active row (or open its inspector)";
|
|
6130
|
+
readonly editRowAsText: "Edit the active row as text";
|
|
6075
6131
|
readonly closeInspector: "Close the property editor";
|
|
6076
6132
|
readonly insertRow: "Insert a new story row below the active row";
|
|
6077
6133
|
readonly indent: "Indent selected story rows";
|
|
@@ -6140,6 +6196,7 @@ declare const en: {
|
|
|
6140
6196
|
unknownVariable: string;
|
|
6141
6197
|
unknownForm: string;
|
|
6142
6198
|
notPuppetCharacter: string;
|
|
6199
|
+
puppetNoExpressions: string;
|
|
6143
6200
|
ambiguousName: string;
|
|
6144
6201
|
conflictingParams: string;
|
|
6145
6202
|
positionOutOfRange: string;
|
|
@@ -6743,6 +6800,9 @@ declare const en: {
|
|
|
6743
6800
|
readonly history: {
|
|
6744
6801
|
readonly deleteAsset: "delete {name}";
|
|
6745
6802
|
readonly deleteGroup: "delete folder {name}";
|
|
6803
|
+
readonly replaceContent: "replace {name}";
|
|
6804
|
+
readonly convert: "convert {name}";
|
|
6805
|
+
readonly restoreFailed: "Could not restore \u201C{name}\u201D.";
|
|
6746
6806
|
};
|
|
6747
6807
|
readonly delete: {
|
|
6748
6808
|
readonly inUseTitle: "These assets are still in use";
|
|
@@ -6775,6 +6835,10 @@ declare const en: {
|
|
|
6775
6835
|
readonly confirmAction: "Replace";
|
|
6776
6836
|
readonly failedTitle: "Failed to replace asset contents";
|
|
6777
6837
|
readonly remoteUnsupported: "Remote assets have no local file to replace.";
|
|
6838
|
+
readonly notKept: "Could not replace \u201C{name}\u201D.";
|
|
6839
|
+
readonly reason: {
|
|
6840
|
+
readonly notKept: "A copy of the current file could not be saved.";
|
|
6841
|
+
};
|
|
6778
6842
|
};
|
|
6779
6843
|
readonly types: {
|
|
6780
6844
|
readonly image: "Images";
|
|
@@ -6961,7 +7025,7 @@ declare const en: {
|
|
|
6961
7025
|
readonly familyNoRuntime: "No runtime is installed here. The drawing runtime is set on the character.";
|
|
6962
7026
|
readonly family: {
|
|
6963
7027
|
readonly live2d: "Live2D Cubism";
|
|
6964
|
-
readonly live2dHint: "A folder holding a .model3.json
|
|
7028
|
+
readonly live2dHint: "A folder holding a .model3.json (Cubism 3 or later).";
|
|
6965
7029
|
readonly spine: "Spine";
|
|
6966
7030
|
readonly spineHint: "A folder holding a .skel or .json skeleton beside its .atlas.";
|
|
6967
7031
|
};
|
|
@@ -6989,7 +7053,7 @@ declare const en: {
|
|
|
6989
7053
|
readonly one: "Import {count} model";
|
|
6990
7054
|
readonly other: "Import {count} models";
|
|
6991
7055
|
};
|
|
6992
|
-
readonly blockedHint: "Models
|
|
7056
|
+
readonly blockedHint: "Models marked in red start unticked. Tick one to import it as-is.";
|
|
6993
7057
|
readonly problemCount: {
|
|
6994
7058
|
readonly one: "{count} problem";
|
|
6995
7059
|
readonly other: "{count} problems";
|
|
@@ -7001,6 +7065,7 @@ declare const en: {
|
|
|
7001
7065
|
readonly atlasMissing: "No atlas beside the skeleton; {path} was expected.";
|
|
7002
7066
|
readonly atlasEmpty: "{path} names no image.";
|
|
7003
7067
|
readonly nestedModel: "Holds another model, {path}, which would be copied with it.";
|
|
7068
|
+
readonly cubism2: "{path} is a Cubism 2 model. The Live2D Cubism runtime draws Cubism 3 and later models only.";
|
|
7004
7069
|
};
|
|
7005
7070
|
readonly role: {
|
|
7006
7071
|
readonly moc: "model file";
|
|
@@ -7633,6 +7698,7 @@ declare const en: {
|
|
|
7633
7698
|
readonly unknownVariant: "\u201C{element}\u201D has no such variant.";
|
|
7634
7699
|
readonly pageNotFound: "The page was not found in this project.";
|
|
7635
7700
|
readonly notALayer: "\u201C{node}\u201D: this page is not a layer, so nothing was closed.";
|
|
7701
|
+
readonly pageMusicInGame: "\u201C{node}\u201D: a game is running, and the story decides the music while it does. The page's music was not changed.";
|
|
7636
7702
|
readonly persistentVariableMissing: "The persistent variable this node uses no longer exists.";
|
|
7637
7703
|
readonly persistentVariableNoKey: "The persistent variable \u201C{name}\u201D has no storage key.";
|
|
7638
7704
|
readonly slotIsRunningGame: "This node needs a save in storage. The slot it received is the running game, which only \u201C{node}\u201D can inherit from.";
|
|
@@ -8487,6 +8553,7 @@ declare const en: {
|
|
|
8487
8553
|
readonly getVoiceVolume: "Get Voice Volume";
|
|
8488
8554
|
readonly hasReadText: "Has Read Text";
|
|
8489
8555
|
readonly playSound: "Play Sound";
|
|
8556
|
+
readonly playPageMusic: "Play Page Music";
|
|
8490
8557
|
readonly setAutoForward: "Set Auto Forward";
|
|
8491
8558
|
readonly setAutoForwardDelay: "Set Auto Forward Delay";
|
|
8492
8559
|
readonly setTextRevealDuration: "Set Text Fade In";
|
|
@@ -8533,6 +8600,7 @@ declare const en: {
|
|
|
8533
8600
|
readonly setVoiceFadeDuration: "Set Voice Fade Duration";
|
|
8534
8601
|
readonly setVoiceVolume: "Set Voice Volume";
|
|
8535
8602
|
readonly stopSound: "Stop Sound";
|
|
8603
|
+
readonly stopPageMusic: "Stop Page Music";
|
|
8536
8604
|
readonly pauseSound: "Pause Sound";
|
|
8537
8605
|
readonly resumeSound: "Resume Sound";
|
|
8538
8606
|
readonly setSoundVolume: "Set Sound Volume";
|
|
@@ -8962,6 +9030,8 @@ declare const en: {
|
|
|
8962
9030
|
readonly getTotalPlaytime: "Get Total Playtime";
|
|
8963
9031
|
};
|
|
8964
9032
|
readonly nodeDescription: {
|
|
9033
|
+
readonly playPageMusic: "Makes this the music of the page this graph runs on, for as long as the page is open, in place of the music set in its properties. The music playing hands over to it, and the same music already playing carries on. Going back to a page underneath brings that page's music back. Does nothing while a game is running: the story decides the music then.";
|
|
9034
|
+
readonly stopPageMusic: "Silences the page this graph runs on, for as long as it is open. The music playing fades out over Fade (s), or over its own fade when Fade (s) is not connected. Does nothing while a game is running: the story decides the music then.";
|
|
8965
9035
|
readonly getComponentParam: "The value this placement sets for the chosen parameter, or the parameter's default when it sets none. A Text parameter that reads from a translation key gives the key's name; Translation Key Text gives its words.";
|
|
8966
9036
|
readonly getPageParam: "The value the page was opened with for the chosen param, or the param's default when it was given none. Params are declared in the page's properties.";
|
|
8967
9037
|
readonly compareEqual: "True when A and B are the same value of the same type. Lists and objects are compared by their contents, an element by which element it is. The number 1 and the text \"1\" are not equal; an input left unconnected counts as Null.";
|
|
@@ -9113,6 +9183,7 @@ declare const en: {
|
|
|
9113
9183
|
readonly redescribe: "Read the model again";
|
|
9114
9184
|
readonly previewFailed: "This model could not be drawn";
|
|
9115
9185
|
readonly setupTitle: "Two things to set up";
|
|
9186
|
+
readonly setupTitleOne: "Left to set up: {item}";
|
|
9116
9187
|
readonly stepRuntime: "Drawing runtime";
|
|
9117
9188
|
readonly stepModel: "Model";
|
|
9118
9189
|
readonly runtimeInstalled: "Installed";
|
|
@@ -9265,6 +9336,7 @@ declare const en: {
|
|
|
9265
9336
|
readonly thumbnail: "Thumbnail";
|
|
9266
9337
|
readonly preview: "Preview";
|
|
9267
9338
|
readonly defaultAvatar: "Default dialog avatar";
|
|
9339
|
+
readonly defaultAvatarRuntimeHint: "A character drawn by a runtime has no generated avatar. Dialogue shows this one.";
|
|
9268
9340
|
readonly voiceTrack: "Voice track";
|
|
9269
9341
|
readonly voiceTrackMissing: "Missing track";
|
|
9270
9342
|
readonly voiceTrackEmpty: "Add a track under Voice in Project \u25B8 Game to give this character its own volume control.";
|
|
@@ -9301,7 +9373,8 @@ declare const en: {
|
|
|
9301
9373
|
readonly variant: "Variant: {name}";
|
|
9302
9374
|
readonly loading: "Loading preview\u2026";
|
|
9303
9375
|
readonly failed: "Preview failed";
|
|
9304
|
-
readonly
|
|
9376
|
+
readonly emptyLayered: "Add a layer with an image, or import a PSD, to preview";
|
|
9377
|
+
readonly emptyPreset: "Set an image for this pose to preview";
|
|
9305
9378
|
readonly noSize: "No size";
|
|
9306
9379
|
readonly noMetadata: "No metadata";
|
|
9307
9380
|
readonly zoomOut: "Zoom Out";
|
|
@@ -9426,6 +9499,26 @@ declare const en: {
|
|
|
9426
9499
|
readonly chooseClick: "Choose click sound";
|
|
9427
9500
|
readonly missing: "Missing sound";
|
|
9428
9501
|
};
|
|
9502
|
+
readonly music: {
|
|
9503
|
+
readonly title: "Music";
|
|
9504
|
+
readonly none: "No music";
|
|
9505
|
+
readonly keep: "Keep current music";
|
|
9506
|
+
readonly silent: "No music";
|
|
9507
|
+
readonly choosePage: "Choose page music";
|
|
9508
|
+
readonly chooseScene: "Choose scene music";
|
|
9509
|
+
readonly missing: "Missing music";
|
|
9510
|
+
readonly loop: "Loop";
|
|
9511
|
+
readonly fade: "Fade";
|
|
9512
|
+
readonly loops: "Loops";
|
|
9513
|
+
readonly loopRegion: "Loops {from}s to {to}s";
|
|
9514
|
+
readonly loopToEnd: "Loops {from}s to the end";
|
|
9515
|
+
readonly introLoopRegion: "Plays from {start}s, loops {from}s to {to}s";
|
|
9516
|
+
readonly introLoopToEnd: "Plays from {start}s, loops {from}s to the end";
|
|
9517
|
+
readonly once: "Plays once";
|
|
9518
|
+
readonly onceFrom: "Plays once from {from}s";
|
|
9519
|
+
readonly onceRegion: "Plays once {from}s to {to}s";
|
|
9520
|
+
readonly fadeSummary: "Fade {seconds}s";
|
|
9521
|
+
};
|
|
9429
9522
|
readonly linkedComponent: {
|
|
9430
9523
|
readonly missing: "Missing component";
|
|
9431
9524
|
readonly info: "Linked instance. Only its params and its position, size and rotation can be changed before unlinking.";
|
|
@@ -12112,8 +12205,9 @@ declare const en: {
|
|
|
12112
12205
|
readonly name: "Project Name";
|
|
12113
12206
|
readonly namePlaceholder: "Project name";
|
|
12114
12207
|
readonly appIdPlaceholder: "App identifier";
|
|
12115
|
-
readonly appIdHelper: "Lowercase letters, digits and hyphens, or a reverse-domain
|
|
12208
|
+
readonly appIdHelper: "Identifies the released game on the player's device. Lowercase letters, digits and hyphens, or a reverse-domain ID such as com.studio.game. Cannot be changed after the project is created.";
|
|
12116
12209
|
readonly appIdRequired: "App ID is required";
|
|
12210
|
+
readonly appIdInUse: "Already used by the project \u201C{name}\u201D on this machine";
|
|
12117
12211
|
readonly appIdInvalid: "App ID can only contain lowercase letters, numbers and hyphens, with dots only between the parts of a reverse-domain id such as com.studio.game";
|
|
12118
12212
|
readonly locationPlaceholder: "Project location";
|
|
12119
12213
|
readonly browseLocation: "Choose folder";
|
|
@@ -13616,6 +13710,12 @@ declare const en: {
|
|
|
13616
13710
|
readonly message: "This background is already on screen, so the transition changes nothing";
|
|
13617
13711
|
readonly help: string;
|
|
13618
13712
|
};
|
|
13713
|
+
readonly storyTagNameShared: {
|
|
13714
|
+
readonly title: "Tag name on two axes";
|
|
13715
|
+
readonly description: "A character with layered sprites using one tag name on two axes";
|
|
13716
|
+
readonly message: "The tag \"{tag}\" is on both \"{first}\" and \"{second}\"";
|
|
13717
|
+
readonly help: string;
|
|
13718
|
+
};
|
|
13619
13719
|
readonly blueprintReferenceMissing: {
|
|
13620
13720
|
readonly title: "Missing target";
|
|
13621
13721
|
readonly description: "A node naming something the project no longer has";
|
|
@@ -13897,13 +13997,13 @@ declare const en: {
|
|
|
13897
13997
|
readonly voiceMissing: {
|
|
13898
13998
|
readonly title: "Missing voice";
|
|
13899
13999
|
readonly description: "A line with no recording in a voiced language";
|
|
13900
|
-
readonly message: "No {
|
|
14000
|
+
readonly message: "No {language} recording";
|
|
13901
14001
|
readonly help: string;
|
|
13902
14002
|
};
|
|
13903
14003
|
readonly voiceStale: {
|
|
13904
14004
|
readonly title: "Stale voice";
|
|
13905
14005
|
readonly description: "The line changed after it was recorded";
|
|
13906
|
-
readonly message: "{
|
|
14006
|
+
readonly message: "{language} recording predates a change to the line";
|
|
13907
14007
|
readonly help: string;
|
|
13908
14008
|
};
|
|
13909
14009
|
readonly voiceOrphan: {
|
|
@@ -13911,8 +14011,8 @@ declare const en: {
|
|
|
13911
14011
|
readonly description: "A recording whose line no longer exists";
|
|
13912
14012
|
readonly message: "{recordings} with no line";
|
|
13913
14013
|
readonly recordingCount: {
|
|
13914
|
-
readonly one: "{count} {
|
|
13915
|
-
readonly other: "{count} {
|
|
14014
|
+
readonly one: "{count} {language} recording";
|
|
14015
|
+
readonly other: "{count} {language} recordings";
|
|
13916
14016
|
};
|
|
13917
14017
|
readonly help: string;
|
|
13918
14018
|
};
|
|
@@ -15059,6 +15159,10 @@ declare const en: {
|
|
|
15059
15159
|
readonly title: "Focus navigation";
|
|
15060
15160
|
readonly body: string;
|
|
15061
15161
|
};
|
|
15162
|
+
readonly pageMusic: {
|
|
15163
|
+
readonly title: "Page music";
|
|
15164
|
+
readonly body: string;
|
|
15165
|
+
};
|
|
15062
15166
|
readonly focusNavigationSettings: {
|
|
15063
15167
|
readonly title: "Navigation settings";
|
|
15064
15168
|
readonly body: string;
|
|
@@ -16578,6 +16682,22 @@ type UIPageAnimationSettings = {
|
|
|
16578
16682
|
/** Surfaces only: hold the incoming Page until this exit has finished. */
|
|
16579
16683
|
exitBlocking: boolean;
|
|
16580
16684
|
};
|
|
16685
|
+
type UIPageMusic = {
|
|
16686
|
+
/** Audio library asset id, or an audio asset set's id. */
|
|
16687
|
+
assetId: string;
|
|
16688
|
+
/** The project audio track it plays on (`ProjectAudioTrack.id`). Absent = the Music track. */
|
|
16689
|
+
audioTrackId?: string;
|
|
16690
|
+
/** 0-1 as authored. Absent = 1. */
|
|
16691
|
+
volume?: number;
|
|
16692
|
+
/** Absent = the track's own loop default (Music loops). */
|
|
16693
|
+
loop?: boolean;
|
|
16694
|
+
/** Fade-in as the page brings it in, and fade-out as it hands over, in milliseconds. Absent = 0. */
|
|
16695
|
+
fadeMs?: number;
|
|
16696
|
+
};
|
|
16697
|
+
type UIPageSilence = {
|
|
16698
|
+
silent: true;
|
|
16699
|
+
};
|
|
16700
|
+
type UIPageMusicSetting = UIPageMusic | UIPageSilence;
|
|
16581
16701
|
type UISurfaceBackgroundFillMode = "cover" | "contain" | "stretch" | "tile";
|
|
16582
16702
|
type UISurfaceBackgroundImage = {
|
|
16583
16703
|
/** Image library asset id. Absent background = absent field, so this is never empty. */
|
|
@@ -16707,6 +16827,12 @@ type UISurfaceSettings = {
|
|
|
16707
16827
|
* a scaled Surface keep showing the colour, so the two settings are not alternatives.
|
|
16708
16828
|
*/
|
|
16709
16829
|
backgroundImage?: UISurfaceBackgroundImage;
|
|
16830
|
+
/**
|
|
16831
|
+
* What a page does to the music while it is the page on screen: play this, or silence. Absent
|
|
16832
|
+
* keeps whatever is playing (see `pageMusic.ts`). Read for pages only: a Game UI is drawn over
|
|
16833
|
+
* the running scene, whose own music is what plays there.
|
|
16834
|
+
*/
|
|
16835
|
+
music?: UIPageMusicSetting;
|
|
16710
16836
|
pageAnimation?: UIPageAnimationSettings;
|
|
16711
16837
|
/** Where the focus starts when this Surface opens, and whether it is put there. See `navigation.ts`. */
|
|
16712
16838
|
navigation?: UISurfaceNavigation;
|
|
@@ -17000,6 +17126,11 @@ type PsdFingerprintSlot = {
|
|
|
17000
17126
|
layerId: string;
|
|
17001
17127
|
/** The tag it feeds, when that layer is bound to an axis. Absent for a constant layer. */
|
|
17002
17128
|
tagId?: string;
|
|
17129
|
+
/**
|
|
17130
|
+
* The image this import put in that slot. A re-import writes the layer's new bytes into it, as
|
|
17131
|
+
* long as the slot still shows it. Absent in a fingerprint written before it was recorded.
|
|
17132
|
+
*/
|
|
17133
|
+
assetId?: string;
|
|
17003
17134
|
};
|
|
17004
17135
|
type PsdFingerprint = {
|
|
17005
17136
|
fileName: string;
|
|
@@ -19812,6 +19943,7 @@ declare const HELP_TOPIC_IDS: readonly [
|
|
|
19812
19943
|
"inputActionsInBlueprints",
|
|
19813
19944
|
"focusNavigation",
|
|
19814
19945
|
"focusNavigationSettings",
|
|
19946
|
+
"pageMusic",
|
|
19815
19947
|
"uiComponents",
|
|
19816
19948
|
"blueprints",
|
|
19817
19949
|
"scripts",
|
|
@@ -22435,6 +22567,7 @@ export type PluginWidgetModule = {
|
|
|
22435
22567
|
createFloatingToolbarItems?(context: PluginWidgetFloatingToolbarContext): FloatingToolbarItem[];
|
|
22436
22568
|
createLayoutSizeField?(context: PluginWidgetLayoutSizeFieldContext): FieldDefinition<PluginWidgetInspectorData> | null | undefined;
|
|
22437
22569
|
};
|
|
22570
|
+
type ModelFamily = "live2d" | "spine";
|
|
22438
22571
|
/**
|
|
22439
22572
|
* Caller-defined section (e.g. built-in presets) shown as a collapsible group in the asset list.
|
|
22440
22573
|
* Workspace filter chips do not apply; only the search box filters `assets` (same rules as project assets).
|
|
@@ -22462,6 +22595,11 @@ export interface AssetSelectorProps {
|
|
|
22462
22595
|
* Return null/undefined to fall back to the default fetch path.
|
|
22463
22596
|
*/
|
|
22464
22597
|
resolveAssetPreviewUrl?: (asset: Asset) => Promise<string | null | undefined>;
|
|
22598
|
+
/**
|
|
22599
|
+
* For a model picker: the kind of model the caller draws, which the import wizard opens on. Left
|
|
22600
|
+
* out, the wizard asks.
|
|
22601
|
+
*/
|
|
22602
|
+
modelFamily?: ModelFamily;
|
|
22465
22603
|
onClose: () => void;
|
|
22466
22604
|
onConfirm: (assets: Asset[]) => void;
|
|
22467
22605
|
}
|
package/package.json
CHANGED