@ca-plant-list/ca-plant-list 0.4.26 → 0.4.28

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 (58) hide show
  1. package/data/exceptions.json +0 -27
  2. package/data/genera.json +52 -28
  3. package/data/glossary/anther.md +3 -0
  4. package/data/glossary/filament.md +3 -0
  5. package/data/glossary/stamen.md +3 -0
  6. package/data/illustrations/inkscape/stamen.svg +132 -0
  7. package/data/inatobsphotos.csv +0 -5
  8. package/data/inattaxonphotos.csv +69 -64
  9. package/data/synonyms.csv +155 -164
  10. package/data/taxa.csv +38 -38
  11. package/data/text/Dichelostemma-congestum.md +1 -0
  12. package/data/text/Dipterostemon-capitatus-subsp-capitatus.md +1 -0
  13. package/generators/eleventy/layouts/h1.njk +6 -0
  14. package/generators/eleventy/layouts/html.njk +55 -0
  15. package/lib/basepagerenderer.js +35 -15
  16. package/lib/config.js +5 -3
  17. package/lib/ebook/ebookpage.js +1 -4
  18. package/lib/ebook/ebooksitegenerator.js +4 -12
  19. package/lib/ebook/glossarypages.js +1 -3
  20. package/lib/ebook/plantbook.js +1 -1
  21. package/lib/files.js +1 -0
  22. package/lib/htmltaxon.js +8 -19
  23. package/lib/index.d.ts +20 -8
  24. package/lib/index.js +4 -2
  25. package/lib/jekyll.js +40 -59
  26. package/lib/markdown.js +3 -5
  27. package/lib/sitegenerator.js +68 -12
  28. package/lib/taxonomy/taxon.js +5 -1
  29. package/lib/tools/cch2.js +37 -18
  30. package/lib/tools/jepsonfamilies.js +1 -1
  31. package/lib/types.js +4 -0
  32. package/lib/utils/eleventyGenerator.js +82 -0
  33. package/lib/utils/htmlFragments.js +19 -0
  34. package/lib/web/glossarypages.js +6 -10
  35. package/lib/web/pageFamily.js +14 -14
  36. package/lib/web/pageGeneric.js +78 -0
  37. package/lib/web/{pagetaxon.js → pageTaxon.js} +4 -4
  38. package/lib/web/pageTaxonList.js +53 -0
  39. package/lib/{pagerenderer.js → web/renderAllPages.js} +38 -80
  40. package/package.json +12 -10
  41. package/scripts/build-site.js +20 -52
  42. package/scripts/cpl-photos.js +61 -24
  43. package/scripts/cpl-tools.js +4 -1
  44. package/static/assets/js/nameSearchData.js +2 -0
  45. package/{jekyll → static}/assets/js/name_search.js +12 -14
  46. package/static/name_search.html +15 -0
  47. package/jekyll/_includes/glossary.html +0 -0
  48. package/jekyll/name_search.html +0 -17
  49. package/lib/genericpage.js +0 -88
  50. /package/{jekyll → generators}/_includes/analytics.html +0 -0
  51. /package/{jekyll → generators}/_includes/menu_extra.html +0 -0
  52. /package/{jekyll → generators/jekyll}/_config.yml +0 -0
  53. /package/{jekyll → generators/jekyll}/_layouts/default.html +0 -0
  54. /package/{jekyll → generators/jekyll}/_layouts/html.html +0 -0
  55. /package/{jekyll → static}/assets/css/main.css +0 -0
  56. /package/{jekyll → static}/assets/js/ui.js +0 -0
  57. /package/{jekyll → static}/assets/js/utils.js +0 -0
  58. /package/{jekyll → static}/index.md +0 -0
package/data/taxa.csv CHANGED
@@ -174,7 +174,7 @@ Astragalus asymmetricus,San Joaquin milkvetch,N,14702,803,58145,10685,,San Joaqu
174
174
  Astragalus breweri,,N,14733,810,75628,10717,,Brewer's Milkvetch,,,,,297,4.2,,,S3,G3
175
175
  Astragalus didymocarpus var. didymocarpus,two-seeded milkvetch,N,54711,827,58895,44840,,Dwarf White Milkvetch
176
176
  Astragalus gambelianus,little blue loco,N,14840,838,57042,10856,,Gambel's Dwarf Milk Vetch
177
- Astragalus nuttallii var. nuttallii,,N,54881,897,80423,45033,,Ocean Bluff Milkvetch,,,,,1825,4.2,,,S4,G4T4
177
+ Astragalus nuttallii var. nuttallii,,N,54881,897,80423,45033,,Ocean Bluff Milkvetch,,,,,1825,4.3,,,S4,G4T4
178
178
  Astragalus nuttallii var. virgatus,,N,54882,898,80424,45034,,Angel Island Milkwort
179
179
  Astragalus tener var. tener,alkali milkvetch,N,54950,940,80442,45116,,Alkali Milkvetch,,,,,1129,1B.2,,,S1,G2T1
180
180
  Athyrium filix-femina var. cyclosorum,western lady fern,N,54990,959,61002,201218,true,Lady Fern
@@ -265,6 +265,7 @@ Calandrinia breweri,,N,16614,1249,68636,112280,true,Brewer's Calandrinia,,,,,180
265
265
  Calandrinia menziesii,red maids,N,95066,13205,400267,202564,,Red Maids
266
266
  Calendula arvensis,field-marigold,X,1862,1252,59260,202566,true
267
267
  Calendula officinalis,pot-marigold,X,1863,1253,75931,202567,true
268
+ Calibrachoa parviflora,wild petunia,U,16635,6279,159650,64106
268
269
  California macrophylla,,N,80427,10468,60554,11982,,Round-leaved Filaree
269
270
  Callitriche heterophylla var. bolanderi,,N,55448,1257,60158,96979,,Bolander's Water-starwort
270
271
  Callitriche longipedunculata,,N,16691,11443,75936,64127,true,Longstock Water-starwort
@@ -302,9 +303,6 @@ Camissoniopsis cheiranthifolia subsp. cheiranthifolia,dune suncup,N,89240,11448,
302
303
  Camissoniopsis hirtella,,N,89201,11453,75980,12187,true,Santa Cruz Island Suncup
303
304
  Camissoniopsis intermedia,,N,89203,11455,75982,12189,true,Intermediate Suncup
304
305
  Camissoniopsis micrantha,,N,89206,11458,75985,12192,true,Small Flowered Evening Primrose
305
- Campanula exigua,chaparral harebell,N,16965,1461,1342787,202687,,Chaparral Harebell,,,,,265,1B.2,,,S2,G2
306
- Campanula griffinii,,N,16970,1462,1342789,202688,,Griffin's Bellflower
307
- Campanula sharsmithiae,,N,16995,1467,1342786,208086,,Sharsmith's Harebell,,,,,267,1B.2,,,S1S2,G1G2
308
306
  Capsella bursa-pastoris,shepherd's purse,X,17109,1472,56121,12296,true
309
307
  Cardamine californica,"milkmaids,tooth wort",N,76456,1479,49651,12325,true,Milk Maids
310
308
  Cardamine hirsuta,,X,17158,1486,55829,12347,true
@@ -497,11 +495,10 @@ Crocidium multicaule,spring gold,N,2425,2430,57524,203127,true,Spring Gold
497
495
  Crocosmia ×crocosmiiflora,montbretia,X,77150,2431,181465,389870,true
498
496
  Croton californicus,,N,21120,2434,76484,15234,true,California Croton
499
497
  Croton setiger,turkey mullein,N,21159,13184,154156,16346,,Turkey Mullein
500
- Crypsis schoenoides,swamp grass,X,21182,2439,773038,138716,true
501
- Crypsis vaginiflora,,X,21183,2440,773022,138720,true
502
498
  Cryptantha clevelandii var. florosa,,N,57120,11565,1045003,203153,,Coastal Cryptantha
503
499
  Cryptantha corollata,,N,21213,2452,58853,203157,,Coast Range Cryptantha
504
500
  Cryptantha flaccida,,N,21228,2460,56989,203167,,Flaccid Cryptantha
501
+ Cryptantha hispidula,Napa cryptantha,N,21237,2465,57703,203175,,Napa Cryptantha,annual,white,3,5
505
502
  Cryptantha hooveri,,N,21240,2468,57701,245944,,Hoover's Cryptantha,,,,,525,1A,,,SH,GH
506
503
  Cryptantha intermedia var. intermedia,,N,71933,11568,80627,203183
507
504
  Cryptantha juniperensis,rigid cryptantha,N,103476,14557,769572,203205
@@ -541,7 +538,7 @@ Dactylis glomerata,orchard grass,X,22210,2603,52720,138886,true
541
538
  Danthonia californica,California oatgrass,N,22319,2610,57165,138931,true,California Oatgrass
542
539
  Datisca glomerata,durango root,N,22377,2618,58888,16996,true,Durango Root,perennial,yellow,5,7
543
540
  Datura stramonium,jimson weed,X,22387,2621,55854,67400
544
- Datura wrightii,,N,22389,2622,58331,67403,,Sacred Datura
541
+ Datura wrightii,"sacred datura,angel's trumpet",U,22389,2622,58331,67403,,Sacred Datura,"annual,perennial",white,4,10
545
542
  Daucus carota,Queen Anne's lace,X,22394,2623,76610,203298
546
543
  Daucus pusillus,,N,22395,2624,56726,203299,,Rattlesnake Weed
547
544
  Deinandra bacigalupii,Livermore moonshine,N,77607,9090,58817,203307,true,Livermore Tarplant,,,,,1890,1B.1,CE,,S1,G1
@@ -565,6 +562,7 @@ Delphinium patens subsp. patens,spreading larkspur,N,50113,2670,57246,42150,true
565
562
  Delphinium recurvatum,valley larkspur,N,22516,2673,58305,17087,true,Byron Larkspur,perennial,,,,222,1B.2,,,S2,G2?
566
563
  Delphinium variegatum subsp. variegatum,royal larkspur,N,50119,2682,50633,42157,true,Royal Larkspur,perennial,"blue,purple",3,5
567
564
  Dendromecon rigida,bush poppy,N,22541,2686,58224,17131,true,Bush Poppy
565
+ Deschampsia bolanderi,,N,108404,7420,1586235,397233,Scribneria bolanderi
568
566
  Deschampsia cespitosa subsp. cespitosa,tufted hairgrass,N,50130,2689,61199,167041,true,Tufted Hair Grass
569
567
  Deschampsia cespitosa subsp. holciformis,tufted hairgrass,N,50133,2690,61833,167045,true,California Hairgrass
570
568
  Deschampsia danthonioides,annual hairgrass,N,22598,2691,57164,139100,true,Annual Hair Grass
@@ -573,7 +571,7 @@ Descurainia pinnata subsp. brachycarpa,tansy mustard,N,50146,11596,59235,203355,
573
571
  Desmazeria rigida,,X,22633,2706,288259,139152,true
574
572
  Dianthus nudiflorus,,X,85151,14658,1143003,416921,Velezia rigida,,annual,pink
575
573
  Dicentra formosa,bleeding heart,N,22766,2711,51048,17318,true,Bleeding Heart
576
- Dichelostemma congestum,ookow,N,22850,2721,56593,203363,true,Ookow
574
+ Dichelostemma congestum,ookow,N,22850,2721,56593,203363,true,Ookow,corm,purple,4,6
577
575
  Dichelostemma multiflorum,,N,22853,2723,62262,202526,true,Wild Hyacinth
578
576
  Dichelostemma volubile,twining brodiaea,N,22855,2725,59971,203365,true,Twining Snakelily
579
577
  Dichondra donelliana,California ponysfoot,N,22863,2726,61175,67501,,Dichondra
@@ -588,7 +586,7 @@ Diplacus kelloggii,,N,99058,13472,771826,203395,true
588
586
  Diplacus rattanii,Rattan monkeyflower,N,99072,13479,771830,203405,true
589
587
  Diplacus tricolor,,N,99079,13482,771835,203410,true
590
588
  Dipsacus sativus,teasel,X,23137,2738,53028,203416
591
- Dipterostemon capitatus,blue dicks,N,108599,13632,1196784,262559,Dichelostemma capitatum,Blue Dicks
589
+ Dipterostemon capitatus subsp. capitatus,blue dicks,N,108595,13629,1196824,375261,,,corm,"blue,white",2,6
592
590
  Dirca occidentalis,western leatherwood,N,23143,2739,50315,17368,true,Western Leatherwood,,,,,567,1B.2,,,S2,G2
593
591
  Distichlis spicata,saltgrass,N,23161,2743,58372,139820,true,Saltgrass
594
592
  Dittrichia graveolens,stinkwort,X,2454,8482,58822,203428,true
@@ -612,7 +610,7 @@ Dysphania ambrosioides,Mexican tea,X,81840,10846,76746,113335,true
612
610
  Dysphania botrys,Jerusaleum-oak,X,85274,10847,76748,113338,true
613
611
  Dysphania multifida,cut leaf pigweed,X,81841,10848,76750,113343,true
614
612
  Eastwoodia elegans,yellow mock aster,N,2510,2875,57967,203499,true,Yellow Mock Aster
615
- Echinochloa colona,,X,23790,2881,356462,139859,true
613
+ Echinochloa colona,,X,23790,2881,76755,139859,true
616
614
  Echinochloa crus-galli,barnyard grass,X,23791,2882,60283,139863,true
617
615
  Echinochloa muricata var. microstachya,,N,58092,9886,80690,169996,true
618
616
  Echinodorus berteroi,burhead,N,23812,2886,76761,203504,true,Upright Burhead
@@ -638,7 +636,7 @@ Elymus condensatus,giant wild-rye,N,24165,11636,164673,140055,Leymus condensatus
638
636
  Elymus elymoides var. elymoides,squirreltail,N,72180,11639,58377,211223,Elymus elymoides subsp. elymoides,Squirreltail
639
637
  Elymus glaucus subsp. glaucus,blue wildrye,N,50264,2937,57171,167143,true,Western Rye Grass
640
638
  Elymus glaucus subsp. virescens,,N,50266,2939,61203,206754,true,Blue Wildrye
641
- Elymus hispidus,wheatgrass,X,24153,11640,155848,140096,Thinopyrum intermedium
639
+ Elymus hispidus,wheatgrass,X,24153,11640,155848,140096,Thinopyrum intermedium subsp. barbulatum
642
640
  Elymus mollis subsp. mollis,,N,70142,11641,118426,206755,Leymus mollis subsp. mollis,Dune Wild Rye
643
641
  Elymus multisetus,big squirreltail,N,24122,2941,57167,140134,true,Big Squirreltail
644
642
  Elymus ponticus,tall wheatgrass,X,91896,11643,1301269,206756,Thinopyrum ponticum
@@ -704,18 +702,18 @@ Eriogonum inerme var. inerme,unarmed buckwheat,N,58586,9110,80799,130026,true,Un
704
702
  Eriogonum lobbii,granite buckwheat,N,24839,9935,77005,114067,true,Lobb's Buckwheat,perennial,"white,pink",6,8
705
703
  Eriogonum luteolum var. caninum,Tiburon buckwheat,N,58623,3297,61205,130067,true,Tiburon Buckwheat,,,,,733,1B.2,,,S2,G5T2
706
704
  Eriogonum luteolum var. luteolum,,N,58624,3298,64226,130068,true,Golden-carpet Wild Buckwheat
707
- Eriogonum nudum,naked buckwheat,N,24878,3315,53046,114099,true,Nude Buckwheat,perennial
708
705
  Eriogonum nudum var. auriculatum,eared buckwheat,N,58650,3316,57220,130102,true,Nude Buckwheat
709
706
  Eriogonum nudum var. pauciflorum,,N,58658,3324,57225,130111,true,Little-flower Wild Buckwheat
710
707
  Eriogonum nudum var. psychicola,Antioch Dunes buckwheat,N,80051,11183,80823,130112,,Antioch Dunes Buckwheat,,,,,3401,1B.1,,,S1,G5T1
711
708
  Eriogonum nudum var. pubiflorum,,N,58659,3325,57221,130113,true,Fremont's Wild Buckwheat
709
+ Eriogonum nudum,naked buckwheat,N,24878,3315,53046,114099,true,Nude Buckwheat,perennial
712
710
  Eriogonum ovalifolium var. nivale,Sierran cushion wild buckwheat,N,58678,3338,80833,130136,true,Cushion Buckwheat,perennial,"white,pink,red",6,9
713
711
  Eriogonum roseum,virgate buckwheat,N,24922,3360,58280,114148,true,Wand Buckwheat
714
712
  Eriogonum truncatum,Mt. Diablo buckwheat,N,24957,3383,77039,114203,true,Mount Diablo Buckwheat,,,,,766,1B.1,,,S1,G1
715
- Eriogonum umbellatum,sulfur buckwheat,N,24960,3385,77040,114207,true,Sulphur Buckwheat,perennial,yellow
716
713
  Eriogonum umbellatum var. bahiiforme,sulfur flower,N,58755,3388,80851,130219,true,Sulphur Flower Buckwheat,,,,,1338,4.2,,,S3,G5T3
717
- Eriogonum wrightii var. trachygonum,,N,58801,3413,59244,130281,true,Wright's Buckwheat
714
+ Eriogonum umbellatum,sulfur buckwheat,N,24960,3385,77040,114207,true,Sulphur Buckwheat,perennial,yellow
718
715
  Eriogonum wrightii var. subscaposum,short-stemmed bastard-sage,N,58800,3412,58985,130280,true,Wright's Buckwheat,perennial,"white,pink",6,9
716
+ Eriogonum wrightii var. trachygonum,,N,58801,3413,59244,130281,true,Wright's Buckwheat
719
717
  Eriophyllum confertiflorum var. confertiflorum,golden-yarrow,N,69866,3423,53397,203738,true,Yellow Yarrow,perennial,yellow,4,8
720
718
  Eriophyllum jepsonii,Jepson's woolly-sunflower,N,2816,3426,77048,203742,true,Jepson's Woolly Sunflower,,,,,776,4.3,,,S3,G3
721
719
  Eriophyllum lanatum var. achilleoides,,N,7369,10587,80880,260847,true,Common Woollysunflower
@@ -735,7 +733,7 @@ Eryngium jepsonii,,N,78144,11674,77062,264168,,Jepson's Eryngo,,,,,3927,1B.2,,,S
735
733
  Eryngium racemosum,Delta button-celery,N,25097,3467,77066,206800,,Delta Button-celery,,,,,787,1B.1,CE,,S1,G1
736
734
  Eryngium spinosepalum,,N,25099,3468,57894,203769,,Spiny-sepaled Button-celery,,,,,788,1B.2,,,S2,G2
737
735
  Eryngium vaseyi var. vallicola,,N,58851,11675,80888,211709
738
- Erysimum capitatum var. angustatum,Contra Costa wallflower,N,58866,9942,119564,47096,,,,,,,790,1B.1,CE,FE,S1,G5T1
736
+ Erysimum capitatum var. angustatum,Contra Costa wallflower,N,58866,9942,119564,47093,,,,,,,790,1B.1,CE,FE,S1,G5T1
739
737
  Erysimum capitatum var. capitatum,western wallflower,N,58866,9943,50627,47096,true,Sanddune Wallflower,,"orange,yellow",3,9
740
738
  Erythranthe androsacea,,N,99088,13487,771845,203774,true
741
739
  Erythranthe arvensis,"villous-bracted monkeyflower,field monkeyflower",N,99091,13552,771848,206807,true,,,yellow,4,7
@@ -785,7 +783,7 @@ Festuca elmeri,Elmer fescue,N,25798,3580,64333,141011,true,Elmer Fescue
785
783
  Festuca idahoensis,Idaho fescue,N,25808,3581,61200,141076,true,Idaho Fescue
786
784
  Festuca microstachys,,N,25865,11688,77138,141123,Vulpia microstachys var. ciliata,Pacific Fescue
787
785
  Festuca myuros,zorro grass,X,25869,11689,77140,141133,Vulpia myuros
788
- Festuca octoflora,six-week's fescue,N,25872,11690,77141,141148,Vulpia octoflora,Six Weeks Fescue
786
+ Festuca octoflora,six-week's fescue,N,25872,11690,77141,141148,Vulpia octoflora var. hirtella,Six Weeks Fescue
789
787
  Festuca perennis,Italian ryegrass,X,91964,11691,52801,203852,Lolium multiflorum
790
788
  Festuca rubra,red fescue,N,25825,3586,61061,141223,true,Red Fescue
791
789
  Festuca temulenta,darnel,X,93753,11692,164712,203853,Lolium temulentum
@@ -948,6 +946,7 @@ Isoetes howellii,Howell's quillwort,N,29392,4379,63823,199150,,Howell's Quillwor
948
946
  Isolepis carinata,,N,80405,9608,77515,104671,true,Keeled Bulrush
949
947
  Isolepis cernua,,N,79218,9605,60257,104672,true,Annual Tule
950
948
  Iva axillaris,poverty weed,N,3654,10020,58837,204449,true,Poverty Weed
949
+ Jacobaea vulgaris subsp. vulgaris,tansy ragwort,X,82779,7508,487101,205893,Senecio jacobaea
951
950
  Jaumea carnosa,,N,3667,4424,60969,204476,true,Fleshy Jaumea
952
951
  Juglans californica,Southern California black walnut,N,29566,4428,54503,23676,true,Southern California Black Walnut,,,,,1704,4.2,,,S4,G4
953
952
  Juglans hindsii,Northern California black walnut,N,29568,8943,54502,23680,true,Northern California Black Walnut,perennial,,4,5
@@ -1142,11 +1141,11 @@ Madia exigua,threadstem madia,N,4045,5289,56971,204827,true,Meager Tarweed
1142
1141
  Madia gracilis,slender tarweed,N,4047,5291,53135,204829,true,Gumweed,,yellow
1143
1142
  Madia radiata,showy madia,N,4053,5296,77924,204832,true,Showy Golden Madia,,,,,1054,1B.1,,,S3,G3
1144
1143
  Madia sativa,coast tarweed,N,4055,5298,53143,204833,true,Coast Tarweed,,yellow
1145
- Maianthemum racemosum,false Solomon's seal,N,32495,10096,51062,204837,true,Large False Solomon's Seal
1144
+ Maianthemum racemosum subsp. amplexicaule,false Solomon's seal,N,51514,10096,53012,207757,true
1146
1145
  Maianthemum stellatum,,N,32497,9629,53268,204838,true,False Solomon Seal
1147
1146
  Malacothamnus arcuatus var. elmeri,,N,108345,14681,1497404,412621,,Eastern Bewildering Bushmallow,perennial,pink,4,5,1065,1B.2,,,S2,G2
1148
1147
  Malacothamnus fremontii var. fremontii,long-haired unfurled bushmallow,N,108341,14689,70398,400947,Malacothamnus fremontii,,perennial,pink,5,6
1149
- Malacothamnus hallii,Hall's bushmallow,N,108345,14681,1497404,412621,,,perennial,pink,4,5,1065,1B.2,,,S2,G2
1148
+ Malacothamnus hallii,Hall's bushmallow,N,108345,5314,1497404,25364,,,perennial,pink,4,5,1065,1B.2,,,S2,G2
1150
1149
  Malacothrix californica,,N,4059,5325,58026,204841,true,California Desertdandelion
1151
1150
  Malacothrix clevelandii,Cleveland's malacothrix,N,4060,5326,58841,204842,true,Cleveland's Desertdandelion
1152
1151
  Malacothrix coulteri,snake's-head,N,4061,5327,58027,204843,true,Snake's Head
@@ -1271,7 +1270,7 @@ Nicotiana glauca,tree tobacco,X,34646,5860,58334,72870
1271
1270
  Nicotiana quadrivalvis,Indian tobacco,N,34649,5862,58336,72878,,Indian Tobacco
1272
1271
  Nitrophila occidentalis,borax weed,N,34675,5865,78223,116737,true,Boraxweed
1273
1272
  Nothoscordum gracile,false garlic,X,34732,10157,78233,205139,true
1274
- Nuttallanthus texanus,blue toadflax,N,34756,11883,78235,72929,true,Blue Toadflax
1273
+ Nuttallanthus texanus,blue toadflax,N,34756,11883,209238,72929,true,Blue Toadflax
1275
1274
  Oemleria cerasiformis,oso berrry,N,34900,5879,53419,26643,true,Osoberry
1276
1275
  Oenanthe sarmentosa,,N,34904,5881,60127,205153,,Pacific Oenanthe
1277
1276
  Oenothera biennis,common evening-primrose,X,34975,5882,62207,26661,true
@@ -1333,7 +1332,6 @@ Persicaria maculosa,lady's thumb,X,82466,11011,56166,117853,true
1333
1332
  Persicaria punctata,,N,37303,11014,78456,117874,true,Water Smartweed
1334
1333
  Petasites frigidus var. palmatus,coltsfoot,N,8060,6269,55778,205301,true,Arctic Sweet Coltsfoot
1335
1334
  Petrorhagia dubia,pink grass,X,37370,6275,60602,117891,true
1336
- Petunia parviflora,wild petunia,N,37378,6279,159650,74142,,Seaside Petunia
1337
1335
  Phacelia breweri,Brewer's phacelia,N,37425,6292,68813,205312,,Brewer's Phacelia,annual,blue,3,6
1338
1336
  Phacelia californica,rock phacelia,N,37426,6293,53170,205313,,Rock Phacelia,perennial,blue,3,9
1339
1337
  Phacelia ciliata,great valley phacelia,N,37432,6302,58180,205324,,Great Valley Phacelia,annual,blue,3,6
@@ -1412,7 +1410,7 @@ Plantago subnuda,naked plantain,N,38605,6626,60223,74567,true,Naked Plantain
1412
1410
  Platanthera dilatata var. leucostachys,white-flowered bog orchid,N,63974,9593,81271,205521,true,White Bog Orchid
1413
1411
  Platanus racemosa,western sycamore,N,38655,6633,58231,28255,true,Western Sycamore,perennial,red,2,4
1414
1412
  Platystemon californicus,cream cups,N,38664,6635,51288,28269,true,Creamcups
1415
- Plectritis ciliosa,,N,38677,6639,57284,205525,,Longspur Seablush,,pink,3,6
1413
+ Plectritis ciliosa,,N,38677,6639,57284,205528,,Longspur Seablush,,pink,3,6
1416
1414
  Plectritis congesta subsp. brachystemon,,N,52336,11937,57787,205537,,Small-flowered Plectritis
1417
1415
  Plectritis congesta subsp. congesta,,N,52337,11938,59253,205535,,Sea Blush
1418
1416
  Plectritis macrocera,,N,38684,6643,57287,205540,,Longhorn Seablush,,white,3,6
@@ -1528,10 +1526,13 @@ Ranunculus occidentalis var. occidentalis,,N,64947,11979,81335,50940,true,Wester
1528
1526
  Ranunculus orthorhynchus var. bloomeri,,N,64956,7051,81337,50948,true,Bloomer's Buttercup
1529
1527
  Ranunculus orthorhynchus var. orthorhynchus,,N,64957,7052,81338,50950,true,Straightbeak Buttercup
1530
1528
  Ranunculus repens,,X,40965,7056,48229,29669,true
1531
- Ranunculus sceleratus,cursed crowsfoot,N,40971,7059,59301,29675,true,Cursed Buttercup
1532
1529
  Ranunculus sceleratus var. sceleratus,,X,64987,11983,81341,50983,true,,annual,yellow,4,6
1530
+ Ranunculus sceleratus,cursed crowsfoot,N,40971,7059,59301,29675,true,Cursed Buttercup
1533
1531
  Raphanus raphanistrum,jointed charlock,X,40991,7063,55411,29701,true
1534
1532
  Raphanus sativus,wild radish,X,40992,7064,995125,29702,true
1533
+ Ravenella exigua,chaparral harebell,N,84837,14672,1342787,412341,,,,,,,265,1B.2,,,S2,G2
1534
+ Ravenella griffinii,,N,84836,14796,1342789,412342
1535
+ Ravenella sharsmithiae,,N,108392,14673,1342786,208086,,,,,,,267,1B.2,,,S1S2,G1G2
1535
1536
  Rhamnus alaternus,Italian buckthorn,X,81104,9447,82856,29726,true
1536
1537
  Rhamnus crocea,spiny redberry,N,41069,7075,57243,29736,true,Spiny Redberry
1537
1538
  Rhamnus ilicifolia,holly-leaf redberry,N,41070,7076,58308,29743,true,Hollyleaf Redberry
@@ -1543,8 +1544,8 @@ Ribes aureum var. gracillimum,golden currant,N,65126,7104,55547,51084,true,Golde
1543
1544
  Ribes californicum var. californicum,hillside gooseberry,N,65128,7108,47128,51086,true,Hillside Gooseberry,perennial,white,2,3
1544
1545
  Ribes divaricatum var. pubiflorum,straggly gooseberry,N,65143,7117,53434,51104,true,Straggly Gooseberry,perennial,white,3,5
1545
1546
  Ribes malvaceum var. malvaceum,pink-flowering currant,N,65160,7128,54947,51119,Ribes malvaceum,Chaparral Currant,perennial,pink,10,4
1546
- Ribes menziesii,canyon gooseberry,N,41423,7131,52687,29958,true,Canyon Gooseberry
1547
1547
  Ribes menziesii var. menziesii,canyon gooseberry,N,65168,10307,53114,51126,Ribes menziesii,Canyon Gooseberry,perennial,white,2,4
1548
+ Ribes menziesii,canyon gooseberry,N,41423,7131,52687,29958,true,Canyon Gooseberry
1548
1549
  Ribes quercetorum,oak gooseberry,N,41449,7136,55548,29981,true,Rock Gooseberry,perennial,yellow,3,5
1549
1550
  Ribes sanguineum var. glutinosum,red-flowering currant,N,65190,7142,53436,51152,true,Pink-flowering Currant,perennial,pink,2,4
1550
1551
  Ribes speciosum,fuchsia-flowered gooseberry,N,41466,7145,50824,29994,true,Fuchsiaflower Gooseberry,perennial,red,1,5
@@ -1636,7 +1637,6 @@ Schoenoplectus tabernaemontani,,N,80321,9611,78998,105209,true,Tule
1636
1637
  Scirpus microcarpus,,N,43718,7398,59068,105310,true,Panicled Bulrush
1637
1638
  Scoliopus bigelovii,,N,43824,7416,48990,205840,true,Fetid Adderstongue
1638
1639
  Scolymus hispanicus,golden thistle,X,4661,7417,79009,207280,true
1639
- Scribneria bolanderi,,N,43846,7420,1586235,148492,true,Scribner's Grass
1640
1640
  Scrophularia californica,California figwort,N,43849,7422,50812,75853,true,Bee Plant,,white
1641
1641
  Scutellaria bolanderi subsp. bolanderi,Sierra skullcap,N,52896,7431,80184,96443,,Sierra Skullcap,perennial,"white,blue",6,7
1642
1642
  Scutellaria californica,,N,43883,7432,59791,75893,,California Skullcap,perennial
@@ -1650,12 +1650,11 @@ Sedum radiatum subsp. radiatum,,N,52943,14601,238486,43756,Sedum radiatum var. r
1650
1650
  Sedum radiatum,coast range stonecrop,N,44006,7457,61471,31890,true,Coast Range Stonecrop
1651
1651
  Sedum spathulifolium,broadleaf stonecrop,N,44016,7459,58886,31905,true,Yellow Stonecrop
1652
1652
  Selaginella bigelovii,spike-moss,N,44043,7462,58768,199857,true,Spike Moss
1653
- Senecio aphanactis,chaparral ragwort,N,4672,7473,63375,205846,true,Chaparral Ragwort,,,,,1773,2B.2,,,S2,G3
1653
+ Senecio aphanactis,chaparral ragwort,N,4672,7473,63375,205846,true,Chaparral Ragwort,,,,,1773,1B.2,,,S2,G3
1654
1654
  Senecio aronicoides,rayless ragwort,N,4674,7474,53206,205848,true,Rayless Ragwort
1655
1655
  Senecio flaccidus var. douglasii,Douglas' ragwort,N,8218,7492,58037,205865,true,Douglas' Groundsel
1656
1656
  Senecio glomeratus,cutleaf burnweed,X,2573,10688,60981,205883,Erechtites glomeratus
1657
1657
  Senecio hydrophilus,water ragwort,N,4759,7501,64165,205888,true,Water Groundsel
1658
- Senecio jacobaea,tansy ragwort,X,4770,7508,62498,205894,true
1659
1658
  Senecio minimus,Australian fireweed,X,2580,11076,60980,205904,Erechtites minimus
1660
1659
  Senecio sylvaticus,woodland ragwort,X,4853,7522,53210,205927,true
1661
1660
  Senecio vulgaris,common groundsel,X,4866,7524,53211,205929,true,,,yellow
@@ -1688,9 +1687,8 @@ Solanum elaeagnifolium,white horse-nettle,X,44852,7654,79137,76470
1688
1687
  Solanum furcatum,,X,44856,7655,79138,76521
1689
1688
  Solanum lanceolatum,lanceleaf nightshade,X,44872,7656,79139,76689
1690
1689
  Solanum nigrum,black nightshade,X,44883,7658,79141,76840
1691
- Solanum physalifolium var. nitidibaccatum,nightshade,X,66519,11086,406080,99842
1690
+ Solanum nitidibaccatum,nightshade,N,103838,11086,406080,211825,,,annual,white,5,10
1692
1691
  Solanum umbelliferum,blue witch,N,44919,7664,50639,77221,,Bluewitch Nightshade
1693
- Solanum xanti,,N,77308,7666,79146,77288,,Purple Nightshade
1694
1692
  Soleirolia soleirolii,baby's tears,X,44928,7667,79147,32304,true
1695
1693
  Solidago elongata,Canada goldenrod,N,4956,12025,79150,206005,true,Canadian Goldenrod
1696
1694
  Solidago velutina subsp. californica,California goldenrod,N,85830,11088,80217,205992,true,California Goldenrod
@@ -1702,10 +1700,6 @@ Sorghum bicolor,sorghum,X,45003,7690,58389,148856,true
1702
1700
  Sorghum halepense,Johnson-grass,X,45017,7691,58387,148887,true
1703
1701
  Sparganium eurycarpum var. eurycarpum,bur-reed,N,73845,12031,63347,207940,Sparganium eurycarpum,Bur Reed
1704
1702
  Sparganium eurycarpum var. greenei,,N,66594,12032,842663,174978,,Simplestem Bur Reed
1705
- Spartina alterniflora,saltwater cordgrass,X,45038,7699,772903,148951,true
1706
- Spartina densiflora,dense-flowered cordgrass,X,45043,7700,772990,148961,true
1707
- Spartina foliosa,California cordgrass,N,45044,7701,772992,148963,true,California Cord Grass
1708
- Spartina patens,saltmeadow cordgrass,X,45048,7703,773004,148979,true
1709
1703
  Spartium junceum,Spanish broom,X,45053,7704,47406,32391
1710
1704
  Spergula arvensis,spurrey,X,45074,9630,57005,119398,true
1711
1705
  Spergularia bocconi,,X,45079,10693,594639,119404,true
@@ -1719,7 +1713,13 @@ Spergularia villosa,hairy sand-spurrey,X,45096,7717,60173,119423,true
1719
1713
  Spiranthes porrifolia,,N,45262,7740,50742,206062,true,Creamy Lady's Tresses
1720
1714
  Spiranthes romanzoffiana,,N,45264,7741,50743,206063,true,Irish Lady's-tresses
1721
1715
  Sporobolus airoides,alkali sacaton,N,45286,7744,60313,149026,true,Alkali Sacaton
1716
+ Sporobolus alterniflorus,saltwater cordgrass,X,82872,7699,772903,148951,Spartina alterniflora
1717
+ Sporobolus densiflorus,dense-flowered cordgrass,X,108405,7700,169300,148961,Spartina densiflora
1718
+ Sporobolus foliosus,California cordgrass,N,82873,7701,772992,208714,Spartina foliosa
1722
1719
  Sporobolus indicus,smutgrass,X,45308,7749,79187,149101,true
1720
+ Sporobolus niliacus,,X,82876,2440,773022,397065,Crypsis vaginiflora
1721
+ Sporobolus pumilus,saltmeadow cordgrass,X,82878,7703,773004,148979,Spartina patens
1722
+ Sporobolus schoenoides,swamp grass,X,82879,2439,773038,397066,Crypsis schoenoides
1723
1723
  Stachys ajugoides,hedge nettle,N,45338,7751,53295,77371,,Ajuga Hedge Nettle
1724
1724
  Stachys albens,,N,45339,7754,58192,77372,,White Hedge Nettle
1725
1725
  Stachys bullata,,N,45343,7756,58930,77383,,California Hedgenettle
@@ -1737,9 +1737,9 @@ Stephanomeria virgata subsp. pleurocarpa,,N,6227,7806,58849,206092,true,Wand Wir
1737
1737
  Stipa cernua,nodding needlegrass,N,45640,12042,165654,149288,Nassella cernua,Nodding Needle Grass
1738
1738
  Stipa lemmonii var. lemmonii,Lemmon's needlegrass,N,73899,12053,1220756,173006,Achnatherum lemmonii subsp. lemmonii
1739
1739
  Stipa lepida,foothill needlegrass,N,45641,12054,165656,149399,Nassella lepida,Foothill Needlegrass
1740
- Stipa miliacea var. miliacea,smilo grass,X,91920,12058,524183,206097,Piptatherum miliaceum
1740
+ Stipa miliacea var. miliacea,smilo grass,X,91920,12058,524183,206097,Piptatherum miliaceum subsp. miliaceum
1741
1741
  Stipa pulchra,purple needlegrass,N,45644,12067,165659,149498,Nassella pulchra,Purple Needlegrass
1742
- Streptanthus albidus subsp. peramoenus,most beautiful jewelflower,N,53142,7814,58783,43881,Streptanthus glandulosus subsp. glandulosus,,,,,,1490,1B.2,,,S2,G2T2
1742
+ Streptanthus albidus subsp. peramoenus,most beautiful jewelflower,N,53142,7814,58783,258754,Streptanthus glandulosus subsp. glandulosus,,,,,,1490,1B.2,,,S2,G2T2
1743
1743
  Streptanthus breweri,,N,45725,7822,79258,32606,true,Brewer's Jewelflower
1744
1744
  Streptanthus glandulosus subsp. glandulosus,jewelflower,N,53142,7837,58783,43881,true,Most Beautiful Jewel Flower
1745
1745
  Streptanthus hispidus,Mt. Diablo jewelflower,N,45741,7842,50620,32624,true,Mount Diablo Jewelflower,,,,,1502,1B.3,,,S2,G2
@@ -1825,7 +1825,7 @@ Triglochin maritima,seaside arrow-grass,N,47197,8114,60264,206250,true,Arrowgras
1825
1825
  Triglochin scilloides,flowering quillwort,N,91083,12117,79437,204660,Lilaea scilloides,Flowering-quillwort
1826
1826
  Triglochin striata,,N,47201,8116,79438,206252,true,Three-ribbed Arrow-grass
1827
1827
  Trillium chloropetalum,giant trillium,N,47218,8119,50823,206256,true,Giant Wakerobin,,"yellow,pink,purple,white",4,5
1828
- Trillium ovatum subsp. ovatum,white trillium,N,53276,8122,63972,207392,Trillium ovatum var. ovatum,Western Wakerobin
1828
+ Trillium ovatum,white trillium,N,47239,8120,49463,206258,true,Western Trillium
1829
1829
  Triodanis biflora,Venus' looking-glass,N,47267,8126,79440,206266,,Small Venus' Looking-glass
1830
1830
  Triphysaria eriantha subsp. eriantha,butter-and-eggs,N,53279,8129,59332,96567,true,Butter'n Eggs
1831
1831
  Triphysaria pusilla,,N,47296,8133,57276,78297,true,Dwarf Owl's-clover
@@ -1838,15 +1838,15 @@ Tropaeolum majus,garden nasturtium,X,47408,8167,54329,34321,true
1838
1838
  Tropidocarpum capparideum,caper-fruited tropidocarpum,N,47411,8168,79456,34327,true,Caper-fruited Tropidocarpum,annual,yellow,3,4,1255,1B.1,,,S1,G1
1839
1839
  Tropidocarpum gracile,dobie pod,N,47412,8169,58091,34328,true,Dobie Pod,annual,yellow,3,5
1840
1840
  Turritis glabra,tower mustard,N,47457,12119,79460,34347,true,Tower Mustard
1841
- Typha angustifolia,narrow-leaved cattail,U,47462,8176,60316,174863,true
1841
+ Typha angustifolia,narrow-leaved cattail,U,47462,8176,60316,174863,true,Narrowleaf Cattail
1842
1842
  Typha domingensis,southern cattail,N,47463,8177,58392,174864,true,Southern Cattail
1843
1843
  Typha latifolia,cattail,N,47466,8178,48685,174865,true,Broadleaf Cattail
1844
1844
  Ulmus minor,English elm,X,47478,8180,79461,34372,Ulmus procera
1845
1845
  Umbellularia californica,California bay,N,47489,8183,48807,34384,true,California Laurel,perennial,yellow,11,5
1846
1846
  Uropappus lindleyi,silver puffs,N,76212,8184,50806,206299,true,Uropappus
1847
1847
  Urospermum picroides,false hawkbit,X,5477,8185,59361,206301,true
1848
- Urtica dioica subsp. gracilis,American stinging nettle,N,53302,8186,141854,44054,true,California Nettle
1849
- Urtica dioica subsp. holosericea,hoary nettle,N,53303,8187,141851,44055,true,Hoary Nettle
1848
+ Urtica gracilis subsp. gracilis,American stinging nettle,N,70675,8186,1074432,207397,Urtica dioica subsp. gracilis
1849
+ Urtica gracilis subsp. holosericea,hoary nettle,N,53304,8187,141851,44056,Urtica dioica subsp. holosericea
1850
1850
  Urtica urens,dwarf nettle,X,47589,8188,53315,34426,true
1851
1851
  Vaccinium ovatum,"California huckleberry,evergreen huckleberry",N,47685,8200,48349,78452,true,Evergreen Huckleberry
1852
1852
  Vancouveria planipetala,inside-out flower,N,47786,8215,63938,34467,true,Insideout Flower
@@ -0,0 +1 @@
1
+ 3 [stamens](./g/stamen.html). Crown surrounding [anthers](./g/anther.html).
@@ -0,0 +1 @@
1
+ 6 [stamens](./g/stamen.html) (2 different sizes).
@@ -0,0 +1,6 @@
1
+ ---
2
+ layout: html.njk
3
+ ---
4
+
5
+ <h1>{{title}}</h1>
6
+ {{content|safe}}
@@ -0,0 +1,55 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+
4
+ <head>
5
+ <meta charset="utf-8">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1">
7
+ <link href="https://cdn.jsdelivr.net/npm/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous">
8
+ <title>{{title}}</title>
9
+ <link href="/assets/css/main.css" rel="stylesheet">
10
+ </head>
11
+
12
+ <body>
13
+
14
+ <nav class="navbar navbar-expand-md">
15
+ <div class="container-xxl px-5">
16
+ <button id="hamburger" class="navbar-toggler" type="button" data-bs-toggle="collapse"
17
+ data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false"
18
+ aria-label="Toggle navigation">
19
+ <span class="navbar-toggler-icon"></span>
20
+ </button>
21
+ <a class="navbar-brand" href="/index.html">{{siteName}}</a>
22
+ <div class="collapse navbar-collapse" id="navbarSupportedContent">
23
+ <ul class="navbar-nav me-auto mb-lg-0">
24
+ <li class="nav-item">
25
+ <a class="nav-link" href="/index_lists.html">Plant Lists</a>
26
+ </li>
27
+ <li class="nav-item">
28
+ <a class="nav-link" href="/rare_plants.html">Rare Plants</a>
29
+ </li>
30
+ <li class="nav-item">
31
+ <a class="nav-link" href="/name_search.html">Name Search</a>
32
+ </li>
33
+ <li class="nav-item">
34
+ <a class="nav-link" href="/glossary.html">Glossary</a>
35
+ </li>
36
+ {%include "menu_extra.html" %}
37
+ </ul>
38
+ </div>
39
+ </div>
40
+ </nav>
41
+
42
+ <div class="container-xxl px-5">
43
+ {{content|safe}}
44
+ </div>
45
+
46
+ <script src="https://cdn.jsdelivr.net/npm/bootstrap/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
47
+
48
+ {%if js%}<script src="/assets/js/{{js}}" type="module"></script>{%endif%}
49
+
50
+ <script src="/assets/js/ui.js" type="module"></script>
51
+
52
+ {%include "analytics.html"%}
53
+ </body>
54
+
55
+ </html>
@@ -1,33 +1,49 @@
1
- import { Config } from "./config.js";
1
+ import path from "node:path";
2
2
  import { Files } from "./files.js";
3
- import { Jekyll } from "./jekyll.js";
4
3
  import { GlossaryPages } from "./web/glossarypages.js";
5
4
  import { PageFamilyList } from "./web/pageFamily.js";
5
+ import { Jekyll } from "./jekyll.js";
6
+ import { EleventyGenerator } from "./utils/eleventyGenerator.js";
6
7
 
7
8
  export class BasePageRenderer {
8
9
  /**
10
+ * @param {import("./types.js").Config} config
9
11
  * @param {string} outputDir
12
+ * @param {import("./index.js").SiteGeneratorOptions} options
13
+ * @param {"11ty"|"jekyll"} [type="11ty"]
14
+ * @returns {import("./types.js").SiteGenerator}
15
+ */
16
+ static newSiteGenerator(config, outputDir, options = {}, type = "11ty") {
17
+ switch (type) {
18
+ case "jekyll":
19
+ return new Jekyll(config, outputDir);
20
+ }
21
+ return new EleventyGenerator(config, outputDir, options);
22
+ }
23
+
24
+ /**
25
+ * @param {import("./types.js").SiteGenerator} siteGenerator
10
26
  * @param {import("./types.js").Taxa} taxa
11
27
  * @param {import("./types.js").TaxaColDef[]} [familyCols]
12
28
  */
13
- static renderBasePages(outputDir, taxa, familyCols) {
14
- const siteGenerator = new Jekyll(outputDir);
29
+ static renderBasePages(siteGenerator, taxa, familyCols) {
30
+ const outputDir = siteGenerator.getBaseDir();
15
31
 
16
32
  // Copy static files
17
- // First copy default Jekyll files from package.
18
- Files.copyDir(Config.getPackageDir() + "/jekyll", outputDir);
19
- // Then copy Jekyll files from current dir (which may override default files).
20
- Files.copyDir("jekyll", outputDir);
33
+ siteGenerator.copyStaticFiles();
34
+
35
+ // Copy static files
36
+ siteGenerator.copyGeneratorFiles();
21
37
 
22
38
  // Copy illustrations.
23
39
  siteGenerator.copyIllustrations(taxa.getFlowerColors());
24
40
 
25
41
  const fl = new PageFamilyList(
26
- outputDir,
42
+ siteGenerator,
27
43
  taxa.getFamilies().getFamilies(),
28
44
  );
29
45
  fl.render(familyCols);
30
- fl.renderPages(outputDir, familyCols);
46
+ fl.renderPages(siteGenerator, familyCols);
31
47
 
32
48
  new GlossaryPages(siteGenerator).renderPages();
33
49
 
@@ -41,22 +57,26 @@ export class BasePageRenderer {
41
57
  static renderTools(outputDir, taxa) {
42
58
  const names = [];
43
59
  for (const taxon of taxa.getTaxonList()) {
44
- const row = [];
45
- row.push(taxon.getName());
60
+ /** @type {(import("./types.js").NameSearchData)} */
61
+ const row = { t: taxon.getName() };
46
62
  const cn = taxon.getCommonNames().join(", ");
47
63
  if (cn) {
48
- row.push(cn);
64
+ row.c = cn;
49
65
  }
50
66
  const synonyms = [];
51
67
  for (const syn of taxon.getSynonyms()) {
52
68
  synonyms.push(syn);
53
69
  }
54
70
  if (synonyms.length > 0) {
55
- row[2] = synonyms;
71
+ row.s = synonyms;
56
72
  }
57
73
  names.push(row);
58
74
  }
59
75
 
60
- Files.write(outputDir + "/_includes/names.json", JSON.stringify(names));
76
+ Files.write(
77
+ path.join(outputDir, "./assets/js/nameSearchData.js"),
78
+ `export const NAMES = ${JSON.stringify(names)};`,
79
+ true,
80
+ );
61
81
  }
62
82
  }
package/lib/config.js CHANGED
@@ -8,7 +8,7 @@ const COUNTY_NAMES = {
8
8
  CCA: "Contra Costa",
9
9
  };
10
10
 
11
- class Config {
11
+ export class Config {
12
12
  static #packageDir = path.dirname(
13
13
  path.dirname(url.fileURLToPath(import.meta.url)),
14
14
  );
@@ -88,6 +88,8 @@ class Config {
88
88
  static getPackageDir() {
89
89
  return this.#packageDir;
90
90
  }
91
- }
92
91
 
93
- export { Config };
92
+ getSiteName() {
93
+ return this.#config.siteName ?? "California Plants";
94
+ }
95
+ }
@@ -1,12 +1,11 @@
1
1
  import * as fs from "node:fs";
2
2
 
3
- class EBookPage {
3
+ export class EBookPage {
4
4
  #fileName;
5
5
  #title;
6
6
  #rootPrefix;
7
7
 
8
8
  /**
9
- *
10
9
  * @param {string} fileName
11
10
  * @param {string} title
12
11
  * @param {string} rootPrefix
@@ -56,5 +55,3 @@ class EBookPage {
56
55
  return html;
57
56
  }
58
57
  }
59
-
60
- export { EBookPage };
@@ -1,14 +1,8 @@
1
+ import path from "node:path";
1
2
  import { Files } from "../files.js";
2
3
  import { SiteGenerator } from "../sitegenerator.js";
3
4
 
4
- class EBookSiteGenerator extends SiteGenerator {
5
- /**
6
- * @param {string} baseDir
7
- */
8
- constructor(baseDir) {
9
- super(baseDir);
10
- }
11
-
5
+ export class EBookSiteGenerator extends SiteGenerator {
12
6
  #pageEnd() {
13
7
  return "</body></html>";
14
8
  }
@@ -47,10 +41,8 @@ class EBookSiteGenerator extends SiteGenerator {
47
41
  writeTemplate(content, attributes, filename) {
48
42
  const depth = (filename.match(/\//g) || []).length;
49
43
  Files.write(
50
- Files.join(this.getBaseDir(), filename),
51
- this.#wrap(depth, content, attributes)
44
+ path.join(this.getBaseDir(), filename),
45
+ this.#wrap(depth, content, attributes),
52
46
  );
53
47
  }
54
48
  }
55
-
56
- export { EBookSiteGenerator };
@@ -1,7 +1,7 @@
1
1
  import { GlossaryPages as BaseGlossaryPages } from "../web/glossarypages.js";
2
2
  import { EBook } from "./ebook.js";
3
3
 
4
- class GlossaryPages extends BaseGlossaryPages {
4
+ export class GlossaryPages extends BaseGlossaryPages {
5
5
  /**
6
6
  * @param {import("../sitegenerator.js").SiteGenerator} siteGenerator
7
7
  */
@@ -39,5 +39,3 @@ class GlossaryPages extends BaseGlossaryPages {
39
39
  return spineEntries.join("");
40
40
  }
41
41
  }
42
-
43
- export { GlossaryPages };
@@ -29,7 +29,7 @@ class PlantBook extends EBook {
29
29
  );
30
30
 
31
31
  this.#taxa = taxa;
32
- const generator = new EBookSiteGenerator(this.getContentDir());
32
+ const generator = new EBookSiteGenerator(config, this.getContentDir());
33
33
  this.#glossary = new GlossaryPages(generator);
34
34
  this.#images = new Images(generator, this.getContentDir(), taxa);
35
35
  }
package/lib/files.js CHANGED
@@ -83,6 +83,7 @@ class Files {
83
83
  /**
84
84
  * @param {string[]} paths
85
85
  * @returns {string}
86
+ * @deprecated
86
87
  */
87
88
  static join(...paths) {
88
89
  return path.join(...paths).replaceAll("\\", "/");
package/lib/htmltaxon.js CHANGED
@@ -1,10 +1,11 @@
1
+ import path from "node:path";
1
2
  import { Config } from "./config.js";
2
3
  import { DateUtils } from "./dateutils.js";
3
4
  import { ExternalSites } from "./externalsites.js";
4
5
  import { HTML } from "./html.js";
5
- import { Markdown } from "./markdown.js";
6
6
  import { RarePlants } from "./rareplants.js";
7
7
  import { TextUtils } from "./textutils.js";
8
+ import { HTMLFragments } from "./utils/htmlFragments.js";
8
9
 
9
10
  /**
10
11
  * @type {Record<string,import("./types.js").TaxaColDef>}
@@ -204,12 +205,12 @@ class HTMLTaxon {
204
205
  * @returns {string}
205
206
  */
206
207
  static getFooterHTML(taxon) {
207
- const footerTextPath =
208
- Config.getPackageDir() +
209
- "/data/text/" +
210
- taxon.getBaseFileName() +
211
- ".footer.md";
212
- return HTMLTaxon.getMarkdownSection(footerTextPath);
208
+ const footerTextPath = path.join(
209
+ Config.getPackageDir(),
210
+ "/data/text/",
211
+ `${taxon.getBaseFileName()}.footer.md`,
212
+ );
213
+ return HTMLFragments.getMarkdownSection(footerTextPath);
213
214
  }
214
215
 
215
216
  /**
@@ -271,18 +272,6 @@ class HTMLTaxon {
271
272
  return html;
272
273
  }
273
274
 
274
- /**
275
- * @param {string} filePath
276
- * @returns {string}
277
- */
278
- static getMarkdownSection(filePath) {
279
- const footerMarkdown = Markdown.fileToHTML(filePath);
280
- if (footerMarkdown) {
281
- return HTML.wrap("div", footerMarkdown, "section");
282
- }
283
- return "";
284
- }
285
-
286
275
  /**
287
276
  * @param {import("./types.js").Taxon} taxon
288
277
  */