* build(deps): bump @hey-api/openapi-ts to 0.81.1 and pin the version to ensure compatibility between backoffice and extensions
* chore: regenerate api types and replace where necessary
* feat: pin version of @hey-api/openapi-ts and regenerate umbraco-extension files
* chore: removes unused 'client' field
* build(deps-dev): bump @hey-api/openapi-ts to 0.81.1 for the login app
* Updated hey-api as the client-fetch is bundled as part of @hey-api/openapi-ts in newer versions
* Regenerated a new package-lock.json file
* Fix typescript issue
* Update templates/UmbracoExtension/Client/package.json
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* Updated client dependencies
* Vite, TypeScript, hey-api
* Chalk & Cross-Env for the generate-client script
* Explicitly remove package-lock.json as it will be out of sync due to UMBRACO_VERSION_FROM_TEMPLATE
* Regenerated Hey API client that now ships client rather than dependancy
* Vite and Hey-API were already out of date (updated to the very latest)
---------
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* feat: adds autobuild of umbraco extensions created by the dotnet template
* adds file extensions to imports to follow the esmodule convention + apply formatting
* build(deps): upgrade hey-api, vite, typescript and generate new api
* chore: formatting
* clean up actions as client is now automatically being built when starting the site
* revert change with UMBRACO_VERSION_FROM_TEMPLATE
* revert if(includeExample)
* use template name
* use template name
* feat: update the way it sets the auth token
* add back in IncludeExample if
* fix: rename allowPackageTelemetry to allowTelemetry because that is what it is actually called
* `.csproj` amends
- Adds `BeforeTargets` to "BuildClient" target
- Adds "package.json" to "RestoreClient" target input
- Removes extra parameters from `npm i` command
---------
Co-authored-by: leekelleher <leekelleher@gmail.com>
* feat: conditionally install and build the 'login' and 'backoffice' targets depending on source files
* feat: remove the preconditions target, because we are now compiling a file list to check if we need to build
* feat: remove the 'clean' targets, because the project will be cleaned if any of the compiled file lists do not exist
* feat: remove the preserve.* files as they are no longer needed
* Enable default content items again
* Remove package.json from restore target inputs
* Include generated files as static assets after build
* Clean up project files
* Exclude CS0618 warning as error and fix CA2264
* Exclude CS0612 warning as error
* Suppress removal of test fixture
* Use separate property/item groups for backoffice and login project
---------
Co-authored-by: Ronald Barendse <ronald@barend.se>
* [WIP] Create Umbraco/Bellissima Package
* Removes existing 'UmbracoPackage'
This is because the RCL based one will be the only one going forward
* Rename existing UmbracoPackageRCL to UmbracoPackage
* Drop the mentions of RCL in the identifiers
* CodeQL GitHub Action is complaining due to V15 wanting v9 .NET
* Rename UmbracoPackage template to UmbracoExtension
As this will only scaffold an extension and not other bits for a package such as Nuget, Github Actions & other things needed to be done to ship out a package
* Remove package lock as npm install by the OS should generate this and can differ between Windows, Linux/OSX
* Move JS clientside stuff into a folder called Client
Will allow us to ignore the folder if or when doing a dotnet pack with a rule in CSProj
* Add in .VSCode recommened extensions file to get the useful Lit Extension for completions in VSCode
* For now remove the example dashboard & prop editor
* Add a simple entrypoint
* Fix path for primary output after rename
* Use link suggested from Lotte
* Use backofficeEntryPoint as entryPoint is deprecated
* Update the umbraco-package.json to opt into telemetry as per PR suggestion
* Improve commented code to include a link to docs
* Improve readme from suggestions
* Updates package.json to use latest Vite & TS
Copies the tsconfig from the default scaffolding of vite lit-ts CLI
* Adds the base property suggestion from Jacob & puts in a comment as to what its used for
* Work in progress from hackathon day/afternoon
* Hey-API generating a HTTP Client had changed and was a PITA to figure out what had changed
Things to do for next time:
Include these files if they include --include-samples flag
* constants.ts
* Controllers/
* Composers/
* client/src/api
* client/src/dashboards/
* client/src/entrypoints
Change file contents
* client/src/bundle.manifests.ts
* client/src/package.json (extra dependencies)
* Adds in new property/flag/switch for dotnet new template
* Warren cant spell Whether 🙈
* Update template.json to exclude the sample files if flag is not set/false
* Make SLN happy/build
* Conditional content in files for IncludeExample flag/switch
* Need to include the content otherwise it doesnt get packed by nuget
* Fix the path for the openapi-ts-config.ts file to be included/excluded
* Use the project name from the dotnet new to help name manifests
* Update namespaces so they get updated when dotnet new templatge is run with the --name
* Updated example
* Fix up VS Code recommended extension for Lit VSCode
Should be .json not a .ts
* Fix up build - as we dont use the imported UmbCurrentUserContext
* Remove the relative path to the JSON schema as unable to know path to the web project
* Typo fix as spooted by Rich
* Update templates/UmbracoExtension/.template.config/template.json
Co-authored-by: Lotte Pitcher <LottePitcher@users.noreply.github.com>
* Adds a --site-domain flag/switch to use for setting the domain prefix
Sets a default value of https://localhost:5000
We have no way of knowing what URL/domain the site is running at for the Umbraco website project
* Rename stuff so its not 'example' & only have ping if include-examples is not set
* As agreed with Lotte makes sense we always generate OpenAPI & TS client
* Update umbraco-extension description
* Generic node script to generate the TS client
Checks if it can connect to it first and prompts user to ensure Umbraco site running or perhaps they need to change the URL in package.json for the node script
* Generated API has conditional stuff in now to have just Ping or the more examples based on switch/flag
* Adds symbols safeNamespace and safeName
safeNamespace uses the one built in and then safeName, depends on the cleaned namespace to then use a custom transform (forms) to then use a regex replace on . and _ to ensure we have a nicer name still for namespaces, class names, URL/routes for the swagger etc...
* change to use Umbraco.Extension as sourcename - check \.template.config\readme.md for 'placeholder' guidance
* use '-sd' as shortname for site-domain as otherwise shows up as '-p:d'
* fix typescript build error when not including examples
* use provided name for API description as always being added
* Missing renames of Contrioller stuff with Lotte @ hackathon
* We missed the ctor
* Titlecase the API URLs for Swagger/API Controller
* dashboard tweaks
* Missing [Server] on Whats the Time Modal/UUI-box
---------
Co-authored-by: leekelleher <leekelleher@gmail.com>
Co-authored-by: Lotte Pitcher <LottePitcher@users.noreply.github.com>
Co-authored-by: Lotte Pitcher <github@lottepitcher.co.uk>
* update submodule
* update submodule
* Reintroduce a favicon (#17422)
* Fixes issue where package name was compared to package id, so packages had pending migrations from the management api endpoint, without actually have it.
---------
Co-authored-by: Niels Lyngsø <niels.lyngso@gmail.com>
* Added DisableBuildCompression to not make compressed versions of backoffice client. That should dotnet not spend time on when building
* Also add to our own execuable even that we do not ship it
* Also add to our own execuable even that we do not ship it
* Use <CompressionEnabled>false</CompressionEnabled> instead
* Revert "Also add to our own execuable even that we do not ship it"
This reverts commit 183200d24b6d381fee0dc35894db72abb037e634.
* Add delivery api toggle
* Add Dockerfile
* add docker compose template
* Ensure no duplicate database containers
* Remove wwwroot/umbraco permission check
We don't need write access to this folder
* Provide environment variables from dokcer-compose
* Build as debug from compose
The compose file is intended to be used for local dev
* Don't store password in docker files
Still not great to store it in .env but it's fine for dev
* Add additional template files
* Add docker ignore file
* Enable delivery API in settings too
* Enable models builder mode toggle
* Add WIP for umbraco release option
* Add starterkit option
* Add option to chose LTS or latest
* Add development mode option
* Add descriptions
* Add display names
* Add backoffice development at explicit default
* Rearrange DevelopmentMode before ModelsBuilderMode
* Allow specifying a port for the compose file
* Add some notes
* Move starterkits into its own template
* Don't update version
* Remove test configuration from Dockerfile
* Add default modelsbuilder option
* Update descriptions
* overwrite default values in IDE development
* Remove obsolete runtime minification
* Try and fix healthcheck
* Don't use post action for starterkit
otherwise it won't work with Rider, also make the version 13.0.0 if LTS is chosen
* Move UmbracoVersion above FinalVersion
Otherwise, rider will use UmbracoVersion for some weird reason
* Fix healthcheck
* Use else instead of second if for modelsbuilder
* Obsolete UmbracoVersion
* Remove custom release option
* Use forward slashes for volumes
* Add MSSQL_SA_PASSWORD env variable
* Temporarily limit acceptance tests so it works
* Try again
* Disable SQLServer integration tests
* Set UseHttps to false in appsettings.Development.json
You still want to be able to use non-https when developing locally
* Fix LTS version
LTS still needs installer endpoints added
* Update permissions of wwwroot/umbraco for v13 sites
* Fix conditional in Program.cs
* Undo pipeline shenanigans
* Update to dotnet 9 and update nuget packages
* Update umbraco code version
* Update Directory.Build.props
Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
* Include preview version in pipeline
* update template projects
* update global json with specific version
* Update version.json to v15
* Rename TrimStart and TrimEnd to string specific
* Rename to Exact
* Update global.json
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Remove includePreviewVersion
* Rename to trim exact
---------
Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Rename Web.UI.New back to Web.UI
* Delete new backoffiec folder
* Rename client project
* Add new submodule
* Update template csproj
* Remove more mentions of new
* Add missing views
* Moving up the "Umbraco.Web.UI" proj reference, so that it is the first project listed in solution file (.sln) since it will be selected as startup one in VS by default.
* don't include grid
* Update with section of how to get started with backoffice
* Update .github/BUILD.md
Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
* Add line about white page
---------
Co-authored-by: Elitsa <elm@umbraco.dk>
Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
* Move magical route to management api
* Move auth around
* Remove "New" cookies, as they are no longer needed
* Move all installer related
* Remove BackOfficeServerVariables.cs and trees
* Move webhooks to management api
* Remove remainting controllers
* Remove last services
* Move preview to management api
* Remove mroe extensions
* Remove tours
* Remove old Auth handlers
* Remove server variables entirely
* Remove old backoffice controller
* Remove controllers namespace entirely
* Move rest of preview
* move last services
* Move language file extension
* Remove old backoffice entirely (Backoffice and Web.UI projects)
* Clean up unused security classes
* Fix up installer route
* Remove obsolete tests
* Fix up DI in integration test
* Add missing property mapping
* Move core mapping into core
* Add composers to integration test
* remove identity
* Fix up DI
* Outcomment failing test :)
* Fix up remaining test
* Update mapper
* Remove the actual project files
* Remove backoffice cs proj
* Remove old backoffice from yml
* Run belissima before login
* Remove caching
* Refactor file paths
* Remove belle from static assets
* Dont refer to old project in templates
* update gitignore
* Add missing files
* Remove install view as its no longer used
* Fix up failing test
* Remove outcommented code
* Update submodule to latest
* fix build
---------
Co-authored-by: Bjarke Berg <mail@bergmania.dk>