@patterkit/model 0.2.0 → 0.2.1

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/index.cjs CHANGED
@@ -20,6 +20,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/index.ts
21
21
  var index_exports = {};
22
22
  __export(index_exports, {
23
+ COMMON_GENDERS: () => COMMON_GENDERS,
23
24
  DEFAULT_CAPTION_CHARACTER: () => DEFAULT_CAPTION_CHARACTER,
24
25
  DEFAULT_CAPTION_DELIMITERS: () => DEFAULT_CAPTION_DELIMITERS,
25
26
  DEFAULT_DOCUMENTATION_CLASSES: () => DEFAULT_DOCUMENTATION_CLASSES,
@@ -61,6 +62,7 @@ function effectiveGameId(entity) {
61
62
  const g = entity.gameId?.trim();
62
63
  return g ? g : gameIdify(entity.name);
63
64
  }
65
+ var COMMON_GENDERS = ["male", "female", "neuter"];
64
66
  var DEFAULT_WRITING_STATUSES = [
65
67
  { name: "stub", colour: 0 },
66
68
  // red
@@ -108,6 +110,7 @@ var DEFAULT_CAPTION_DELIMITERS = { open: "[", close: "]" };
108
110
  var DEFAULT_CAPTION_CHARACTER = "SFX";
109
111
  // Annotate the CommonJS export names for ESM import in node:
110
112
  0 && (module.exports = {
113
+ COMMON_GENDERS,
111
114
  DEFAULT_CAPTION_CHARACTER,
112
115
  DEFAULT_CAPTION_DELIMITERS,
113
116
  DEFAULT_DOCUMENTATION_CLASSES,
package/dist/index.d.cts CHANGED
@@ -296,8 +296,15 @@ interface CoverageDriver {
296
296
  /** A character's grammatical gender, for localisation. Translators need it to inflect the speaker's own
297
297
  * lines in gendered languages (adjectives, participles, pronouns), which the source text alone often
298
298
  * cannot tell them. Absent means "not specified". Authoring-only: it never reaches the runtime bundle,
299
- * but it IS carried into the localisation handoff formats as translator context (spec §14). */
300
- type GrammaticalGender = "male" | "female" | "neuter";
299
+ * but it IS carried into the localisation handoff formats as translator context (spec §14).
300
+ *
301
+ * Free text, not a closed set: real languages need more than three genders (common/utrum, animate/
302
+ * inanimate, and so on) and translators name them differently. `COMMON_GENDERS` seeds the editor's
303
+ * auto-suggest so the everyday values stay spelled consistently; anything else is still valid. */
304
+ type GrammaticalGender = string;
305
+ /** The everyday grammatical genders the Cast editor offers as auto-suggest defaults. Not exhaustive and
306
+ * not enforced - a project may use any string (see `GrammaticalGender`). */
307
+ declare const COMMON_GENDERS: readonly ["male", "female", "neuter"];
301
308
  interface CastMember {
302
309
  /** Canonical speaker name (matched by a beat's `character`); language-neutral key. */
303
310
  name: string;
@@ -819,4 +826,4 @@ declare const DEFAULT_CAPTION_DELIMITERS: CaptionDelimiters;
819
826
  * captions are off). Applies even to a project that pins no `closedCaptions`. */
820
827
  declare const DEFAULT_CAPTION_CHARACTER = "SFX";
821
828
 
822
- export { type AuthoringFile, type Beat, type Block, type Bundle, type BundleCastMember, type CaptionDelimiters, type CastMember, type Comment, type CommentMessage, type CommentRange, type CompiledBlock, type CompiledEffect, type CompiledGroup, type CompiledScene, type CompiledSnippet, type CoverageDriver, DEFAULT_CAPTION_CHARACTER, DEFAULT_CAPTION_DELIMITERS, DEFAULT_DOCUMENTATION_CLASSES, DEFAULT_RECORDING_STATUSES, DEFAULT_WRITING_STATUSES, type DocLine, type DocumentationClass, type EditRecord, type Effect, type EstimatingConfig, type Expression, type FlowFile, type FlowNode, type GameData, type GameDataField, type GameDataFieldType, type GameDataFields, type GameDataNodeKind, type GameEventBeat, type GrammaticalGender, type Group, type HostScopeDecl, type HostScopeRegistry, type HostScopeSpec, type Jump, type JumpTarget, type LineBeat, type LocaleFile, PROJECT_LOCALE_SCENE, type ProjectDictionary, type ProjectFile, type PromptBeat, type PropertyDecl, type PropertyType, RERECORD_STATUS, RERECORD_STATUS_DECL, type RecordingFolder, type RecordingStatusDecl, type ScalarValue, type Scene, type Selector, type SelectorExhaust, type SelectorOrder, type SequenceOptions, type Snippet, type Suggestion, type TextBeat, type VcsKind, type WritingStatusDecl, castStringKey, deriveRecordingFolders, effectiveGameId, gameIdify, isContentlessBeat, isValidGameId, walkNodes };
829
+ export { type AuthoringFile, type Beat, type Block, type Bundle, type BundleCastMember, COMMON_GENDERS, type CaptionDelimiters, type CastMember, type Comment, type CommentMessage, type CommentRange, type CompiledBlock, type CompiledEffect, type CompiledGroup, type CompiledScene, type CompiledSnippet, type CoverageDriver, DEFAULT_CAPTION_CHARACTER, DEFAULT_CAPTION_DELIMITERS, DEFAULT_DOCUMENTATION_CLASSES, DEFAULT_RECORDING_STATUSES, DEFAULT_WRITING_STATUSES, type DocLine, type DocumentationClass, type EditRecord, type Effect, type EstimatingConfig, type Expression, type FlowFile, type FlowNode, type GameData, type GameDataField, type GameDataFieldType, type GameDataFields, type GameDataNodeKind, type GameEventBeat, type GrammaticalGender, type Group, type HostScopeDecl, type HostScopeRegistry, type HostScopeSpec, type Jump, type JumpTarget, type LineBeat, type LocaleFile, PROJECT_LOCALE_SCENE, type ProjectDictionary, type ProjectFile, type PromptBeat, type PropertyDecl, type PropertyType, RERECORD_STATUS, RERECORD_STATUS_DECL, type RecordingFolder, type RecordingStatusDecl, type ScalarValue, type Scene, type Selector, type SelectorExhaust, type SelectorOrder, type SequenceOptions, type Snippet, type Suggestion, type TextBeat, type VcsKind, type WritingStatusDecl, castStringKey, deriveRecordingFolders, effectiveGameId, gameIdify, isContentlessBeat, isValidGameId, walkNodes };
package/dist/index.d.ts CHANGED
@@ -296,8 +296,15 @@ interface CoverageDriver {
296
296
  /** A character's grammatical gender, for localisation. Translators need it to inflect the speaker's own
297
297
  * lines in gendered languages (adjectives, participles, pronouns), which the source text alone often
298
298
  * cannot tell them. Absent means "not specified". Authoring-only: it never reaches the runtime bundle,
299
- * but it IS carried into the localisation handoff formats as translator context (spec §14). */
300
- type GrammaticalGender = "male" | "female" | "neuter";
299
+ * but it IS carried into the localisation handoff formats as translator context (spec §14).
300
+ *
301
+ * Free text, not a closed set: real languages need more than three genders (common/utrum, animate/
302
+ * inanimate, and so on) and translators name them differently. `COMMON_GENDERS` seeds the editor's
303
+ * auto-suggest so the everyday values stay spelled consistently; anything else is still valid. */
304
+ type GrammaticalGender = string;
305
+ /** The everyday grammatical genders the Cast editor offers as auto-suggest defaults. Not exhaustive and
306
+ * not enforced - a project may use any string (see `GrammaticalGender`). */
307
+ declare const COMMON_GENDERS: readonly ["male", "female", "neuter"];
301
308
  interface CastMember {
302
309
  /** Canonical speaker name (matched by a beat's `character`); language-neutral key. */
303
310
  name: string;
@@ -819,4 +826,4 @@ declare const DEFAULT_CAPTION_DELIMITERS: CaptionDelimiters;
819
826
  * captions are off). Applies even to a project that pins no `closedCaptions`. */
820
827
  declare const DEFAULT_CAPTION_CHARACTER = "SFX";
821
828
 
822
- export { type AuthoringFile, type Beat, type Block, type Bundle, type BundleCastMember, type CaptionDelimiters, type CastMember, type Comment, type CommentMessage, type CommentRange, type CompiledBlock, type CompiledEffect, type CompiledGroup, type CompiledScene, type CompiledSnippet, type CoverageDriver, DEFAULT_CAPTION_CHARACTER, DEFAULT_CAPTION_DELIMITERS, DEFAULT_DOCUMENTATION_CLASSES, DEFAULT_RECORDING_STATUSES, DEFAULT_WRITING_STATUSES, type DocLine, type DocumentationClass, type EditRecord, type Effect, type EstimatingConfig, type Expression, type FlowFile, type FlowNode, type GameData, type GameDataField, type GameDataFieldType, type GameDataFields, type GameDataNodeKind, type GameEventBeat, type GrammaticalGender, type Group, type HostScopeDecl, type HostScopeRegistry, type HostScopeSpec, type Jump, type JumpTarget, type LineBeat, type LocaleFile, PROJECT_LOCALE_SCENE, type ProjectDictionary, type ProjectFile, type PromptBeat, type PropertyDecl, type PropertyType, RERECORD_STATUS, RERECORD_STATUS_DECL, type RecordingFolder, type RecordingStatusDecl, type ScalarValue, type Scene, type Selector, type SelectorExhaust, type SelectorOrder, type SequenceOptions, type Snippet, type Suggestion, type TextBeat, type VcsKind, type WritingStatusDecl, castStringKey, deriveRecordingFolders, effectiveGameId, gameIdify, isContentlessBeat, isValidGameId, walkNodes };
829
+ export { type AuthoringFile, type Beat, type Block, type Bundle, type BundleCastMember, COMMON_GENDERS, type CaptionDelimiters, type CastMember, type Comment, type CommentMessage, type CommentRange, type CompiledBlock, type CompiledEffect, type CompiledGroup, type CompiledScene, type CompiledSnippet, type CoverageDriver, DEFAULT_CAPTION_CHARACTER, DEFAULT_CAPTION_DELIMITERS, DEFAULT_DOCUMENTATION_CLASSES, DEFAULT_RECORDING_STATUSES, DEFAULT_WRITING_STATUSES, type DocLine, type DocumentationClass, type EditRecord, type Effect, type EstimatingConfig, type Expression, type FlowFile, type FlowNode, type GameData, type GameDataField, type GameDataFieldType, type GameDataFields, type GameDataNodeKind, type GameEventBeat, type GrammaticalGender, type Group, type HostScopeDecl, type HostScopeRegistry, type HostScopeSpec, type Jump, type JumpTarget, type LineBeat, type LocaleFile, PROJECT_LOCALE_SCENE, type ProjectDictionary, type ProjectFile, type PromptBeat, type PropertyDecl, type PropertyType, RERECORD_STATUS, RERECORD_STATUS_DECL, type RecordingFolder, type RecordingStatusDecl, type ScalarValue, type Scene, type Selector, type SelectorExhaust, type SelectorOrder, type SequenceOptions, type Snippet, type Suggestion, type TextBeat, type VcsKind, type WritingStatusDecl, castStringKey, deriveRecordingFolders, effectiveGameId, gameIdify, isContentlessBeat, isValidGameId, walkNodes };
package/dist/index.js CHANGED
@@ -23,6 +23,7 @@ function effectiveGameId(entity) {
23
23
  const g = entity.gameId?.trim();
24
24
  return g ? g : gameIdify(entity.name);
25
25
  }
26
+ var COMMON_GENDERS = ["male", "female", "neuter"];
26
27
  var DEFAULT_WRITING_STATUSES = [
27
28
  { name: "stub", colour: 0 },
28
29
  // red
@@ -69,6 +70,7 @@ function castStringKey(name) {
69
70
  var DEFAULT_CAPTION_DELIMITERS = { open: "[", close: "]" };
70
71
  var DEFAULT_CAPTION_CHARACTER = "SFX";
71
72
  export {
73
+ COMMON_GENDERS,
72
74
  DEFAULT_CAPTION_CHARACTER,
73
75
  DEFAULT_CAPTION_DELIMITERS,
74
76
  DEFAULT_DOCUMENTATION_CLASSES,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@patterkit/model",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Patter data-model types: source (scene/block/group/snippet/beat/jump), project, locale, authoring. The shape source-of-truth.",
5
5
  "type": "module",
6
6
  "license": "MIT",