diff --git a/Nfdi4Plants.Fornax.sln b/Nfdi4Plants.Fornax.sln index 4a4726d..4bfb314 100644 --- a/Nfdi4Plants.Fornax.sln +++ b/Nfdi4Plants.Fornax.sln @@ -20,6 +20,8 @@ Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "Nfdi4Plants.Fornax", "src\N EndProject Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "Nfdi4Plants.Fornax.Tests", "tests\Nfdi4Plants.Fornax.Tests\Nfdi4Plants.Fornax.Tests.fsproj", "{DB4ECEE1-1EF6-4DE6-B358-4A63F2DF74FD}" EndProject +Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "Nfdi4Plants.Fornax.Template", "src\Nfdi4Plants.Fornax.Template\Nfdi4Plants.Fornax.Template.fsproj", "{8087D3B5-E961-4A3B-BC8F-7E33F67B8D3C}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -38,6 +40,10 @@ Global {DB4ECEE1-1EF6-4DE6-B358-4A63F2DF74FD}.Debug|Any CPU.Build.0 = Debug|Any CPU {DB4ECEE1-1EF6-4DE6-B358-4A63F2DF74FD}.Release|Any CPU.ActiveCfg = Release|Any CPU {DB4ECEE1-1EF6-4DE6-B358-4A63F2DF74FD}.Release|Any CPU.Build.0 = Release|Any CPU + {8087D3B5-E961-4A3B-BC8F-7E33F67B8D3C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8087D3B5-E961-4A3B-BC8F-7E33F67B8D3C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8087D3B5-E961-4A3B-BC8F-7E33F67B8D3C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8087D3B5-E961-4A3B-BC8F-7E33F67B8D3C}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -45,6 +51,7 @@ Global GlobalSection(NestedProjects) = preSolution {235EF1A1-0447-40A7-ADF7-35FD0FBA9685} = {2B672946-D10B-4804-93DE-B11DE6B85259} {DB4ECEE1-1EF6-4DE6-B358-4A63F2DF74FD} = {569B21DD-E434-48EF-9D28-FC864B6A7EC3} + {8087D3B5-E961-4A3B-BC8F-7E33F67B8D3C} = {2B672946-D10B-4804-93DE-B11DE6B85259} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9591E7EB-8243-4661-BA6B-3DD822EB60EB} diff --git a/README.md b/README.md index f1d89c6..2d37d2b 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ See the official [@nfdi4plants/web-components docs](https://nfdi4plants.github.i - Build the library - Create a nuget package and copy it to the client test folder. 4. Update nuget reference for library to new version. - - In `client\loaders\docsloader.fsx`. + - In `client\loaders\_lib.fsx`. - 👀 It might be necessary to clear nuget cache if the version was not changed for it to update. 5. [Test](##start-test-client) the new version. diff --git a/build/BasicTasks.fs b/build/BasicTasks.fs index d7f28ad..2188b94 100644 --- a/build/BasicTasks.fs +++ b/build/BasicTasks.fs @@ -4,6 +4,7 @@ open BlackFox.Fake open Fake.IO open Fake.DotNet open Fake.IO.Globbing.Operators +open System.IO open ProjectInfo @@ -25,6 +26,17 @@ let clean = BuildTask.create "Clean" [] { } let build = BuildTask.create "Build" [clean] { - solutionFile - |> DotNet.build id + //solutionFile + //|> DotNet.build + let srcFolder = "src" + let projects = + Directory.GetFiles( + srcFolder, + "*.fsproj", + new EnumerationOptions() |> fun x -> x.RecurseSubdirectories <- true; x + ) + // need to remove template project. Would error otherwise because of NoBuild param in .fsproj file. + |> Array.filter (fun x -> x.EndsWith "Nfdi4Plants.Fornax.Template.fsproj" |> not) + projects + |> Array.iter (DotNet.build id) } \ No newline at end of file diff --git a/client/generators/layout.fsx b/client/generators/layout.fsx index 5d74042..be70b4e 100644 --- a/client/generators/layout.fsx +++ b/client/generators/layout.fsx @@ -109,11 +109,3 @@ let render (ctx : SiteContents) cnt = let docsLayout (docs: Nfdi4Plants.Docs) = // just an example url Nfdi4Plants.Components.docsLayout("https://github.com/nfdi4plants/nfdi4plants.github.io/tree/main/src/", docs) - -let docsMinimalLayout (docs: Nfdi4Plants.Docs) = - div [Class "tile is-4 is-parent"] [ - div [Class "tile is-child box"] [ - p [Class "title"] [ a [Href docs.link] [!! docs.title] ] - p [] [ !! $"""by {docs.author.Value}, {docs.published.Value.ToString("yyyy-MM-dd")}""" ] - ] - ] \ No newline at end of file diff --git a/client/loaders/_lib.fsx b/client/loaders/_lib.fsx new file mode 100644 index 0000000..4a435a8 --- /dev/null +++ b/client/loaders/_lib.fsx @@ -0,0 +1,2 @@ +// This can be used to access local .nupkg, thanks to the nuget.config file. +#r "nuget: Nfdi4Plants.Fornax, 0.6.0" \ No newline at end of file diff --git a/client/loaders/docsloader.fsx b/client/loaders/docsloader.fsx index 15e1921..0d7742b 100644 --- a/client/loaders/docsloader.fsx +++ b/client/loaders/docsloader.fsx @@ -1,7 +1,7 @@ #r "../_lib/Fornax.Core.dll" #r "../_lib/Markdig.dll" -// This can be used to access local .nupkg, thanks to the nuget.config file. -#r "nuget: Nfdi4Plants.Fornax, 0.5.5" +// // This can be used to access local .nupkg, thanks to the nuget.config file. +#load "_lib.fsx" open System.IO open Fornax diff --git a/src/Nfdi4Plants.Fornax.Template/Nfdi4Plants.Fornax.Template.fsproj b/src/Nfdi4Plants.Fornax.Template/Nfdi4Plants.Fornax.Template.fsproj new file mode 100644 index 0000000..3d83cb5 --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/Nfdi4Plants.Fornax.Template.fsproj @@ -0,0 +1,43 @@ + + + + en-US + Template + true + net5.0 + true + + true + false + content + $(NoWarn);NU5128 + + + Nfdi4Plants.Fornax.Template + Nfdi4Plants.Fornax.Template + Kevin Frey + Create Fornax template with Nfdi4Plants.Fornax. + Create Fornax template with Nfdi4Plants.Fornax + MIT + https://github.com/Freymaurer/Nfdi4Plants.Fornax + "DataPlant", "nfdi4plants", "Docs" + https://github.com/Freymaurer/Nfdi4Plants.Fornax + + + + ../../client/_public/**/*; + ../../client/_lib/*.nupkg; + ../../client/loaders/_lib.fsx + + + + + Content\src + + + Content\ + + + + + diff --git a/src/Nfdi4Plants.Fornax.Template/content/.config/dotnet-tools.json b/src/Nfdi4Plants.Fornax.Template/content/.config/dotnet-tools.json new file mode 100644 index 0000000..0c442e4 --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/content/.config/dotnet-tools.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "isRoot": true, + "tools": { + "fornax": { + "version": "0.14.3", + "commands": [ + "fornax" + ] + }, + "paket": { + "version": "7.1.5", + "commands": [ + "paket" + ] + } + } + } \ No newline at end of file diff --git a/src/Nfdi4Plants.Fornax.Template/content/.gitignore b/src/Nfdi4Plants.Fornax.Template/content/.gitignore new file mode 100644 index 0000000..c1f0db8 --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/content/.gitignore @@ -0,0 +1,356 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore + +# User-specific files +*.rsuser +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Mono auto generated files +mono_crash.* + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +[Aa][Rr][Mm]/ +[Aa][Rr][Mm]64/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ +[Ll]ogs/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUnit +*.VisualState.xml +TestResult.xml +nunit-*.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_h.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*_wpftmp.csproj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# NuGet Symbol Packages +*.snupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx +*.appxbundle +*.appxupload + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!?*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser +*- [Bb]ackup.rdl +*- [Bb]ackup ([0-9]).rdl +*- [Bb]ackup ([0-9][0-9]).rdl + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# CodeRush personal settings +.cr/personal + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# Local History for Visual Studio +.localhistory/ + +# BeatPulse healthcheck temp database +healthchecksdb + +# Backup folder for Package Reference Convert tool in Visual Studio 2017 +MigrationBackup/ + +# Ionide (cross platform F# VS Code tools) working folder +.ionide/ +src/_public +.vscode/settings.json +.paket/ + +# Macos temporary files +.DS_Store diff --git a/src/Nfdi4Plants.Fornax.Template/content/.template.config/template.json b/src/Nfdi4Plants.Fornax.Template/content/.template.config/template.json new file mode 100644 index 0000000..2371b19 --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/content/.template.config/template.json @@ -0,0 +1,13 @@ +{ + "$schema": "http://json.schemastore.org/template", + "author": "Kevin Frey", + "classifications": ["DataPlant", "nfdi4plants", "Docs" ], + "name": "Nfdi4Plants.Fornax.Template", + "tags": { + "language": "F#", + "type": "project" + }, + "identity": "Nfdi4Plants.Fornax.Template", + "shortName": "NFDIdocs", + "sourceName": "Nfdi4Plants.Fornax.Template", + } \ No newline at end of file diff --git a/src/Nfdi4Plants.Fornax.Template/content/README.md b/src/Nfdi4Plants.Fornax.Template/content/README.md new file mode 100644 index 0000000..3eb38df --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/content/README.md @@ -0,0 +1,2 @@ +# Nfdi4Plants.Fornax.Template + diff --git a/src/Nfdi4Plants.Fornax.Template/content/package-lock.json b/src/Nfdi4Plants.Fornax.Template/content/package-lock.json new file mode 100644 index 0000000..02cb5a4 --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/content/package-lock.json @@ -0,0 +1,495 @@ +{ + "name": "nfdi4plants-fornax-template", + "version": "0.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "nfdi4plants-fornax-template", + "version": "0.0.0", + "license": "ISC", + "dependencies": { + "@nfdi4plants/web-components": "^0.7.2", + "bulma": "^0.9.2" + }, + "devDependencies": { + "@rollup/plugin-node-resolve": "^13.1.3", + "rollup": "^2.70.1" + } + }, + "node_modules/@lit/reactive-element": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.3.3.tgz", + "integrity": "sha512-ukelZ49tzUqgOAEbVujl/U62JNK3wdn5kKtXVqrjKND4QvHACZOMOYaZI6/5Jd8vsg+Fq9HDwiib70FBLydOiQ==" + }, + "node_modules/@nfdi4plants/web-components": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@nfdi4plants/web-components/-/web-components-0.7.2.tgz", + "integrity": "sha512-1NXP+0V4g2Ij4gaYvFl6RTwK0snjzD/yubDIBuYTckpKkO2+IPMF7Fx4ABMX3Om3GayAv5bDJ2ir+VsSKMWm5A==", + "dependencies": { + "lit": "^2.0.2", + "prismjs": "^1.28.0" + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz", + "integrity": "sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^2.42.0" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true + }, + "node_modules/@types/node": { + "version": "17.0.31", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.31.tgz", + "integrity": "sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q==", + "dev": true + }, + "node_modules/@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/trusted-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.2.tgz", + "integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==" + }, + "node_modules/builtin-modules": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", + "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bulma": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/bulma/-/bulma-0.9.3.tgz", + "integrity": "sha512-0d7GNW1PY4ud8TWxdNcP6Cc8Bu7MxcntD/RRLGWuiw/s0a9P+XlH/6QoOIrmbj6o8WWJzJYhytiu9nFjTszk1g==" + }, + "node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/is-builtin-module": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.1.0.tgz", + "integrity": "sha512-OV7JjAgOTfAFJmHZLvpSTb4qi0nIILDV1gWPYDnDJUTNFM5aGlRAhk4QcT8i7TuAleeEV5Fdkqn3t4mS+Q11fg==", + "dev": true, + "dependencies": { + "builtin-modules": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-core-module": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", + "dev": true + }, + "node_modules/lit": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.2.7.tgz", + "integrity": "sha512-WXYujlKFwme5ZqXOZoWuRVZQAwy7scbcVT3wCbAOHefOxyscqjywWGlF2e6nnC9E64yP9l2ZQlN8wZcRlrjUMQ==", + "dependencies": { + "@lit/reactive-element": "^1.3.0", + "lit-element": "^3.2.0", + "lit-html": "^2.2.0" + } + }, + "node_modules/lit-element": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.2.1.tgz", + "integrity": "sha512-2PxyE9Yq9Jyo/YBK2anycaHcqo93YvB5D+24JxloPVqryW/BOXekne+jGsm0Ke3E5E2v7CDgkmpEmCAzYfrHCQ==", + "dependencies": { + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.2.0" + } + }, + "node_modules/lit-html": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.2.6.tgz", + "integrity": "sha512-xOKsPmq/RAKJ6dUeOxhmOYFjcjf0Q7aSdfBJgdJkOfCUnkmmJPxNrlZpRBeVe1Gg50oYWMlgm6ccAE/SpJgSdw==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/prismjs": { + "version": "1.28.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.28.0.tgz", + "integrity": "sha512-8aaXdYvl1F7iC7Xm1spqSaY/OJBpYW3v+KJ+F17iYxvdc8sfjW194COK5wVhMZX45tGteiBQgdvD/nhxcRwylw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/resolve": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.8.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/rollup": { + "version": "2.72.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.72.0.tgz", + "integrity": "sha512-KqtR2YcO35/KKijg4nx4STO3569aqCUeGRkKWnJ6r+AvBBrVY9L4pmf4NHVrQr4mTOq6msbohflxr2kpihhaOA==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + } + }, + "dependencies": { + "@lit/reactive-element": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.3.3.tgz", + "integrity": "sha512-ukelZ49tzUqgOAEbVujl/U62JNK3wdn5kKtXVqrjKND4QvHACZOMOYaZI6/5Jd8vsg+Fq9HDwiib70FBLydOiQ==" + }, + "@nfdi4plants/web-components": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@nfdi4plants/web-components/-/web-components-0.7.2.tgz", + "integrity": "sha512-1NXP+0V4g2Ij4gaYvFl6RTwK0snjzD/yubDIBuYTckpKkO2+IPMF7Fx4ABMX3Om3GayAv5bDJ2ir+VsSKMWm5A==", + "requires": { + "lit": "^2.0.2", + "prismjs": "^1.28.0" + } + }, + "@rollup/plugin-node-resolve": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz", + "integrity": "sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + } + }, + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + } + }, + "@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true + }, + "@types/node": { + "version": "17.0.31", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.31.tgz", + "integrity": "sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q==", + "dev": true + }, + "@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/trusted-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.2.tgz", + "integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==" + }, + "builtin-modules": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", + "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", + "dev": true + }, + "bulma": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/bulma/-/bulma-0.9.3.tgz", + "integrity": "sha512-0d7GNW1PY4ud8TWxdNcP6Cc8Bu7MxcntD/RRLGWuiw/s0a9P+XlH/6QoOIrmbj6o8WWJzJYhytiu9nFjTszk1g==" + }, + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true + }, + "estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "is-builtin-module": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.1.0.tgz", + "integrity": "sha512-OV7JjAgOTfAFJmHZLvpSTb4qi0nIILDV1gWPYDnDJUTNFM5aGlRAhk4QcT8i7TuAleeEV5Fdkqn3t4mS+Q11fg==", + "dev": true, + "requires": { + "builtin-modules": "^3.0.0" + } + }, + "is-core-module": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", + "dev": true + }, + "lit": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.2.7.tgz", + "integrity": "sha512-WXYujlKFwme5ZqXOZoWuRVZQAwy7scbcVT3wCbAOHefOxyscqjywWGlF2e6nnC9E64yP9l2ZQlN8wZcRlrjUMQ==", + "requires": { + "@lit/reactive-element": "^1.3.0", + "lit-element": "^3.2.0", + "lit-html": "^2.2.0" + } + }, + "lit-element": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.2.1.tgz", + "integrity": "sha512-2PxyE9Yq9Jyo/YBK2anycaHcqo93YvB5D+24JxloPVqryW/BOXekne+jGsm0Ke3E5E2v7CDgkmpEmCAzYfrHCQ==", + "requires": { + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.2.0" + } + }, + "lit-html": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.2.6.tgz", + "integrity": "sha512-xOKsPmq/RAKJ6dUeOxhmOYFjcjf0Q7aSdfBJgdJkOfCUnkmmJPxNrlZpRBeVe1Gg50oYWMlgm6ccAE/SpJgSdw==", + "requires": { + "@types/trusted-types": "^2.0.2" + } + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "prismjs": { + "version": "1.28.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.28.0.tgz", + "integrity": "sha512-8aaXdYvl1F7iC7Xm1spqSaY/OJBpYW3v+KJ+F17iYxvdc8sfjW194COK5wVhMZX45tGteiBQgdvD/nhxcRwylw==" + }, + "resolve": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "dev": true, + "requires": { + "is-core-module": "^2.8.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "rollup": { + "version": "2.72.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.72.0.tgz", + "integrity": "sha512-KqtR2YcO35/KKijg4nx4STO3569aqCUeGRkKWnJ6r+AvBBrVY9L4pmf4NHVrQr4mTOq6msbohflxr2kpihhaOA==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true + } + } +} diff --git a/src/Nfdi4Plants.Fornax.Template/content/package.json b/src/Nfdi4Plants.Fornax.Template/content/package.json new file mode 100644 index 0000000..c944d90 --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/content/package.json @@ -0,0 +1,23 @@ +{ + "name": "nfdi4plants-fornax-template", + "version": "0.6.0", + "description": "A fornax template implementing nfdi4plants web-components for documentation.", + "repository": { + "url": "https://github.com/Freymaurer/Nfdi4Plants.Fornax" + }, + "author": "", + "license": "ISC", + "bugs": { + "url": "https://github.com/Freymaurer/Nfdi4Plants.Fornax/issues" + }, + "homepage": "https://github.com/Freymaurer/Nfdi4Plants.Fornax#readme", + "dependencies": { + "@nfdi4plants/web-components": "^0.7.2", + "bulma": "^0.9.2" + }, + "devDependencies": { + "@rollup/plugin-node-resolve": "^13.1.3", + "rollup": "^2.70.1" + } + } + diff --git a/src/Nfdi4Plants.Fornax.Template/content/paket.dependencies b/src/Nfdi4Plants.Fornax.Template/content/paket.dependencies new file mode 100644 index 0000000..df4761e --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/content/paket.dependencies @@ -0,0 +1,6 @@ +generate_load_scripts: true +source https://api.nuget.org/v3/index.json + +storage: none +framework: net5.0, netstandard2.0, netstandard2.1 +nuget Nfdi4Plants.Fornax \ No newline at end of file diff --git a/src/Nfdi4Plants.Fornax.Template/content/paket.lock b/src/Nfdi4Plants.Fornax.Template/content/paket.lock new file mode 100644 index 0000000..ff7f165 --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/content/paket.lock @@ -0,0 +1,10 @@ +GENERATE-LOAD-SCRIPTS: ON +STORAGE: NONE +RESTRICTION: || (== net5.0) (== netstandard2.0) (== netstandard2.1) +NUGET + remote: https://api.nuget.org/v3/index.json + FSharp.Core (6.0.5) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0)) (&& (== netstandard2.1) (>= net5.0)) + Markdig (0.30.2) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0)) (&& (== netstandard2.1) (>= net5.0)) + Nfdi4Plants.Fornax (0.6) + FSharp.Core (>= 6.0.5-beta.22281.4) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0)) (&& (== netstandard2.1) (>= net5.0)) + Markdig (>= 0.30.2) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0)) (&& (== netstandard2.1) (>= net5.0)) \ No newline at end of file diff --git a/src/Nfdi4Plants.Fornax.Template/content/rollup.config.js b/src/Nfdi4Plants.Fornax.Template/content/rollup.config.js new file mode 100644 index 0000000..906c01d --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/content/rollup.config.js @@ -0,0 +1,12 @@ +import { nodeResolve } from '@rollup/plugin-node-resolve'; + +// https://rollupjs.org/guide/en/#configuration-files +export default { + input: 'src/js/main.js', + output: { + file: 'src/js/bundle.js', + format: 'cjs' + }, + // https://github.com/rollup/plugins/tree/master/packages/node-resolve + plugins: [nodeResolve()] +}; \ No newline at end of file diff --git a/src/Nfdi4Plants.Fornax.Template/content/src/_lib.fsx b/src/Nfdi4Plants.Fornax.Template/content/src/_lib.fsx new file mode 100644 index 0000000..c9f7491 --- /dev/null +++ b/src/Nfdi4Plants.Fornax.Template/content/src/_lib.fsx @@ -0,0 +1 @@ +#load "../.paket/load/net5.0/main.group.fsx" \ No newline at end of file