@chrtco/sdk 0.7.6 → 0.7.7

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.d.cts CHANGED
@@ -951,6 +951,8 @@ interface NauticalSymbol {
951
951
  description?: string;
952
952
  /** S-52 Presentation Library symbol name */
953
953
  s52PlRef?: string;
954
+ /** S-57 object class (e.g. "LNDMRK") when it can't be derived from s52PlRef's prefix */
955
+ s57Class?: string;
954
956
  /** Grouping key for family clustering */
955
957
  group?: string;
956
958
  /** IDs of related variant symbols */
package/dist/index.d.ts CHANGED
@@ -951,6 +951,8 @@ interface NauticalSymbol {
951
951
  description?: string;
952
952
  /** S-52 Presentation Library symbol name */
953
953
  s52PlRef?: string;
954
+ /** S-57 object class (e.g. "LNDMRK") when it can't be derived from s52PlRef's prefix */
955
+ s57Class?: string;
954
956
  /** Grouping key for family clustering */
955
957
  group?: string;
956
958
  /** IDs of related variant symbols */
package/dist/index.js CHANGED
@@ -5210,7 +5210,10 @@ var NAUTICAL_SYMBOLS = [
5210
5210
  getSvg: landmarkSpire,
5211
5211
  group: "landmarks",
5212
5212
  description: "Church spire or steeple, conspicuous from seaward. Useful for visual fixing.",
5213
- s52PlRef: "LNDMRK17",
5213
+ // CATLMK 20 alone has no dedicated PL symbol (renders POSGEN01/03); church spires carry
5214
+ // FUNCTN 20/21 and render as the religious-building symbol BUIREL01 (BUIREL13 when conspicuous)
5215
+ s52PlRef: "BUIREL01",
5216
+ s57Class: "LNDMRK",
5214
5217
  attributeKey: "CATLMK",
5215
5218
  attributeValue: 20,
5216
5219
  renderSize: "32x32",
@@ -5227,9 +5230,11 @@ var NAUTICAL_SYMBOLS = [
5227
5230
  getSvg: landmarkTower,
5228
5231
  group: "landmarks",
5229
5232
  description: "Tower conspicuous from seaward. General-purpose landmark symbol.",
5230
- s52PlRef: "LNDMRK20",
5233
+ s52PlRef: "TOWERS01",
5234
+ s57Class: "LNDMRK",
5231
5235
  attributeKey: "CATLMK",
5232
5236
  attributeValue: 17,
5237
+ // TOWERS03 = conspicuous variant
5233
5238
  renderSize: "32x32",
5234
5239
  colors: [{ token: "CHBLK", hex: "#000000", usage: "Tower body, cap, position circle" }],
5235
5240
  lineStyles: [{ element: "Tower outline", width: 0.8, color: "#000000" }, { element: "Position circle", width: 0.6, pattern: "2, 2", color: "#000000" }],
@@ -5244,7 +5249,8 @@ var NAUTICAL_SYMBOLS = [
5244
5249
  getSvg: landmarkChimney,
5245
5250
  group: "landmarks",
5246
5251
  description: "Industrial chimney or smokestack visible from the sea.",
5247
- s52PlRef: "LNDMRK01",
5252
+ s52PlRef: "CHIMNY01",
5253
+ s57Class: "LNDMRK",
5248
5254
  attributeKey: "CATLMK",
5249
5255
  attributeValue: 3,
5250
5256
  renderSize: "32x32",
@@ -5261,7 +5267,8 @@ var NAUTICAL_SYMBOLS = [
5261
5267
  getSvg: landmarkFlagstaff,
5262
5268
  group: "landmarks",
5263
5269
  description: "Flagstaff or flagpole conspicuous from seaward.",
5264
- s52PlRef: "LNDMRK03",
5270
+ s52PlRef: "FLGSTF01",
5271
+ s57Class: "LNDMRK",
5265
5272
  attributeKey: "CATLMK",
5266
5273
  attributeValue: 5,
5267
5274
  renderSize: "32x32",
@@ -5281,9 +5288,11 @@ var NAUTICAL_SYMBOLS = [
5281
5288
  getSvg: landmarkMonument,
5282
5289
  group: "landmarks",
5283
5290
  description: "Monument or memorial conspicuous from the sea.",
5284
- s52PlRef: "LNDMRK05",
5291
+ s52PlRef: "MONUMT12",
5292
+ s57Class: "LNDMRK",
5285
5293
  attributeKey: "CATLMK",
5286
5294
  attributeValue: 9,
5295
+ // MONUMT02 = non-conspicuous variant
5287
5296
  renderSize: "32x32",
5288
5297
  colors: [{ token: "CHBLK", hex: "#000000", usage: "Monument body, base, position circle" }],
5289
5298
  lineStyles: [{ element: "Body outline", width: 0.8, color: "#000000" }, { element: "Position circle", width: 0.6, pattern: "2, 2", color: "#000000" }],
@@ -5299,6 +5308,7 @@ var NAUTICAL_SYMBOLS = [
5299
5308
  group: "landmarks",
5300
5309
  description: "Traditional windmill with rotating vanes. Conspicuous landmark.",
5301
5310
  s52PlRef: "WNDMIL12",
5311
+ s57Class: "LNDMRK",
5302
5312
  attributeKey: "CATLMK",
5303
5313
  attributeValue: 18,
5304
5314
  renderSize: "32x32",
@@ -5316,6 +5326,7 @@ var NAUTICAL_SYMBOLS = [
5316
5326
  group: "landmarks",
5317
5327
  description: "Modern 3-blade wind turbine. Increasingly common offshore landmark.",
5318
5328
  s52PlRef: "WIMCON11",
5329
+ s57Class: "LNDMRK",
5319
5330
  attributeKey: "CATLMK",
5320
5331
  attributeValue: 19,
5321
5332
  renderSize: "32x32",
@@ -5332,9 +5343,11 @@ var NAUTICAL_SYMBOLS = [
5332
5343
  getSvg: landmarkDome,
5333
5344
  group: "landmarks",
5334
5345
  description: "Dome or cupola (e.g., observatory, mosque) visible from the sea.",
5335
- s52PlRef: "LNDMRK03",
5346
+ s52PlRef: "DOMES011",
5347
+ s57Class: "LNDMRK",
5336
5348
  attributeKey: "CATLMK",
5337
5349
  attributeValue: 15,
5350
+ // DOMES001 = non-conspicuous variant
5338
5351
  renderSize: "32x32",
5339
5352
  colors: [{ token: "CHBLK", hex: "#000000", usage: "Dome, base, position circle" }],
5340
5353
  lineStyles: [{ element: "Base outline", width: 0.8, color: "#000000" }, { element: "Dome curve", width: 0.8, color: "#000000" }, { element: "Position circle", width: 0.6, pattern: "2, 2", color: "#000000" }],
@@ -5349,7 +5362,8 @@ var NAUTICAL_SYMBOLS = [
5349
5362
  getSvg: landmarkRadarScanner,
5350
5363
  group: "landmarks",
5351
5364
  description: "Radar scanner antenna conspicuous from seaward.",
5352
- s52PlRef: "LNDMRK12",
5365
+ s52PlRef: "RASCAN01",
5366
+ s57Class: "LNDMRK",
5353
5367
  attributeKey: "CATLMK",
5354
5368
  attributeValue: 16,
5355
5369
  renderSize: "32x32",
@@ -5366,7 +5380,8 @@ var NAUTICAL_SYMBOLS = [
5366
5380
  getSvg: landmarkDishAerial,
5367
5381
  group: "landmarks",
5368
5382
  description: "Satellite dish or parabolic antenna visible from the sea.",
5369
- s52PlRef: "LNDMRK12",
5383
+ s52PlRef: "DSHAER01",
5384
+ s57Class: "LNDMRK",
5370
5385
  attributeKey: "CATLMK",
5371
5386
  attributeValue: 4,
5372
5387
  renderSize: "32x32",
@@ -5384,6 +5399,7 @@ var NAUTICAL_SYMBOLS = [
5384
5399
  group: "landmarks",
5385
5400
  description: "Water tower. Elevated tank on supporting structure, conspicuous landmark.",
5386
5401
  s52PlRef: "TOWERS12",
5402
+ s57Class: "SILTNK",
5387
5403
  attributeKey: "CATSIL",
5388
5404
  attributeValue: 4,
5389
5405
  renderSize: "32x32",
@@ -5400,7 +5416,9 @@ var NAUTICAL_SYMBOLS = [
5400
5416
  getSvg: landmarkRadioTvMast,
5401
5417
  group: "landmarks",
5402
5418
  description: "Radio or television transmission mast with horizontal cross-arms.",
5403
- s52PlRef: "LNDMRK10",
5419
+ // Radio/TV masts are CATLMK 7 (mast) + FUNCTN in S-57, so both mast entries share MSTCON04
5420
+ s52PlRef: "MSTCON04",
5421
+ s57Class: "LNDMRK",
5404
5422
  attributeKey: "CATLMK",
5405
5423
  attributeValue: 7,
5406
5424
  renderSize: "32x32",
@@ -5417,7 +5435,10 @@ var NAUTICAL_SYMBOLS = [
5417
5435
  getSvg: landmarkCross,
5418
5436
  group: "landmarks",
5419
5437
  description: "Religious cross or calvary conspicuous from seaward.",
5420
- s52PlRef: "LNDMRK05",
5438
+ // The PL has no dedicated symbol for CATLMK 14 (cross/calvary) — S-52 falls back to the
5439
+ // generic position symbol POSGEN01 (POSGEN03 when conspicuous)
5440
+ s52PlRef: "POSGEN01",
5441
+ s57Class: "LNDMRK",
5421
5442
  attributeKey: "CATLMK",
5422
5443
  attributeValue: 14,
5423
5444
  renderSize: "32x32",
@@ -5434,9 +5455,11 @@ var NAUTICAL_SYMBOLS = [
5434
5455
  getSvg: landmarkMast,
5435
5456
  group: "landmarks",
5436
5457
  description: "General mast (not radio/TV). Pole with spherical top.",
5437
- s52PlRef: "LNDMRK10",
5458
+ s52PlRef: "MSTCON04",
5459
+ s57Class: "LNDMRK",
5438
5460
  attributeKey: "CATLMK",
5439
5461
  attributeValue: 7,
5462
+ // MSTCON14 = conspicuous variant
5440
5463
  renderSize: "32x32",
5441
5464
  colors: [{ token: "CHBLK", hex: "#000000", usage: "Mast pole, top ball, position circle" }],
5442
5465
  lineStyles: [{ element: "Mast pole", width: 2, color: "#000000" }, { element: "Position circle", width: 0.6, pattern: "2, 2", color: "#000000" }],
@@ -5452,6 +5475,7 @@ var NAUTICAL_SYMBOLS = [
5452
5475
  group: "landmarks",
5453
5476
  description: "Silo, grain elevator, or storage tank conspicuous from the sea.",
5454
5477
  s52PlRef: "SILBUI01",
5478
+ s57Class: "SILTNK",
5455
5479
  attributeKey: "CATSIL",
5456
5480
  attributeValue: 1,
5457
5481
  renderSize: "32x32",
@@ -8162,6 +8186,18 @@ var S101_FEATURES = [
8162
8186
  isNewInS101: false,
8163
8187
  attributes: ["categoryOfLandmark", "function", "visuallyConspicuous"]
8164
8188
  },
8189
+ {
8190
+ featureClass: "SiloStorageTank",
8191
+ name: "Silo / Storage Tank",
8192
+ s57Equivalent: "SILTNK",
8193
+ section: "E",
8194
+ group: "landmarks",
8195
+ category: "geo",
8196
+ description: "An enclosed structure for storing bulk solids or liquids (silo, grain elevator, water tower, tank). Often conspicuous and useful for position fixing.",
8197
+ portrayalRef: "SILTNK_S101",
8198
+ isNewInS101: false,
8199
+ attributes: ["categoryOfSiloTank", "colour", "visuallyConspicuous"]
8200
+ },
8165
8201
  // ── Section D: Bridges ──
8166
8202
  {
8167
8203
  featureClass: "Bridge",