linked-rolls 0.9.1 → 0.10.0

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/README.md CHANGED
@@ -70,9 +70,9 @@ const midi = emulation.asMIDI()
70
70
 
71
71
  The emulator is an optional peer dependency: an application that uses the
72
72
  T-100 system installs `welte-t100-emulator` itself, and one that only
73
- reads editions does not need it. For development on both at once, a
74
- checkout of [welte-t100](https://github.com/pfefferniels/welte-t100)
75
- beside this repository, declared as `file:../welte-t100`, works too.
73
+ reads editions does not need it. For development on both at once, `npm
74
+ link` a checkout of [welte-t100](https://github.com/pfefferniels/welte-t100)
75
+ into this repository.
76
76
 
77
77
  ### Alignment, order and pairing
78
78
 
package/lib/Agent.d.ts CHANGED
@@ -16,12 +16,12 @@ export interface Named {
16
16
  */
17
17
  sameAs: string[];
18
18
  }
19
- export declare const editorialRoles: readonly ["editor", "transcription", "collation", "encoding", "commentary", "proofreading"];
19
+ export declare const editorialRoles: readonly ['editor', 'transcription', 'collation', 'encoding', 'commentary', 'proofreading'];
20
20
  /**
21
21
  * The part an editor took in the editorial work.
22
22
  */
23
23
  export type EditorialRole = typeof editorialRoles[number];
24
- declare const nonEditorialRoles: readonly ["pianist", "publisher"];
24
+ declare const nonEditorialRoles: readonly ['pianist', 'publisher'];
25
25
  /**
26
26
  * The role an agent plays in the context of the edition.
27
27
  */
@@ -1,6 +1,6 @@
1
1
  import { WithNote, WithId } from "./utils";
2
2
  import { Person, WithActor } from "./Agent";
3
- export declare const certainties: readonly ["true", "likely", "possible", "unlikely", "false"];
3
+ export declare const certainties: readonly ['true', 'likely', 'possible', 'unlikely', 'false'];
4
4
  /**
5
5
  * Certainty levels for beliefs, ranging from 'true' to 'false'
6
6
  * and some values in between.
package/lib/Edit.d.ts CHANGED
@@ -1,7 +1,13 @@
1
1
  import { Assumption } from "./Assumption";
2
2
  import { AnySymbol } from "./Symbol";
3
3
  import { WithId } from "./utils";
4
- export declare const editTypes: readonly ["short-dynamic-differentation", "additional-accent", "add-redundancy", "remove-redundancy", "replace-with-equivalent", "shift", "correct-error", "shorten", "prolong"];
4
+ export declare const editTypes: readonly [
5
+ /**
6
+ * An additional accent that can only be encoded with
7
+ * sforzando on/off due to the short space left between
8
+ * the notes to be differentiated.
9
+ */
10
+ 'short-dynamic-differentation', 'additional-accent', 'add-redundancy', 'remove-redundancy', 'replace-with-equivalent', 'shift', 'correct-error', 'shorten', 'prolong'];
5
11
  /**
6
12
  * The type of editorial change applied to a symbol or set of symbols.
7
13
  * Classifies the nature of the edit, e.g. whether it corrects an error,
package/lib/Feature.d.ts CHANGED
@@ -53,7 +53,7 @@ export interface VerticalSpan {
53
53
  */
54
54
  to?: Track;
55
55
  }
56
- export declare const featureTypes: readonly ["Hole", "Writing", "Mark", "GluedOn"];
56
+ export declare const featureTypes: readonly ['Hole', 'Writing', 'Mark', 'GluedOn'];
57
57
  export type FeatureType = typeof featureTypes[number];
58
58
  /**
59
59
  * A physical feature on the roll, e.g. a perforation, a tear, a mark, etc.,
@@ -111,7 +111,7 @@ export interface Hole extends RollFeature<'Hole', typeof conditions.Hole[number]
111
111
  */
112
112
  export interface Trace<T extends FeatureType> extends RollFeature<T, typeof conditions.Mark[number]> {
113
113
  }
114
- export declare const writingMethods: readonly ["Print", "Handwriting", "Stamp"];
114
+ export declare const writingMethods: readonly ['Print', 'Handwriting', 'Stamp'];
115
115
  /**
116
116
  * The method by which a writing was produced on the roll:
117
117
  * printed, handwritten, or stamped.
package/lib/Quantity.js CHANGED
@@ -1,12 +1,12 @@
1
1
  const quantity = (value) => value;
2
- export const mm = (quantity);
3
- export const cm = (quantity);
4
- export const px = (quantity);
5
- export const track = (quantity);
6
- export const seconds = (quantity);
7
- export const milliseconds = (quantity);
8
- export const feetPerMinute = (quantity);
9
- export const metersPerMinute = (quantity);
2
+ export const mm = quantity;
3
+ export const cm = quantity;
4
+ export const px = quantity;
5
+ export const track = quantity;
6
+ export const seconds = quantity;
7
+ export const milliseconds = quantity;
8
+ export const feetPerMinute = quantity;
9
+ export const metersPerMinute = quantity;
10
10
  // The second operand takes its unit from the first. Inferred from both,
11
11
  // TypeScript would unite two units rather than reject them.
12
12
  export const add = (a, b) => quantity(a + b);
package/lib/RollCopy.d.ts CHANGED
@@ -33,7 +33,7 @@ export interface GeneralRollCondition extends ConditionState<'general'> {
33
33
  * to a roll copy, annotatable with a belief about its certainty.
34
34
  */
35
35
  export type RollConditionAssignment = ObjectAssumption<GeneralRollCondition | PaperStretch>;
36
- export declare const rollConditions: readonly ["general", "paper-stretch"];
36
+ export declare const rollConditions: readonly ['general', 'paper-stretch'];
37
37
  /**
38
38
  * A shift correction applied to a roll copy to align it
39
39
  * with other copies. The shift is defined as horizontal
package/lib/Symbol.d.ts CHANGED
@@ -63,7 +63,7 @@ export interface Perforation<T extends string> extends Symbol<T> {
63
63
  */
64
64
  pairedWith?: ReferenceAssumption;
65
65
  }
66
- export declare const placementRelations: readonly ["alignedWith", "before", "after"];
66
+ export declare const placementRelations: readonly ['alignedWith', 'before', 'after'];
67
67
  /** The ways a perforation may be placed relative to another. */
68
68
  export type PlacementRelation = typeof placementRelations[number];
69
69
  type Placeable = Partial<Record<PlacementRelation, ReferenceAssumption>>;
package/lib/Version.d.ts CHANGED
@@ -1,7 +1,16 @@
1
1
  import { Edit } from "./Edit";
2
2
  import { ReferenceAssumption } from "./Assumption";
3
3
  import { WithId, WithNote, WithType } from "./utils";
4
- export declare const versionTypes: readonly ["edition", "unicum"];
4
+ export declare const versionTypes: readonly [
5
+ /**
6
+ * The roll is in a state where it is (possibly) used as
7
+ * the master roll for several new reproductions.
8
+ */
9
+ 'edition',
10
+ /**
11
+ * A version that exists only on one specific copy of a roll.
12
+ */
13
+ 'unicum'];
5
14
  /**
6
15
  * The type of a version. An 'edition' version may serve as the
7
16
  * master for several roll copies; a 'unicum' version exists only
package/lib/schema.json CHANGED
@@ -1172,10 +1172,8 @@
1172
1172
  "type": "object"
1173
1173
  },
1174
1174
  "conditionType": {
1175
+ "const": "faded",
1175
1176
  "description": "The kind of condition, from the list the roll or the kind of feature allows. [ontology: crm:P2 has type]",
1176
- "enum": [
1177
- "faded"
1178
- ],
1179
1177
  "type": "string"
1180
1178
  },
1181
1179
  "description": {
@@ -2,7 +2,7 @@ import { TrackerBar } from "../../TrackerBar";
2
2
  /**
3
3
  * The commands of the Welte-Mignon T-100, as its tracker bar reads them.
4
4
  */
5
- export declare const welteT100ExpressionTypes: readonly ["SustainPedalOn", "SustainPedalOff", "SoftPedalOn", "SoftPedalOff", "MezzoforteOff", "MezzoforteOn", "SlowCrescendoOn", "SlowCrescendoOff", "ForzandoOn", "ForzandoOff", "MotorOff", "MotorOn", "Rewind", "ElectricCutOff"];
5
+ export declare const welteT100ExpressionTypes: readonly ['SustainPedalOn', 'SustainPedalOff', 'SoftPedalOn', 'SoftPedalOff', 'MezzoforteOff', 'MezzoforteOn', 'SlowCrescendoOn', 'SlowCrescendoOff', 'ForzandoOn', 'ForzandoOff', 'MotorOff', 'MotorOn', 'Rewind', 'ElectricCutOff'];
6
6
  export type WelteT100ExpressionType = typeof welteT100ExpressionTypes[number];
7
7
  /**
8
8
  * Welte-Mignon T-100 ("red Welte"), cf. Hagmann, pp. 75 and 178.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "linked-rolls",
3
- "version": "0.9.1",
3
+ "version": "0.10.0",
4
4
  "description": "Digital editions of piano rolls: import, collation, editorial assumptions, JSON-LD export, and emulation through a reproducing system",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -35,10 +35,10 @@
35
35
  },
36
36
  "devDependencies": {
37
37
  "@types/node": "^24.13.3",
38
- "typescript": "^5.6.0-dev.20240809",
38
+ "typescript": "^7.0.2",
39
39
  "vite": "^8.2.2",
40
40
  "vitest": "^5.0.0",
41
- "welte-t100-emulator": "file:../welte-t100"
41
+ "welte-t100-emulator": "^0.4.0"
42
42
  },
43
43
  "peerDependencies": {
44
44
  "welte-t100-emulator": "^0.4.0"
@@ -49,11 +49,11 @@
49
49
  }
50
50
  },
51
51
  "dependencies": {
52
- "ajv": "^8.17.1",
52
+ "ajv": "^8.20.0",
53
53
  "aton": "^0.0.4",
54
- "immer": "^10.1.3",
55
- "midifile-ts": "^1.5.1",
56
- "ts-json-schema-generator": "^2.4.0",
54
+ "immer": "^11.1.18",
55
+ "midifile-ts": "^1.5.2",
56
+ "ts-json-schema-generator": "^2.9.0",
57
57
  "uuid": "^14.0.2"
58
58
  }
59
59
  }