@ca-plant-list/ca-plant-list 0.3.1 → 0.3.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.
Files changed (59) hide show
  1. package/.vscode/settings.json +5 -0
  2. package/data/exceptions.json +88 -83
  3. package/data/glossary/ovary.md +3 -0
  4. package/data/glossary/pistil.md +3 -0
  5. package/data/glossary/stigma.md +3 -0
  6. package/data/glossary/style.md +3 -0
  7. package/data/illustrations/inkscape/pistil.svg +156 -0
  8. package/data/synonyms.csv +8 -2
  9. package/data/taxa.csv +56 -54
  10. package/data/text/Ceanothus-cuneatus-var-cuneatus.md +1 -0
  11. package/data/text/Ceanothus-leucodermis.md +1 -0
  12. package/data/text/Delphinium-californicum-subsp-californicum.md +1 -0
  13. package/data/text/Delphinium-decorum-subsp-decorum.md +1 -0
  14. package/data/text/Delphinium-hesperium-subsp-hesperium.md +1 -0
  15. package/data/text/Delphinium-patens-subsp-patens.md +1 -0
  16. package/data/text/Galium-andrewsii-subsp-gatense.md +1 -0
  17. package/data/text/Helianthella-californica-var-californica.md +1 -0
  18. package/data/text/Helianthella-castanea.md +1 -0
  19. package/data/text/Iris-macrosiphon.md +1 -0
  20. package/data/text/Lasthenia-californica-subsp-californica.md +1 -0
  21. package/data/text/Lasthenia-gracilis.md +1 -0
  22. package/data/text/Lithophragma-affine.md +1 -1
  23. package/data/text/Lithophragma-parviflorum-var-parviflorum.md +1 -1
  24. package/data/text/Lomatium-californicum.md +0 -0
  25. package/data/text/Lomatium-dasycarpum-subsp-dasycarpum.md +1 -0
  26. package/data/text/Lomatium-utriculatum.md +1 -0
  27. package/data/text/Nemophila-heterophylla.md +1 -0
  28. package/data/text/Nemophila-parviflora-var-parviflora.md +1 -0
  29. package/data/text/Plectritis-ciliosa.md +1 -0
  30. package/data/text/Plectritis-macrocera.md +1 -0
  31. package/data/text/Primula-clevelandii-var-patula.md +1 -0
  32. package/data/text/Primula-hendersonii.md +1 -0
  33. package/data/text/Sidalcea-diploscypha.md +1 -0
  34. package/data/text/Thysanocarpus-curvipes.md +1 -0
  35. package/data/text/Thysanocarpus-laciniatus.md +1 -0
  36. package/data/text/Trillium-chloropetalum.md +1 -1
  37. package/data/text/Viola-douglasii.md +1 -0
  38. package/data/text/Viola-pedunculata.md +1 -0
  39. package/data/text/Viola-purpurea-subsp-quercetorum.md +1 -0
  40. package/ebook/css/main.css +5 -0
  41. package/lib/basepagerenderer.js +30 -28
  42. package/lib/csv.js +13 -0
  43. package/lib/dateutils.js +36 -16
  44. package/lib/ebook/pages/taxonpage.js +63 -36
  45. package/lib/errorlog.js +16 -11
  46. package/lib/exceptions.js +2 -0
  47. package/lib/families.js +109 -71
  48. package/lib/files.js +103 -45
  49. package/lib/generictaxaloader.js +15 -7
  50. package/lib/html.js +2 -2
  51. package/lib/index.js +38 -3
  52. package/lib/taxa.js +175 -86
  53. package/lib/taxaloader.js +28 -15
  54. package/lib/taxaprocessor.js +6 -8
  55. package/lib/taxon.js +109 -56
  56. package/lib/web/pagetaxon.js +1 -1
  57. package/package.json +6 -8
  58. package/scripts/build-ebook.js +30 -25
  59. package/lib/index.d.ts +0 -327
@@ -0,0 +1,5 @@
1
+ {
2
+ "editor.formatOnSave": true,
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
4
+ "prettier.tabWidth": 4
5
+ }
@@ -1,88 +1,93 @@
1
1
  {
2
- "Campanula exigua": {
3
- "rpi": {
4
- "translation-to-rpi": "Ravenella exigua"
5
- }
6
- },
7
- "Campanula sharsmithiae": {
8
- "rpi": {
9
- "translation-to-rpi": "Ravenella sharsmithiae"
10
- }
11
- },
12
- "Castilleja ambigua subsp. ambigua": {
13
- "rpi": {
14
- "translation-to-rpi": "Castilleja ambigua var. ambigua"
15
- }
16
- },
17
- "Castilleja ambigua var. ambigua": {
18
- "rpi": {
19
- "translation": "Castilleja ambigua subsp. ambigua"
20
- }
21
- },
22
- "Downingia ornatissima var. mirabilis": {
23
- "inat": {
24
- "notintaxondata": true
25
- }
26
- },
27
- "Erysimum capitatum var. angustatum": {
28
- "calflora": {
29
- "badjepsonid": true
2
+ "Campanula exigua": {
3
+ "rpi": {
4
+ "translation-to-rpi": "Ravenella exigua"
5
+ }
30
6
  },
31
- "jepson": {
32
- "allowsynonym": true
33
- }
34
- },
35
- "Heterotheca oregona var. rudis": {
36
- "inat": {
37
- "notintaxondata": true
38
- }
39
- },
40
- "Horkelia californica var. frondosa": {
41
- "inat": {
42
- "notintaxondata": true
43
- }
44
- },
45
- "Lupinus littoralis var. variicolor": {
46
- "inat": {
47
- "notintaxondata": true
48
- }
49
- },
50
- "Malacothamnus hallii": {
51
- "comment": "in CNPS Rare Plant Inventory",
52
- "calflora": {
53
- "notintaxondata": true
7
+ "Campanula sharsmithiae": {
8
+ "rpi": {
9
+ "translation-to-rpi": "Ravenella sharsmithiae"
10
+ }
54
11
  },
55
- "jepson": {
56
- "allowsynonym": true
57
- }
58
- },
59
- "Malacothamnus arcuatus var. elmeri": {
60
- "calflora": {
61
- "badjepsonid": true
62
- }
63
- },
64
- "Myosurus minimus subsp. apus": {
65
- "comment": "in CNPS Rare Plant Inventory",
66
- "jepson": {
67
- "notineflora": true
68
- }
69
- },
70
- "Ravenella exigua": {
71
- "rpi": {
72
- "translation": "Campanula exigua"
73
- }
74
- },
75
- "Ravenella sharsmithiae": {
76
- "rpi": {
77
- "translation": "Campanula sharsmithiae"
78
- }
79
- },
80
- "Streptanthus albidus subsp. peramoenus": {
81
- "calflora": {
82
- "notintaxondata": true
12
+ "Castilleja ambigua subsp. ambigua": {
13
+ "rpi": {
14
+ "translation-to-rpi": "Castilleja ambigua var. ambigua"
15
+ }
16
+ },
17
+ "Castilleja ambigua var. ambigua": {
18
+ "rpi": {
19
+ "translation": "Castilleja ambigua subsp. ambigua"
20
+ }
21
+ },
22
+ "Downingia ornatissima var. mirabilis": {
23
+ "inat": {
24
+ "notintaxondata": true
25
+ }
26
+ },
27
+ "Erysimum capitatum var. angustatum": {
28
+ "calflora": {
29
+ "badjepsonid": true
30
+ },
31
+ "jepson": {
32
+ "allowsynonym": true
33
+ }
34
+ },
35
+ "Heterotheca oregona var. rudis": {
36
+ "inat": {
37
+ "notintaxondata": true
38
+ }
39
+ },
40
+ "Horkelia californica var. frondosa": {
41
+ "inat": {
42
+ "notintaxondata": true
43
+ }
44
+ },
45
+ "Lupinus littoralis var. variicolor": {
46
+ "inat": {
47
+ "notintaxondata": true
48
+ }
49
+ },
50
+ "Malacothamnus hallii": {
51
+ "comment": "in CNPS Rare Plant Inventory",
52
+ "calflora": {
53
+ "notintaxondata": true
54
+ },
55
+ "jepson": {
56
+ "allowsynonym": true
57
+ },
58
+ "rpi": {
59
+ "translation": "Malacothamnus arcuatus var. elmeri"
60
+ }
61
+ },
62
+ "Malacothamnus arcuatus var. elmeri": {
63
+ "comment": "in CNPS Rare Plant Inventory as Malacothamnus hallii",
64
+ "rpi": {
65
+ "translation-to-rpi": "Malacothamnus hallii"
66
+ }
67
+ },
68
+ "Myosurus minimus subsp. apus": {
69
+ "comment": "in CNPS Rare Plant Inventory",
70
+ "jepson": {
71
+ "notineflora": true
72
+ }
73
+ },
74
+ "Ravenella exigua": {
75
+ "comment": "in CNPS Rare Plant Inventory as Ravenella",
76
+ "rpi": {
77
+ "translation": "Campanula exigua"
78
+ }
79
+ },
80
+ "Ravenella sharsmithiae": {
81
+ "rpi": {
82
+ "translation": "Campanula sharsmithiae"
83
+ }
83
84
  },
84
- "jepson": {
85
- "allowsynonym": true
85
+ "Streptanthus albidus subsp. peramoenus": {
86
+ "calflora": {
87
+ "notintaxondata": true
88
+ },
89
+ "jepson": {
90
+ "allowsynonym": true
91
+ }
86
92
  }
87
- }
88
- }
93
+ }
@@ -0,0 +1,3 @@
1
+ The bottom part of the [pistil](./pistil.html), which usually develops into the fruit.
2
+
3
+ ![pistil](../i/pistil.svg)
@@ -0,0 +1,3 @@
1
+ The female parts of the flower, consisting of the [ovary](./ovary.html), [style](./style.html), and [stigma](./stigma.html).
2
+
3
+ ![pistil](../i/pistil.svg)
@@ -0,0 +1,3 @@
1
+ The part of the flower on which pollen germinates. It is usually at the end of the [pistil](./pistil.html).
2
+
3
+ ![pistil](../i/pistil.svg)
@@ -0,0 +1,3 @@
1
+ The stalk connecting the [ovary](./ovary.html) to the [stigma](./stigma.html).
2
+
3
+ ![pistil](../i/pistil.svg)
@@ -0,0 +1,156 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ width="80.772659"
6
+ height="85.366409"
7
+ viewBox="0 0 80.77266 85.36641"
8
+ version="1.1"
9
+ id="svg1"
10
+ inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
11
+ sodipodi:docname="pistil.svg"
12
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
13
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
14
+ xmlns="http://www.w3.org/2000/svg"
15
+ xmlns:svg="http://www.w3.org/2000/svg">
16
+ <sodipodi:namedview
17
+ id="namedview1"
18
+ pagecolor="#ffffff"
19
+ bordercolor="#000000"
20
+ borderopacity="0.25"
21
+ inkscape:showpageshadow="2"
22
+ inkscape:pageopacity="0.0"
23
+ inkscape:pagecheckerboard="0"
24
+ inkscape:deskcolor="#d1d1d1"
25
+ inkscape:document-units="px"
26
+ showgrid="true"
27
+ inkscape:zoom="4"
28
+ inkscape:cx="20.625"
29
+ inkscape:cy="16.375"
30
+ inkscape:window-width="1920"
31
+ inkscape:window-height="991"
32
+ inkscape:window-x="-9"
33
+ inkscape:window-y="-9"
34
+ inkscape:window-maximized="1"
35
+ inkscape:current-layer="layer1">
36
+ <inkscape:grid
37
+ id="grid1"
38
+ units="px"
39
+ originx="-29.999996"
40
+ originy="-43.223434"
41
+ spacingx="1"
42
+ spacingy="1"
43
+ empcolor="#0099e5"
44
+ empopacity="0.30196078"
45
+ color="#0099e5"
46
+ opacity="0.14901961"
47
+ empspacing="5"
48
+ dotted="false"
49
+ gridanglex="30"
50
+ gridanglez="30"
51
+ visible="true" />
52
+ </sodipodi:namedview>
53
+ <defs
54
+ id="defs1">
55
+ <marker
56
+ style="overflow:visible"
57
+ id="Triangle"
58
+ refX="0"
59
+ refY="0"
60
+ orient="auto-start-reverse"
61
+ inkscape:stockid="Triangle arrow"
62
+ markerWidth="1"
63
+ markerHeight="1"
64
+ viewBox="0 0 1 1"
65
+ inkscape:isstock="true"
66
+ inkscape:collect="always"
67
+ preserveAspectRatio="xMidYMid">
68
+ <path
69
+ transform="scale(0.5)"
70
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
71
+ d="M 5.77,0 -2.88,5 V -5 Z"
72
+ id="path135" />
73
+ </marker>
74
+ </defs>
75
+ <g
76
+ inkscape:label="Layer 1"
77
+ inkscape:groupmode="layer"
78
+ id="layer1"
79
+ transform="translate(-30,-43.223437)">
80
+ <path
81
+ style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#Triangle)"
82
+ d="m 55.477347,102.93164 h 25"
83
+ id="path3" />
84
+ <path
85
+ style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#Triangle)"
86
+ d="m 45.977347,72.134628 h 34.5"
87
+ id="path4"
88
+ sodipodi:nodetypes="cc" />
89
+ <text
90
+ xml:space="preserve"
91
+ style="font-size:8px;font-family:Arial;-inkscape-font-specification:Arial;letter-spacing:0.5px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.1;stroke-dasharray:none;stroke-opacity:1"
92
+ x="85"
93
+ y="105"
94
+ id="text3"><tspan
95
+ sodipodi:role="line"
96
+ id="tspan3"
97
+ x="85"
98
+ y="105"
99
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0.5px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.1;stroke-dasharray:none;stroke-opacity:1">ovary</tspan></text>
100
+ <text
101
+ xml:space="preserve"
102
+ style="font-size:8px;font-family:Arial;-inkscape-font-specification:Arial;letter-spacing:0.5px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.1;stroke-dasharray:none;stroke-opacity:1"
103
+ x="84.996094"
104
+ y="74.999863"
105
+ id="text4"><tspan
106
+ sodipodi:role="line"
107
+ id="tspan4"
108
+ x="84.996094"
109
+ y="74.999863"
110
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0.5px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.1;stroke-dasharray:none;stroke-opacity:1">style</tspan></text>
111
+ <ellipse
112
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd"
113
+ id="path1"
114
+ cx="40"
115
+ cy="102.5"
116
+ rx="10"
117
+ ry="15" />
118
+ <path
119
+ style="fill:none;stroke:#000000"
120
+ d="M 40.000001,90 40,45.5"
121
+ id="path2" />
122
+ <ellipse
123
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd"
124
+ id="path5"
125
+ cx="40"
126
+ cy="47.5"
127
+ rx="5"
128
+ ry="2.5" />
129
+ <path
130
+ style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#Triangle)"
131
+ d="M 50.000002,47 H 80.477347"
132
+ id="path6"
133
+ sodipodi:nodetypes="cc" />
134
+ <text
135
+ xml:space="preserve"
136
+ style="font-size:8px;font-family:Arial;-inkscape-font-specification:Arial;letter-spacing:0.5px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.1;stroke-dasharray:none;stroke-opacity:1"
137
+ x="85"
138
+ y="49"
139
+ id="text6"><tspan
140
+ sodipodi:role="line"
141
+ id="tspan6"
142
+ x="85"
143
+ y="49"
144
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0.5px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.1;stroke-dasharray:none;stroke-opacity:1">stigma</tspan></text>
145
+ <text
146
+ xml:space="preserve"
147
+ style="font-size:8px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-dasharray:none"
148
+ x="45"
149
+ y="127"
150
+ id="text7"><tspan
151
+ sodipodi:role="line"
152
+ id="tspan7"
153
+ x="45"
154
+ y="127">parts of the pistil</tspan></text>
155
+ </g>
156
+ </svg>
package/data/synonyms.csv CHANGED
@@ -68,6 +68,7 @@ Allium attenuifolium,Allium amplectens
68
68
  Allium bolanderi var. stenanthum,Allium bolanderi var. bolanderi
69
69
  Allium breweri,Allium falcifolium
70
70
  Allium falcifolium var. breweri,Allium falcifolium
71
+ Allium fimbriatum var. diabolense,Allium diabolense
71
72
  Allium fimbriatum var. sharsmithiae,Allium sharsmithiae
72
73
  Allium lacteum,Triteleia hyacinthina
73
74
  Allium monospermum,Allium amplectens
@@ -231,6 +232,7 @@ Blepharizonia plumosa subsp. plumosa,Blepharizonia plumosa
231
232
  Blepharizonia plumosa subsp. viscida,Blepharizonia laxa
232
233
  Blitum californicum,Chenopodium californicum,INAT
233
234
  Blitum nuttallianum,Monolepis nuttalliana,INAT
235
+ Bloomeria aurea,Bloomeria crocea var. aurea
234
236
  Bloomeria maritima var. serotina,Muilla maritima
235
237
  Bloomeria maritima,Muilla maritima
236
238
  Boisduvalia cleistogama,Epilobium cleistogamum
@@ -580,6 +582,7 @@ Draba cuneifolia var. sonorae,Draba cuneifolia
580
582
  Draba unilateralis,Athysanus unilateralis
581
583
  Draba verna var. verna,Draba verna
582
584
  Dudleya cymosa subsp. gigantea,Dudleya cymosa subsp. cymosa
585
+ Echinochloa colonum,Echinochloa colona,INAT
583
586
  Echinochloa crus-galli subsp. spiralis,Echinochloa crus-galli
584
587
  Echinochloa crus-galli var. zelayensis,Echinochloa crus-galli
585
588
  Echinodorus berteroi var. lanceolatus,Echinodorus berteroi
@@ -779,6 +782,7 @@ Gnaphalium microcephalum,Pseudognaphalium microcephalum
779
782
  Gnaphalium ramosissimum,Pseudognaphalium ramosissimum
780
783
  Gnaphalium stramineum,Pseudognaphalium stramineum
781
784
  Gnaphalium thermale,Pseudognaphalium thermale
785
+ Graphephorum canescens,Trisetum canescens,INAT
782
786
  Grindelia camporum var. bracteosa,Grindelia camporum
783
787
  Grindelia hirsutula var. davyi,Grindelia camporum
784
788
  Grindelia hirsutula var. maritima,Grindelia hirsutula
@@ -912,6 +916,7 @@ Juncoides subsessilis,Luzula subsessilis
912
916
  Juncus amuricus,Juncus bufonius var. occidentalis,INAT
913
917
  Juncus arcticus var. balticus,Juncus balticus subsp. ater
914
918
  Juncus arcticus var. mexicanus,Juncus mexicanus
919
+ Juncus balticus subsp. mexicanus,Juncus mexicanus,INAT
915
920
  Juncus balticus var. montanus,Juncus balticus subsp. ater
916
921
  Juncus bufonius var. congdonii,Juncus bufonius var. bufonius
917
922
  Juncus bufonius var. halophilus,Juncus ambiguus
@@ -1287,6 +1292,7 @@ Nicotiana bigelovii var. wallacei,Nicotiana quadrivalvis
1287
1292
  Nicotiana bigelovii,Nicotiana quadrivalvis
1288
1293
  Nicotiana quadrivalvis var. bigelovii,Nicotiana quadrivalvis
1289
1294
  Nicotiana quadrivalvis var. quadrivalvis,Nicotiana quadrivalvis
1295
+ Nothoscordum aureum,Bloomeria crocea var. aurea
1290
1296
  Nuttallia cerasiformis,Oemleria cerasiformis
1291
1297
  Obione fruticulosa,Atriplex fruticulosa
1292
1298
  Obione lentiformis,Atriplex lentiformis
@@ -1337,7 +1343,6 @@ Orthocarpus pusillus,Triphysaria pusilla
1337
1343
  Oryzopsis miliacea,Stipa miliacea var. miliacea
1338
1344
  Osmaronia cerasiformis,Oemleria cerasiformis
1339
1345
  Osmorhiza chilensis,Osmorhiza berteroi
1340
- Ottleya strigosa,Acmispon strigosus,INAT
1341
1346
  Oxalis albicans subsp. pilosa,Oxalis pilosa
1342
1347
  Oxalis cernua,Oxalis pes-caprae
1343
1348
  Oxalis corniculata subsp. pilosa,Oxalis pilosa
@@ -1574,6 +1579,7 @@ Ranunculus orthorhynchus var. hallii,Ranunculus orthorhynchus var. orthorhynchus
1574
1579
  Ranunculus subrigidus,Ranunculus aquatilis var. diffusus
1575
1580
  Ranunculus trichophyllus var. trichophyllus,Ranunculus aquatilis var. diffusus
1576
1581
  Ranunculus trichophyllus,Ranunculus aquatilis var. diffusus,INAT
1582
+ Raphanus raphanistrum subsp. sativus,Raphanus sativus,INAT
1577
1583
  Ravenella exigua,Campanula exigua,INAT
1578
1584
  Ravenella griffinii,Campanula griffinii,INAT
1579
1585
  Ravenella sharsmithiae,Campanula sharsmithiae,INAT
@@ -2011,4 +2017,4 @@ Zigadenus fremontii var. salsus,Toxicoscordion fremontii
2011
2017
  Zigadenus fremontii,Toxicoscordion fremontii
2012
2018
  Zigadenus paniculatus,Toxicoscordion paniculatum
2013
2019
  Zigadenus venenosus var. venenosus,Toxicoscordion venenosum var. venenosum
2014
- Zostera marina var. latifolia,Zostera marina
2020
+ Zostera marina var. latifolia,Zostera marina