p2s_mapper 1.4.0 → 2.1.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.
Files changed (134) hide show
  1. package/README.md +220 -39
  2. package/dist/alignmentQuality.d.ts +5 -5
  3. package/dist/alphaFoldModels.d.ts +4 -4
  4. package/dist/alphaFoldModels.js +4 -4
  5. package/dist/chooseMappedEntity.d.ts +11 -13
  6. package/dist/chooseMappedEntity.js +9 -12
  7. package/dist/chooseMappedEntity.js.map +1 -1
  8. package/dist/coordinates.d.ts +19 -19
  9. package/dist/coordinates.js.map +1 -1
  10. package/dist/dbIds.d.ts +1 -2
  11. package/dist/extractPerResidueConfidence.d.ts +1 -2
  12. package/dist/extractStructureSequences.d.ts +26 -34
  13. package/dist/extractStructureSequences.js +2 -2
  14. package/dist/extractStructureSequences.js.map +1 -1
  15. package/dist/fetchUtils.d.ts +7 -7
  16. package/dist/fetchUtils.js +26 -8
  17. package/dist/fetchUtils.js.map +1 -1
  18. package/dist/index.d.ts +1 -3
  19. package/dist/index.js +2 -4
  20. package/dist/index.js.map +1 -1
  21. package/dist/isoformRanking.d.ts +4 -1
  22. package/dist/mappings.d.ts +9 -12
  23. package/dist/mappings.js +4 -5
  24. package/dist/mappings.js.map +1 -1
  25. package/dist/pairwiseAlignment.d.ts +5 -4
  26. package/dist/pairwiseAlignment.js +9 -7
  27. package/dist/pairwiseAlignment.js.map +1 -1
  28. package/dist/pdbEntry.d.ts +32 -0
  29. package/dist/pdbEntry.js +182 -0
  30. package/dist/pdbEntry.js.map +1 -0
  31. package/dist/pdbUniProtMapping.d.ts +14 -39
  32. package/dist/pdbUniProtMapping.js +22 -140
  33. package/dist/pdbUniProtMapping.js.map +1 -1
  34. package/dist/structureFormat.d.ts +11 -18
  35. package/dist/structureFormat.js +4 -6
  36. package/dist/structureFormat.js.map +1 -1
  37. package/dist/structureSources.d.ts +37 -13
  38. package/dist/structureSources.js +144 -57
  39. package/dist/structureSources.js.map +1 -1
  40. package/dist/structureUrls.d.ts +13 -16
  41. package/dist/structureUrls.js +25 -23
  42. package/dist/structureUrls.js.map +1 -1
  43. package/dist/types.d.ts +2 -5
  44. package/dist/types.js +2 -5
  45. package/dist/types.js.map +1 -1
  46. package/dist/uniProtSearch.js +3 -8
  47. package/dist/uniProtSearch.js.map +1 -1
  48. package/esm/alignmentQuality.d.ts +5 -5
  49. package/esm/alphaFoldModels.d.ts +4 -4
  50. package/esm/alphaFoldModels.js +4 -4
  51. package/esm/chooseMappedEntity.d.ts +11 -13
  52. package/esm/chooseMappedEntity.js +9 -12
  53. package/esm/chooseMappedEntity.js.map +1 -1
  54. package/esm/coordinates.d.ts +19 -19
  55. package/esm/coordinates.js.map +1 -1
  56. package/esm/dbIds.d.ts +1 -2
  57. package/esm/extractPerResidueConfidence.d.ts +1 -2
  58. package/esm/extractStructureSequences.d.ts +26 -34
  59. package/esm/extractStructureSequences.js +2 -2
  60. package/esm/extractStructureSequences.js.map +1 -1
  61. package/esm/fetchUtils.d.ts +7 -7
  62. package/esm/fetchUtils.js +26 -8
  63. package/esm/fetchUtils.js.map +1 -1
  64. package/esm/index.d.ts +1 -3
  65. package/esm/index.js +2 -4
  66. package/esm/index.js.map +1 -1
  67. package/esm/isoformRanking.d.ts +4 -1
  68. package/esm/mappings.d.ts +9 -12
  69. package/esm/mappings.js +4 -5
  70. package/esm/mappings.js.map +1 -1
  71. package/esm/pairwiseAlignment.d.ts +5 -4
  72. package/esm/pairwiseAlignment.js +7 -5
  73. package/esm/pairwiseAlignment.js.map +1 -1
  74. package/esm/pdbEntry.d.ts +32 -0
  75. package/esm/pdbEntry.js +174 -0
  76. package/esm/pdbEntry.js.map +1 -0
  77. package/esm/pdbUniProtMapping.d.ts +14 -39
  78. package/esm/pdbUniProtMapping.js +22 -137
  79. package/esm/pdbUniProtMapping.js.map +1 -1
  80. package/esm/structureFormat.d.ts +11 -18
  81. package/esm/structureFormat.js +4 -6
  82. package/esm/structureFormat.js.map +1 -1
  83. package/esm/structureSources.d.ts +37 -13
  84. package/esm/structureSources.js +139 -55
  85. package/esm/structureSources.js.map +1 -1
  86. package/esm/structureUrls.d.ts +13 -16
  87. package/esm/structureUrls.js +23 -23
  88. package/esm/structureUrls.js.map +1 -1
  89. package/esm/types.d.ts +2 -5
  90. package/esm/types.js +2 -5
  91. package/esm/types.js.map +1 -1
  92. package/esm/uniProtSearch.js +3 -8
  93. package/esm/uniProtSearch.js.map +1 -1
  94. package/package.json +3 -2
  95. package/src/alignmentQuality.ts +5 -5
  96. package/src/alphaFoldModels.ts +4 -4
  97. package/src/chooseMappedEntity.ts +12 -15
  98. package/src/coordinates.ts +14 -17
  99. package/src/dbIds.ts +1 -1
  100. package/src/extractPerResidueConfidence.ts +1 -1
  101. package/src/extractStructureSequences.ts +26 -33
  102. package/src/fetchUtils.ts +30 -8
  103. package/src/index.ts +2 -4
  104. package/src/isoformRanking.ts +4 -4
  105. package/src/mappings.ts +9 -12
  106. package/src/pairwiseAlignment.ts +12 -9
  107. package/src/pdbEntry.ts +240 -0
  108. package/src/pdbUniProtMapping.ts +25 -164
  109. package/src/structureFormat.ts +11 -18
  110. package/src/structureSources.ts +194 -70
  111. package/src/structureUrls.ts +25 -23
  112. package/src/types.ts +2 -5
  113. package/src/uniProtSearch.ts +3 -8
  114. package/dist/pdbeBestStructures.d.ts +0 -23
  115. package/dist/pdbeBestStructures.js +0 -79
  116. package/dist/pdbeBestStructures.js.map +0 -1
  117. package/dist/pdbeEntryMolecules.d.ts +0 -7
  118. package/dist/pdbeEntryMolecules.js +0 -39
  119. package/dist/pdbeEntryMolecules.js.map +0 -1
  120. package/dist/siftsNumbering.d.ts +0 -23
  121. package/dist/siftsNumbering.js +0 -44
  122. package/dist/siftsNumbering.js.map +0 -1
  123. package/esm/pdbeBestStructures.d.ts +0 -23
  124. package/esm/pdbeBestStructures.js +0 -73
  125. package/esm/pdbeBestStructures.js.map +0 -1
  126. package/esm/pdbeEntryMolecules.d.ts +0 -7
  127. package/esm/pdbeEntryMolecules.js +0 -35
  128. package/esm/pdbeEntryMolecules.js.map +0 -1
  129. package/esm/siftsNumbering.d.ts +0 -23
  130. package/esm/siftsNumbering.js +0 -40
  131. package/esm/siftsNumbering.js.map +0 -1
  132. package/src/pdbeBestStructures.ts +0 -94
  133. package/src/pdbeEntryMolecules.ts +0 -37
  134. package/src/siftsNumbering.ts +0 -61
@@ -43,11 +43,11 @@ export async function fetchAlphaFoldModels(uniprotId, opts) {
43
43
  }
44
44
  /**
45
45
  * The model to open for a gene's transcripts: one folded from exactly a
46
- * transcript's translation, canonical first, so the view maps it as an
47
- * identity; else the canonical model; else the longest isoform model.
46
+ * transcript's translation, canonical first, so every residue maps to itself;
47
+ * else the canonical model; else the longest isoform model.
48
48
  *
49
- * Takes any record of sequences, since the structure loader knows one
50
- * translation rather than a gene's isoforms.
49
+ * Takes any record of sequences, since a caller may know one translation rather
50
+ * than a gene's isoforms.
51
51
  */
52
52
  export function pickAlphaFoldModel(models, isoformSequences) {
53
53
  const translations = new Set(Object.values(isoformSequences ?? {}).map(v => stripStopCodon(v.seq)));
@@ -9,12 +9,12 @@ import type { AlignmentAlgorithm } from './types.ts';
9
9
  */
10
10
  export declare function interactionMatchesMappedEntity(entityId: string, mappedEntityId: string | undefined): boolean;
11
11
  export interface EntitySelection extends ScoredAlignment {
12
- /** index into the candidate array of the entity that is the transcript's */
12
+ /** index of the chosen entity in the candidate array */
13
13
  index: number;
14
14
  }
15
15
  export interface ScoredAlignment {
16
- /** alignment of the transcript against the entity (stop codons stripped on
17
- * both sides, matching the rest of the mapping pipeline) */
16
+ /** alignment of the transcript against the entity, with stop codons
17
+ * stripped from both */
18
18
  alignment: PairwiseAlignment;
19
19
  /** identical aligned residues */
20
20
  matches: number;
@@ -39,17 +39,15 @@ export declare function explainedFraction(matches: number, transcriptLength: num
39
39
  */
40
40
  export declare function alignTranscriptToEntity(transcript: string, entitySeq: string, algorithm: AlignmentAlgorithm): ScoredAlignment | undefined;
41
41
  /**
42
- * Pick which polymer entity of a structure corresponds to the transcript.
42
+ * Pick the polymer entity of a structure that is the transcript's protein.
43
43
  *
44
- * The plugin historically hardcoded entity `[0]`, which silently mis-maps every
45
- * heteromeric / protein-DNA / processed-peptide structure where the protein of
46
- * interest is some other chain. Selecting by alignment makes the structure self-
47
- * describe which entity is the gene's protein: an exact sequence match wins
48
- * outright, otherwise the entity with the highest identity over the shorter
49
- * sequence (see `explainedFraction`). Nucleic-acid entities are never
50
- * candidates.
44
+ * Taking entity `[0]` mis-maps every heteromeric, protein-DNA or
45
+ * processed-peptide structure where the protein is another chain. An exact
46
+ * sequence match wins outright; otherwise the entity with the highest identity
47
+ * over the shorter sequence wins (see `explainedFraction`). Nucleic-acid
48
+ * entities are never candidates.
51
49
  *
52
- * Returns `undefined` only when there is nothing to map (no transcript or no
53
- * protein entities) — never a silent fallback to the wrong entity.
50
+ * Returns `undefined` only when there is nothing to map: no transcript, or no
51
+ * protein entity. It never falls back to another entity.
54
52
  */
55
53
  export declare function chooseMappedEntity(transcript: string, entities: readonly (string | EntityCandidate)[], algorithm: AlignmentAlgorithm): EntitySelection | undefined;
@@ -19,8 +19,7 @@ export function interactionMatchesMappedEntity(entityId, mappedEntityId) {
19
19
  * usually is: on 1H26 the 11-residue p53 peptide matches 11 while CDK2 accrues
20
20
  * 58 scattered identities, and on 4ZZJ SIRT1 beats the 7-residue p53 peptide
21
21
  * 63 to 6. The Smith-Waterman score is no better there (56 vs 58). Dividing
22
- * by length asks the question the picker actually has, which chain *is* this
23
- * gene's product: the peptide scores 0.69 and 0.50, the partners 0.19 and
22
+ * by the shorter length identifies the chain that *is* this gene's product: the peptide scores 0.69 and 0.50, the partners 0.19 and
24
23
  * 0.17, and across a ribosome's 55 chains no decoy passes 0.29.
25
24
  *
26
25
  * Dividing by the *entity's* length alone penalised a fusion construct: a
@@ -85,18 +84,16 @@ export function alignTranscriptToEntity(transcript, entitySeq, algorithm) {
85
84
  };
86
85
  }
87
86
  /**
88
- * Pick which polymer entity of a structure corresponds to the transcript.
87
+ * Pick the polymer entity of a structure that is the transcript's protein.
89
88
  *
90
- * The plugin historically hardcoded entity `[0]`, which silently mis-maps every
91
- * heteromeric / protein-DNA / processed-peptide structure where the protein of
92
- * interest is some other chain. Selecting by alignment makes the structure self-
93
- * describe which entity is the gene's protein: an exact sequence match wins
94
- * outright, otherwise the entity with the highest identity over the shorter
95
- * sequence (see `explainedFraction`). Nucleic-acid entities are never
96
- * candidates.
89
+ * Taking entity `[0]` mis-maps every heteromeric, protein-DNA or
90
+ * processed-peptide structure where the protein is another chain. An exact
91
+ * sequence match wins outright; otherwise the entity with the highest identity
92
+ * over the shorter sequence wins (see `explainedFraction`). Nucleic-acid
93
+ * entities are never candidates.
97
94
  *
98
- * Returns `undefined` only when there is nothing to map (no transcript or no
99
- * protein entities) — never a silent fallback to the wrong entity.
95
+ * Returns `undefined` only when there is nothing to map: no transcript, or no
96
+ * protein entity. It never falls back to another entity.
100
97
  */
101
98
  export function chooseMappedEntity(transcript, entities, algorithm) {
102
99
  const t = stripStopCodon(transcript);
@@ -1 +1 @@
1
- {"version":3,"file":"chooseMappedEntity.js","sourceRoot":"","sources":["../src/chooseMappedEntity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chooseMappedEntity.js","sourceRoot":"","sources":["../src/chooseMappedEntity.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,24 @@
1
1
  import type { PairwiseAlignment } from './mappings.ts';
2
2
  /**
3
- * Branded coordinate spaces. Every position in this plugin is a bare `number`,
4
- * but the *meaning* differs: a structure residue index is not interchangeable
5
- * with a transcript residue index or an alignment column, and mixing them is
6
- * the root cause of the off-by-one class of bugs. Branding makes the compiler
7
- * reject cross-space mixing; construct values with the helpers below at the
8
- * boundaries where raw numbers enter (molstar picks, hover events, features).
3
+ * Branded coordinate spaces. Every position is a plain `number` at runtime, but
4
+ * a structure residue index, a transcript residue index and an alignment column
5
+ * mean different things, and mixing them causes off-by-one bugs. The brands
6
+ * make the compiler reject mixing; wrap a raw number with the helpers below
7
+ * where it enters, such as a molstar pick, a hover event or a feature.
9
8
  *
10
- * Conventions: all are 0-based. StructurePos indexes the ungapped structure
11
- * sequence; TranscriptPos the ungapped transcript sequence; AlignmentCol a
12
- * column of the pairwise alignment (gaps included).
9
+ * All are 0-based. StructurePos indexes the ungapped structure sequence,
10
+ * TranscriptPos the ungapped transcript sequence, and AlignmentCol a column of
11
+ * the pairwise alignment, gaps included.
13
12
  */
14
- type Branded<B extends string> = number & {
15
- readonly __brand: B;
13
+ export type StructurePos = number & {
14
+ readonly __brand: 'StructurePos';
15
+ };
16
+ export type TranscriptPos = number & {
17
+ readonly __brand: 'TranscriptPos';
18
+ };
19
+ export type AlignmentCol = number & {
20
+ readonly __brand: 'AlignmentCol';
16
21
  };
17
- export type StructurePos = Branded<'StructurePos'>;
18
- export type TranscriptPos = Branded<'TranscriptPos'>;
19
- export type AlignmentCol = Branded<'AlignmentCol'>;
20
22
  export declare const structurePos: (n: number) => StructurePos;
21
23
  export declare const transcriptPos: (n: number) => TranscriptPos;
22
24
  export declare const alignmentCol: (n: number) => AlignmentCol;
@@ -36,10 +38,9 @@ export interface CoordinateMapper {
36
38
  transcriptToAlignment: (p: TranscriptPos) => AlignmentCol | undefined;
37
39
  alignmentToTranscript: (c: AlignmentCol) => TranscriptPos | undefined;
38
40
  /**
39
- * Raw lookup tables, for consumers that iterate the whole map rather than
40
- * convert a single position (e.g. per-residue track rendering, selection of
41
- * all aligned residues). Plain numbers — prefer the typed methods above for
42
- * point conversions.
41
+ * The lookup tables as plain numbers, for code that iterates a whole map,
42
+ * such as drawing a per-residue track or selecting every aligned residue.
43
+ * Use the typed methods above to convert one position.
43
44
  */
44
45
  readonly maps: CoordinateMaps;
45
46
  }
@@ -63,4 +64,3 @@ export declare function transcriptRangeToStructureRange(mapper: CoordinateMapper
63
64
  start: number;
64
65
  end: number;
65
66
  } | undefined;
66
- export {};
@@ -1 +1 @@
1
- {"version":3,"file":"coordinates.js","sourceRoot":"","sources":["../src/coordinates.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,+BAA+B,EAC/B,8BAA8B,EAC9B,gCAAgC,GACjC,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAqB1C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAiB,CAAA;AAC5D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAkB,CAAA;AAC9D,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAiB,CAAA;AA2B5D;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,iBAAoC;IAEpC,MAAM,EACJ,mCAAmC,EACnC,mCAAmC,GACpC,GAAG,8BAA8B,CAAC,iBAAiB,CAAC,CAAA;IACrD,MAAM,KAAK,GAAG,+BAA+B,CAAC,iBAAiB,CAAC,CAAA;IAChE,MAAM,KAAK,GAAG,gCAAgC,CAAC,iBAAiB,CAAC,CAAA;IACjE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;IAC9B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;IAE9B,uEAAuE;IACvE,6EAA6E;IAC7E,sEAAsE;IACtE,OAAO;QACL,qBAAqB,EAAE,CAAC,CAAC,EAAE,CACzB,mCAAmC,CAAC,CAAC,CAA8B;QACrE,qBAAqB,EAAE,CAAC,CAAC,EAAE,CACzB,mCAAmC,CAAC,CAAC,CAA6B;QACpE,oBAAoB,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAA6B;QAC/D,oBAAoB,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAA6B;QAC/D,qBAAqB,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAA6B;QAChE,qBAAqB,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAA8B;QACjE,IAAI,EAAE;YACJ,mCAAmC;YACnC,mCAAmC;YACnC,+BAA+B,EAAE,KAAK;YACtC,gCAAgC,EAAE,KAAK;YACvC,4BAA4B,EAAE,KAAK;YACnC,6BAA6B,EAAE,KAAK;SACrC;KACF,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,+BAA+B,CAC7C,MAAwB,EACxB,KAAqC;IAErC,IAAI,KAAyB,CAAA;IAC7B,IAAI,IAAwB,CAAA;IAC5B,KAAK,IAAI,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC;QAChE,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,aAAa,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAA;QACpE,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,KAAK,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YACxD,IAAI,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS;QAC9C,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,GAAG,CAAC,EAAE,CAAA;AACrC,CAAC"}
1
+ {"version":3,"file":"coordinates.js","sourceRoot":"","sources":["../src/coordinates.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,+BAA+B,EAC/B,8BAA8B,EAC9B,gCAAgC,GACjC,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAmB1C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAiB,CAAA;AAC5D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAkB,CAAA;AAC9D,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAiB,CAAA;AA0B5D;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,iBAAoC;IAEpC,MAAM,EACJ,mCAAmC,EACnC,mCAAmC,GACpC,GAAG,8BAA8B,CAAC,iBAAiB,CAAC,CAAA;IACrD,MAAM,KAAK,GAAG,+BAA+B,CAAC,iBAAiB,CAAC,CAAA;IAChE,MAAM,KAAK,GAAG,gCAAgC,CAAC,iBAAiB,CAAC,CAAA;IACjE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;IAC9B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;IAE9B,uEAAuE;IACvE,6EAA6E;IAC7E,sEAAsE;IACtE,OAAO;QACL,qBAAqB,EAAE,CAAC,CAAC,EAAE,CACzB,mCAAmC,CAAC,CAAC,CAA8B;QACrE,qBAAqB,EAAE,CAAC,CAAC,EAAE,CACzB,mCAAmC,CAAC,CAAC,CAA6B;QACpE,oBAAoB,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAA6B;QAC/D,oBAAoB,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAA6B;QAC/D,qBAAqB,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAA6B;QAChE,qBAAqB,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAA8B;QACjE,IAAI,EAAE;YACJ,mCAAmC;YACnC,mCAAmC;YACnC,+BAA+B,EAAE,KAAK;YACtC,gCAAgC,EAAE,KAAK;YACvC,4BAA4B,EAAE,KAAK;YACnC,6BAA6B,EAAE,KAAK;SACrC;KACF,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,+BAA+B,CAC7C,MAAwB,EACxB,KAAqC;IAErC,IAAI,KAAyB,CAAA;IAC7B,IAAI,IAAwB,CAAA;IAC5B,KAAK,IAAI,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC;QAChE,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,aAAa,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAA;QACpE,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,KAAK,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YACxD,IAAI,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS;QAC9C,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,GAAG,CAAC,EAAE,CAAA;AACrC,CAAC"}
package/esm/dbIds.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- type DbType = 'ensembl' | 'refseq' | 'ccds' | 'hgnc' | 'geneid';
1
+ export type DbType = 'ensembl' | 'refseq' | 'ccds' | 'hgnc' | 'geneid';
2
2
  export declare function matchDbIdPattern(id: string): {
3
3
  db: DbType;
4
4
  pattern: RegExp;
@@ -13,4 +13,3 @@ export declare function getDbIdLabel(id: string): string;
13
13
  * "xref:ensembl-ENST00000123". HGNC strips its redundant "HGNC:" prefix. */
14
14
  export declare function buildUniProtXrefQuery(id: string): string | undefined;
15
15
  export declare function stripTrailingVersion(s?: string): string | undefined;
16
- export {};
@@ -1,4 +1,4 @@
1
- interface ConfidenceModel {
1
+ export interface ConfidenceModel {
2
2
  obj?: {
3
3
  data: {
4
4
  atomicConformation: {
@@ -46,4 +46,3 @@ export declare function extractPerResidueConfidence(model: ConfidenceModel): Ent
46
46
  * indicate the track wouldn't be meaningful as confidence.
47
47
  */
48
48
  export declare function looksLikePlddt(values: number[] | undefined): values is number[];
49
- export {};
@@ -1,49 +1,42 @@
1
1
  /** A polymer entity of a loaded structure: its mmCIF entity id, its one-letter
2
- * sequence, and the molstar `label_seq_id` of each of those residues.
2
+ * sequence, and the molstar `label_seq_id` of each residue.
3
3
  *
4
- * The entity id is what lets every downstream step talk about "the gene's
5
- * protein" by identity instead of by the fragile entity-[0] position.
4
+ * Structure positions are 0-based indices into `seq`, and molstar selects
5
+ * residues by `label_seq_id`. The two differ by 1 only when the entity's
6
+ * sequence covers every residue from 1, which holds for any mmCIF with an
7
+ * `entity_poly_seq` category (all of RCSB and AlphaFold) and for a PDB file
8
+ * with SEQRES records, from which molstar builds that category.
6
9
  *
7
- * `seqIds` is what lets it talk about a *residue* by identity. Structure
8
- * positions in this plugin are 0-based indices into `seq`; molstar addresses
9
- * residues by `label_seq_id`. Those are related by `+1` only when the entity's
10
- * sequence covers every residue from 1 — true for any mmCIF with an
11
- * `entity_poly_seq` category (all of RCSB and AlphaFold) and for PDB files
12
- * carrying SEQRES records, because molstar synthesizes the category from them.
13
- *
14
- * A PDB-format file with no SEQRES has no such category, so molstar falls back
15
- * to `StructureSequence.fromHierarchy` and takes `label_seq_id` straight from
16
- * the observed residues' author numbering: a chain whose coordinates start at
17
- * residue 94 yields seqIds 94.., and an unobserved loop leaves a hole. Deriving
18
- * the id arithmetically there is off by the whole offset, in both directions —
19
- * every hover reads the wrong residue and every highlight paints the wrong one.
20
- * So carry the real ids and convert through them.
10
+ * For a PDB file without SEQRES, molstar falls back to
11
+ * `StructureSequence.fromHierarchy` and takes `label_seq_id` from the observed
12
+ * residues' author numbering: a chain whose coordinates start at residue 94 has
13
+ * seqIds 94.., and an unobserved loop leaves a gap. Adding 1 there is off by the
14
+ * whole offset, in both directions, so convert through `seqIds`.
21
15
  */
22
16
  export interface Entity {
17
+ /** mmCIF entity id */
23
18
  entityId: string;
19
+ /** one letter per residue, observed or not */
24
20
  seq: string;
21
+ /** molstar `label_seq_id` per position of `seq` */
25
22
  seqIds: number[];
26
- /** author chain ids carrying this entity, e.g. ['A', 'B'] for a homodimer;
27
- * what a user recognises from the PDB entry page, where the entity id is
28
- * molstar's own bookkeeping */
23
+ /** author chain ids of this entity, e.g. ['A', 'B'] for a homodimer, as
24
+ * the PDB entry page lists them */
29
25
  chains: string[];
30
- /** DNA, RNA or a hybrid, by molstar's entity subtype. Its one-letter
31
- * sequence spells amino acids too (A, C, G, T, U), so it has to be kept
32
- * out of the transcript alignment rather than merely scoring low. */
26
+ /** DNA, RNA or a hybrid, by molstar's entity subtype. A, C, G, T and U
27
+ * are amino-acid letters too, so chooseMappedEntity skips these. */
33
28
  nucleicAcid?: boolean;
34
- /** `auth_seq_id` per position: the numbering the depositors chose, which
35
- * for an RCSB entry is the one papers and UniProt cite (1TUP's position 154
36
- * is R248) and what Mol*'s own hover label shows. Display only; every
37
- * coordinate the plugin computes with stays a 0-based position, and molstar
38
- * is addressed through `seqIds`. Absent when the model has no atomic
39
- * hierarchy to read it from. See `residueNumber`. */
29
+ /** `auth_seq_id` per position: the depositors' numbering, which papers cite
30
+ * (1TUP's position 154 is R248) and Mol*'s hover shows. For display only;
31
+ * use `seqIds` to select residues in Mol*. Absent when the model has no
32
+ * atomic hierarchy. See `residueNumber`. */
40
33
  authSeqIds?: number[];
41
34
  }
42
- interface Column<T> {
35
+ export interface Column<T> {
43
36
  rowCount: number;
44
37
  value(row: number): T;
45
38
  }
46
- interface StructureModel {
39
+ export interface StructureModel {
47
40
  obj?: {
48
41
  data: {
49
42
  entities?: {
@@ -123,8 +116,8 @@ export declare function oneLetterSequence(codes: ArrayLike<string>, canonical: s
123
116
  export declare function extractEntities(model: StructureModel): Entity[] | undefined;
124
117
  /** A user-facing name for an entity: its chains when known, else its id. */
125
118
  export declare function entityLabel(entity: Entity): string;
126
- /** The protein chains' sequences, for the launch dialog's isoform matching,
127
- * which has no use for a DNA strand that happens to align. */
119
+ /** The protein chains' sequences, for ranking isoforms against a structure.
120
+ * DNA chains are left out, because their letters align as amino acids. */
128
121
  export declare function extractStructureSequences(model: StructureModel): string[] | undefined;
129
122
  /**
130
123
  * The molstar `label_seq_id`s for a set of 0-based structure positions. Unknown
@@ -139,4 +132,3 @@ export declare function rangeToLabelSeqIds(entity: Entity | undefined, range: {
139
132
  } | undefined): number[];
140
133
  /** Reverse of `seqIds`: molstar's label_seq_id -> 0-based structure position. */
141
134
  export declare function makeLabelSeqIdIndex(entity: Entity | undefined): Map<number, number>;
142
- export {};
@@ -157,8 +157,8 @@ export function entityLabel(entity) {
157
157
  : `Entity ${entity.entityId}`;
158
158
  return `${chains} (${entity.seq.length} ${entity.nucleicAcid ? 'nt' : 'aa'})`;
159
159
  }
160
- /** The protein chains' sequences, for the launch dialog's isoform matching,
161
- * which has no use for a DNA strand that happens to align. */
160
+ /** The protein chains' sequences, for ranking isoforms against a structure.
161
+ * DNA chains are left out, because their letters align as amino acids. */
162
162
  export function extractStructureSequences(model) {
163
163
  return extractEntities(model)
164
164
  ?.filter(e => !e.nucleicAcid)
@@ -1 +1 @@
1
- {"version":3,"file":"extractStructureSequences.js","sourceRoot":"","sources":["../src/extractStructureSequences.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extractStructureSequences.js","sourceRoot":"","sources":["../src/extractStructureSequences.ts"],"names":[],"mappings":"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"}
@@ -12,9 +12,9 @@ export declare class HttpError extends Error {
12
12
  * not. */
13
13
  export declare function isDefinitiveFailure(e: unknown): boolean;
14
14
  /**
15
- * The error a failed response deserves: status and host, plus at most the first
16
- * line of the body. A whole body is an HTML error page or a megabyte of JSON,
17
- * and pasting it into the dialog buries the one line that says what went wrong.
15
+ * The error for a failed response: status and host, plus at most the first line
16
+ * of the body. A whole body is an HTML error page or a megabyte of JSON, which
17
+ * hides the line that says what went wrong.
18
18
  */
19
19
  export declare function httpError(response: Response, url: string): Promise<HttpError>;
20
20
  /**
@@ -38,10 +38,10 @@ export declare function rawfetch(url: string, args?: FetchOptions): Promise<Resp
38
38
  export declare function myfetch(url: string, args?: FetchOptions): Promise<Response>;
39
39
  export declare function jsonfetch<T = unknown>(url: string, args?: FetchOptions): Promise<T>;
40
40
  /**
41
- * An AbortSignal's reason as a real Error. `signal.reason` is `any` — usually a
42
- * DOMException, but a caller can abort with anything at all — and throwing a
43
- * non-Error loses the stack and breaks `instanceof Error` checks in the UI's
44
- * error rendering. Normalize at every throw site.
41
+ * An AbortSignal's reason as a real Error. `signal.reason` is `any`, usually a
42
+ * DOMException, but a caller can abort with any value, and throwing a non-Error
43
+ * loses the stack and breaks `instanceof Error` checks. Use it at every throw
44
+ * site.
45
45
  */
46
46
  export declare function abortError(signal: AbortSignal): Error;
47
47
  export declare function timeout(time: number, signal?: AbortSignal): Promise<void>;
package/esm/fetchUtils.js CHANGED
@@ -31,9 +31,9 @@ export function isDefinitiveFailure(e) {
31
31
  return e instanceof HttpError && e.status >= 400 && e.status < 500;
32
32
  }
33
33
  /**
34
- * The error a failed response deserves: status and host, plus at most the first
35
- * line of the body. A whole body is an HTML error page or a megabyte of JSON,
36
- * and pasting it into the dialog buries the one line that says what went wrong.
34
+ * The error for a failed response: status and host, plus at most the first line
35
+ * of the body. A whole body is an HTML error page or a megabyte of JSON, which
36
+ * hides the line that says what went wrong.
37
37
  */
38
38
  export async function httpError(response, url) {
39
39
  const detail = firstLine(await response.text().catch(() => ''));
@@ -51,10 +51,28 @@ export function networkError(url, cause) {
51
51
  ? new Error(`Could not reach ${hostOf(url)}. Check your network connection; the server may also be refusing cross-origin requests from this page.`, { cause })
52
52
  : cause;
53
53
  }
54
+ const USER_AGENT = 'p2s_mapper (+https://github.com/GMOD/p2s_mapper)';
55
+ /**
56
+ * AlphaFold's prediction API answers 403 to `node`, the user agent Node's fetch
57
+ * sends (measured 2026-10-11), so outside a browser every request names this
58
+ * package unless the caller named something else. A browser sends its own, and
59
+ * a script-set one would cost a CORS preflight on every call.
60
+ */
61
+ function withUserAgent(init) {
62
+ if (typeof navigator !== 'undefined' &&
63
+ navigator.userAgent.startsWith('Mozilla')) {
64
+ return init;
65
+ }
66
+ const headers = new Headers(init.headers);
67
+ if (!headers.has('user-agent')) {
68
+ headers.set('user-agent', USER_AGENT);
69
+ }
70
+ return { ...init, headers };
71
+ }
54
72
  export async function rawfetch(url, args) {
55
73
  const { fetch: f = globalThis.fetch, ...init } = args ?? {};
56
74
  try {
57
- return await f(url, init);
75
+ return await f(url, withUserAgent(init));
58
76
  }
59
77
  catch (e) {
60
78
  throw networkError(url, e);
@@ -74,10 +92,10 @@ export async function jsonfetch(url, args) {
74
92
  return response.json();
75
93
  }
76
94
  /**
77
- * An AbortSignal's reason as a real Error. `signal.reason` is `any` — usually a
78
- * DOMException, but a caller can abort with anything at all — and throwing a
79
- * non-Error loses the stack and breaks `instanceof Error` checks in the UI's
80
- * error rendering. Normalize at every throw site.
95
+ * An AbortSignal's reason as a real Error. `signal.reason` is `any`, usually a
96
+ * DOMException, but a caller can abort with any value, and throwing a non-Error
97
+ * loses the stack and breaks `instanceof Error` checks. Use it at every throw
98
+ * site.
81
99
  */
82
100
  export function abortError(signal) {
83
101
  return signal.reason instanceof Error
@@ -1 +1 @@
1
- {"version":3,"file":"fetchUtils.js","sourceRoot":"","sources":["../src/fetchUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetchUtils.js","sourceRoot":"","sources":["../src/fetchUtils.ts"],"names":[],"mappings":"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"}
package/esm/index.d.ts CHANGED
@@ -11,10 +11,8 @@ export * from './extractStructureSequences.ts';
11
11
  export * from './extractPerResidueConfidence.ts';
12
12
  export * from './isoformRanking.ts';
13
13
  export * from './pdbUniProtMapping.ts';
14
- export * from './siftsNumbering.ts';
14
+ export * from './pdbEntry.ts';
15
15
  export * from './alphaFoldModels.ts';
16
- export * from './pdbeBestStructures.ts';
17
- export * from './pdbeEntryMolecules.ts';
18
16
  export * from './structureSources.ts';
19
17
  export * from './uniProtSearch.ts';
20
18
  export * from './dbIds.ts';
package/esm/index.js CHANGED
@@ -13,13 +13,11 @@ export * from "./chooseMappedEntity.js";
13
13
  export * from "./extractStructureSequences.js";
14
14
  export * from "./extractPerResidueConfidence.js";
15
15
  export * from "./isoformRanking.js";
16
- // SIFTS
16
+ // UniProt mapping
17
17
  export * from "./pdbUniProtMapping.js";
18
- export * from "./siftsNumbering.js";
18
+ export * from "./pdbEntry.js";
19
19
  // Structure sources
20
20
  export * from "./alphaFoldModels.js";
21
- export * from "./pdbeBestStructures.js";
22
- export * from "./pdbeEntryMolecules.js";
23
21
  export * from "./structureSources.js";
24
22
  export * from "./uniProtSearch.js";
25
23
  export * from "./dbIds.js";
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY;AACZ,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AAEpC,cAAc;AACd,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AAEnC,eAAe;AACf,cAAc,yBAAyB,CAAA;AACvC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,kCAAkC,CAAA;AAChD,cAAc,qBAAqB,CAAA;AAEnC,QAAQ;AACR,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AAEnC,oBAAoB;AACpB,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAE1B,mBAAmB;AACnB,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY;AACZ,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AAEpC,cAAc;AACd,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AAEnC,eAAe;AACf,cAAc,yBAAyB,CAAA;AACvC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,kCAAkC,CAAA;AAChD,cAAc,qBAAqB,CAAA;AAEnC,kBAAkB;AAClB,cAAc,wBAAwB,CAAA;AACtC,cAAc,eAAe,CAAA;AAE7B,oBAAoB;AACpB,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAE1B,mBAAmB;AACnB,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA"}
@@ -10,12 +10,15 @@ export interface RankedIsoform {
10
10
  /** identical residues against the structure, for an isoform that does not
11
11
  * match it exactly; undefined with no structure to compare to */
12
12
  identical?: number;
13
- /** that alignment's score, which is what ranks non-matching isoforms */
13
+ /** that alignment's score, which ranks the non-matching isoforms */
14
14
  score?: number;
15
15
  }
16
16
  export interface ClassifiedIsoforms {
17
+ /** translates to exactly the structure's sequence, longest first */
17
18
  matches: RankedIsoform[];
19
+ /** translates to something else, best-aligning first */
18
20
  nonMatches: RankedIsoform[];
21
+ /** ids of the isoforms with no translation */
19
22
  noData: string[];
20
23
  }
21
24
  /**
package/esm/mappings.d.ts CHANGED
@@ -3,13 +3,11 @@ export interface AlignmentRow {
3
3
  seq: string;
4
4
  }
5
5
  /**
6
- * A two-row alignment whose ROW ORDER IS A CONTRACT: row 0 is the transcript,
7
- * row 1 is the structure. Every producer honors it — runLocalAlignment is
8
- * always called as (transcript, structure), and the manual-import dialog tells
9
- * the user to paste them in that order — and every consumer depends on it, but
10
- * nothing in the type can enforce it, and swapping the two silently inverts
11
- * every coordinate map. Read the rows through the accessors below rather than
12
- * indexing, so a call site states which sequence it means.
6
+ * A two-row alignment: row 0 is the transcript and row 1 is the structure.
7
+ * alignSequences takes them in that order and every consumer depends on it,
8
+ * but the type cannot enforce it, and swapped rows invert every coordinate map
9
+ * without an error. Read the rows with the accessors below, so a call site
10
+ * names the sequence it means.
13
11
  */
14
12
  export interface PairwiseAlignment {
15
13
  consensus: string;
@@ -21,11 +19,10 @@ export declare const structureAlignedSeq: (pa: PairwiseAlignment) => string;
21
19
  * `pairwiseAlignmentProblem` is what guarantees it. */
22
20
  export declare const alignmentLength: (pa: PairwiseAlignment) => number;
23
21
  /**
24
- * Why a pairwise alignment can't be used, or undefined if it's usable. The two
25
- * rows must be the same non-zero length — every coordinate map walks them in
26
- * lockstep, so a ragged pair would map positions to nonsense. Callers that
27
- * accept alignments from outside (the manual-import dialog) check this and
28
- * report it; the internal map builders assert on it.
22
+ * Why a pairwise alignment can't be used, or undefined if it's usable. Both
23
+ * rows must have the same non-zero length, because every coordinate map walks
24
+ * them in step. Check an alignment from outside the package with this; the
25
+ * internal map builders throw on it.
29
26
  */
30
27
  export declare function pairwiseAlignmentProblem(pa: PairwiseAlignment): string | undefined;
31
28
  /**
package/esm/mappings.js CHANGED
@@ -5,11 +5,10 @@ export const structureAlignedSeq = (pa) => pa.alns[1].seq;
5
5
  * `pairwiseAlignmentProblem` is what guarantees it. */
6
6
  export const alignmentLength = (pa) => transcriptAlignedSeq(pa).length;
7
7
  /**
8
- * Why a pairwise alignment can't be used, or undefined if it's usable. The two
9
- * rows must be the same non-zero length — every coordinate map walks them in
10
- * lockstep, so a ragged pair would map positions to nonsense. Callers that
11
- * accept alignments from outside (the manual-import dialog) check this and
12
- * report it; the internal map builders assert on it.
8
+ * Why a pairwise alignment can't be used, or undefined if it's usable. Both
9
+ * rows must have the same non-zero length, because every coordinate map walks
10
+ * them in step. Check an alignment from outside the package with this; the
11
+ * internal map builders throw on it.
13
12
  */
14
13
  export function pairwiseAlignmentProblem(pa) {
15
14
  const transcript = transcriptAlignedSeq(pa);
@@ -1 +1 @@
1
- {"version":3,"file":"mappings.js","sourceRoot":"","sources":["../src/mappings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mappings.js","sourceRoot":"","sources":["../src/mappings.ts"],"names":[],"mappings":"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"}