Starts in:
1 DAY
15 HRS
6 MIN
44 SEC
Starts in:
1 D
15 H
6 M
44 S

Activities of "enisn"

It might be related to TokenProvider in the project.

In the template, it register itself with default name but I found a problem with that logic.

  • Please make sure MauiBlazorAccessTokenStore class in your project have [ExposeServices(typeof(IAccessTokenStore))] attribute on it and implements ITransientDependency interface. As the final result it should be something like this:
[Volo.Abp.DependencyInjection.Dependency(ReplaceServices = true)]
[ExposeServices(typeof(IAccessTokenStore))]
public class MauiBlazorAccessTokenStore : IAccessTokenStore, ITransientDependency
{
    // ...
  • Make sure MauiBlazorAccessTokenProvider class has also[ExposeServices(typeof(IAbpAccessTokenProvider))] attribute on it

I attempted to follow the instructions. The error I have is as noted below.

C:\abp reverse tcp:44384 tcp:44384

ABP CLI 7.3.3 Unhandled exception. System.ArgumentException: Option names should start with '-' or '--'. at Volo.Abp.Cli.Args.CommandLineArgumentParser.ParseOptionName(String argument) in D:\ci\Jenkins\workspace\abp-volo-release\abp\framework\src\Volo.Abp.Cli.Core\Volo\Abp\Cli\Args\CommandLineArgumentParser.cs:line 107 at Volo.Abp.Cli.Args.CommandLineArgumentParser.Parse(String[] args) in D:\ci\Jenkins\workspace\abp-volo-release\abp\framework\src\Volo.Abp.Cli.Core\Volo\Abp\Cli\Args\CommandLineArgumentParser.cs:line 53 at Volo.Abp.Cli.CliService.RunAsync(String[] args) in D:\ci\Jenkins\workspace\abp-volo-release\abp\framework\src\Volo.Abp.Cli.Core\Volo\Abp\Cli\CliService.cs:line 56 at Volo.Abp.Cli.Program.Main(String[] args) in D:\ci\Jenkins\workspace\abp-volo-release\abp\framework\src\Volo.Abp.Cli\Volo\Abp\Cli\Program.cs:line 43 at Volo.Abp.Cli.Program.<Main>(String[] args)

No, it shouldn't be abp it should be adb (android debug bridge) and it's separated tool that is provided by android. You can easily find it in the visual studio in the following menu: Tools > Android > Android Adb Command Prompt

Thanks for you feedback, I'll make sure this information is included in the documentation to prevent future problems 🙏

With which version did you do the test with the MobileMenuSelector? 7.3.3 or newer? I've tried with the 7.4.0-rc.5 version too and it works as same as stable 7.3.3 version

Hi @ageiter

For the BreadCrumbs; When you add LeptonX, it automatically disables breadcrumbs on PageHeader and renders its own breadcrumbs at the top of the page

So, the only way to remove breadcrumbs for leptonx is replacing the Breadcrumbs component so far.

It is Breadcrumbs.razor from the Volo.Abp.AspNetCore.Components.Web.LeptonXTheme.Components.ApplicationLayout.Common namespace You can read how to replace a component on blazor from here


For the MobileMenuSelector:

It seems it's working on the latest release. I just created a new project and add the following configuration from your sample:

        Configure<LeptonXThemeBlazorOptions>(options =>
        {
            options.Layout = LeptonXBlazorLayouts.TopMenu;
            options.MobileMenuSelector = items => items.Where(x => x.MenuItem.Name == Support5890Menus.Home);
        });

And it rendered only Home page (Same constant from the MenuContributor.)

If there is another specific-case, please share the steps with us

By the way, if you use ngrok or something equivalent, you have to make sure you just changed all the environment variables (appsttings.json) from localhost to your ngrok url and make data seeding before launching the AuthServer (if not tiered, HttpApi.Host)

It seems, your project can't access to localhost/127.0.0.1:44321 URL.

If you use Android emulator, make sure you have just executed adb reverse tcp:44321 tcp:44321 command on adb terminal.

Make sure you follow this documentation for each UI: https://docs.abp.io/en/commercial/latest/getting-started-maui#android

Hi, We've just fixed it and it'll be included in the next release

Answer

It should be properly working after the workaround that I mentioned above

Answer

Hello,

CSS and Javascript files will be attached at the document after you saved. Unfortunately, you can't see CSS and Javascript working on the Preview tab of the editor, you can see them only when you save and navigated to that page by going to /pages/{slug} (default path if you didn't changed)

Javascript issue might be related to the same problem with https://support.abp.io/QA/Questions/5784

CMS Kit manipulates the entire content to prevent XSS attacks. But It's no necessary admin-created pages & blog posts. Now we made a change about that and PreventXSS will be enabled only comments and configurable for blogs with the following PR: https://github.com/abpframework/abp/pull/17681

But, until the next version released you can sue the same workaround with https://support.abp.io/QA/Questions/5784#answer-3a0dc39d-70af-5fd6-453b-873d141585c5

Hi, Content rendering is a common operation that is used across BlogsPosts, Comments, Pages etc. By default all af them uses preventXSS as true

You can use the following workaround to make it work.

  1. Create a cshtml in your project in the exactly same path ContentFragment.cshtml
  2. Fill the following content in that file and make sure preventXSS parameter is false
@using Microsoft.AspNetCore.Mvc.ViewComponents
@using Volo.Abp.Data
@using Volo.Abp.Reflection
@using Volo.CmsKit.Contents
@using Volo.CmsKit.Web.Renderers;
@using Volo.CmsKit.Web.Pages.CmsKit.Components.Contents;

@model ContentFragmentViewComponent

@inject IMarkdownToHtmlRenderer MarkdownRenderer
@inject IViewComponentSelector ViewComponentSelector

@foreach (var contentFragment in Model.ContentDto.ContentFragments)
{
    if (contentFragment.Type == ContentConsts.Markdown)
    {
        @Html.Raw(await MarkdownRenderer.RenderAsync(contentFragment.GetProperty<string>("Content"), preventXSS: false))
    }
    else if (contentFragment.Type == ContentConsts.Widget)
    {
        var componentName = contentFragment.GetProperty<string>("Type");
        var descriptor = ViewComponentSelector.SelectComponent(componentName);
        var componentParameters = descriptor.Parameters;
        var parameters = new Dictionary<string, object>(contentFragment.ExtraProperties);

        foreach (var componentParameter in componentParameters)
        {
            if (string.IsNullOrWhiteSpace(componentParameter.Name))
            {
                continue;
            }
            if(parameters.TryGetValue(componentParameter.Name, out var value))
            {
                parameters[componentParameter.Name] = TypeHelper.ConvertFrom(componentParameter.ParameterType, value);
            }
        }

        @await Component.InvokeAsync(componentName, parameters)
    }
}

How it should be working.

Showing 71 to 80 of 496 entries
Made with ❤️ on ABP v9.1.0-preview. Updated on November 20, 2024, 13:06