{
  "BootstrapBlazor.Server.Components.Pages.Online": {
    "SubTitle": "Online population statistics",
    "ConnectionTime": "ConnectionTime",
    "LastBeatTime": "LastBeatTime",
    "Dur": "Dur",
    "Ip": "Ip",
    "City": "City",
    "LocalHost": "localhost",
    "OS": "OS",
    "Device": "Device",
    "Browser": "Browser",
    "Language": "Language",
    "Engine": "Engine",
    "RequestUrl": "RequestUrl"
  },
  "BootstrapBlazor.Server.Components.Pages.Tutorials": {
    "CategoryTitle": "Bootstrap Blazor Practical Cases",
    "DashboardSummary": "Dashboard",
    "LoginSummary": "Login&Register",
    "WaterfallSummary": "Waterfall",
    "TranslateSummary": "Translate",
    "DrawingSummary": "Drawing",
    "AdminSummary": "Admin",
    "OnlineSheet": "UniverSheet",
    "MemorialMode": "Memorial",
    "MFA": "MFA"
  },
  "BootstrapBlazor.Server.Components.Components.Pre": {
    "LoadingText": "Loading ...",
    "TooltipTitle": "Copy",
    "PlusTooltipTitle": "Plus lines",
    "MinusTooltipTitle": "Minus lines",
    "CopiedText": "Copied"
  },
  "BootstrapBlazor.Server.Components.Pages.Index": {
    "Support": "Support",
    "Title": "Bootstrap Blazor UI",
    "SubTitle": "BootstrapBlazor is an enterprise-grade library that fuses Bootstrap with Blazor, offering developers a powerful toolkit for building responsive and interactive web applications effortlessly.",
    "Docs": "Read the docs",
    "DonateH1": "Donate",
    "DonateH2": "Scan the code to donate and invite the author to have a cup of coffee"
  },
  "BootstrapBlazor.Server.Components.Layout.HomeLayout": {
    "FooterH1": "Related Works",
    "FooterLi1": "Slider verification code",
    "FriendLink": "Links",
    "Community": "Community",
    "CommunityLi1": "Contribution guide",
    "CommunityLi2": "Join us",
    "CommunityLi3": "Contact details",
    "Footer": "Gitee Hosting Platform"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesDialog": {
    "TablesDialogTitle": "Table table is used in the pop-up window",
    "TablesDialogDescription": "Used in data selection with hierarchical relationship",
    "TableDialogNormalTitle": "Data linkage in the pop-up window",
    "TableDialogNormalIntro": "Click the Select button in the toolbar to pop up a dialog box to select candidate data",
    "TableDialogNormalDescription": "In this example, if the <code>Modal</code> component is linked with <code>Table</code>, the data is selected in the pop-up window, and then edited",
    "TableDialogNormalTips1": "Click the <code>Select</code> button to pop up a dialog box to select the product <code>Product</code>",
    "TableDialogNormalTips2": "After selecting the product in the pop-up window, click the <code>OK</code> button to close the pop-up window",
    "TableDialogNormalTips3": "Click the <code>Edit</code> button, since some data are set as read-only, only the <code>Count</code> field can be changed",
    "TableDialogNormalChoose": "Choose",
    "TableDialogNormalSelectItem": "Select item",
    "TableDialogNormalSure": "Sure"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesDynamicObject": {
    "TablesDynamicObjectTitle": "Table table",
    "TablesDynamicObjectDescription": "Use the <code>IDynamicMetaObjectProvider</code> class as a data source",
    "TablesDynamicObjectMetaObjectProviderTitle": "IDynamicMetaObjectProvider Collection",
    "TablesDynamicObjectMetaObjectProviderIntro": "Use the <code>IDynamicMetaObjectProvider</code> data collection as the data source by setting the <code>Items</code> data source",
    "TablesDynamicObjectIDynamicObjectTitle": "IDynamicObject collection",
    "TablesDynamicObjectIDynamicObjectIntro": "Use the <code>IDynamicObject</code> data collection as the data source by setting the <code>Items</code> data source"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesPages": {
    "TablesPagesTitle": "Table",
    "TablesPagesDescription": "It is used to display multiple pieces of data with similar structure, and the data can be sorted, filtered, compared or other custom operations.",
    "TablesPagePaginationTitle": "Pagination table",
    "TablesPagePaginationIntro": "Set <code>IsPagination</code> to display the pagination component",
    "TablesPageShowTopPaginationTitle": "Show on top",
    "TablesPageShowTopPaginationIntro": "Set <code>ShowTopPagination</code> to <code>true</code> is the top display pagination component. You can use <code>IsAutoScrollTopWhenClickPage</code> to control whether to automatically scroll to the top after turning the page. The default value is <code>false</code> to keep the scroll bar position"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesFixedColumn": {
    "TablesFixedColumnTitle": "Fixed column",
    "TablesFixedColumnDescription": "For data with a large number of columns, you can fix the front and rear columns and scroll horizontally to view other data",
    "TablesFixedColumnNote": "For fixed column usage, please set the fixed column width as much as possible",
    "TablesFixedColHeaderTitle": "Fixed column header and column footer",
    "TablesFixedColHeaderIntro": "Set the <code>Fixed</code> attribute to fix the header",
    "TablesFixedColHeaderDescription": "In this example, set  <code>Name</code> <code>Education</code> <code>Count</code> <code>Complete</code> The first two columns and the last column are fixed columns, and the middle columns are scrolled horizontally",
    "TablesFixedColTableHeaderTitle": "Fixed headers and columns",
    "TablesFixedColTableHeaderIntro": "Set <code>IsFixedHeader=\"true\"</code> to fix the header, set <code>Fixed</code> to fix the column",
    "TablesFixedExtendButtonsColumnTitle": "Fixed button action column",
    "TablesFixedExtendButtonsColumnIntro": "Set <code>FixedExtendButtonsColumn</code> to fix the action column",
    "TablesFixedHeaderAndExtendButtonsColumnTitle": "Fixed header and button action columns",
    "TablesFixedHeaderAndExtendButtonsColumnIntro": "Set <code>IsFixedHeader=\"true\"</code> to fix the header, set <code>FixedMultipleColumn</code> to fix the checkbox column, set <code>FixedExtendButtonsColumn</code> to fix the operation column"
  },
  "BootstrapBlazor.Server.Components.Samples.Tooltips": {
    "TooltipsTitle": "Tooltip",
    "TooltipsDescription": "Provides a tooltip after hovering over the mouse or gaining focus",
    "TooltipsNormalTitle": "Basic usage",
    "TooltipsNormalIntro": "Often used to display the prompt information when the mouse hovers",
    "TooltipsButtonTitle": "Button component tooltip",
    "TooltipsButtonIntro": "Provides a tooltip after hovering over the mouse or gaining focus",
    "BootstrapTooltipTitle": "test component",
    "TooltipsSelectorTitle": "Prompt host settings",
    "TooltipsSelectorIntro": "Precisely locate trigger prompt box elements by setting <code>Selector</code> parameters",
    "TooltipsCustomClassTitle": "custom style",
    "TooltipsCustomClassIntro": "Set the custom style by setting the <code>CustomClass</code> parameter",
    "BootstrapTooltipIntro": "Try to make a new component that is more comfortable to use, you can use it early, the name of the component may be changed later",
    "BootstrapTooltipTips1": "Wrap other components or <code>HTML</code> elements through <code>BootstrapTooltip</code> so that the wrapped object has the function of <code>Tooltip</code>",
    "BootstrapTooltipTips2": "In this example, an icon is wrapped by <code>BootstrapTooltip</code>. When the mouse moves over the icon, the default <code>Tooltip</code> is displayed, which is easier and faster to use.",
    "TooltipsManualTitle": "Manual",
    "TooltipsManualIntro": "Use code to control the tooltip state by setting <code>Trigger=\"manual\"</code>",
    "TooltipsManualDescLI1": "The child component uses the cascade parameters to get the <code>Tooltip</code> instance and then calls its methods <code>Show</code> <code>Hide</code> <code>Toggle</code>",
    "TooltipsManualDescLI2": "Get the Tooltip instance through <code>@ref</code> and call its instances method"
  },
  "BootstrapBlazor.Server.Components.Samples.Toasts": {
    "ToastsTitle": "Toast Lightweight Popup",
    "ToastsSubTitle": "Provides a lightweight toast popup",
    "ToastsDescriptionTitle": "Component usage introduction",
    "ToastsTips1": "1. Inject service <code>ToastService</code>",
    "ToastsTips2": "2. Call its instance <code>api</code>",
    "ToastsNormalTitle": "Basic usage",
    "ToastsNormalIntro": "When the user operates, the lower right corner will give appropriate prompt information",
    "ToastsSuccess": "Success notification",
    "ToastsDanger": "Failure notification",
    "ToastsInfo": "Information notice",
    "ToastsPreventTitle": "Prevent Duplicates",
    "ToastsPreventIntro": "By setting <code>PreventDuplicates=\"true\"</code> to repeatedly click the button below, only one pop-up window will appear",
    "ToastsPreventText": "Prevent Duplicates",
    "ToastsAsyncTitle": "Async notification",
    "ToastsAsyncIntro": "By setting the button's <code>IsAsync</code> parameter, use the same <code>ToastOption</code> to update the pop-up window information for different steps",
    "ToastsAsyncDemoTitle": "Async notification",
    "ToastsAsyncDemoStep1Text": "Packing documents, please wait...",
    "ToastsAsyncDemoStep2Text": "Packaging completed, downloading...",
    "ToastsAsyncDemoStep3Text": "Download completed, close the window automatically",
    "ToastsWarning": "Warning notice",
    "ToastsAsyncText": "AsyncNotify",
    "ToastsCloseTitle": "Toast is closed manually",
    "ToastsCloseIntro": "It will not close automatically, you need to manually click the close button. You can customize the event after closing the pop-up window by setting<code>OnCloseAsync</code>callback delegate</code>",
    "ToastsCloseNotificationText": "success notification",
    "ToastsPositionTitle": "Toast display location",
    "ToastsPositionIntro": "Provides settings where the Toast popup appears",
    "ToastsPositionDescription": "Set the location where the popup appears by setting the <code>Placement</code> value of the <code>Toast</code> component. The default value is <code>BottomEnd</code>. upper right corner",
    "ToastsPositionAttentionText": "pay attention",
    "ToastsPositionTips": "This component provides functions in the form of injection services, and the user experience is very comfortable when used, and can be called anytime, anywhere <br/>The injection service provides the following shortcut invocation methods:",
    "ToastsPositionTips2": "Examples are as follows",
    "ToastsPositionSaved": "Successfully saved",
    "ToastsPositionAutoClose": "Save data successfully, automatically close after 4 seconds",
    "ToastsPositionCategory": "Notification category",
    "ToastsPositionBoxTitle": "Notification box Title value",
    "ToastsPositionNotification": "notification",
    "ToastsPositionContent": "Notification body content",
    "ToastsPositionAddsNew": "The system adds new components, it will automatically shut down after 4 seconds",
    "ToastsPositionNote1": "Special Note: The <code>Delay</code> parameter value of the <code>Toast</code> component in the entire system can be set through the <code>BootstrapBlazorOptions</code> global unified configuration parameter",
    "ToastsPositionNote2": "Configured through the configuration file <code>appsetting.json</code> file, suitable for <code>Server-Side App</code>",
    "ToastsPositionConfigured": "Configured via the <code>ConfigureServices</code> method in the <code>Startup</code> file for <code>Server-Side App</code> and <code>WebAssembly App</code>",
    "ToastsPositionDisappearance": "Uniformly set the automatic disappearance time of the Toast component",
    "ToastsPositionServerSide": "Or, for <code>Server-Side App</code> only",
    "ToastsPositionAddComponent": "Add BootstrapBlazor component",
    "ToastsPositionAutomaticDisappearance": "Uniformly set the automatic disappearance time of the Toast component",
    "ToastsShowHeaderTitle": "No header",
    "ToastsShowHeaderIntro": "Set <code>ShowHeader=\"false\"</code> remove <code>Header</code>",
    "ShowHeaderText": "Toast",
    "ToastsHeaderTemplateTitle": "Custom header",
    "ToastsHeaderTemplateIntro": "set <code>HeaderTemplate</code> custom the header content",
    "ToastsAttrCategory": "Toast type",
    "ToastsAttrTitle": "Toast title",
    "ToastsAttrContent": "Toast content support HTML",
    "ToastsAttrDelay": "Auto hide interval",
    "ToastsAttrIsAutoHide": "Whether to automatically hide",
    "ToastsAttrIsHtml": "Whether the content contains Html code",
    "ToastsAttrPlacement": "Location"
  },
  "BootstrapBlazor.Server.Components.Samples.Timers": {
    "TimersTitle": "Timer",
    "TimersDescription": "For time countdown",
    "TimersNormalTitle": "Basic usage",
    "TimersNormalIntro": "Set the countdown time by setting the <code>Value</code> attribute",
    "TimersColorTitle": "Color",
    "TimersColorIntro": "Set the circular progress bar color by setting the <code>Color</code> property"
  },
  "BootstrapBlazor.Server.Components.Samples.SweetAlerts": {
    "SweetAlertsTitle": "SweetAlert popup component",
    "SweetAlertsDescription": "Modal dialog box, mostly used to continue after inquiring during the action, or to display the execution result",
    "SweetAlertsTipsTitle": "Component usage introduction",
    "SweetAlertsTips1": "1. Inject the service <code>SwalService</code>",
    "SweetAlertsTips2": "2. Call its instance <code>api</code>",
    "SweetAlertsPreTitleText": "I am Title",
    "SweetAlertsPreContentText": "I am Content",
    "SweetAlertsNormalTitle": "Basic usage",
    "SweetAlertsNormalIntro": "Call <code>Swal</code> by injecting the service to pop up a dialog",
    "SweetAlertsNormalSuccess": "success",
    "SweetAlertsPopups": "Pop-ups",
    "SweetAlertsNormalFail": "fail",
    "SweetAlertsNormalWarn": "warn",
    "SweetAlertsNormalHint": "hint",
    "SweetAlertsNormalDoubt": "doubt",
    "SweetAlertsDisplayTitle": "Set display content",
    "SweetAlertsDisplayIntro": "By setting <code>Title</code> <code>Content</code> is used to display the title and content of the pop-up window",
    "SweetAlertsButtonTitle": "Custom button",
    "SweetAlertsButtonIntro": "Customize the buttons in the pop-up window by setting <code>ButtonTemplate</code>",
    "SweetAlertsComponentTitle": "Show custom components",
    "SweetAlertsComponentIntro": "By setting the <code>Component</code> popup content as a custom component",
    "SweetAlertsModalTitle": "Modal dialog",
    "SweetAlertsModalIntro": "By calling the <code>await SwalService.ShowModal</code> method, the modal box is popped up. After clicking the button in the pop-up window to close the pop-up window, the subsequent code continues to execute.",
    "SweetAlertsModalDescription": "This sample code calls The method <code>await SwalService.ShowModal</code> pops up a modal box, and the subsequent code continues to execute only after the pop-up window is closed.",
    "SweetAlertsModalTips": "<code>IsConfirm</code> The parameter indicates that the pop-up window is a confirmation window, and two buttons are automatically generated <code>Cancel</code> <code>Confirm</code>",
    "SweetAlertsFooterTitle": "Show Footer Information",
    "SweetAlertsFooterIntro": "Customize the Footer template by setting <code>FooterTemplate</code>",
    "SweetAlertsFooterDescription": "parameter <code>ShowFooter</code> The default is <code>false</code> to not display the footer template, it needs to be set to <code>true</code>",
    "SweetAlertsFooterButtonText": "Popup with Footer",
    "SweetAlertsAutoCloseTitle": "Auto-off function",
    "SweetAlertsAutoCloseIntro": "Customize the auto-close time by setting the <code>IsAutoHide</code> <code>Delay</code> property",
    "SweetAlertsAutoCloseDescription": "parameter <code>IsAutoHide</code> Defaults to <code>false</code> to disable auto-close, The parameter <code>Delay</code> defaults to 4000 milliseconds",
    "SweetAlertsAutoCloseButtonText": "Auto close swal",
    "SweetAlertsCloseTitle": "Close by function",
    "SweetAlertsCloseIntro": "Close the swal popup by call <code>SwalOption</code> instance method <code>CloseAsync</code>",
    "SweetAlertsCloseDescription": "Set <code>IsAutoHide=\"false\"</code> <code>ShowClose=\"false\"</code>, close the pop-up window by call <code>await option.CloseAsync</code>",
    "SweetAlertsCloseButtonText": "close swal",
    "SwalOptionTitle": "Modal",
    "SwalOptionContent": "Content",
    "SwalConsoleInfo": "Return result:",
    "AttrCategory": "Popover type",
    "AttrTitle": "Popup title",
    "AttrContent": "Popup content",
    "AttrDelay": "Auto hide interval",
    "AttrAutoHide": "Whether to automatically hide",
    "AttrShowClose": "Whether to show the close button",
    "AttrShowFooter": "Whether to show the footer template",
    "AttrIsConfirm": "Whether it is confirmation popup mode",
    "AttrBodyContext": "Cascading parameter for BodyTemplate",
    "AttrBodyTemplate": "Modal body display template",
    "AttrFooterTemplate": "Modal footer display template",
    "AttrButtonTemplate": "Modal button template"
  },
  "BootstrapBlazor.Server.Components.Samples.Spinners": {
    "SpinnersTitle": "Spinner icon",
    "SpinnersDescription": "Show animation when loading data",
    "SpinnersTipsTitle": "when to use",
    "SpinnersTips": "When the page is partially waiting for asynchronous data or is being rendered, appropriate loading animations can effectively relieve the user's anxiety.",
    "SpinnersNormalTitle": "Basic usage",
    "SpinnersNormalIntro": "Default rotate icon",
    "SpinnersColorTitle": "Spinner Spinner icon with color",
    "SpinnersColorIntro": "Provides a spin icon in base color",
    "SpinnersGrowingTitle": "Growing Spinner spin icon",
    "SpinnersGrowingIntro": "Growing Rotation Icon",
    "SpinnersGrowingColorTitle": "Growing Spinner Spinning icon with color",
    "SpinnersGrowingColorIntro": "Provides a spin icon in base color",
    "SpinnersSizeTitle": "Spinner spin icon size",
    "SpinnersSizeIntro": "Icon style size",
    "SpinnersFlexTitle": "Spinner Flex",
    "SpinnersFlexIntro": "Custom layout",
    "SpinnersCustomTitle": "Custom Title",
    "SpinnersCustomIntro": "Custom layout with text",
    "SpinnersCustomLoading": "Loading...",
    "SpinnersFloatTitle": "Spinner Floats",
    "SpinnersFloatIntro": "Use Float layout"
  },
  "BootstrapBlazor.Server.Components.Samples.Splittings": {
    "SplittingTitle": "Loader",
    "SplittingDescription": "Display dynamic effects when loading data",
    "SplittingTipsTitle": "When to use",
    "SplittingTips": "When parts of the page are waiting for asynchronous data or during the rendering process, appropriate loading dynamics can effectively alleviate user anxiety.",
    "SplittingNormalTitle": "Basic usage",
    "SplittingNormalIntro": "Default Load Animation",
    "SplittingTextTitle": "Custom Text",
    "SplittingTextIntro": "Modify the displayed text content",
    "SplittingColorTitle": "Color",
    "SplittingColorIntro": "Modify the color of progress",
    "SplittingColumnsTitle": "Colunms",
    "SplittingColumnsIntro": "Modify the <code>Colunms</code> of progress bar segmentation granularity",
    "SplittingColumnsText": "Colunms",
    "SplittingText": "Loading 。。。"
  },
  "BootstrapBlazor.Server.Components.Samples.SearchDialogs": {
    "SearchDialogsTitle": "SearchDialog search popup",
    "SearchDialogsSubTitle": "Automatically render search popups by binding the data model",
    "SearchDialogsDescription": "<code>SearchDialog</code> component is <code>Dialog</code> An extension of the component, suitable for setting search criteria in the data popup.",
    "SearchDialogsTips": "Inject the service by calling <code>DialogService</code> of <code>ShowSearchDialog</code> The method directly pops up the search criteria pop-up window, which greatly reduces the amount of code. <code>SearchDialogOption</code> Configuration class inheritance <code>DialogOption</code> , for more parameter settings, please click <a href=\"dialog\" target=\"_blank\">[portal]</a>",
    "SearchDialogsNormalTitle": "Basic usage",
    "SearchDialogsNormalIntro": "By binding the <code>TModel</code> data model, the search form for each field of the model is automatically generated",
    "SearchDialogsNormalButtonText": "Click to pop up search popup",
    "SearchDialogsFieldTitle": "Customize the criteria fields displayed in the search popup",
    "SearchDialogsFieldIntro": "Explicitly set the displayed search field by setting the <code>Columns</code> parameter",
    "SearchDialogsFieldButtonText": "Click to pop up search popup",
    "SearchDialogsLayoutTitle": "Set the layout in the search popup",
    "SearchDialogsLayoutIntro": "By setting the <code>RowType</code> parameter to explicitly set the layout of the components in the pop-up window, the default is the upper and lower layout, and the value can be set to <code>inline</code> horizontal layout",
    "SearchDialogsLayoutButtonText1": "Search popup (left-aligned)",
    "SearchDialogsLayoutButtonText2": "Search popup (right aligned)",
    "SearchDialogOptionAttr": "SearchDialogOption property"
  },
  "BootstrapBlazor.Server.Components.Samples.PopoverConfirms": {
    "PopoverConfirmsTitle": "PopConfirm bubble check box",
    "PopoverConfirmsDescription": "Click on the element to pop up a bubble confirmation box.",
    "PopoverConfirmsNormalTitle": "Basic usage",
    "PopoverConfirmsNormalIntro": "The attributes of <code>PopConfirm</code> are very similar to <code>Popover</code>, so for repeated attributes, please refer to the attributes of <a href='/popover'><code>Popover</code><a> documentation, which is not explained in detail in this document.",
    "PopoverConfirmsNormalPopupBoxText": "pop-up box below",
    "PopoverConfirmsNormalPopupBoxContent": "Is this a piece of content sure to delete?",
    "PopoverConfirmsNormalRightPopup": "right popup",
    "PopoverConfirmsNormalRightPopupContent": "Is this a piece of content sure to delete?",
    "PopoverConfirmsNormalLeftPopup": "left popup",
    "PopoverConfirmsNormalLeftPopupContent": "Is this a piece of content sure to delete?",
    "PopoverConfirmsNormalPopupAbove": "popup above",
    "PopoverConfirmsNormalPopupAboveContent": "Are you sure you want to delete a piece of content?",
    "PopoverConfirmsContentTitle": "Content Change the text displayed in the confirmation popup",
    "PopoverConfirmsContentIntro": "Change the text displayed in the confirmation popup by setting the <code>Content</code> attribute",
    "PopoverConfirmsContentDelete": "Delete confirmation button",
    "PopoverConfirmsContentDeleteContent": "Are you sure you want to delete the data?",
    "PopoverConfirmsIsAsyncTitle": "Asynchronous confirmation",
    "PopoverConfirmsIsAsyncIntro": "By setting the <code>IsAsync</code> attribute, the data is submitted asynchronously when the confirm button is clicked. In some specific scenarios, the button needs to remain disabled after asynchronous operation. Please control this using the <code>IsKeepDisabled</code> parameter.",
    "PopoverConfirmsIsAsyncConfirmationText": "Asynchronous confirmation",
    "PopoverConfirmsIsAsyncConfirmationContent": "Are you sure you want to delete the data?",
    "PopoverConfirmsFormTitle": "form submission",
    "PopoverConfirmsFormIntro": "By setting the <code>ButtonType</code> property value to <code>ButtonType.Submit</code>, the confirmation button is clicked to perform asynchronous form data submission",
    "PopoverConfirmsFormSubmitFormText": "submit Form",
    "PopoverConfirmsFormSubmitFormContent": "Are you sure you want to submit data?",
    "PopoverConfirmsIsLinkTitle": "hyperlink button",
    "PopoverConfirmsIsLinkIntro": "By setting the <code>IsLink</code> attribute the component uses the <code>A</code> tag to render",
    "PopoverConfirmsIsLinkHyperLinkText": "i am hyperlink",
    "PopoverConfirmsIsLinkHyperLinkContent": "Are you sure you want to delete the data?",
    "PopoverConfirmsCustomClassTitle": "custom style",
    "PopoverConfirmsCustomClassIntro": "Set the <code>CssClass</code> custom component style",
    "PopoverConfirmsCustomClassCustomButtonText": "custom style button",
    "PopoverConfirmsCustomClassCustomButtonContent": "Are you sure you want to delete the data?",
    "PopoverConfirmsBodyTemplateTitle": "Customize the PopConfirmButton content",
    "PopoverConfirmsBodyTemplateIntro": "Customize the content by setting <code>the BodyTemplate</code> property",
    "PopoverConfirmsBodyTemplateButtonText": "Customize content",
    "PopoverConfirmsShowButtonsTitle": "Custom Component",
    "PopoverConfirmsShowButtonsIntro": "By setting <code>ShowCloseButton=\"false\"</code> <code>ShowConfirmButton=\"false\"</code>, you don't display the built-in function buttons, and customize an <b>Approve</b> button in the custom component.",
    "PopoverConfirmsShowButtonsButtonText": "Custom Component",
    "PopoverConfirmsShowButtonsDesc": "In a custom component, you can call the <code>Close</code> or <code>Confirm</code> method inside the component through cascading parameters",
    "PopoverConfirmsTriggerTitle": "Trigger",
    "PopoverConfirmsTriggerIntro": "By setting the <code>Trigger</code> parameter, you can set the way the component pops up the confirmation box. The default value is <code>click</code>. You can also set <code>hover focus</code> to use in combination."
  },
  "BootstrapBlazor.Server.Components.Components.CustomPopConfirmContent": {
    "CustomPopConfirmContentText": "Custom content",
    "CustomPopConfirmContentButtonText": "Approval"
  },
  "BootstrapBlazor.Server.Components.Samples.Popovers": {
    "PopoversTitle": "Popover popup component",
    "PopoversDescription": "Click/mouse into the element to pop up a bubble-like card overlay",
    "PopoversNormalTitle": "Basic usage",
    "PopoversNormalIntro": "Click the text input box to pop up the <code>Popover</code> pop-up box, <code>Placement</code> set the position of the pop-up box, close the pop-up box when clicking the second time",
    "PopoversButtonTitle": "button activates popup",
    "PopoversButtonIntro": "<code>Popover</code> pop-up box pops up after clicking the button",
    "PopoversTemplateTitle": "Custom Template",
    "PopoversTemplateIntro": "Customize the pop-up content by setting the <code>Template</code> template",
    "PopoversTemplateButtonText": "Template",
    "PopoversTemplateTitleText": "Custom Template",
    "PopoversButtonButtonText": "Click to activate/deactivate",
    "PopoversCssClassTitle": "custom style",
    "PopoversCssClassIntro": "Customize the pop-up window by setting the <code>Popover</code> parameter <code>CssClass</code>",
    "PopoversCssClassDescription": "set up <code>Popover</code> parameter <code>CssClass=\"custom-popover\"</code> make custom styles",
    "PopoversCssClassButtonText": "Click to activate/deactivate",
    "PopoversManualTitle": "Manual",
    "PopoversManualIntro": "Use code to control the popover state by setting <code>Trigger=\"manual\"</code>",
    "PopoversManualDescLI1": "The child component uses the cascade parameters to get the <code>Popover</code> instance and then calls its methods <code>Show</code> <code>Hide</code> <code>Toggle</code>",
    "PopoversManualDescLI2": "Get the Popover instance through <code>@ref</code> and call its instances method"
  },
  "BootstrapBlazor.Server.Components.Samples.Progress": {
    "ProgressTitle": "Progress progress bar",
    "ProgressDescription": "Used to display the progress of the operation, inform the user of the current status and expectations",
    "ProgressNormalTitle": "Progress bar component",
    "ProgressNormalIntro": "Common progress bar",
    "ProgressDisplayValueTitle": "Display value",
    "ProgressDisplayValueIntro": "Set the progress bar value display through <code>IsShowValue</code>",
    "ProgressHeightTitle": "Set the progress bar height",
    "ProgressHeightIntro": "Set the progress bar height via <code>Height</code>",
    "ProgressColorTitle": "Progress bar with color",
    "ProgressColorIntro": "Set the progress bar color",
    "ProgressStripeTitle": "Whether to show stripes",
    "ProgressStripeIntro": "Set the stripe setting of the progress bar via <code>IsStriped</code>",
    "ProgressDynamicTitle": "Whether to display dynamically",
    "ProgressDynamicIntro": "Set the dynamic display of the progress bar through <code>IsAnimated</code>",
    "ProgressBindingTitle": "Two-way binding data",
    "ProgressBindingIntro": "Bind data",
    "ProgressDecimalsTitle": "Decimals",
    "ProgressDecimalsIntro": "Adjust the number of decimal places by setting the <code>Round</code> parameter, which defaults to <code>0</code>. Adjust the rounding mode by setting the <code>MidpointRounding</code >parameter, which defaults to <code>MidpointRounding. AwayFromZero</code> rounding"
  },
  "BootstrapBlazor.Server.Components.Samples.Responsives": {
    "ResponsiveTitle": "Responsive breakpoint monitoring",
    "ResponsiveDescription": "Determines whether to re-render the content of a responsive layout based on parameter conditions, usually used for responsive layouts",
    "ResponsiveNormalTitle": "Basic usage",
    "ResponsiveNormalIntro": "Resize the browser window and observe the change of <code>Breakpoint</code>",
    "ResponsiveNormalIntroCurrentText": "current"
  },
  "BootstrapBlazor.Server.Components.Samples.Modals": {
    "ModalsTitle": "Modal box",
    "ModalsDescription": "Inform the user and host relevant actions while preserving the current page state",
    "ModalsNormalTitle": "Basic usage",
    "ModalsNormalIntro": "A dialog box pops up, suitable for scenarios that require more customization",
    "ModalsNormalPopupTitle": "Popup title",
    "ModalsNormalPopupText": "popup text",
    "ModalsNormalIsKeyboard": "by setting <code>Modal</code> component <code>IsKeyboard:true</code> parameter, whether to open the pop-up window is supported <kbd>ESC</kbd>",
    "ModalsNormalPopups": "Pop-ups",
    "ModalsNormalDefaultPopup": "Default popup",
    "ModalsNormalDefaultPopupText": "I am the text in the pop-up window",
    "ModalsIsBackdropTitle": "IsBackdrop background off mode",
    "ModalsIsBackdropIntro": "Click the area outside the pop-up window to close the pop-up window effect by default",
    "ModalsIsBackdropToClose": "Click on the background to close the popup",
    "ModalsTitlePopupWindowText": "I am the text in the pop-up window",
    "ModalsDialogSizeTitle": "Bullet size",
    "ModalsDialogSizeIntro": "Set the size of the popup component through <code>Size</code>",
    "ModalsResize": "Resize",
    "ModalsDialogResizeTitle": "Resize",
    "ModalsDialogResizeIntro": "Resize the modal box by setting the <code>ShowResize</code> property",
    "ModalsSmallPopup": "small popup",
    "ModalsBigPopup": "big popup",
    "ModalsOverSizedPopup": "OverSized pop-up window",
    "ModalsSuperLargePopup": "super large pop-up window",
    "ModalsFullScreenSizeTitle": "Full screen popup",
    "ModalsFullScreenSizeIntro": "Just set the property <code>FullScreenSize</code>",
    "ModalsFullScreenPopup": "Full screen popup",
    "ModalsFullScreenPopup992": "Full screen popup(<992px)",
    "ModalsLargeFullScreenPopup": "Large full screen popup",
    "ModalsFullScreenPopup1200": "Full screen popup(<1200px)",
    "ModalsLargeFullScreenPopupWindow": "Large full-screen pop-up window",
    "ModalsFullScreenPopup1400": "Full screen popup(<1400px)",
    "ModalsSuperLargeFullScreenPopupWindow": "Super large full-screen pop-up window",
    "ModalsCenterVerticallyTitle": "Center vertically",
    "ModalsCenterVerticallyIntro": "Set the vertical centering of the popup component via <code>IsCentered</code>",
    "ModalsVerticallyCenteredPopup": "Vertically centered popup",
    "ModalsLongContentTitle": "Extra long content",
    "ModalsLongContentIntro": "Use <code>IsScrolling</code> to set the scroll wheel sliding function of the pop-up frame component for the excess content",
    "ModalsVeryLongContent": "Pop-up window with very long content",
    "ModalsScrollBarPopup": "Built-in scroll bar popup",
    "ModalsIsDraggableTitle": "Draggable popup",
    "ModalsIsDraggableIntro": "Click on the title bar of the pop-up window to drag and drop the pop-up window",
    "ModalsMaximizeTitle": "Maximize button",
    "ModalsMaximizeIntro": "Show the maximize button by setting the <code>ShowMaximinzeButton</code> popup",
    "ModalsMaximizePopup": "Maximize popup",
    "ModalsShownCallbackAsyncTitle": "Popup shows callback method",
    "ModalsShownCallbackAsyncIntro": "By setting the <code>ShowCallbackAsync</code> callback delegate, this method will be recalled after the pop-up window is displayed",
    "ModalsAttributesFirstAfterRenderCallbackAsync": "Modal first after render callback",
    "ModalsAttributeHeaderTemplate": "Modal body ModalHeader template",
    "ModalsAttributeBodyTemplate": "Modal body ModalBody component",
    "ModalsAttributeChildContent": "Content",
    "ModalsAttributeFooterTemplate": "ModalFooter component at the bottom of the modal",
    "ModalsAttributeIsBackdrop": "Whether to close the popup in the background",
    "ModalsAttributeIsKeyboard": "Whether to respond to ESC keyboard",
    "ModalsAttributeIsCentered": "Whether to center vertically",
    "ModalsAttributeIsScrolling": "Whether to scroll when the text of the pop-up window is too long",
    "ModalsAttributeIsFade": "Whether to enable the fade-in and fade-out animation effect",
    "ModalsAttributeIsDraggable": "Whether to enable the draggable effect",
    "ModalsAttributeShowCloseButton": "Whether to show the close button",
    "ModalsAttributeShowFooter": "Whether to show Footer",
    "ModalsAttributeSize": "Size",
    "ModalsAttributeFullScreenSize": "Full screen when smaller than a certain size",
    "ModalsAttributeTitle": "Popup title",
    "ModalsAttributeShowMaximizeButton": "Whether to show the popup maximize button",
    "ModalsAttributeShownCallbackAsync": "Popup shows callback method"
  },
  "BootstrapBlazor.Server.Components.Samples.Masks": {
    "MaskTitle": "Mask",
    "MaskDescription": "By calling the service display and hide methods, a mask layer is displayed to mask the data.",
    "MaskNormalTitle": "Basic usage",
    "MaskNormalIntro": "Call the <code>MaskService</code> mask service example method <code>Show</code> to display a mask, and call the instance method <code>Close</code> to close the mask after 3 seconds",
    "MaskNormalDesc": "You can adjust the <code>ZIndex</code> <code>Opacity</code> <code>BackgroundColor</code> parameters via <code>MaskOption</code>",
    "ShowMaskButtonText": "Show",
    "MaskContainerTitle": "Container",
    "MaskContainerIntro": "Specify the mask position by setting the <code>MaskOption</code> parameter <code>ContainerId</code>",
    "MultipleMaskContainerTitle": "Multiple Mask",
    "MultipleMaskContainerIntro": "By customizing the <code>Mask</code> component, you can mask multiple parts of a web page.",
    "MultipleMaskContainerDesc": "Set the <code>Mask</code> component in the component. When calling the <code>Show</code> instance method of <code>MaskService</code>, specify the <code>Mask</code> instance as the second parameter.",
    "MaskCloseTitle": "Close By Code",
    "MaskCloseIntro": "Close the popup by using the <code>DialogCloseButton</code> component or cascade parameters"
  },
  "BootstrapBlazor.Server.Components.Samples.Messages": {
    "MessagesTitle": "Message prompt",
    "MessagesDescription": "Often used for feedback prompts after active operations. The difference from Toast is that the latter is more passive reminder for system-level notifications",
    "MessagesIntro": "Component usage introduction：",
    "MessagesTips1": "1. Inject service <code>MessageService</code>",
    "MessagesTips2": "2. call its instance <code>api</code>",
    "MessagesTips3": "This is a reminder message",
    "MessagesNormalTitle": "Basic usage",
    "MessagesNormalIntro": "Appears from the top and automatically disappears after 4 seconds",
    "MessagesMessagePrompt": "Open the message prompt",
    "MessagesAsyncTitle": "Async notification",
    "MessagesAsyncIntro": "By setting the button's <code>IsAsync</code> parameter, use the same <code>MessageOption</code> to update the pop-up window information for different steps",
    "MessagesAsyncDemoStep1Text": "Packing documents, please wait...",
    "MessagesAsyncDemoStep2Text": "Packaging completed, downloading...",
    "MessagesAsyncDemoStep3Text": "Download completed, close the window automatically",
    "MessagesAsyncText": "AsyncNotify",
    "MessagesIconTitle": "message box with icon",
    "MessagesIconIntro": "Change the small icon on the left side of the message box by setting the <code>Icon</code> property of <code>MessageOption</code>",
    "MessagesCloseButtonTitle": "message box with close button",
    "MessagesCloseButtonIntro": "Change the close button to appear on the right side of the message box by setting the <code>ShowDismiss</code> property of <code>MessageOption</code>",
    "MessagesLeftBoardTitle": "message box with border on the left",
    "MessagesLeftBoardIntro": "Change the left border style of the message box by setting the <code>ShowBar</code> property of <code>MessageOption</code>",
    "MessagesDifferentColorTitle": "message boxes in different colors",
    "MessagesDifferentColorIntro": "Change the message box color by setting the <code>Color</code> property of <code>MessageOption</code>",
    "MessagesDifferentColorPrimary": "Primary message",
    "MessagesDifferentColorSuccess": "success message",
    "MessagesDifferentColorInfo": "Info message",
    "MessagesDifferentColorDanger": "Danger message",
    "MessagesDifferentColorWarning": "Warning message",
    "MessagesDifferentColorSecondary": "Secondary message",
    "MessagesPositionTitle": "message box pop-up location",
    "MessagesPositionIntro": "Specify the <code>Message</code> component that has set the bottom display position by setting the component parameter of the <code>MessageService</code> service",
    "MessagesItem": "MessageOption property",
    "MessagesTemplateTitle": "Custom template",
    "MessagesTemplateIntro": "By setting the <code>ChildContent</code> template, rich custom styles and content prompt information can be achieved",
    "MessagesTemplatePrompt": "Custom message",
    "MessagesShowModeTitle": "Show mode",
    "MessagesShowModeIntro": "Specify the display mode by setting the <code>ShowMode</code> parameter",
    "MessagesShowModePrompt": "Show only last message"
  },
  "BootstrapBlazor.Server.Components.Samples.Lights": {
    "LightsTitle": "Light indicator",
    "LightsDescription": "Provides various status indicators",
    "LightsNormalTitle": "common usage",
    "LightsNormalIntro": "for status indication",
    "LightsFlashingTitle": "flicker",
    "LightsFlashingIntro": "Flash the light by setting the parameter <code>IsFlash</code>",
    "LightsColorTitle": "discoloration",
    "LightsColorIntro": "Color the light by setting the value of the parameter <code>Color</code>",
    "LightsTooltipTextTitle": "prompt text",
    "LightsTooltipTextIntro": "By setting the value of the attribute <code>TooltipText</code> to make the <code>tooltip</code> text prompt when the mouse hovers over the indicator light",
    "TooltipText": "I am prompt text message",
    "LightsFlatTitle": "Flat",
    "LightsFlatIntro": "Make the indicator light flat by setting the parameter <code>IsFlat</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Charts.Index": {
    "Chart": "Chart",
    "ChartIntro": "Drawing components of various charts with given data",
    "ChartIntro2": "Component data can be set in the <code>OnInit</code> callback delegate"
  },
  "BootstrapBlazor.Server.Components.Samples.Charts.Bubble": {
    "BubbleNormalTitle": "Bubble diagram",
    "BubbleNormalIntro": "Change the chart to a <code>bubble</code> chart by setting <code>ChartType</code>",
    "BubbleNormalRandomData": "Random data",
    "BubbleNormalAddDataSet": "Add dataset",
    "BubbleNormalRemoveDataset": "Remove dataset",
    "BubbleNormalAddData": "Adding data",
    "BubbleNormalRemoveData": "Remove data",
    "BubbleNormalReload": "Reload",
    "BubbleBarAspectRatioTitle": "Chart ratio",
    "BubbleBarAspectRatioIntro": "Setting the height and width will automatically disable the constraint chart ratio, and the chart will fill the container"
  },
  "BootstrapBlazor.Server.Components.Samples.Charts.Doughnut": {
    "DoughnutNormalTitle": "Doughnut diagram",
    "DoughnutNormalIntro": "Change the chart to a <code>doughnut</code> chart by setting <code>ChartType</code>",
    "DoughnutNormalRandomData": "Random data",
    "DoughnutNormalAddDataset": "Add dataset",
    "DoughnutNormalRemoveDataset": "Remove dataset",
    "DoughnutNormalAddingData": "Adding data",
    "DoughnutNormalRemoveData": "Remove data",
    "DoughnutNormalHalf": "Half circle/Full circle",
    "DoughnutNormalReload": "Reload",
    "DoughnutAspectRatioTitle": "Chart ratio",
    "DoughnutAspectRatioIntro": "Setting the height and width will automatically disable the constraint chart ratio, and the chart will fill the container"
  },
  "BootstrapBlazor.Server.Components.Samples.Charts.Pie": {
    "PieNormalTitle": "Pie diagram",
    "PieNormalIntro": "Change the chart to a <code>pie</code> chart by setting <code>ChartType</code>",
    "PieNormalRandomData": "Random data",
    "PieNormalAddDataset": "Add dataset",
    "PieNormalRemoveDataset": "Remove dataset",
    "PieNormalAddingData": "Adding data",
    "PieNormalRemoveData": "Remove data",
    "PieNormalReload": "Reload",
    "PieAspectRatioTitle": "Chart ratio",
    "PieAspectRatioIntro": "Setting the height and width will automatically disable the constraint chart ratio, and the chart will fill the container",
    "PieLegendPositionTitle": "LegendPostion",
    "PieLegendPositionIntro": "Set the legend position through <code>LegendPosition</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Charts.Line": {
    "LineOnInitTitle": "Line graph",
    "LineOnInitIntro": "Use <code>OnInit</code> to call back the delegate method, and after assigning the initialization data, the drawing operation can be performed, By setting the <code>BorderWidth</code> attribute, you can set the line width of the line chart, with a default value of 3, you can set the font size of Legend Labels by setting the <code>ChartOptions.LegendLabelsFontSize</code> property",
    "LineOnInitRandomData": "Random data",
    "LineOnInitAddDataset": "Add dataset",
    "LineOnInitRemoveDataset": "Remove dataset",
    "LineOnInitAddingData": "Adding data",
    "LineOnInitRemoveData": "Remove data",
    "LineOnInitContinueData": "Continue data",
    "LineAnimation": "Animation",
    "LineContinueTitle": "Plot",
    "LineContinueIntro": "Call the instance method <code>Reload</code>, readjust the data to shift the curve to the left, set <code>IsAnimation</code> to turn off the animation effect",
    "LineTensionTitle": "Line graph",
    "LineTensionIntro": "Use the <code>Tension</code> parameter of the <code>ChartDataset</code> instance to adjust the curvature of the polyline, the default is <b>0.4f</b>",
    "LineNullableTitle": "Line graph",
    "LineNullableIntro": "Use to set the <code>Data</code> parameter of the <code>ChartDataset</code> instance with <code>null</code>, and the line chart is connected with a dotted line",
    "LineOnInitReload": "Reload",
    "LineTwoYAxesTitle": "Double Y axis",
    "LineTwoYAxesIntro": "Show secondary Y axis: alignment, title and data group",
    "LineBarAspectRatioTitle": "Chart ratio",
    "LineBarAspectRatioIntro": "Setting the height and width will automatically disable the constraint chart ratio, and the chart will fill the container",
    "LineChartJSTitle": "Generate Chart through JS",
    "LineChartJSIntro": "Due to the underlying reference of<code>BootstrapBlazor.Chart</code>to<code>Chart.JS</code>, we can call and generate charts through JS.",
    "AppendDataTitle": "Append Data",
    "AppendDataIntro": "Since <code>ChartDataSource</code> does not fully encapsulate all parameters in <code>Chart.JS</code>, when we need to set some unprovided parameters, we can use <code>AppendData</code> to complete it.",
    "CustomTooltipTitle": "Tooltip",
    "CustomTooltipIntro": "Customizing <code>Tooltip</code> requires using client script settings",
    "CustomTooltipLi1": "<code>Chart</code> component settings <b>Id</b> parameter",
    "CustomTooltipLi2": "Create a client-side <code>JavaScript</code> script. This example uses the isolated script method to export the method name <code>customTooltip</code>. The parameters are <b>component Id</b> <b>callback reference instance</b> <b>callback method name (TooltipLog)</b>",
    "CustomTooltipLi3": "In this example, the base class method <code>InvokeInitAsync</code> is overloaded to call the client script through the <code>await InvokeVoidAsync(\"customTooltip\", CustomTooltipId, Interop, nameof(TooltipLog))</code> statement"
  },
  "BootstrapBlazor.Server.Components.Samples.Charts.Bar": {
    "BarTypeTitle": "Bar graph",
    "BarTypeIntro": "Change the chart to a <code>bar</code> chart by setting <code>ChartType</code>",
    "BarTypeAnimationOn": "turn on animation",
    "BarTypeAnimationOff": "turn off animation",
    "BarTypeRandomData": "random data",
    "BarTypeAddDataSet": "Add dataset",
    "BarTypeRemoveDataSet": "Remove dataset",
    "BarTypeAddData": "Adding data",
    "BarTypeRemoveData": "Remove data",
    "BarStackedTitle": "Stacked",
    "BarStackedIntro": "By setting the X/Y axis <code>Stacked</code> property, control whether to stack the arrangement",
    "BarTypeReload": "Reload",
    "BarTwoYAxesTitle": "Double Y axis",
    "BarTwoYAxesIntro": "Show secondary Y axis: alignment, title and data group",
    "BarAspectRatioTitle": "Chart ratio",
    "BarAspectRatioIntro": "Setting the height and width will automatically disable the constraint chart ratio, and the chart will fill the container",
    "BarShowDataLabelTitle": "Display chart data values",
    "BarShowDataLabelIntro": "By setting <code>ShowDataLabel</code> property，control whether to display chart data values",
    "BarColorSeparatelyTitle": "Set bar chart colors separately",
    "BarColorSeparatelyIntro": "By setting <code>BarColorSeparately</code> property，control whether to Set bar chart colors separately，and By setting <code>BackgroundColor</code> property, set bar chart color"
  },
  "BootstrapBlazor.Server.Components.Samples.Transitions": {
    "TransitionsTitle": "Transition effect",
    "TransitionsDescription": "BootstarpBlazor applies the transition animation to some components, you can also use it directly.",
    "TransitionsNormalTitle": "Basic usage",
    "TransitionsNormalIntro": "Demonstration of basic animation effects",
    "TransitionsEndCallbackTitle": "Animation execution complete callback",
    "TransitionsEndCallbackIntro": "Execute the callback function after the animation is completed",
    "TransitionsDurationTitle": "Set animation duration",
    "TransitionsDurationIntro": "Control the animation duration in milliseconds by setting the <code>Duration</code> parameter"
  },
  "BootstrapBlazor.Server.Components.Samples.EditDialogs": {
    "Title": "EditDialog edit popup",
    "Description": "Automatic rendering of edit popups by binding the data model",
    "SubDescription": "<code>EditDialog</code> The component is an extension of the <code>Dialog</code> component and is suitable for data popup editing.",
    "Tip": "Inject the service by calling <code>DialogService</code> of <code>ShowEditDialog</code> The method directly pops up the editing dialog box, which greatly reduces the amount of code. <code>EditDialogOption</code> Configuration class inheritance <code>DialogOption</code>，For more parameter settings, please click <a href=\"dialog\" target=\"_blank\">[portal]</a>\"",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Automatically generate editable forms for each field of the model by binding the <code>TModel</code> data model",
    "NoRenderTitle": "Setting bound model part property does not show",
    "NoRenderIntro": "By setting the <b>Address</b> <b>Count</b> <code>Ignore=true</code> of the <code>IEditorItem</code> instance, the editable pop-up window do not shown.",
    "EditDialogOption": "EditDialogOption property",
    "LeftAlignedButton": "Edit popup (left-aligned)",
    "RightAlignedButton": "Edit popup (right aligned)",
    "PopupButton": "Pop-ups"
  },
  "BootstrapBlazor.Server.Components.Samples.BaiduOcr": {
    "Title": "IBaiduOcr",
    "SubTitle": "Character recognition",
    "VatInvoiceTitle": "VAT Invoice",
    "VatInvoiceIntro": "Call Baidu Ocr interface for text recognition by uploading VAT invoice image",
    "BaiduOcrDesc": "本组件通过调用 Baidu AI 平台文字识别接口进行增值税发票文字识别。支持对增值税普票、专票、全电发票（新版全国统一电子发票，专票/普票）、卷票、区块链发票的所有字段进行结构化识别，包括发票基本信息、销售方及购买方信息、商品信息、价税信息等，其中五要素字段的识别准确率超过 99.9%； 同时，支持对增值税卷票的 21 个关键字段进行识别，包括发票类型、发票代码、发票号码、机打号码、机器编号、收款人、销售方名称、销售方纳税人识别号、开票日期、购买方名称、购买方纳税人识别号、项目、单价、数量、金额、税额、合计金额(小写)、合计金额(大写)、校验码、省、市，四要素字段的识别准确率可达95%。上传图片不能超过 4M",
    "BaiduOcrIntro": "Usage",
    "BaiduOcrStep1": "1. Get <code>IBaiduOcr</code> instance by inject service",
    "BaiduOcrStep1Desc": "Update the <code>appsettings.json</code> file with the following configuration. Please register on <a href=\"https://ai.baidu.com/ai-doc/index/OCR\" target=\"\">Baidu AI Open Platform</a> and apply for relevant parameter values.",
    "BaiduOcrStep2": "2. Get <code>IBaiduOcr</code> instance by inject service",
    "BaiduOcrStep3": "3. Call <code>IBaiduOcr</code> instance method",
    "VerifyVatInvoiceTitle": "增值税验真",
    "VerifyVatInvoiceIntro": "通过调用 <code>IBaiduOcr</code> 服务实例的发票验真方法 <code>VerifyInvoiceAsync</code> 返回 <code>InvoiceVerifyResult</code> 其属性 <code>Valid</code> 为 <code>true</code> 时为真"
  },
  "BootstrapBlazor.Server.Components.Samples.Topologies": {
    "TopologiesTitle": "Topology HMI",
    "TopologiesDescription": "Rendering of human-computer interface through <code>Topology</code> open source components",
    "TopologiesNormalTitle": "Basic usage",
    "TopologiesNormalIntro": "Just load the <code>Json</code> file exported by the website, click the number box below the fan to control the operation"
  },
  "BootstrapBlazor.Server.Components.Samples.TreeViews": {
    "TreeViewsTitle": "Tree tree control",
    "TreeViewsDescription": "Present information in a clear hierarchy that can be expanded or collapsed",
    "TreeViewsTips1": "If the component is a generic component, you need to use <code>TItem</code> to specify the bound data model. In this example, the model is <code>TreeFoo</code> and needs to be set",
    "TreeViewsTips2": "Set <code>TreeViewItem</code> its <code>IsExpand</code> parameter to control whether the current child node is expanded",
    "TreeViewsTips3": "When clicking on the small arrow to expand the child item, obtain the child item data collection through the <code>OnExpandNodeAsync</code> callback delegate method",
    "TreeViewsTips4": "Keep the node state fallback mechanism, <code>ModelEqualityComparer</code> <code>CustomKeyAttribute</code> <code>IEqualityComparer&lt;TItem&gt;</code> <code>Equals</code> overloaded method",
    "TreeViewsTips5": "The component will remain in the <code>expanded</code> <code>collapsed</code> <code>selected</code> state",
    "TreeViewsTips6": "Set whether the node is <b>expanded</b> state through <code>TreeViewItem&lt;TItem&gt;.IsExpand</code>",
    "TreeViewsTips7": "Set whether the node is <b>selected</b> state through <code>TreeViewItem&lt;TItem&gt;.IsActive</code>",
    "TreeViewsTips8": "Through <code>TreeViewItem&lt;TItem&gt;.Checked</code>, set whether the node is in <b>checked/single selection</b> state",
    "TreeViewsTips9": "Step 1: Set the <code>TItem</code> generic model",
    "TreeViewsTips10": "Step 2: Set <code>Items</code> to get the component data source <b>Note</b> The data source type is <code>IEnumerable&lt;TreeViewItem&lt;TItem&gt;&gt;</code>",
    "TreeViewsTips11": "Step 3: Set the <code>OnExpandNodeAsync</code> callback delegate to expand the response node to get the child data source collection",
    "TreeViewsTips12": "Step 4: Set <code>ModelEqualityComparer</code> to provide a component identification model comparison delegate method, <b>Note</b> This setting is optional. Perform downgrade search through the fallback mechanism explained above",
    "TreeViewNormalTitle": "Basic usage",
    "TreeViewNormalIntro": "Basic tree structure display",
    "TreeViewNormalDescription": "By setting the <code>OnTreeItemClick</code> property to monitor the event when the tree control node is clicked, the following log displays the data of the selected node when the tree control node is clicked",
    "TreeViewCheckboxTitle": "Checkbox",
    "TreeViewCheckboxIntro": "Suitable for use when you need to select a level",
    "TreeViewCheckboxTips1": "By setting the <code>OnTreeItemChecked</code> property to monitor the event when the tree control node is checked, when the check box in front of the tree control node is selected, the following log displays the data of the selected node",
    "TreeViewCheckboxTips2": "The <code>Tree</code> component will keep the status of each node when loading data. The <b>Refresh</b> button will update the data source <code>Items</code> and reinitialize the component. When you click the <code>Append Node</code> button, only the data inside the data source will be changed without reassigning values, so the status of each node will remain unchanged.",
    "TreeViewNormalRadioListDisplayText": "Whether to reset",
    "TreeViewCheckboxCheckBoxDisplayText1": "Automatically select child nodes",
    "TreeViewCheckboxCheckBoxDisplayText2": "Automatically select parent node",
    "TreeViewCheckboxButtonText": "Refresh",
    "TreeViewCheckboxAddButtonText": "Add",
    "TreeViewDraggableTitle": "Draggable nodes",
    "TreeViewDraggableIntro": "Allows nodes to be dragged and dropped in the tree control",
    "TreeViewDraggableDescription": "By setting the <code>AllowDrag</code> property, you can drag and drop nodes in the tree control. Use the <code>OnDragItemEndAsync</code> callback delegate to handle the drop event.",
    "TreeViewTreeDisableTitle": "Disabled state",
    "TreeViewTreeDisableIntro": "Some nodes of the Tree can be set to disabled state",
    "TreeViewTreeDisableDescription": "By setting the <code>Disabled</code> property of the data source <code>TreeViewItem</code> object, you can control whether this node can be checked or not. When set to <code>false</code>, it will not affect the node expansion. /shrink function",
    "TreeViewAccordionModelTitle": "Accordion mode",
    "TreeViewAccordionModelIntro": "For nodes of the same level, only one can be expanded at a time",
    "TreeViewAccordionModelDescription": "Enable the accordion effect by setting the <code>IsAccordion</code> property of the <code>Tree</code> component",
    "TreeViewDefaultExpandTitle": "Expanded by default and selected by default",
    "TreeViewDefaultExpandIntro": "Some nodes of <code>Tree</code> can be set to be expanded or selected by default",
    "TreeViewDefaultExpandDescription": "By setting the <code>IsExpand</code> property of the <code>TreeViewItem</code> object, you can control whether this node is in the expanded state by default. In this example, <b>navigation 2</b> is in the expanded state by default, and the rest Node defaults to contracted state",
    "TreeViewTreeDisplayIconTitle": "Show icon",
    "TreeViewTreeDisplayIconIntro": "Control whether the component displays the icon by setting <code>ShowIcon</code>",
    "TreeViewTreeDisplayIconDescription": "By setting the <code>ShowIcon</code> property of the <code>TreeViewItem</code> object, you can control whether this node displays the icon or not",
    "TreeViewTreeClickExpandTitle": "Click on the node to expand and contract",
    "TreeViewTreeClickExpandIntro": "By setting <code>ClickToggleNode</code> to control whether to expand and contract when the node is clicked",
    "TreeViewTreeClickExpandDescription": "By setting the <code>ClickToggleNode</code> property of the <code>TreeViewItem</code> object, you can control whether this node can be expanded and contracted by clicking",
    "TreeViewTreeValidationFormTitle": "The Tree component is built into the validation form",
    "TreeViewTreeValidationFormIntro": "<code>Tree</code> can be enabled inside the component <code>Checkbox</code> will be displayed when it is built into the validation form <code>DisplayName</code> This function needs to be disabled in the tree component",
    "TreeViewTreeValidationFormDescription": "Show <code>Checkbox</code> built into validation component <code>ValidateForm</code> by setting <code>ShowCheckbox</code> property does not show <code>DisplayName</code>",
    "TreeViewTreeLazyLoadingTitle": "Lazy loading",
    "TreeViewTreeLazyLoadingIntro": "Dynamically add child nodes when expanding a node",
    "TreeViewTreeLazyLoadingDescription": "By setting the node <code>HasChildNode</code> to control whether to display the small arrow picture of the node. Add nodes through Tree's <code>OnExpandNodeAsync</code> delegate",
    "TreeViewTreeCustomNodeTitle": "Custom node",
    "TreeViewTreeCustomNodeIntro": "Implement your own node template by setting <code>TreeViewItem</code> <code>Template</code>",
    "TreeViewTreeNodeColorTitle": "Node color",
    "TreeViewTreeNodeColorIntro": "Implement your own node style by setting <code>TreeViewItem</code> <code>CssClass</code>",
    "TreeViewCheckedItemsTitle": "Get all selected nodes",
    "TreeViewCheckedItemsIntro": "Get all nodes by setting the <code>OnTreeItemChecked</code> callback delegate",
    "TreeViewShowSkeletonTitle": "Loading skeleton screen",
    "TreeViewShowSkeletonIntro": "When the component <code>Items</code> is <code>null</code>, set <code>ShowSkeleton=\"true\"</code> to display the skeleton screen when asynchronously loading data. Set <code>ShowSkeleton=\"false\"</code> to display the default loading animation.",
    "TreeViewShowSkeletonButtonText": "Asynchronous loading",
    "TreeViewShowSearchTitle": "Show search",
    "TreeViewShowSearchIntro": "By setting <code>ShowSearch</code> to display the search bar, and using the <code>OnSearchAsync</code> callback method to set the data source to refresh the page",
    "TreeViewSetActiveTitle": "Set Active Node",
    "TreeViewSetActiveIntro": "Set the currently active node by calling the <code>SetActiveItem</code> method",
    "TreeViewSetActiveDisplayText": "Current Active Node",
    "TreeViewsAttribute": "TreeViewItem property",
    "TreeViewsDisableWholeTreeView": "Whole TreeView disable",
    "TreeViewsWhetherToExpandWhenDisable": "Whether to expand when the control node is disabled",
    "OnMaxSelectedCountExceedTitle": "Maximum Info",
    "OnMaxSelectedCountExceedContent": "You can select at most {0} items",
    "TreeViewMaxSelectedCountTitle": "MaxSelectedCount",
    "TreeViewMaxSelectedCountIntro": "Control the maximum number of selectable items by setting the <code>MaxSelectedCount</code> property, and handle the logic through the <code>OnMaxSelectedCountExceed</code> callback",
    "TreeViewMaxSelectedCountDesc": "When more than 2 nodes are selected, a <code>Toast</code> prompt bar will pop up",
    "TreeViewEnableKeyboardArrowUpDownTitle": "Keyboard",
    "TreeViewEnableKeyboardArrowUpDownIntro": "Support keyboard up and down arrow operations by setting <code>EnableKeyboardArrowUpDown=\"true\"</code>. <kbd>ArrowLeft</kbd> collapse the node, <kbd>ArrowRight</kbd> expand the node, <kbd>ArrowUp</kbd> move the node up, <kbd>ArrowDown</kbd> move the node down, <kbd>Space</kbd> select the node,",
    "TreeViewVirtualizeTitle": "Virtualize",
    "TreeViewVirtualizeIntro": "Enable virtual scrolling by setting <code>IsVirtualize=\"true\"</code> to support big data",
    "TreeViewVirtualizeDescription": "The component uses <code>Virtualize</code> to implement virtual scrolling logic, which reduces the pressure on the browser. However, if there is a lot of tree structure data, such as <b>Select All</b>, all data must be marked, resulting in large data in the memory. This problem has not been solved yet. Currently, this component still puts a lot of pressure on the <b>CPU</b> due to large data.",
    "TreeViewShowToolbarTitle": "Show Toolbar",
    "TreeViewShowToolbarIntro": "Show the toolbar by setting <code>ShowToolbar=\"true\"</code>",
    "TreeViewShowToolbarDesc": "After it is turned on, when the mouse hovers over a node, a toolbar icon appears on the right, and the toolbar function can be customized; data is updated by setting the <code>OnUpdateCallbackAsync</code> callback method; the toolbar template is defined by setting <code>ToolbarTemplate</code>, and if not set, the internal default node name template is used"
  },
  "BootstrapBlazor.Server.Components.Samples.SwitchButtons": {
    "SwitchButtonsTitle": "Switch Button state switch button",
    "SwitchButtonsDescription": "Toggle state after button click",
    "SwitchButtonsNormalTitle": "Basic usage",
    "SwitchButtonsNormalIntro": "Click the component to automatically switch the state",
    "SwitchButtonsToggleStateTitle": "initialized state",
    "SwitchButtonsToggleStateIntro": "Initialize component state by setting <code>ToggleState</code>",
    "SwitchButtonsToggleStateDescription": "The current component state can be obtained by setting the <code>ToggleStateChanged</code> callback method",
    "SwitchButtonsOnClickTitle": "click callback method",
    "SwitchButtonsOnClickIntro": "Initialize component state by setting <code>ToggleState</code>",
    "SwitchButtonsOnClickDescription": "<code>OnClick</code> callback is <code>EventCallback</code> will automatically refresh the current component or page, if you don't need to refresh the component or page, you can use <code>ToggleStateChanged</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Downloads": {
    "DownloadsTitle": "Download file download",
    "DownloadsSubTitle": "For direct download of physical files",
    "DownloadsTips1": "pay attention",
    "DownloadsTips2": "<code>Download</code> use the <code>DotNetStreamReference</code> object which allows streaming file data to the client. This approach loads the entire file into the client's' memory, which can impair performance. To download relatively large files (<code>&gt;=250 MB</code>), it is recommended to follow the <code>MVC</code> download from <code>Url</code>.",
    "DownloadsExample": "Example",
    "DownloadsExampleButtonText": "download file",
    "DownloadsExampleRazorCodeTitle": "<code>Razor</code> code",
    "DownloadsExampleRazorCodeContent": "<Button OnClick=\"DownloadFile\">Click me to download the file</Button>",
    "DownloadsExampleCodeTitle": "<code>C#</code> code",
    "DownloadsExampleTestFile": "test file",
    "DownloadsExampleContent": "Self-generated and written text, here can be replaced with pictures or other content",
    "DownloadNormalTitle": "Normal download",
    "DownloadNormalIntro": "Download files directly by setting the physical path",
    "DownloadNormalButtonText": "download",
    "DownloadFolderTitle": "Folder download",
    "DownloadFolderIntro": "By setting the physical path of the folder, the files in the directory are packaged and compressed and downloaded",
    "DownloadFolderButtonText": "download",
    "DownloadBigFileTitle": "Large file download test",
    "DownloadBigFileIntro": "This simulation generates a text file of <code>1 million lines</code>, about <b>58M</b>, which can be tested by yourself",
    "DownloadBigFileButtonText": "The button sets the value of <code>IsAsync</code> to <code>true</code> for asynchronous download operation",
    "DownloadImageTitle": "Get the picture and display it",
    "DownloadImageIntro": "Simulate the situation where the verification code is generated directly from the front-end page or the uploaded image is not saved and displayed directly.",
    "DownloadImageButtonText": "Since the test uses the files under <code>wwwroot</code>, there is no code generation, and <code>wasm</code> cannot access the <code>wwwroot</code> folder, so only the <code>ssr</code> mode is available for the test. <code>wasm</code> please test it yourself."
  },
  "BootstrapBlazor.Server.Components.Samples.Dialogs": {
    "Title": "Dialog component",
    "Description": "Human-computer interaction by calling the <code>Show</code> method pop-up window by injecting the service",
    "Tip1": "Component usage introduction",
    "Tip2": "inject service <code>DialogService</code> <a href=\"dialog-service\" target=\"_blank\">[Portal]</a>",
    "Tip3": "call <code>DialogOption</code> instance method <code>OnCloseAsync</code>",
    "Tip4": "CascadingParameter",
    "Tip5": "DialogCloseButton",
    "DialogTitle": "Data query window",
    "KeyboardTitle": "Basic usage",
    "KeyboardIntro": "Set the basic properties of the modal box by setting the <code>DialogOption</code> property",
    "ResizeTitle": "Resize",
    "ResizeIntro": "Resize the modal box by setting the <code>ShowResize</code> property",
    "CustomerHeaderTitle": "Custom title bar",
    "CustomerHeaderIntro": "Customize the title bar of the modal box by setting the <code>HeaderTemplate</code> property",
    "ComponentTitle": "Pop out complex components",
    "ComponentIntro": "Pop up a custom component by calling <code>Show&lt;Counter&gt;()</code>",
    "ComponentTip": "In this example, the pop-up dialog box contains a built-in <code>Counter</code> component of a sample website",
    "BodyContextTitle": "Pop-up window",
    "BodyContextIntro": "By setting the <code>BodyContext</code> attribute value, parameters can be passed to the components in the pop-up window",
    "BodyContextTip": "In this example, when the button is clicked, the value of <code>BodyContext</code> is set to <code>I am a parameter</code>, and the content of the pop-up window is the custom component <code>DemoComponent</code>, which is cascaded in the component. parameter gets its value",
    "ApplyTitle": "Practical application",
    "ApplyIntro": "In this example, by passing a primary key, the components in the pop-up window perform data query through this primary key, and display the results in the pop-up window",
    "CloseDialogByCodeTitle": "Code to close the popup",
    "CloseDialogByCodeIntro": "This example explains how to open and close a popup window through code",
    "CloseDialogByCodeTip": "Use <code>DialogOption</code> instance method <code>CloseDialogAsync</code> to close the popup",
    "DisableHeaderCloseButtonTitle": "Disable close button in Header",
    "DisableHeaderCloseButtonIntro": "This example explains how to open and close a popup window through code",
    "DisableHeaderCloseButtonTip": "Setting parameters <code>ShowHeaderCloseButton</code> Ban pop-ups <code>Header</code> Shows the <b>Close</b> button on the right",
    "MultipleDialogTitle": "Multi-level popup",
    "MultipleDialogIntro": "Click the button inside the popup to continue the popup dialog",
    "MultipleDialogTip1": "Features",
    "MultipleDialogTip2": "Click the button to pop up a dialog",
    "MultipleDialogTip3": "Switch the third tab of the <code>Tab</code> component in the pop-up window <b>role management</b>",
    "MultipleDialogTip4": "Click the popup in the tab to continue the popup dialog",
    "MultipleDialogTip5": "<b>Keep state</b> of previously opened dialogs after closing the current dialog",
    "MultipleDialogDesc": "At present, multi-level pop-up windows have been implemented. Each <code>ModalDialog</code> can independently set the <code>IsBackdrop</code> <code>IsKeyboard</code> parameters. This fixes the problem of pressing <kbd>ESC</kbd> in the previous version to remove all pop-up windows",
    "ModalDialogTitle": "Modal dialog",
    "ModalDialogIntro": "Pop up a dialog box in thread blocking mode through the <code>ShowModal</code> method",
    "ModalDialogTip1": "Features",
    "ModalDialogTip2": "Click the button to pop up a modal popup",
    "ModalDialogTip3": "Change the value in the modal pop-up window when the <code>confirm</code> button is clicked <b>update</b>",
    "ModalDialogTip4": "Change the value in the modal pop-up window and click the <code>Cancel</code> or <code>Close</code> button when the value is <b>not updated</b>",
    "ModalDialogTip5": "When the modal pop-up window is clicked again, the value remains the same",
    "EditDialogTitle": "Edit dialog",
    "EditDialogIntro": "Pop up the save dialog through the <code>ShowEditDialog</code> method",
    "EditDialogTip1": "Features",
    "EditDialogTip2": "Click the button to pop up the edit popup",
    "EditDialogTip3": "Set the pop-up window through the <code>EditDialogOption</code> parameter",
    "EditDialogTip4": "The design starting point automatically generates a form window with client-side validation by giving a <code>Model</code> or <code>Items</code>",
    "SearchDialogTitle": "Search dialog",
    "SearchDialogIntro": "Pop up the save dialog through the <code>ShowSearchDialog</code> method",
    "SearchDialogTip1": "Features",
    "SearchDialogTip2": "Click the button to pop up a search popup",
    "SearchDialogTip3": "Set the pop-up window through the <code>SearchDialogOption</code> parameter",
    "SearchDialogTip4": "The design starting point automatically generates a search window by giving a <code>Model</code> or <code>Items</code>",
    "SaveDialogTitle": "Save dialog",
    "SaveDialogIntro": "Pop up the save dialog through the <code>ShowSaveDialog</code> method",
    "SaveDialogTip1": "Features",
    "SaveDialogTip2": "Click the button to pop up the save popup",
    "SaveDialogTip3": "The design starting point automatically generates a save window by giving a <code>TComponent</code>, and performs data processing in the save callback method by setting <code>saveCallback</code>, which is required by <code>TComponent</code> generic components Parameters can be passed through <code>parameters</code>",
    "SizeTitle": "Dialog size",
    "SizeIntro": "Very flexible form size control can be achieved by setting the <code>Size</code> <code>FullScreenSize</code> parameter combination",
    "PrintDialogTitle": "Print button",
    "PrintDialogIntro": "Show a print preview button on the <code>Header</code> by setting <code>ShowPrintButton</code>",
    "PrintDialogTip": "by setting <code>PrintButtonText</code> change the <b>Print Preview</b> button text",
    "ShowMaximizeButtonTitle": "Full screen popup",
    "ShowMaximizeButtonIntro": "Show a window maximize button on the <code>Header</code> by setting <code>ShowMaximizeButton</code>",
    "ErrorLoggerTitle": "exception catch",
    "ErrorLoggerIntro": "Through <code>BootstrapBlazorRoot</code> built-in <code>ErrorLogger</code> global exception capture for errors in the pop-up window",
    "EmailTitle": "Practical drill",
    "EmailIntro": "Simulate a mail application, select the recipient in the pop-up window and fill in the recipient box below.",
    "EmailTip1": "Features",
    "EmailTip2": "Click the button to pop up a modal popup",
    "EmailTip3": "Pass <b>10</b> to the pop-up window by cascading parameters <code>BodyContext</code> to initialize data",
    "EmailTip4": "Select the row data in the <code>Table</code> component and <b>update</b> the <code>SelectedRows</code> data through two-way binding",
    "EmailTip5": "Click the <b>Check</b> button to <b>update</b> the <code>Emails</code> data via two-way binding",
    "EmailTip6": "<code>Emails</code> value <b>not updated</b> when <code>Cancel</code> or <code>Close</code> button is clicked",
    "EmailTip7": "When clicking the pop-up modal pop-up window again, the selected state of the inner row of the component remains the same",
    "EmailTip8": "Prohibit closing the popup when no user is selected in the popup",
    "EmailLabel": "recipient",
    "Attribute": "DialogOption property",
    "EmailDialogTitle": "Select recipient",
    "EmailDialogButtonYes": "Choose",
    "EmailInput": "please enter ...",
    "HeaderToolbarTemplateTitle": "Header Toolbar Template",
    "HeaderToolbarTemplateIntro": "Set <code>HeaderToolbarTemplate</code> custom the buttons on <code>Header</code>",
    "KeyboardTip": "by setting <code>DialogOption</code> <code>IsKeyboard</code> parameter, whether the pop-up window supports <kbd>ESC</kbd>, please click the back button to set and then click the <b>pop-up window</b> button to test the effect",
    "KeyboardOpenDialogButton": "Click to open Dialog",
    "CustomerHeaderOpenDialogButton": "Pop-ups",
    "HeaderToolbarTemplateButtonText": "Print",
    "HeaderToolbarTemplateDialogTitle": "Custom toolbar sample",
    "HeaderToolbarTemplateToastContent": "Print button clicked",
    "ComponentOpenDialogButton": "Click to open Dialog",
    "BodyContextOpenDialogButton": "Dialog parameter passing example",
    "ApplyDisplayText": "Primary key parameter",
    "ApplyOpenDialogButton": "Pop-ups",
    "MultipleDialogButton": "Pop-ups",
    "ModalDialogButton": "Click to open Dialog",
    "EditDialogButton": "Edit popup",
    "SearchDialogButton": "Search popup",
    "SaveDialogButton": "Save popup",
    "SizeButton": "Fullscreen popup (&lt; 1200px)",
    "PrintDialogButton": "Click to open Dialog",
    "ShowMaximizeButton": "Click to open Dialog",
    "ErrorLoggerButton": "global exception test",
    "ExportPdfDialogTitle": "Pop up window with export Pdf function",
    "ExportPdfDialogIntro": "Set <code>ShowExportPdfButtonInHeader</code> to display an export PDF button on the <code>Header</code>",
    "ExportPdfDialogTip": "More parameters can be set by setting <code>ExportPdfButtonOptions</code>",
    "ExportPdfButton": "Export Pdf",
    "ConfirmDialogButton": "Popup Modal",
    "ConfirmDialogModalTitle": "Literal Confirmation Modal",
    "ConfirmDialogModalContent": "<p>this is the prompt message. </p><div class=\"text-danger\">this is a danger info</div>"
  },
  "BootstrapBlazor.Server.Components.Samples.Dispatches": {
    "Title": "Dispatch message distribution",
    "Description": "By injecting the service to call the instance method, the site-wide pop-up window is used for message notification",
    "Tips": "This component provides functions in the form of injection services, which are usually used for site-wide message push and other functions; using this service requires <b>subscribe</b> and <b>unsubscribe</b> operations in the code",
    "NormalTip": "Through this component function, this site realizes the function of prompting the whole site when the code warehouse is submitted.",
    "NormalTips1": "1. Get the <b>Injection Service</b> specified message entity class",
    "NormalTips2": "2. <b>Subscribe</b> notifications",
    "NormalTips3": "3. <b>Unsubscribe</b> when the page or component is destroyed",
    "NormalTips4": "4. Notification implementation method <code>Notify</code>",
    "NormalTipsTitle": "notification title",
    "NormalTipsContent": "Notification content",
    "NormalTips5": "used in this example <code>Toast</code> component for notification, and any other built-in message component or custom component can be used for notification operation in actual combat",
    "DispatchTitle": "Practical application",
    "DispatchIntro": "Click the button to distribute the message, all people who open this page can receive the message distributed by this button",
    "DispatchTip": "Since this function is a site-wide push notification, in order to prevent malicious use, in the example below, the button notification is disabled for <b>30</b> seconds; the message injection code is in the <code>MainLayout</code> template",
    "DispatchNoticeButtonText": "Notice",
    "DispatchNoticeMessage": "Test dispatch message"
  },
  "BootstrapBlazor.Server.Components.Samples.Drawers": {
    "Title": "Drawer",
    "Description": "Sometimes, the Dialog component does not meet our needs. For example, your form is very long, or you need to temporarily display some documents. Drawer has almost the same API as Dialog, which brings a different experience to the UI.",
    "DrawerTips": "Sometimes we want to expand a pop-up window in a certain container. We can do this by embedding a <code>&lt;Drawer/&gt;</code> drawer component in a specific container and then setting the parameter <code>Position=\"absolute\"</code> for relative positioning. Note: The parent container style needs to be set to <code>position: relative;</code>",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Call out a temporary sidebar that can be called out from multiple directions",
    "PlacementTitle": "Click to close the mask",
    "PlacementIntro": "By setting the <code>IsBackdrop</code> property to <code>true</code>, the drawer is automatically closed when the mask part is clicked",
    "NoBackdropTitle": "No backdrop",
    "NoBackdropIntro": "By setting the <code>ShowBackdrop=\"false\"</code> do not show the backdrop",
    "DrawerServiceTitle": "Drawer Service",
    "DrawerServiceIntro": "Open the drawer pop-up window by calling the <code>DrawerService</code> service",
    "IsKeyboardTitle": "ESC",
    "IsKeyboardIntro": "By default, the component uses the <kbd>ESC</kbd> key to close the drawer popup. You can enable this function by <code>IsKeyboard=\"true\"</code>",
    "BodyScrollTitle": "Body Scroll",
    "BodyScrollIntro": "By setting <code>BodyScroll</code>, you can control whether scrolling is allowed when the drawer pop-up window is displayed. <code>Body</code> is false by default, scrolling is not allowed",
    "Open": "click me to open",
    "Content": "The layout, components, etc. in the drawer are fully customizable",
    "Close": "close the drawer",
    "PlacementContent": "Click on the shaded part of the mask to automatically close the drawer"
  },
  "BootstrapBlazor.Server.Components.Samples.Consoles": {
    "Title": "Console",
    "Description": "Console component, generally used for the output of background tasks",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Display background push messages",
    "OnClearTitle": "Empty console",
    "OnClearIntro": "The data set is cleared by setting the <code>OnClear</code> callback method. Since this example uses the same data source as the previous example, it will cause the data source update delay in the above example",
    "ColorTitle": "messages in different colors",
    "ColorIntro": "Changes to colors are made by setting the <code>Color</code> parameter of <code>ConsoleMessageItem</code>",
    "IsAutoScrollTitle": "auto scroll",
    "IsAutoScrollIntro": "Enable or disable automatic scrolling by setting the <code>ShowAutoScroll</code> property value",
    "ShowAutoScrollDescription": "set up <code>ShowAutoScroll=\"true\"</code> Show autoscroll options",
    "IsAutoScrollDescription": "by setting <code>IsAutoScroll</code> Turn on autoscroll",
    "ConsoleMessageItem": "ConsoleMessageItem property",
    "ShowAutoScrollTitle": "ShowAutoScroll",
    "ShowAutoScrollIntro": "Switch auto scroll the data by set <code>ShowAutoScroll</code> parameter"
  },
  "BootstrapBlazor.Server.Components.Samples.Speeches.Index": {
    "SpeechTitle": "Speech Recognition and Synthesis",
    "SpeechDescription": "Converted to text (STT) through microphone voice capture, or read aloud through text (TTS)",
    "SpeechDescription1": "This set of components is built-in <code>Azure</code> and <code>Baidu</code> Speech service, this example relies on",
    "SpeechDescription2": "When using this component, you need to reference its component package",
    "SpeechLiTitle": "Actual combat experience",
    "SpeechLi1": "Click <b>start</b> After pressing the button, speak to the computer <b><i>'Please turn on the light for me'</i></b>",
    "SpeechLi2": "After the computer receives the command, it will ask <b><i>Are you sure you want to turn on the light? Please confirm!</i></b>",
    "SpeechLi3": "You speak to the computer： <b><i>confirm</i></b>",
    "SpeechLi4": "The computer executes the command and enters it in the text box below <b><i>has been opened for you</i></b> text",
    "SpeechButtonText": "Get started",
    "SpeechGroupBoxTitle": "Command output area",
    "SpeechGroupBoxHeaderText": "command panel",
    "SpeechTips1": "1. registration service",
    "SpeechTips1Text": "Add Baidu voice service",
    "SpeechTips2": "2. use the service",
    "SpeechTips2Text1": "speech recognition service",
    "SpeechTips2Text2": "speech synthesis service"
  },
  "BootstrapBlazor.Server.Components.Samples.Speeches.SpeechWaves": {
    "SpeechWaveTitle": "SpeechWave",
    "SpeechWavesDescription": "The dynamic plot of the waveform that is displayed when you start acquiring speech",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Displays the waveform plot",
    "ShowUsedTimeTitle": "The length of the display",
    "ShowUsedTimeIntro": "Via <code>ShowUsedTime</code>",
    "ValueTitle": "Parameters control whether it is displayed",
    "ValueIntro": "Use the <code>Show</code> value to control whether the waveform plot is displayed",
    "ValueButtonText1": "Hide",
    "ValueButtonText2": "Show",
    "ShowAttr": "Whether to start",
    "ShowUsedTimeAttr": "Whether to display the duration",
    "OnTimeoutAttr": "Identify the end-of-timeout callback method",
    "TotalTimeSecondAttr": "Speech recognition is set for a total time longer than calling the OnTimeout callback"
  },
  "BootstrapBlazor.Server.Components.Samples.Speeches.Synthesizers": {
    "SynthesizersTitle": "Synthesizer speech synthesis",
    "SynthesizersSubTitle": "Convert text content to speech",
    "SynthesizerNormalTitle": "Common usage",
    "SynthesizerNormalIntro": "After clicking to start synthesis, perform speech synthesis on the text content"
  },
  "BootstrapBlazor.Server.Components.Samples.Speeches.Recognizers": {
    "RecognizersTitle": "Recognizer Speech Recognition",
    "RecognizersSubTitle": "Convert speech to text with a voice capture device",
    "RecognizerNormalTitle": "Common usage",
    "RecognizerNormalIntro": "Click to start recognition to recognize the input voice",
    "RecognizerNormalDescription": "Instructions for use",
    "RecognizerNormalTips": "click <p>start to identify</p> After the script runs, it may prompt for recording permission. After authorization, start speaking. After 5 seconds (configurable), the text box on the right will display the speech recognition result. Do not click directly after speaking. <p>end recognition</p>"
  },
  "BootstrapBlazor.Server.Components.Samples.DragDrops": {
    "Title": "DragDrop",
    "Description": "For drag and drop",
    "NormalTitle": "Basic usage",
    "NormalIntro": "simple drag and drop",
    "CopyItemTitle": "Copy to new container",
    "CopyItemIntro": "Use <code>CopyItem</code> to copy a new copy to a new location",
    "AcceptsTitle": "Limit what can be dragged in",
    "AcceptsIntro": "Use <code>Accepts</code> to only allow 10 drags on the left and use <code>AllowsDrag</code> to limit 2 to not be dragged, use <code>MaxItems</code> to limit the right to have a maximum of 6 nodes",
    "EventTitle": "Various events",
    "EventIntro": "When the dragging quantity exceeds the limit <code>OnItemDropRejectedByMaxItemLimit</code>, when dragging is prohibited <code>OnItemDropRejected</code>, return to the bottom Item<code>OnReplacedItemDrop</code>, return the dropped Item<code> OnItemDrop</code>",
    "A1": "Maximum number",
    "A2": "Content components",
    "M1": "Whether to run drag and drop",
    "M2": "Whether the node is allowed to be dragged",
    "M3": "Copy a new Item to the target location",
    "M4": "Add special css class for Item",
    "M5": "Event when Item is released",
    "M6": "Event when Item release is rejected",
    "M7": "Event when Item is released on another Item, not blank space",
    "M8": "Event when an Item is rejected because the maximum number in the Dropzone exceeds the limit"
  },
  "BootstrapBlazor.Server.Components.Samples.Labels": {
    "LabelsTitle": "Component label",
    "LabelsDescription": "This set of components includes <code>ValidateForm</code> <code>EditorForm</code> and a variety of <b>Form components</b> inherited from <code>ValidateBase&lt;TValue&gt;</code>. Among these components There is a special set of display front label logic, now let’s sort it out in a unified way:",
    "LabelsDescriptionTips1": "The <a href='/validate-form' target='_blank'>ValidateForm</a> component is a <b>verifiable</b> form component. The form component in this component will automatically perform data compliance checks. If Data non-compliance will prevent the <b>Submit</b> action, which is the most frequently used component in data submission",
    "LabelsDescriptionTips2": "The <a href='/editor-form' target='_blank'>EditorForm</a> component is an ordinary form component. After this component is bound to the <code>Model</code>, the entire form can be automatically generated, which greatly reduces repetition Code, put the <code>ValidateForm</code> on the outside to open the <b>data compliance check</b> very convenient, concise and efficient",
    "LabelsDescriptionTips3": "Take the <a href='input' target='_blank'>BootstrapInput</a> input box component as an example to explain whether to display the <code>Label</code> logic",
    "LabelsTips": "The logic of <code>ShowLabel</code> is the principle of proximity. The closer the setting is to itself, the setting takes effect. For example, the form component is built into the <code>ValidateForm</code> component, even if <code>ValidateForm</code> is set to <code>>ShowLabel=true</code>, when the form component itself sets <code>ShowLabel=false</code>, the final result of the label is <b>not displayed</b>",
    "LabelsNormalTitle": "Use alone",
    "LabelsNormalIntro": "Suitable for data entry",
    "LabelsEditorFormTitle": "Used in EditorForm",
    "LabelsEditorFormIntro": "Not used in <code>ValidateForm</code>",
    "LabelsValidateForm1Title": "Use in EditorForm built-in ValidateForm",
    "LabelsValidateForm1Intro": "Used in external <code>ValidateForm</code>",
    "LabelsValidateForm2Title": "Used in ValidateForm",
    "LabelsValidateForm2Intro": "Show labels are automatically turned on by default",
    "LabelsNormalDescription": "When two-way binding is not used",
    "LabelsNormalTips1": "<code>Label</code> will not be displayed by default",
    "LabelsNormalTips2": "Control whether to display through the <code>ShowLabel</code> property",
    "LabelsNormalTips3": "Display content when setting <code>DisplayText</code>",
    "LabelsNormalTips4": "When not set, render a contentless <code>label</code> component as a placeholder",
    "LabelsNormalGroupBox1Title": "No two-way binding",
    "LabelsNormalGroupBox1Tips1": "No settings in the first text box, no label",
    "LabelsNormalGroupBox1Tips2": "The second text box setting <code>ShowLabel='true' DisplayText=``</code> displays a placeholder label without content",
    "LabelsNormalGroupBox1Tips3": "The third text box setting <code>ShowLabel='true' DisplayText='Name'</code> shows the set content label",
    "LabelsNormalGroupBox1Tips4": "The fourth text box setting <code>ShowLabel='true' DisplayText='@null'</code> displays a placeholder label without content",
    "LabelsNormalDescription2": "When using two-way binding",
    "LabelsNormalGroupBox2Title": "Two-way binding",
    "LabelsNormalGroupBox2Tips1": "The first text box is set to <code>@bind-Value='Dummy.Name'</code>, no label is displayed",
    "LabelsNormalGroupBox2Tips2": "The second text box setting <code>@bind-Value='Dummy.Name' ShowLabel='true' DisplayText='@Localizer[nameof(Foo.Address)]'</code> Display the contents of the setting",
    "LabelsNormalGroupBox2Tips3": "The third text box setting <code>@bind-Value='Dummy.Name' ShowLabel='true' DisplayText=``</code> Show no content placeholder label",
    "LabelsNormalGroupBox2Tips4": "The fourth text box setting <code>@bind-Value='Dummy.Name' ShowLabel='true' DisplayText='@null'</code> Display the label content under the resource file mechanism<code>Label</code> code>",
    "LabelsEditorFormDescription2": "<b>Show label</b><div>The <code>ShowLabel</code> property of the <coe>EditorForm</coe> component is not set. If it is not set, it is equivalent to set to <code>true</code>. All components <b>display</b> tags</div>",
    "LabelsEditorFormDescription1": "<b>Do not display labels</b><div>Set <code>ShowLabel=\"false\"</code>, all form components in the component <b>Do not display</b> tags</div>",
    "EditorFormLabelAlignRight": "<b>Alignment</b><div><code>LabelAlign=\"Alignment.Right\"</code> set the label alignment is right</div>",
    "EditorFormLabelAlignCenter": "<b>Alignment</b><div><code>LabelAlign=\"Alignment.Center\"</code> set the label alignment is center</div>",
    "LabelsValidateForm1Description1": "<b>Show label</b><div>The <code>ShowLabel</code> property of the <coe>EditorForm</coe> component is not set. If it is not set, it is equivalent to set to <code>true</code>. All components <b>display</b> tags</div>",
    "LabelsValidateForm1Description2": "<b>Do not display labels</b><div>Set <code>ShowLabel=\"false\"</code>, all form components in the component <b>Do not display</b> tags</div>",
    "LabelsValidateForm2Description1": "<b>Show label</b><div>The <code>ShowLabel</code> property of the <coe>EditorForm</coe> component is not set. If it is not set, it is equivalent to set to <code>true</code>. All components <b>display</b> tags</div>",
    "LabelsValidateForm2Description2": "<b>Do not display labels</b><div>Set <code>ShowLabel=\"false\"</code>, all form components in the component <b>Do not display</b> tags</div>",
    "LabelsValidateForm2Description3": "<b>Show labels</b><div>set class <code>form-inline</code> for the all labels within the component are prefixed</div>",
    "ValidateFormAlignRight": "<b>Right</b><div><code>form-inline-end</code> set the label alignment is right</div>",
    "ValidateFormAlignCenter": "<b>Center</b><div><code>form-inline-center</code> set the label alignment is center</div>",
    "LabelsRowLabelWidthTitle": "Style setting label width",
    "LabelsRowLabelWidthIntro": "Control label width by setting style variable <code>--bb-row-label-width</code>",
    "LabelsWidthTitle": "Parameter setting label width",
    "LabelsWidthIntro": "Control the label width by setting the variable <code>LabelWidth</code>",
    "LabelsWidthDescription": "The components <code>ValidateForm</code> <code>EditorForm</code> <code>BootstrapLabelSetting</code> <code>ValidateForm</code> can set the label width value. The components use the <b>proximity principle</b> to determine the final value",
    "LabelsWidthCode1": "As shown in the code above, the final value is <b>180</b> according to the principle of proximity"
  },
  "BootstrapBlazor.Server.Components.Pages.Install": {
    "InstallTitle": "Install",
    "InstallDesc": "Getting started with BootstrapBlazor for faster and easier .NET web development.",
    "Template": "Using Templates",
    "TemplateDesc": "To get started quickly, you can use our <a href=\"/template\">dotnet templates</a>. They're based on the Microsoft Web App template but have been modified to include BootstrapBlazor components.",
    "Manual": "Manual Install",
    "ManualDesc": "If you already have a project and want to add <code>BootstrapBlazor</code> to it, either from a default template or a working application.",
    "Step1": "1. Install Package",
    "Step1Desc": "Install the library through the <code>NuGet</code> Package Manager or with following command",
    "Step2": "2. Add Imports",
    "Step2Desc": "After the package is added, you need to add the following in your <code>_Imports.razor</code>",
    "Step3": "3. Add References",
    "Step3Desc": "Add the following to your HTML head section, it's either <code>index.html</code> or <code>_Layout.cshtml/_Host.cshtml/App.razor</code> depending on whether you're running WebAssembly or Server.",
    "Step4": "4. Add Scripts",
    "Step4Desc": "Next, add the <code>bootstrap.blazor.bundle.min.js</code> file next to the default Blazor script at the end",
    "Step5": "5. Remove References",
    "Step5Desc": "To delete the <code>bootstrap</code> style, please also delete the <code>bootstrap</code> and <code>open-iconic</code> folders in the <code>wwwroot</code> folder.",
    "Step6": "6. Register Services",
    "Step6Desc": "Add the following in <code>Program.cs</code>",
    "Step7": "7. Add <code>BootstrapBlazorRoot</code> Component",
    "Step7Desc": "Add the <code>BootstrapBlazorRoot</code> component to the Layout component",
    "MotronicDesc": "// Motronic theme optional suggestion to add",
    "BootstrapStyle": "// Component styles have been integrated with the latest version of Bootstrap",
    "FontAwesomeCss": "// FontAwesome font icon style Note that you need to reference the BootstrapBlazor.FontAwesome package",
    "OtherText": "Other"
  },
  "BootstrapBlazor.Server.Components.Components.Video": {
    "H1": "B station related video link",
    "L1": "[portal]",
    "L2": "No"
  },
  "BootstrapBlazor.Server.Components.Components.UpdateIntro": {
    "H1": "Component library updated to",
    "B1": "Bootstrap Blazor at present has nearly 200 components. This component is based on",
    "B2": "An enterprise-level component library that provides several types of common components such as layout, navigation, form, data, notification, icon, voice, etc. Each component has been carefully designed with modularity, responsiveness and excellent performance. Starting from more practical scenarios, meeting the needs of various scenarios, greatly reducing the time cost of developers, greatly shortening the development cycle, greatly improving development efficiency, and providing a set of",
    "B3": "General Rights Management System",
    "B4": "Example project",
    "B5": "Products are maintained by a professional full-time technical team, with efficient response speed, diversified solutions, long-term support, and enterprise-level support. At present, it has been used in many well-known state-owned enterprises, and the project is running stably with a maximum of <b>1200</b> people online. On the right is the QR code of the Chinese Blazor QQ community with the largest number of people in China, welcome to scan and join the group.",
    "P1": "component updated to",
    "P2": "Change log",
    "P3": "portal",
    "P4": "If the component brings you convenience, please help to light up the project"
  },
  "BootstrapBlazor.Server.Components.Pages.Localization": {
    "Title": "Localization",
    "P1": "Localization is the process of customizing an application for a given language and region.",
    "P2": "A component allows you to translate its UI elements into the desired language. This includes text for buttons, filter operator properties, etc. The component uses the current request by default",
    "P3": "Culture language, this article will show you how to use this feature in your app",
    "T1": "Please check before reading the following knowledge points",
    "T2": "Microsoft Official Documentation",
    "T3": "because",
    "T4": "The mode cannot obtain the system language and culture information, the default culture information is",
    "N1": "How localization works in components",
    "N2": "Components additionally support the use of",
    "N3": "Type key-value information as a resource file, which is parsed as",
    "N4": "String rendered in",
    "N5": "The package comes with the following resource files",
    "N6": "Chinese (zh)",
    "N7": "English (en)",
    "N8": "German (de)",
    "N9": "Portuguese (pu)",
    "N10": "The component has a built-in localization language fallback mechanism. For example, the request culture is",
    "N11": "When the corresponding culture resource file is not provided, the built-in logic tries to localize through the parent culture to",
    "N12": "For example, the fallback mechanism is as follows",
    "N13": "arrive",
    "N14": "If the set localization language does not provide the resource file after falling back and still cannot find the resource file, use",
    "N15": "The cultural information set by the parameter is localized, the default is",
    "N16": "pay attention",
    "N17": "Due to some systems such as",
    "N18": "After the program runs, the thread cannot obtain the cultural information, and the default cultural information can be set through the configuration file",
    "N19": "Enable localization",
    "N20": "configuration file",
    "N21": "pass",
    "N22": "Set the fallback culture information, that is, use this configuration culture when the currently requested culture information is not found, through",
    "N23": "Set supported cultures collection",
    "N24": "Enable .NET Core localization service",
    "N25": "Add Bootstrap Blazor components",
    "N26": "Add multi-language support configuration information",
    "N27": "Enable localization",
    "N28": "Add BootstrapBlazor component",
    "N29": "Add localization service configuration information",
    "N30": "Enable localization middleware and set supported culture info",
    "N31": "Implement UI localization information storage (for example, cookies)",
    "N32": "Add UI that allows users to change localization",
    "N33": "Please select language",
    "N34": "Using the api method is suitable for Server-Side mode",
    "N35": "additional",
    "N36": "resource",
    "N37": "The component library supports Microsoft's default",
    "N38": "Format resource, also supports embedded",
    "N39": "format resources, and specific physical",
    "N40": "document",
    "N41": "The resource file is a merge relationship, and the addressing rule priority is",
    "N42": "Microsoft resx embedded resource file",
    "N43": "External json physical file",
    "N44": "json embedded resource file",
    "N45": "Built-in json resource file",
    "N46": "Ignore cultural info loss logs",
    "N47": "Set up RESX format multilingual resource files such as Program.{CultureName}.resx",
    "N48": "Set Json format embedded resource file",
    "N49": "Set Json physical path file",
    "N50": "or use service extension method",
    "N51": "Ignore the loss of localized key-value culture information",
    "N52": "Attach your own json multilingual culture resource file such as zh-TW.json",
    "N53": "Set Json physical path file",
    "N54": "Enable .NET Core localization service",
    "N55": "Add BootstrapBlazor component",
    "N56": "increase localization",
    "N57": "Implement UI localization information storage (for example, localStorage)",
    "N58": "Consistent with Server-Side",
    "N59": "Change the default language setting",
    "N60": "Set default culture to zh-CN",
    "N61": "Configure whether to display missing localized resource information",
    "N62": "Add BootstrapBlazor service",
    "N63": "Ignore the loss of localized key-value culture information",
    "LocalizationFileDesc": "The component built-in localization resource files are <code>en</code> <code>zh</code>. The other localization resource files <code>de</code> <code>es</code> <code>pt</code> <code>zh-TW</code> which are placed in the project folder <code>localization</code>. you can be downloaded by yourself and imported into the project through the injection service",
    "AdditionalJsonFile": "Additional <code>json</code> localization file",
    "ES": "Spanish (es)",
    "TW": "中國台灣 (zh-TW)"
  },
  "BootstrapBlazor.Server.Components.Pages.Template": {
    "Title": "Project Template",
    "SubTitle": "Bootstrap Blazor App Template",
    "P1": "In order to make it easier for everyone to use this set of components to quickly build projects, the author has made <b>Project Templates</code></b>, using <code>dotnet new</code> command line mode, using Proceed as follows:",
    "P2": "1. Install the project template",
    "P3": "2. Create project",
    "P4": "After the project is created, the <code>BootstrapBlazorApp</code> solution will be generated in the current folder, and the <code>src</code> directory contains <code>Server-Side</code> <code>Wasm</code> Both types of projects can be run directly with <kbd>F5</kbd>",
    "P5": "3. Update project template",
    "P6": "The dotnet new update option checks if there are updates available for the template packages that are currently installed and installs them.",
    "P7": "4. Uninstall project template",
    "TemplateList": "List",
    "TemplateDesc": "After the template is installed, searching for <code>Bootstrap</code> when creating a new project will list the following template candidates:"
  },
  "BootstrapBlazor.Server.Components.Pages.Globalization": {
    "Title": "Globalization",
    "SubTitle": "ASP.NET Core Blazor Globalization",
    "P1": "Please check <a href='https://learn.microsoft.com/zh-cn/aspnet/core/blazor/globalization-localization?WT.mc_id=DT-MVP-5004174' target='_blank'> before reading the following knowledge points Official document</a>"
  },
  "BootstrapBlazor.Server.Components.Pages.Theme": {
    "H1": "Component theme",
    "H2": "Test",
    "P1": "The current website theme supports the following",
    "P2": "Motronic (integrated)",
    "P3": "LayUI (in progress)",
    "P4": "Bluma (in progress)",
    "P5": "Ant Design (in progress)",
    "P6": "Theme switch",
    "P7": "If switch to",
    "P8": "theme, please use the original",
    "P9": "The added style file is as follows",
    "P10": "add this line"
  },
  "BootstrapBlazor.Server.Components.Samples.Dividers": {
    "Title": "Dividing line",
    "Description": "The dividing line that separates the content.",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Split text paragraphs in different chapters.",
    "AlignmentTitle": "Set copy",
    "AlignmentIntro": "You can customize the content of the copy on the dividing line.",
    "IconTitle": "Settings icon",
    "IconIntro": "You can customize the content of the copy on the dividing line.",
    "VerticalTitle": "Vertical split",
    "VerticalIntro": "Display dividing line vertically",
    "ChildContentTitle": "Custom content",
    "ChildContentIntro": "Any content can be customized by setting the content of <code>ChildContent</code>",
    "Desc1": "Set the split line to display text",
    "Desc2": "Set the split line display icon",
    "Desc3": "Set the split line display text alignment",
    "Desc4": "Set whether the dividing line is vertical division",
    "Desc5": "ChildContent template",
    "NormalContent1": "Youth is a short dream, when you wake up, it has long since disappeared.",
    "NormalContent2": "A small amount of evil is enough to cancel out all the noble qualities, causing people to be infamous.",
    "AlignmentDivider1": "Young Bao Qingtian",
    "AlignmentDivider2": "League of Legends",
    "AlignmentDivider3": "Learning Quotations",
    "AlignmentContent1": "Just a Content Test 1",
    "AlignmentContent2": "Just a Content Test 2",
    "AlignmentContent3": "A cute icon",
    "AlignmentContent4": "Learning makes me happy",
    "IconContent1": "A sunny day above my head, I missed one in my heart",
    "IconContent2": "When the knight returns, the day the broken sword is reforged",
    "IconContent3": "A cute icon",
    "IconContent4": "Learning makes me happy",
    "IconBookmark": "Bookmarks",
    "VerticalContent1": "Rain",
    "VerticalContent2": "Old hometown",
    "VerticalContent3": "Deep vegetation",
    "VerticalDivider": "Dividing line",
    "ChildContent1": "A sunny day above my head, I missed one in my heart",
    "ChildContent2": "When the knight returns, the day the broken sword is reforged",
    "DividerChildContent": "I am a custom content <code>div</code> element"
  },
  "BootstrapBlazor.Server.Components.Samples.Scrolls": {
    "ScrollTitle": "Scroll",
    "ScrollDescription": "Add scroll bars to components whose height or width exceeds the standard",
    "ScrollTips": "The scroll bar can be rendered only when its element has a fixed height. Its <code>height</code> attribute can be set through the coat element",
    "ScrollToBottom": "Scroll to bottom",
    "ScrollNormalTitle": "Common usage",
    "ScrollNormalIntro": "Add a scroll bar to the component. By setting the height of <code>Height</code> to 200px, the scroll bar appears when the height of the inner child element is 500px",
    "Desc1": "Subassembly",
    "Desc2": "Component height",
    "ScrollNormalDescription": "Please scroll the scroll bar on the right",
    "ScrollNormalBottom": "bottom"
  },
  "BootstrapBlazor.Server.Components.Samples.LayoutPages": {
    "H1": "full page level components",
    "P1": "via built-in components",
    "P2": "For full page layout, you can use",
    "P3": "or install",
    "P4": "Project plugin selection",
    "P5": "Bootstrap Blazor Project Template",
    "P6": "It can be automatically generated. For detailed documents, please click",
    "P7": "portal",
    "P8": "pay attention",
    "P9": "component on",
    "P10": "multi-label",
    "P11": "mode, if there is",
    "P12": "Razor Components",
    "P13": "When in an extra assembly, set it correctly",
    "P14": "Attribute values ​​so that routes within the label component are resolved correctly, related documentation",
    "P15": "portal",
    "P16": "Layout adjustment",
    "P17": "show footer",
    "P18": "multi-label",
    "P19": "single page",
    "P20": "Fixed adjustment",
    "P21": "fixed label",
    "P22": "fixed header",
    "P23": "fixed footer",
    "P24": "Shrink adjustment",
    "P25": "Please click",
    "P26": "small <b>button</b>",
    "P27": "height adjustment",
    "P28": "view height",
    "P29": "Tab Test",
    "P30": "click",
    "P31": "test",
    "P32": "test",
    "P33": "button will add a new tab",
    "P34": "Navigate to a new tab page as code",
    "P35": "navigation"
  },
  "BootstrapBlazor.Server.Components.Samples.Layouts": {
    "LayoutsTitle": "Layout",
    "LayoutsDescription1": "The container component used for layout, which is convenient to quickly build the basic structure of the page:",
    "LayoutsDescription1_Container": "Outer container. When the child element contains <code>Header</code> or <code>Footer</code>, all child elements will be arranged vertically up and down, otherwise they will be arranged horizontally.",
    "LayoutsDescription1_Header": "Top bar container",
    "LayoutsDescription1_Side": "Sidebar container",
    "LayoutsDescription1_Main": "Main area container",
    "LayoutsDescription1_Footer": "Bottom bar container",
    "LayoutsDescription2": "Component overview",
    "LayoutsDescription2_Layout": "Layout container, <code>Header</code> <code>Sider</code> <code>Main</code> <code>Footer</code> or <code>Layout</code> itself can be nested under it , Can be placed in any parent container",
    "LayoutsDescription2_Header": "Top layout, with default style, any elements can be nested under it",
    "LayoutsDescription2_Side": "Sidebar, with default style and basic functions, any elements can be nested under it",
    "LayoutsDescription2_Main": "The content part, with its own default style, any element can be nested under it",
    "LayoutsDescription2_Footer": "Bottom layout, with default style, any element can be nested under it",
    "LayoutsTips1": "The above components adopt flex layout, please make sure the target browser is compatible before using. In addition, the child element of <code>Layout</code> can only be the latter four, and the parent element of the latter four can only be <code>Layout</code>",
    "LayoutsTips2": "Matters needing attention",
    "LayoutsTips3": "In order to make it easy for everyone to use this set of components to quickly build projects, the author has created <b>Project Templates</code></b>, using the <code>dotnet new</code> command line, and <code>Bootstrap Blazor App Extension extension plug-in</code> Create a new project through <code>Visual Studio</code>. For specific usage and steps, please click <a href='template' target='_blank'>Portal</a>",
    "LayoutsDemosTitle": "Common page layout",
    "LayoutsUpAndDownTitle": "Top, middle and bottom layout",
    "LayoutsUpAndDownIntro": "Commonly found in Internet website layout",
    "LayoutsMiddleLeftRightTitle": "Left and right structural layout in the middle",
    "LayoutsMiddleLeftRightIntro": "The middle part adopts the left and right structure, which is mostly used for back-end management website layout. When the <code>Side</code> component is added to the layout template, the upper middle and lower parts are used by default, and the middle part adopts the left and right structure layout.",
    "LayoutsLeftRightTitle": "Left and right structure",
    "LayoutsLeftRightIntro": "The right side adopts an upper, middle and lower structure, which is mostly used for back-end management of the website layout, and the layout is controlled to the left and right structure by setting the <code>IsFullSide</code> attribute value",
    "LayoutsCustomPercentTitle": "Customize sidebar width support percentage",
    "LayoutsCustomPercentIntro": "The width of the sidebar is controlled by setting the <code>SideWidth</code> property, which supports percentage writing. When setting <code>0</code>, the width setting function is turned off, and the internal sub-controls are used to fill the width feature",
    "LayoutsAppTitle": "Practical application",
    "LayoutsAppIntro": "In application",
    "LayoutsPageTitle": "Full page level components",
    "LayoutsPageIntro": "By setting the <code>IsPage</code> layout the full page",
    "LayoutsPageTips1": "By setting the <code>IsPage</code> property to set whether the <code>Layout</code> component controls the layout of the front page level, after setting it to <code>true</code>, the component adopts the full-screen layout",
    "LayoutsPageHrefTitle": "Whole page component generator",
    "Layouts_Header_Description": "Header component template",
    "Layouts_Side_Description": "Sidebar component template",
    "Layouts_SideWidth_Description": "Sidebar width, support percentage, turn off the width function when set to 0",
    "Layouts_Main_Description": "Content component template",
    "Layouts_Footer_Description": "Footer component template",
    "Layouts_Menus_Description": "Sidebar menu data collection when the whole page is laid out",
    "Layouts_IsFullSide_Description": "Whether the sidebar occupies the entire left",
    "Layouts_IsPage_Description": "Whether it is the whole page layout",
    "Layouts_IsFixedFooter_Description": "Whether to fix the Footer component",
    "Layouts_IsFixedHeader_Description": "Whether to fix the Header component",
    "Layouts_ShowCollapseBar_Description": "Whether to show contraction and expansion Bar",
    "Layouts_ShowSplitBar_Description": "Whether to display the left and right split bar",
    "Layouts_SidebarMinWidth_Description": "Minimum sidebar width",
    "Layouts_SidebarMaxWidth_Description": "Maximum sidebar width",
    "Layouts_ShowFooter_Description": "Whether to show Footer template",
    "Layouts_ShowGotoTop_Description": "Whether to display the back to top button",
    "Layouts_UseTabSet_Description": "Whether to open multi-label mode",
    "Layouts_IsFixedTabHeader_Description": "Whether to fix the Header of Tabset",
    "Layouts_AdditionalAssemblies_Description": "Collection of additional programs, passed to the Tab component for use",
    "Layouts_OnCollapsed_Description": "Contract expand callback delegate",
    "Layouts_OnClickMenu_Description": "Call back the delegate when the menu item is clicked",
    "Layouts_TabDefaultUrl_Description": "Set the default url of Tab",
    "Layouts_IsAccordion_Description": "Whether to set the accordion menu",
    "LayoutsAppTips1": "In actual use, the sidebar generally has two uses",
    "LayoutsAppTips2": "The sidebar fills the entire screen, and scroll bars appear when the overall height of the menu exceeds the screen",
    "LayoutsAppTips3": "The sidebar is not processed and the height is automatically opened by the content",
    "LayoutsAppTips4": "Because there are many ways to use it, this component is not packaged, and it is up to you to decide how to carry out the layout. The following is a practical example in actual use",
    "LayoutsAppTips5": "In order to facilitate your study and comparison, try to use the <code>style</code> inline style in the following practical examples",
    "LayoutsAppTips6": "In this example, a scroll bar appears after clicking the menu on the left to expand",
    "LayoutsAppTips7": "The available area in the right panel is all by default, which is suitable for layouts with <code>Tab</code> components. In this example, for the sake of beauty, the <code>Main</code> template has a built-in <code>div</code > And set the style to <code>style='padding: 1rem;'</code>",
    "LayoutsAppTips8": "In this example, if the scroll bar does not appear after clicking the left menu to expand, the height of the parent container will be expanded",
    "LayoutsAppTips9": "Please refer to <a href='/tab'>Tab component</a> for practical examples of using <code>Layout</code> component and <code>Tab</code> component together",
    "ShowTabContextMenu": "whether enable tab context menu",
    "BeforeTabContextMenuTemplate": "the template of before tab context menu",
    "TabContextMenuTemplate": "the template of tab context menu",
    "TabContextMenuRefreshIcon": "the icon of tab item context menu refresh button",
    "TabContextMenuCloseIcon": "the icon of tab item context menu close button",
    "TabContextMenuCloseOtherIcon": "the icon of tab item context menu close other button",
    "TabContextMenuCloseAllIcon": "the icon of tab item context menu close all button",
    "OnBeforeShowContextMenu": "before popup context menu callback"
  },
  "BootstrapBlazor.Server.Components.Samples.Footers": {
    "FootersTitle": "Footer",
    "FootersDescription": "Displayed at the bottom of the page, with a back to top button",
    "FootersTips": "When using <code>Footer</code> components, pay attention to the setting of the style sheet <code>position</code> attribute",
    "FooterNormalTitle": "Basic usage",
    "FooterNormalIntro": "Pass the ID of the scroll bar component to the footer component",
    "FootersContent1": "The Footer component is displayed at the bottom, and the page will automatically scroll back to the top when you click to return to the top",
    "FootersContent2": "This example passes the component client ID",
    "Desc1": "The text displayed by the footer component",
    "Desc2": "The ID of the scroll bar component controlled by the footer component",
    "ShowGotoDesc": "Whether to show the goto navigation on the right of footer",
    "ChildContentDesc": "The template of child content",
    "FooterShowGotoTitle": "Show Goto",
    "FooterShowGotoIntro": "Set <code>ShowGoto</code> to <code>false</code> for hide the <code>Goto</code> navigator on the right of footer",
    "FooterChildContentTitle": "ChildContent",
    "FooterChildContentIntro": "Set <code>ChildContent</code> for custom the child content"
  },
  "BootstrapBlazor.Server.Components.Samples.Repeaters": {
    "RepeaterTitle": "Repeater",
    "RepeaterDescription": "Iterates on a collection and use a template to generate the page",
    "RepeaterNormalTitle": "Normal",
    "RepeaterNormalIntro": "custom the template by <code>ItemTemplate</code>",
    "RepeaterLoadingTitle": "Async Data",
    "RepeaterLoadingIntro": "If <code>Items</code> is not provided, you can set <code>ShowLoading</code> to control whether loading prompt information is displayed. You can customize loading information by using <code>LoadingTemplate</code>",
    "RepeaterEmptyTitle": "No Data",
    "RepeaterEmptyIntro": "If <code>Items</code> is empty, use <code>ShowEmpty</code> controls whether no data message is displayed. You can customize the empty data template by <code>EmptyTemplate</code>. <code>EmptyText</code> allows you to customize empty data text information",
    "RepeaterContainerTitle": "Container Template",
    "RepeaterContainerIntro": "By setting <code>ContainerTemplate</code> to the container template, the repetitive part of the template is still rendered via <code>ItemTemplate</code>, In this case, the component is rendered as <code>Table</code> using <code>ContainerTemplate</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Rows": {
    "RowsTitle": "Row",
    "RowsDescription": "The number of components displayed in a row can be easily set",
    "RowCommonTitle": "Place common controls",
    "RowCommonIntro": "Put your own components inside <code>Row</code>",
    "RowCommonDescription": "3 rows are displayed, using <code>Row</code>",
    "RowFormInlineTitle": "Place form controls (inline)",
    "RowFormInlineIntro": "When placing form controls, you can specify <code>RowType</code> as <code>Inline</code>, and <b>Label</b> will be displayed on the left, and the control will fill the remaining space",
    "RowFormTitle": "Place form controls",
    "RowFormIntro": "When placing form controls, you can specify <code>Normal</code> as <code>FormRow</code>, and <b>Label</b> will be displayed on the top, and the control will be full",
    "RowFormInlineDescription": "In this example, the <code>Row</code> component is built into the <code>ValidateForm</code> component, and the front <code>Label</code> tag is automatically added",
    "RowNestedTitle": "Nested use",
    "RowNestedIntro": "The <code>Row</code> component supports nested use. For example, the outermost <code>Row</code> below sets a row to display two controls, the first is <code>TextBox</code>, the second One is still <code>Row</code>, and the second <code>Row</code> continues to be set to display two controls",
    "RowSpanTitle": "Cross-column",
    "RowSpanIntro": "The <code>Row</code> component can set the number of spanning columns by specifying the <code>ColSpan</code> value. Combining these functions can achieve complex layouts",
    "RowSpanTips1": "4 in a row",
    "RowSpanTips2": "2 in a row",
    "RowSpanTips3": "The row shows 4 <code>Address</code> in 2 columns",
    "RowSpanTips4": "Row shows 4, the second component <code>ColSpan</code> is set to 3",
    "RowSpanTips5": "Row shows 2, the first component <code>ColSpan</code> is set to 3",
    "RowSpanTips6": "A component in a row",
    "RowsItemsPerRow": "Set a row to display several controls",
    "RowsRowType": "Set the layout format, if the child Row is not specified, the parent Row’s settings will be used",
    "RowsColSpan": "Set the number of columns of child Row across parent Row",
    "RowsMaxCount": "Set the maximum number of controls displayed in a row",
    "Normal": "Normal",
    "Inline": "Inline"
  },
  "BootstrapBlazor.Server.Components.Samples.Skeletons": {
    "SkeletonsTitle": "Skeleton",
    "SkeletonsDescription": "Provide a placeholder graphic combination where you need to wait for content to load",
    "SkeletonsTipsTitle": "When to use",
    "SkeletonsTips1": "When the network is slow and it takes a long time to wait for the loading process",
    "SkeletonsTips2": "Lists/cards with more graphic information content",
    "SkeletonsTips3": "Only used when loading data for the first time",
    "SkeletonsTips4": "Can be completely replaced by Spin, but can provide better visual effects and user experience than Spin in available scenarios",
    "SkeletonsImgTitle": "Picture frame",
    "SkeletonsImgIntro": "Suitable for display when loading avatars, pictures, etc.",
    "SkeletonsImgDescription": "It can be set to a circle display by setting the <code>Circle</code> property",
    "SkeletonsParagraphTitle": "Paragraph skeleton",
    "SkeletonsParagraphIntro": "Applicable to display when loading large paragraphs of text and other types",
    "SkeletonsParagraphDescription": "The default paragraph skeleton screen only displays three lines. If you need multiple lines to occupy space, please place multiple <code>SkeletonParagraph</code>.",
    "SkeletonsFormTitle": "Form skeleton",
    "SkeletonsFormIntro": "Suitable for display when the edit form is loaded",
    "SkeletonsTableTitle": "Table skeleton",
    "SkeletonsTableIntro": "Applicable to display when the edit table is loaded",
    "SkeletonsTreeTitle": "Tree skeleton",
    "SkeletonsTreeIntro": "Display when tree component is loaded"
  },
  "BootstrapBlazor.Server.Components.Pages.Breakpoints": {
    "Heading": "Breakpoints",
    "Heading1": "Breakpoints are customizable widths that determine how responsive layouts behave in Bootstrap across devices or viewport sizes",
    "Paragraph1": "Available breakpoints",
    "Paragraph2": "Bootstrap includes six default breakpoints, sometimes called grid layers, for responsive builds",
    "TableHeading1": "Breakpoint name",
    "TableHeading2": "Class suffix",
    "TableHeading3": "Threshold",
    "Name1": "tiny",
    "Name2": "small",
    "Name3": "medium",
    "Name4": "large",
    "Name5": "oversized",
    "Name6": "extra large",
    "Amount": "pixel",
    "Footer1": "The components have been adapted to extra large screens by default, and many defaults are",
    "Footer2": "like",
    "Footer3": "The default popup size"
  },
  "BootstrapBlazor.Server.Components.Pages.Layout": {
    "Heading": "Component Hierarchy",
    "Para1": "Since there are many pop-up window components, in some scenarios, multiple pop-up windows will be used to combine them. This chapter describes how to manage components in layers. Below is",
    "Para2": "provided built-in",
    "Para3": "value",
    "Para4": "This set of components additionally",
    "Para5": "The components are layered as follows",
    "Para6": "test session",
    "Button": "test"
  },
  "BootstrapBlazor.Server.Components.Samples.GlobalException": {
    "Title": "Global exception",
    "Introduce": "Added component <code>ErrorLogger</code> Through this component, global logs and exceptions can be output uniformly; currently, the <code>Blazor</code> framework does not provide a <code>MVC</code> like <b>Global exception</b> The overall solution",
    "H1": "Instructions",
    "Step1": "1. Add <code>AddLogging</code> to the <code>Startup</code> file to enable the <code>net core</code> system log function",
    "Step1Introduce": "Use <code>AddFileLogger</code> need to reference <b>Longbow.Logging</b> component package",
    "Step2": "2. Use <code>BootstrapBlazorRoot</code> to wrap the content",
    "Step3": "3. Use cascading parameters in the code to get examples",
    "Step4": "4. Console or <b>IIS</b> output visible log information",
    "Step5": "5. Controls whether error details are displayed",
    "Step5Intro": "Through the configuration file <code>appsettings.json</code>, which is <code>appsettings.Development.json</code> in the development environment, if not set, it defaults to <code>false</code> and is not displayed. The default behavior is only a pop-up prompt to prevent the exposure of sensitive information",
    "Block1Title": "Test",
    "Block1Intro": "This function is to obtain the component instance through the cascade parameter and use its function",
    "ExceptionTestIntroduce": "In this example code, an error code that divides by zero is written. Because <code>try/catch</code> is used to capture the exception, the error message is displayed in the console below",
    "ButtonText": "test",
    "Block2Title": "OnErrorHandleAsync",
    "Block2Intro": "Set custom exception handling logic by setting <code>OnErrorHandleAsync</code> callback method",
    "DialogTitle": "In Dialog",
    "DialogIntro": "Click the button to pop up a pop-up window. The button in the pop-up window triggers an exception and the error is displayed in the pop-up window",
    "DialogText": "Popup",
    "PageErrorTitle": "Page",
    "PageErrorIntro": "Click the button to navigate to the page where the error occurred during the page life cycle. The error is displayed on the current page and does not affect the menu and the overall page layout."
  },
  "BootstrapBlazor.Server.Components.Pages.GlobalOption": {
    "Title": "Global exception",
    "SubTitle": "Added component <code>ErrorLogger</code> Through this component, global logs and exceptions can be output uniformly; currently, the <code>Blazor</code> framework does not provide a <code>MVC</code> like <b>Global exception</b> The overall solution"
  },
  "BootstrapBlazor.Server.Components.Samples.Splits": {
    "SplitsTitle": "Split",
    "SplitsNormalTitle": "Basic usage",
    "SplitsNormalIntro": "Left and Right",
    "SplitsPanel1": "I am the left panel",
    "SplitsPanel2": "I am the right panel",
    "SplitsPercentTitle": "Set initialization percentage",
    "SplitsPercentIntro": "Set the proportion of the initial position by setting the <code>Basis</code> attribute",
    "SplitsVerticalTitle": "Vertical split",
    "SplitsVerticalIntro": "Control the vertical split panel by setting the <code>IsVertical</code> property",
    "SplitsPanel3": "I am the upper panel",
    "SplitsPanel4": "I am the bottom panel",
    "SplitsNestedTitle": "Nested use",
    "SplitsNestedIntro": "Combine layout by nesting <code>Split</code> components",
    "SplitsMinimumTitle": "Minimum",
    "SplitsMinimumIntro": "By setting <code>FirstPaneMinimumSize</code> <code>SecondPaneMinimumSize</code> values. In this example, the minimum values ​​of the left and right panels are set to <code>10%</code>",
    "SplitsPanel5": "Upper",
    "SplitsPanel6": "Lower",
    "SplitsPanel7": "Right",
    "SplitsCollapsibleTitle": "Collapse/Expand",
    "SplitsCollapsibleIntro": "Set whether the panels can be collapsed by configuring the <code>FirstPaneCollapsible</code> and <code>SecondPaneCollapsible</code> properties",
    "SplitsPanel8": "Upper",
    "SplitsPanel9": "Lower",
    "SplitsPanel10": "Right",
    "SplitsIsVertical": "Vertical",
    "SplitsBasis": "Percentage of first pane position",
    "SplitsFirstPaneTemplate": "First pane template",
    "SplitsSecondPaneTemplate": "Second pane template",
    "SplitsIsCollapsible": "Whether to expand or collapse the split view",
    "SplitsIsKeepOriginalSize": "Whether to keep the original size when restoring after collapsed",
    "SplitsShowBarHandle": "Whether to display the drag bar",
    "SplitsBarHandleShow": "Bar handle shown",
    "SplitsBarHandleHide": "Bar handle hidden",
    "SplitsOnResizedAsync": "Callback method when the panel size changes",
    "SplitsCollapsibleTrue": "Collapse button shown",
    "SplitsCollapsibleFalse": "Collapse button hidden",
    "SplitsFirstPaneMinimumSize": "The minimum size of the first pane supports any unit such as 10px 20% 5em 1rem. If no unit is provided, it defaults to px.",
    "SplitsSecondPaneMinimumSize": "The minimum size of the second pane supports any unit such as 10px 20% 5em 1rem. If no unit is provided, it defaults to px.",
    "SplitSetLeftTitle": "Code to set panel width",
    "SplitSetLeftIntro": "Use the component instance method <code>SetLeftWidth</code> to set the width of the left/top panel, and the width of the right/bottom panel will be adaptive"
  },
  "BootstrapBlazor.Server.Components.Samples.Dropdowns": {
    "Title": "Dropdown",
    "Description": "Collapse actions or menus into drop-down menus",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Use <code>TagName='a'</code> to open a drop-down list with a button tag",
    "NullTitle": "Dropdown empty drop-down menu",
    "NullIntro": "Allow empty <code>Items</code> drop-down menus",
    "ColorTitle": "Drop-down box with color",
    "ColorIntro": "Provide warning message boxes in various colors. Quote <code>Color='Color.Primary'</code> and other color and style classes to define the appearance of the drop-down menu",
    "SplitTitle": "Split button drop-down menu",
    "SplitIntro": "You can create a split drop-down menu with tags similar to a single button drop-down menu, and add ShowSplit='true' when you use a split component. Insert this symbol as a drop-down The options are handled at appropriate intervals (distance).",
    "SizeTitle": "Size definition",
    "SizeIntro": "The drop-down menu has a variety of size specifications to choose from <code>Size</code> attributes, including preset and split button drop-down menus.",
    "IsAsyncTitle": "Asynchronous request button",
    "IsAsyncIntro": "By setting whether the <code>isAsync</code> property button is <b>asynchronous request button by setting whether the is</b> <code>false</code> by default",
    "DirectionTitle": "Expanding direction",
    "DirectionIntro": "Add the style of <code>Direction='Direction.Dropup'</code> to make the drop-down menu expand upward.",
    "AlignmentTitle": "Menu alignment",
    "AlignmentIntro": "By default, the right side of the drop-down menu is aligned by setting <code>MenuAlignment=Alignment.Right</code>",
    "ItemsTitle": "Bind data source",
    "ItemsIntro": "When you click the button on the right, the menu items in the drop-down box will increase",
    "RadioTitle": "Bind data source",
    "RadioIntro": "When you change the options, the menu items in the drop-down box will increase",
    "CascadeTitle": "Cascade binding",
    "CascadeIntro": "By selecting different options in the first drop-down box, the second drop-down box is filled with content dynamically.",
    "IsFixedButtonTextTitle": "Fixed button text",
    "IsFixedButtonTextIntro": "Set <code>IsFixedButtonText</code> to <b>true</b> make the ButtonText to const",
    "FixedButtonTextTitle": "Set the fixed button text",
    "FixedButtonTextIntro": "Set the <code>FixedButtonText</code> value for fixed button text",
    "ButtonTemplateTitle": "Button Template",
    "ButtonTemplateIntro": "You can customize the displayed content by setting <code>ButtonTemlate</code>",
    "AttributeValue": "Currently selected value",
    "AttributeClass": "Style",
    "AttributeColor": "Color",
    "AttributeDirection": "Drop-down box pop-up direction",
    "AttributeItems": "Drop-down box value",
    "AttributeMenuAlignment": "Menu alignment",
    "AttributeMenuItem": "Menu item rendering label",
    "AttributeResponsive": "Menu alignment",
    "AttributeShowSplit": "Split button drop-down menu",
    "AttributeIsAsync": "whether it is an asynchronous button",
    "AttributeSize": "Size",
    "AttributeTagName": "Label",
    "AttributeButtonTemplate": "The template of button",
    "AttributeItemTemplate": "The template of item",
    "AttributeItemsTemplate": "The template of items",
    "EventDesc1": "This event is triggered when the button is clicked",
    "EventDesc2": "This event is triggered when the button is clicked and the current component is not refreshed for performance improvement",
    "EventOnSelectedItemChanged": "Triggered when the value of the drop-down box changes",
    "FixedButtonText": "The text of fixed button",
    "Item1": "Melbourne",
    "Item2": "Sydney",
    "Item3": "Queensland",
    "AddItem": "Add",
    "RemoveItem": "Remove",
    "City": "City",
    "DropdownCascadeItem1": "Select ...",
    "DropdownCascadeItem2": "Melbourne",
    "DropdownCascadeItem3": "Sydney",
    "DropdownCascadeItem4": "Hangzhou",
    "DropdownCascadeItem5": "Chaoyang",
    "DropdownCascadeItem6": "Haidian",
    "DropdownCascadeItem7": "Jingan",
    "DropdownCascadeItem8": "Huangpu",
    "DropdownItemTemplateTitle": "Item Template",
    "DropdownItemTemplateIntro": "By setting <code>ItemTemplate</code>, you can customize the content displayed in the drop-down item. In this example, the <code>Tooltip</code> component is used to add a tooltip function when the mouse is hovered.",
    "DropdownItemsTemplateTitle": "Items Template",
    "DropdownItemsTemplateIntro": "You can customize all the content of the dropdown list by setting `<itemsTemplate>`. In this example, we use the `<DropdownItem>` component and `<DropdownDivider>` component to customize the dropdown list component."
  },
  "BootstrapBlazor.Server.Components.Samples.GoTops": {
    "Title": "GoTop",
    "Description": "Click to return to the top of the specified container",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Click to return to the top usage",
    "Desc1": "The scroll bar component ID controlled by the footer component",
    "Description1": "The Footer component appears at the bottom, and the page automatically scrolls back to the top when you click Back to the Top",
    "Description2": "This example passes the component client ID"
  },
  "BootstrapBlazor.Server.Components.Samples.Menus": {
    "MenusTitle": "Menu",
    "MenusDescription": "A list of menus that provide navigation for pages and features.",
    "MenusTips1": "<code>Menu</code> component is generally used for menu navigation, i.e. redirect navigation by clicking on the address bar after the menu, but sometimes you don't need navigation in real life, by setting <code>OnClick</code> callback delegate, custom processing logic, at this point by setting Property <code>The</code> of TheableNavigation, in this case all <code>Menu</code> are set to <code>true</code> disable navigation because they are analog menu clicks and do not actually navigate the address bar",
    "MenusTopBarTitle": "Top bar",
    "MenusTopBarIntro": "A wide range of basic usages are applicable.",
    "MenusBottomBarTitle": "Bottom bar",
    "MenusBottomBarIntro": "Set the parameter <code>IsBottom</code> value is <b>true</b> menu bar at the bottom of the container, for the mover",
    "MenusBottomBarTips": "Because the <b>bottom bar menu</b> is relatively positioned relative to the parent container, you need to set the parent node style <code>position-</code>, or customize the style <code>theposition-fixed</code>",
    "MenusIconTopTitle": "Top bar menu with icon",
    "MenusIconTopIntro": "For simple website apps, set the menu icon by setting the menu item the <code>Icon</code> property of the <code>MenuItem</code>",
    "MenusLeftRightLayoutTitle": "Sidebar",
    "MenusLeftRightLayoutIntro": "For sites with left and right structure layouts, change the navigation menu to sidebar by setting <code>IsVertical</code>",
    "MenusIconLeftTitle": "Sidebar menu with icon",
    "MenusIconLeftIntro": "Set the menu icon by setting the menu item the <code>Icon</code> property of the <code>MenuItem</code>",
    "MenusAccordionTitle": "Sidebar for accordion effects",
    "MenusAccordionIntro": "Set the accordion effect sidebar menu by setting the <code>IsAccordion</code> property",
    "MenusClickShrinkTitle": "Sidebar effect with shrink",
    "MenusClickShrinkIntro": "Set the sidebar menu to the put-away state by setting the <code>IsCollapsed</code> property",
    "MenusClickShrinkAlertText": "Note that the <code>IsCollapsed</code> property is available only if the <code>IsVertical</code> is true, i.e. only sidebar menus",
    "MenusClickShrinkDescription": "In this example, the layout component <code>Layout</code> is used to build a web page",
    "Block7aTitle": "Click expand to shrink the left menu",
    "MenusClickShrinkSpanSpan": "I am the title of the website",
    "MenusClickShrinkMenuTitle": "Admin",
    "MenusWidgetTitle": "Menu with pendant",
    "MenusWidgetIntro": "Set the custom component into the menu by setting the <code>Component</code> property of the MenuItem</code> <code>",
    "MenusCustomNodeTitle": "Custom node shrinkage",
    "MenusCustomNodeIntro": "Set whether the node is receding by setting the <code>IsCollapsed</code> property of the <code>MenuItem</code>",
    "MenusCustomNodeDescription": "In this example, the <b>permission settings</b>node is expanded and the remaining nodes are in the recess state",
    "MenusDynamicTitle": "Dynamically change the menu",
    "MenusDynamicIntro": "Change the menu item by dynamically setting <code>Theitems</code> property values",
    "MenusDynamicButton1Text": "Update the menu",
    "MenusDynamicButton2Text": "Reset the menu",
    "MenusPartDisableTitle": "Some menus disable functionality",
    "MenusPartDisableIntro": "Set whether the node is disabled by setting the <code>IsDisabled</code> property of the<code>MenuItem</code>",
    "MenusPartDisableDescription1": "In this example <b>navigation two</b> node is disabled and the menu and its submenu are not clickable",
    "MenusPartDisableDescription2": "Example of a disablement of the sidebar",
    "MenusAttr_Items": "A collection of menu component data",
    "MenusAttr_IsVertical": "Whether it is a sidebar",
    "MenusAttr_IsBottom": "Whether it is the bottom bar",
    "MenusAttr_IsAccordion": "Whether the accordion effect",
    "MenusAttr_IsScrollIntoView": "Whether the auto scroll into view effect",
    "MenusAttr_DisableNavigation": "Whether to disable address bar navigation",
    "MenusAttr_OnClick": "This method is called back when a menu item is clicked",
    "System": "System",
    "Website": "Website",
    "Task": "Task",
    "Authorize": "Authorize",
    "User": "User",
    "Menu": "Menu",
    "Role": "Role",
    "Log": "Log",
    "Access": "Access",
    "Login": "Login",
    "Operation": "Operation",
    "Menu1": "Menu 1",
    "Menu2": "Menu 2",
    "Menu3": "Menu 3",
    "SubMenu1": "Sub Menu 1",
    "SubMenu2": "Sub Menu 2",
    "SubMenu3": "Sub Menu 3",
    "SubMenu11": "Sub Menu 11",
    "SubMenu12": "Sub Menu 12",
    "SubMenu21": "Sub Menu 21",
    "SubMenu22": "Sub Menu 22",
    "SubMenu31": "Sub Menu 31",
    "SubMenu32": "Sub Menu 32",
    "SubMenu41": "Sub Menu 41",
    "SubMenu42": "Sub Menu 42"
  },
  "BootstrapBlazor.Server.Components.Samples.Navigation": {
    "NavsTitle": "Nav",
    "NavsDescription": "A menu that provides navigation for your site.",
    "NavsNormalTitle": "Basic navigation style.",
    "NavsNormalIntro": "In this example, by setting the <code>Items</code> property, the navigation component is assigned through the program api and the <code>NavLink</code> component is written directly to the <code>ChildContext</code> of the navigation component",
    "NavsAlignTitle": "Align",
    "NavsAlignIntro": "Control component alignment by setting the property of <code>Signment</code>",
    "NavsDivider": "Split the line",
    "NavsVerticalTitle": "Vertical",
    "NavsVerticalIntro": "In this example, you control whether the navigation is vertically distributed by setting the <code>IsVertical</code> property",
    "NavsPillsTitle": "Capsule",
    "NavsPillsIntro": "Control the background color of the navigation menu by setting the <code>IsPills</code> property",
    "NavsFillAndAlignTitle": "Fill and align",
    "NavsFillAndAlignIntro": "By setting the <code>IsFill</code> properties controls that the navigation menu is evenly distributed to fill the entire navigation bar",
    "NavsWideTitle": "Equal width",
    "NavsWideIntro": "By setting the <code>IsIze</code> property so that each navigation item will have the same width.",
    "NavsChildContent": "Content",
    "NavsAlignment": "Component alignment",
    "NavsIsVertical": "Vertical distribution",
    "NavsIsPills": "Capsule",
    "NavsIsFill": "Padding",
    "NavsIsJustified": "Equal width"
  },
  "BootstrapBlazor.Server.Components.Samples.Paginations": {
    "PaginationsTitle": "Pagination",
    "PaginationsDescription": "When there is too much data, use paging to break down the data.",
    "PaginationsNormalTitle": "Basic usage",
    "PaginationsNormalIntro": "You can select the amount of data displayed per page by the drop-down box",
    "PaginationsDisplayTextTitle": "Only text prompts are displayed",
    "PaginationsDisplayTextIntro": "Only one page does not display the switch page number component, only text prompts",
    "PaginationsMaxPageLinkCountTitle": "Only paginated components are displayed",
    "PaginationsMaxPageLinkCountIntro": "By <code>ShowPaginationInfo = 'false'</code> setting does not display text prompts",
    "PaginationsAlignmentTitle": "Alignment",
    "PaginationsAlignmentIntro": "Set <code>Alignment</code> contorl the pagination alginment",
    "PaginationsGotoTitle": "Goto navigator",
    "PaginationsGotoIntro": "Set <code>ShowGotoNavigator</code> show/hide the Goto，can <code>GotoTemplate</code> custom the Goto navigator",
    "PaginationsPageInfoTextTitle": "Pager info",
    "PaginationsPageInfoTextIntro": "Set <code>ShowInfo</code> show/hide the pager info",
    "PaginationsInfoTotal": "Total 20 pages",
    "PaginationsInfoTemplateTitle": "Pager info template",
    "PaginationsInfoTemplateIntro": "Set <code>PageInfoTemplate</code> curstom the template of page info",
    "PaginationsPageIndexAttr": "Current page index",
    "PaginationsPageCountAttr": "Total page count",
    "PaginationsMaxPageLinkCountAttr": "Page up/down count",
    "PaginationsOnPageLinkClickAttr": "The callback click the page item",
    "PaginationsAlignmentAttr": "Alignment",
    "PaginationsShowPageInfoAttr": "Whether show the page info",
    "PaginationsPageInfoTextAttr": "The page info",
    "PaginationsPageInfoTemplateAttr": "The template of page info",
    "PaginationsShowGotoNavigatorAttr": "Whether show the goto navigator",
    "PaginationsGotoNavigatorLabelTextAttr": "The goto label text",
    "PaginationsGotoTemplateAttr": "The goto template",
    "PaginationsPrevPageIconAttr": "Previous page icon",
    "PaginationsPrevEllipsisPageIconAttr": "The page up icon",
    "PaginationsNextPageIconAttr": "Next page icon",
    "PaginationsNextEllipsisPageIconAttr": "The page down icon"
  },
  "BootstrapBlazor.Server.Components.Samples.Steps": {
    "StepsTitle": "Step",
    "StepsDescription": "A navigation bar that guides the user through the process",
    "StepsTipsTitle": "Step-by-step navigation bar that guides the user through the process, setting steps of no less than 2 steps based on the actual scenario",
    "StepsTips": "<code>Steps</code> component supports UI rendering by setting the <code>Items</code> property or by embedding the <code>Step</code> component directly",
    "StepsNormalTitle": "Basic usage",
    "StepsNormalIntro": "Simple step bar, by directly binding the data source <code>Items</code>",
    "StepsNormalPrevButtonText": "Prev",
    "StepsNormalNextButtonText": "Next",
    "StepsNormalResetButtonText": "Reset",
    "StepsNormalFinishedTemplateDesc": "By setting <code>FinishedTemplate</code>, the subsequent processing logic after all steps are completed can be achieved, such as displaying completed steps. If a certain delay is needed to jump to a new page, a custom component needs to be customized and processed in its <code>OnAfterRenderAsync</code> lifecycle",
    "StepsStepTitle": "Basic usage",
    "StepsStepIntro": "A simple step bar that uses the <code>Step</code> component setup step directly inside the component",
    "Step1Text": "First",
    "Step2Text": "Second",
    "Step3Text": "End",
    "Step1Title": "Step 1",
    "Step2Title": "Step 2",
    "Step3Title": "Step 3",
    "StepDesc": "This is a description",
    "StepsDescTitle": "There is a description of the step bar",
    "StepsDescIntro": "Each step described has its own description bar of step status",
    "StepsTitleTemplateTitle": "Custom the title",
    "StepsTitleTemplateIntro": "custom the title by set <code>TitleTemplate</code>",
    "StepsHeaderTemplateTitle": "Custom the header",
    "StepsHeaderTemplateIntro": "custom the title by set <code>HeaderTemplate</code>",
    "StepsVerticalTitle": "Vertical step",
    "StepsVerticalIntro": "vertical the step by set <code>IsVertical=\"true\"</code>",
    "AttributeTitle": "StepItem Atributes",
    "StepsItems": "Set up a collection of step data",
    "StepsIsVertical": "The direction of the display",
    "StepsAttrStepIndex": "Step order number",
    "StepsAttrText": "The step text",
    "StepsAttrTitle": "The step display title",
    "StepsAttrIcon": "The step display icon",
    "StepsAttrFinishedIcon": "The finished step display icon",
    "StepsAttrDescription": "Describe the information",
    "StepsAttrHeaderTemplate": "The template for Header",
    "StepsAttrTitleTemplate": "The template for Title",
    "StepsAttrChildContent": "The template for child"
  },
  "BootstrapBlazor.Server.Components.Samples.Tabs": {
    "TabsTitle": "Tabs",
    "TabsSubTitle": "A collection of data that is associated with the separation content but belongs to a different category.",
    "TabsDescription": "Tab components are designed in the form of templates, and this component is used by adding <code>TabItem</code> subcomponents to the <code>tabItems</code> in the template",
    "TabsTipsTitle": "<code>Tab</code> components are generally used in two ways:",
    "TabsTips1": "Split as data",
    "TabsTips2": "Page navigation",
    "TabsTips3": "The default behavior of this component is data segmentation,Clicking on the <code>TabItem</code> title does not navigate, and if you need to navigate the address bar, set the <code>ClickTabToNavigation</code> property to <code>true</code>，When you click on the <code>TabItem</code> title, the address bar redirects navigation, mostly for the background management system to be used in conjunction with the <code>Menu</code> components，The actual combat can refer to the <code>multi-label</code> mode in the <a href='layout-page' target='_blank'>background template simulator</a>,  When you have <code>Razor Component</code> in the additional Assemblies, set the <code>AdditionalAssemblies</code> property value correctly so that the route within the label component is resolved correctly, and the relevant documentation <a href='https://learn.microsoft.com/aspnet/core/blazor/fundamentals/routing?wt.mc_id=DT-MVP-5004174' target='_blank'>[Portal]</a>",
    "TabsTips4": "This component adapts to width height, etc., and scroll arrows can appear left and right or up and down when appropriate",
    "TabsInfoTitle": "Set additional information during tab navigation",
    "TabsItemMenuTitle": "Configure Tab and Menu linked dictionary, this method can automatically obtain tab page properties without separately setting TabItemOption.",
    "TabsInfoItem2": "Tab properties can be set when navigating using the built-in extension method <code>Navigator.NavigateTo(\"provider\", \"url\", \"text\", \"icon\", \"closable\")</code>",
    "TabsInfoItem4": "Setting <code>@attribute [TabItemOption(Text = \"LayoutPage\", Icon = \"fa-solid fa-font-awesome\")]</code> in <code>razor</code> page",
    "TabsQATitle": "Q&A",
    "TabsQA1": "Get <code>TabSet</code> by cascading parameter",
    "TabsQA2": "Get <code>TabItem</code> by cascading parameter",
    "TabsQA3": "How to navigate to a new tab item in <code>razor</code>",
    "TabsQA4": "How to navigate to a new tab in the code",
    "TabItem1Text": "User",
    "TabItem1Content": "I am a user manager",
    "TabItem2Text": "Menu",
    "TabItem2Content": "I am menu management",
    "TabItem3Text": "Roles",
    "TabItem3Content": "I am roles management",
    "TabItem4Text": "Department ",
    "TabItem4Content": "I am department management",
    "TabItem5Text": "System logs",
    "TabItem5Content": "I am a system log",
    "TabItem6Text": "Sign log",
    "TabItem6Content": "I am Sign log management",
    "TabItem7Text": "Timed task",
    "TabItem7Content": "I am a timed task manager",
    "TabItem8Text": "Count",
    "TabItem9Text": "Weather forecast",
    "TabsNormalTitle": "Basic usage",
    "TabsNormalIntro": "Basic, concise tabs.",
    "TabsCardTitle": "Tab style ",
    "TabsCardIntro": "Set tab-style tabs by <code>isCard='true'</code>.",
    "TabsBorderTitle": "Carding",
    "TabsBorderIntro": "Set tab-style tabs by <code>IsBorderCard='true'</code>.",
    "TabsIconTitle": "Icon",
    "TabsIconIntro": "Set the tab icon by setting the <code>Icon</code> property of the <code>TabItem</code> component",
    "TabsClosableTitle": "Close",
    "TabsClosableIntro": "Show the close button to the tab by setting the <code>ShowClose</code> property",
    "TabsClosableTips": "<p><code>Tab</code> component turns on the <code>showClose</code> , <code>TabItem</code> property <code>Closable</code> can be set individually to close tab, <b>defaulting to </b><code>true</code>;In this example <b>User</b>Tabs do not provide a to turn off functionality</p>",
    "TabsPlacementTitle": "Position",
    "TabsPlacementIntro": "By setting the <code>Placement</code> property to change the label position, a small arrow scrolls up and down to <code>TabItem</code> switch when you change to left or right",
    "DividerText": "Split Line",
    "TabsAddTabItemTitle": "Custom add tab triggers",
    "TabsAddTabItemIntro": "Dynamically add/remove <code>TabItem</code> by calling the component api",
    "AddButtonText": "Add",
    "RemoveButtonText": "Rmove",
    "ActiveButtonText": "Activate the first one",
    "TabsComponentTitle": "Additional components are built in",
    "TabsComponentIntro": "other components are built into the <code>TabItem</code>",
    "TabsComponentDescription": "<code>Tab</code> The contents of each panel of the component remain state by default, and in this case the original data is maintained when the panel switches",
    "TabsDynamicTabItemTitle": "The program dynamically adds the TabItem panel",
    "TabsDynamicTabItemIntro": "This feature allows you to click on the menu link in the sidebar and render multiple labels at the top of the data area on the right",
    "TabsDynamicTabItemDescription": "In this example, the right the <code>Tab</code> the inside of the panel remains in state, and the component reloads when it is closed and reopened",
    "Block9Div": "Header",
    "TabsAppTitle": "Live Tab components",
    "TabsAppIntro": "By setting the <code>ShowExtendButtons</code> property to <code>true</code>, turning on the left and right buttons of the component and closing the drop-down menu, it is very useful in practice",
    "TabsAppDescription": "Dynamically adjust the number of <code>TabItem</code> by <b>adding</b>, <b>delete</b>buttons to view the left and right effects beyond the number of containers, <b>user management</b> is set to not close, and the feature button cannot close this tab. The component switches tabs in a loop by default. You can disable this feature by <code>IsLoopSwitchTabItem=\"false\"</code>",
    "TabsIsOnlyRenderActiveTitle": "Only the current label is rendered",
    "TabsIsOnlyRenderActiveIntro": "By setting the <code>isOnlyRenderActiveTab</code> parameter, the component renders only the current active label",
    "BlockSetTextTitle": "TabItem Text",
    "BlockSetTextIntro": "Call <code>SetText</code> instance method for update the tab item text",
    "BlockSetTextDesc": "Click the <code>Setting</code> button，call <code>TabItem</code> instance method <code>SetText</code> for update tab item text icon closable parameter",
    "BlockSetTextButtonText": "Setting",
    "TabsLazyLoadTitle": "Lazy load tab item",
    "TabsLazyLoadIntro": "By setting <code>IsLazyLoadTabItem=\"true\"</code> enable the lazy load feature",
    "TabsHeaderTemplateTitle": "Header Template",
    "TabsHeaderTemplateIntro": "customer the header UI via <code>HeaderTemplate</code>",
    "BlockHeaderTemplateHeaderText": "Todo List",
    "BlockHeaderTemplateDesc": "Use <code>Badge</code> in the <code>HeaderTemplate</code>",
    "TabsSetHeaderTemplateTitle": "Set header text",
    "TabsSetHeaderTemplateIntro": "Set the parameter <code>Text</code> of <code>TabItem</code> custom the tabitem's header title'",
    "TabsSetTabItemHeaderTextTitle": "Set header text icon",
    "TabsSetTabItemHeaderTextIntro": "Set the parameter by <code>TabItem</code> instance method <code>SetHeader</code>",
    "TabsDragTitle": "Drag",
    "TabsDragIntro": "By setting <code>AllowDrag</code> to enable the tab item drag and drop function, call back the <code>OnDragItemEndAsync</code> method after dropping the tab item",
    "TabsAtt1IsBorderCard": "Whether it is a bordered card style",
    "TabAtt2IsCard": "Whether it is a card style",
    "TabAtt3IsOnlyRenderActiveTab": "Whether to render only Active labels",
    "TabAtt4ShowClose": "Whether to display the close button",
    "TabAtt5ShowExtendButtons": "Whether to display the extension button",
    "TabAttShowNavigatorButtons": "Whether to display the previous and next navigation buttons",
    "TabAttShowActiveBar": "Whether to display active bar",
    "TabAttIsLazyLoadTabItem": "Whether lazy load tab item",
    "TabAttIsLoopSwitchTabItem": "Whether loop switch tab item",
    "TabAtt6ClickTabToNavigation": "Whether to navigate when you click on the title",
    "TabAtt7Placement": "Set the label position",
    "TabAtt8Height": "Set the label height",
    "TabAtt9Items": "TabItem collection",
    "TabAtt10ChildContent": "ChildContent template",
    "TabAttHeaderTemplate": "Header Template",
    "TabAtt11AdditionalAssemblies": "A collection of additional programs to initialize the route",
    "TabAtt12OnClickTab": "Call back the delegate method when you click on the TabItem title",
    "TabAttAllowDrag": "Whether allow drag/drop tab item",
    "TabAttOnDragItemEndAsync": "The callback after drop tab item",
    "Att13": "Set the tab to display the title collection, and when not set, an internal attempt is made to use menu item data",
    "TabMethod1AddTab": "Add TabItem to Tab, can set new Tab position if necessary",
    "TabMethod2RemoveTab": "Remove TabItem",
    "TabMethod3ActiveTab": "The setting specifies tabItem as active",
    "TabMethod4ClickPrevTab": "Switch to the previous label method",
    "TabMethod5ClickNextTab": "Switch to the next label method",
    "TabMethod6CloseCurrentTab": "Close the current tab method",
    "TabMethod7CloseOtherTabs": "Close other tab methods",
    "TabMethod8CloseAllTabs": "Close all tab methods",
    "TabMethod9GetActiveTab": "Get current tab methods",
    "BackAddTabText": "I am a new Tab with the name {0}",
    "BackText1": "Counter",
    "BackText2": "Weather forecast",
    "AttTitle": "Attributes",
    "MethodTitle": "Method",
    "TabDefaultUrl": "Default page",
    "AttributeOnCloseTabItemAsync": "Close tab callback method",
    "AttributeOnClickTabItemAsync": "Callback method when clicking TabItem",
    "AttributeNotAuthorized": "The template for NotAuthorized",
    "AttributeNotFound": "The template for NotFound",
    "AttributeExcludeUrls": "Exclude address support for wildcards",
    "AttributeButtonTemplate": "The template for Buttons",
    "TabsDisabledTitle": "Disabled",
    "TabsDisabledIntro": "Disable the current <code>TabItem</code> by setting <code>IsDisabled=\"true\"</code> to prohibit click, drag, close etc.",
    "TabsChromeStyleTitle": "Chrome Style",
    "TabsChromeStyleIntro": "Set the Chrome browser tab style by setting <code>TabStyle=\"TabStyle.Chrome\"</code>. Currently only supports <code>Placement=\"Placement.Top\"</code> mode",
    "TabAtt2TabStyle": "Set the tab style",
    "TabsCapsuleStyleTitle": "Capsule Style",
    "TabsCapsuleStyleIntro": "Set the capsule tab style by setting <code>TabStyle=\"TabStyle.Capsule\"</code>. Currently only supports <code>Placement=\"Placement.Top\"</code> <code>Placement=\"Placement.Bottom\"</code> mode",
    "AttributeToolbarTemplate": "The template for Toolbar",
    "TabsToolbarTitle": "Toolbar",
    "TabsToolbarIntro": "By setting <code>ShowToolbar</code>, you can display the tab toolbar. By default, the <b>Refresh</b> and <b>Fullscreen</b> buttons are displayed. You can control whether to display them by <code>ShowRefreshToolbarButton</code> and <code>ShowFullscreenToolbarButton</code>, click the <b>Refresh</b> button to trigger the <code>OnToolbarRefreshCallback</code> callback method. You can customize toolbar buttons using <code>ToolbarTemplate</code>",
    "AttributeShowToolbar": "Whether to display the toolbar",
    "AttributeShowRefreshToolbarButton": "Whether to display the toolbar refresh button",
    "AttributeShowFullscreenToolbarButton": "Whether to display the toolbar full screen button",
    "AttributeRefreshToolbarTooltipText": "Toolbar refresh button tooltip text",
    "AttributeFullscreenToolbarTooltipText": "Toolbar full screen button tooltip text",
    "AttributeRefreshToolbarButtonIcon": "Toolbar refresh button icon",
    "AttributeFullscreenToolbarButtonIcon": "Toolbar full screen button icon",
    "TabsToolbarDesc": "After clicking the button, the counter value increases, and clicking the <b>Refresh</b> button on the toolbar will reset the counter.",
    "AttributeOnToolbarRefreshCallback": "Click the toolbar refresh button callback method",
    "ContextRefresh": "Refresh",
    "ContextClose": "Close",
    "ContextCloseOther": "Close Other Tabs",
    "ContextCloseAll": "Close All Tabs",
    "TabsContextMenuTitle": "TabItem Context Menu",
    "TabsContextMenuIntro": "Use the built-in <code>ContextMenuZone</code> component to pop up a custom context menu when you right-click a tab item",
    "TabsContextMenuDesc": "The disabled tab can be set by setting the <code>OnBeforeShowContextMenu</code> callback method to control whether the right-click menu is displayed according to the return value. If it is not set, the right-click menu is also displayed for the disabled tab",
    "AttributeShowContextMenu": "whether enable tab context menu",
    "AttributeContextMenuRefreshIcon": "the icon of tab item context menu refresh button",
    "AttributeContextMenuCloseIcon": "the icon of tab item context menu close button",
    "AttributeContextMenuCloseOtherIcon": "the icon of tab item context menu close other button",
    "AttributeContextMenuCloseAllIcon": "the icon of tab item context menu close all button",
    "AttributeContextMenuFullScreenIcon": "the icon of tab item context menu full screen button",
    "AttributeOnBeforeShowContextMenu": "before popup context menu callback",
    "ShowTabInHeaderDesc": "After enabling the multi-tab function in the <code>Layout</code> component, you can render the <code>Tab</code> tag header into the <code>Layout</code> Header template by setting <code>ShowTabInHeader=\"true\"</code>. The effect can be viewed by creating a new project in the <a href=\"template\" target=\"_blank\">Project Template</a>",
    "TabsOnTabHeaderTextLocalizerTitle": "<code>TabItemOption</code> Localizer",
    "TabsOnTabHeaderTextLocalizerIntro": "Localization of `TabItemOption` is achieved by setting the `OnTabHeaderTextLocalizer` callback delegate method. The input parameter is the `TabItemOption` parameter `Text`, and the return value is the localized value"
  },
  "BootstrapBlazor.Server.Components.Components.DemoTabItem": {
    "Info": "Reset the title of this <code>TabItem</code> by click the button",
    "ButtonText": "SetTitle"
  },
  "BootstrapBlazor.Server.Components.Samples.AutoFills": {
    "Title": "AutoFill components",
    "Description": "Auto-fill forms when selected via IntelliSense prompt option",
    "NormalTitle": "Basic usage",
    "NormalIntro": "fill the form",
    "NormalDesc": "input <code>Name</code> Name smart prompt, automatically fill in the form below after selecting the prompt item Currently supports keyboard <kbd>Enter</kbd> <kbd>Esc</kbd> <kbd><i class=\"fa-solid fa-arrow-up\"></i></kbd> <kbd><i class=\"fa-solid fa-arrow-down\"></i></kbd>",
    "CustomFilterTitle": "custom filter",
    "CustomFilterIntro": "Filter data by setting custom filter condition callback delegate <code>OnCustomFilter</code>",
    "CustomFilterDesc": "Enter the <code>name</code> intelligent prompt, and delegate <code>OnCustomFilter</code> to filter data by setting a user-defined filter condition callback. The current filter condition is that <code>Name</code> contains the input string <code>Count</code> and the value is greater than <b>50</b>",
    "ShowDropdownListOnFocusTitle": "Turn off auto-expand dropdown",
    "ShowDropdownListOnFocusIntro": "By setting <code>ShowDropdownListOnFocus=&quot;false&quot;</code>",
    "ShowDropdownListOnFocusDesc": "parameter <code>ShowDropdownListOnFocus</code> the default value is <code>true</code>. After the component gets the focus, it will automatically expand the candidate drop-down box, set to <code>false</code> turn off this feature",
    "Att1": "The number to display when matching data",
    "Att2": "Display a message when there is no matching data",
    "Def2": "No matching data",
    "Att3": "Whether to ignore case when matching",
    "Att4": "Whether to enable fuzzy query",
    "Att5": "component data collection",
    "Att6": "Anti-shake time",
    "Att7": "Custom collection filter rules",
    "Att8": "Get the display text method through the model",
    "Att9": "Option change callback method",
    "Att10": "Whether to expand the dropdown candidate menu when it gains focus",
    "Att11": "Candidate template",
    "Att12": "Whether to skip Enter key handling",
    "Att13": "Whether to skip Esc key processing",
    "IsVirtualizeTitle": "Virtualize",
    "IsVirtualizeIntro": "Set <code>IsVirtualize</code> to <b>true</b> enable virtual scroll for large data",
    "IsVirtualizeDescription": "Component virtual scrolling supports two ways of providing data through <code>Items</code> or <code>OnQueryAsync</code> callback methods",
    "AttrIsVirtualize": "Wether to enable virtualize",
    "AttIsAutoClearWhenInvalid": "Whether to automatically clear invalid values when focus leaves the component"
  },
  "BootstrapBlazor.Server.Components.Samples.AutoCompletes": {
    "Title": "AutoComplete",
    "Description": "The input box autocompletes the function",
    "Block1Title": "Basic usage",
    "Block1Intro": "By setting <code>Items</code> data collection when the user types information that is automatically displayed",
    "Block2Title": "Blur queries and ignore case",
    "Block2Intro": "By setting the <code>IsLikeMatch</code> value settings to turn on fuzzy matching of collections, you control whether case is ignored by setting the <code>IgnoreCase</code>",
    "Block3Title": "Custom prompt message",
    "Block3Intro": "By setting the <code>NoDataTip</code> value setting automatically completes the custom prompt message that appears when the data is not found",
    "Block4Title": "Custom candidates",
    "Block4Intro": "By setting up <code>ValueChanged</code> callback method reorganizes the data collection based on the data entered by the user before prompting for information",
    "Block5Title": "The label is displayed",
    "Block5Intro": "When a component binds in both directions, it automatically determines whether label text is displayed based on the conditions",
    "DebounceTitle": "Debounce",
    "DebounceIntro": "Set <code>Debounce</code> value turn on debounce",
    "BlockGroupTitle": "InputGroup",
    "BlockGroupIntro": "combox with <code>BootstrapInputGroupLabel</code> inside <code>BootstrapInputGroupLabel</code>",
    "ItemTemplateTitle": "ItemTemplate",
    "ItemTemplateIntro": "Set <code>ItemTemplate</code> for customer the dropdown item",
    "Att1": "whether to display the front label",
    "Att2": "content",
    "Att3": "content",
    "Att4": "Prompt information when no matches are automatically completed",
    "Att4DefaultValue": "No matching data",
    "Att5": "The number of data displayed when the data is matched",
    "Att6": "Call back the delegate method when the text box value changes",
    "Att7": "Whether to turn on fuzzy matching",
    "Att8": "Whether case is ignored when matching",
    "Att9": "Custom collection filtering rules",
    "AttItemTemplate": "Item template",
    "Debounce": "Debounce interval default Zero",
    "SkipEnter": "Skip Enter key processing",
    "SkipEsc": "Skip Esc key processing",
    "OnSelectedItemChanged": "Callback for the selected item changed",
    "OnSelectedItemChangedTitle": "OnSelectedItemChanged",
    "OnSelectedItemChangedIntro": "Click the dropdown item or <kbd>Enter</kbd> trigger the callback",
    "OnValueChanged": "Callback for the Value changed",
    "NormalDescription": "In this example, type 123 strings to display the viewing effect, automatically give the component initialization to the auto-prompt dataset, and the dataset does not change. Enable the clear button by setting <code>IsClearable</code>",
    "LikeMatchDescription": "In this example, type the abc string to display the viewing effect and select all matches in the collection that contain abc and have the same case",
    "NoDataTipDescription": "In this example, type 567 strings because the autocomplete information center does not display custom prompt information - <code>the data you want is not found</code>",
    "NoDataTip": "There is nothing",
    "ValueChangedDescription": "In this example, type any string to display the viewing effect, and automatically complete the component's dynamic changes from the newly obtained prompt dataset based on the string you type",
    "ShowLabelDescription": "The pre-label explicit rules are consistent with the <code>BootstrapInput</code> component of the <a href='input'>[portal]</a>",
    "Divider1Text": "Bidirectional binding displays labels",
    "Divider2Text": "Bidirectional bindings do not display labels",
    "Divider3Text": "Customize DisplayText",
    "AutoText": "Custom city",
    "DebounceDescription": "In this example, please type any string to display the viewing effect. Within the anti shake time, the auto completion component will only send the results to the back end after the last entry, which will greatly improve the performance",
    "BlockGroupPrevLabel": "Prev",
    "BlockGroupSuffixLabel": "Suffix",
    "PopoverTitle": "Popover dropdown menu",
    "PopoverIntro": "Set <code>IsPopover</code> to <b>true</b>, use <code>popover</code> render UI prevent The dropdown menu cannot be fully displayed because the parent container is set to <code>overflow: hidden</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.FullScreens": {
    "FullScreensTitle": "FullScreen",
    "FullScreensDescription": "Human-computer interaction by injecting service calls <code>Show</code> method pop-ups",
    "FullScreenNormalTitle": "Basic usage",
    "FullScreenNormalIntro": "The entire page is fully screened by calling the <code>Show</code> method that <code>FullScreenService</code> service instance",
    "FullScreenNormalButtonText1": "FullScreen",
    "FullScreenOptionDesc": "You can set the full-screen window by setting <code>FullScreenOption</code>, and specify the page element by <code>ElementReference</code> <code>Id</code> <code>Selector</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.FullScreenButtons": {
    "FullScreenButtonTitle": "FullScreenButton",
    "FullScreenButtonIntro": "Use the <code>FullScreenButton</code> component to make the entire web page or a specified element full screen",
    "FullScreenButtonNormalTitle": "Basic usage",
    "FullScreenButtonNormalIntro": "You can set the default icon of the button through <code>Icon</code>, and set the icon when exiting full screen through the <code>FullScreenExitIcon</code> property",
    "FullScreenTitleLi1": "Set the fullscreen element ID through the <code>TargetId</code> parameter",
    "FullScreenTitleLi2": "Set the current page title text through the <code>Text</code> property"
  },
  "BootstrapBlazor.Server.Components.Samples.Buttons": {
    "Title": "Button",
    "Description": "Common action buttons.",
    "Block1Title": "Basic usage",
    "Block1Intro": "The underlying button usage.",
    "Block2Title": "Different styles",
    "Block2Intro": "Display different button styles by setting the <code>ButtonStyle</code>",
    "Block3Title": "Outline",
    "Block3Intro": "Set the color style of the button border by setting the <code>IsOutline='true'</code>.",
    "Block4Title": "Different sizes.",
    "Block4Intro": "The Button component provides a variety of sizes in addition to the default values, and by setting the <code>Size</code> property, you can select the appropriate button size in different scenarios.",
    "Block5Title": "Disable the state",
    "Block5Intro": "Button is not available. By setting the <code>IsDisabled</code> property",
    "Block6Title": "Button group",
    "Block6Intro": "A combination of multiple buttons",
    "Block7Title": "Button with icon",
    "Block7Intro": "Set the button icon by setting the <code>Icon</code> property, which is <code>fa-fa</code> when using font strings such as the <code>font-awesome</code> icon",
    "Block8Title": "Secondary encapsulation button",
    "Block8Intro": "The button display text is set by setting the <code>Text</code> property of the <code>winButton</code> component, and the click button is the text on the right that shows the clicked button",
    "Block9Title": "Asynchronous request button",
    "Block9Intro": "By setting whether the <code>isAsync</code> property button is <b>asynchronous request button by setting whether the is</b> <code>false</code> by default. <b>Note</b> This will only take effect when <code>ShowSplit=\"true\"</code> is set",
    "ButtonAsyncDescription": "When the button is an asynchronous request button, the button is changed to disabled, and the <code>loading</code> small icon is displayed, returning to normal after the asynchronous request ends, in this case, after clicking the <b>asynchronous button</b>, the request load animation is displayed and returns to normal after 5 seconds. In some specific scenarios, the button needs to remain disabled after asynchronous operation. Please control this using the <code>IsKeepDisabled</code> parameter.",
    "EventDesc1": "This event is triggered when the button is clicked",
    "EventDesc2": "This event is triggered when the button is clicked and the current component is not refreshed for performance improvement",
    "Att1": "color",
    "Att2": "icon",
    "Att3": "An animated icon when loaded asynchronously",
    "Att4": "displays text",
    "Att5": "size",
    "Att6": "style",
    "Att7": "fill button",
    "Att8": "whether to disable it",
    "Att9": "whether there is a border",
    "Att10": "whether it is an asynchronous button",
    "Att11": "content",
    "Att12": "button style",
    "Att13": "The type of button",
    "MethodDesc1": "set whether the button is available",
    "NoneButtonColor": "None",
    "PrimaryButton": "Primary",
    "SecondaryButton": "Secondary",
    "SuccessButton": "Success",
    "DangerButton": "Danger",
    "WarningButton": "Warning",
    "InformationButton": "Information",
    "DarkButton": "Dark",
    "HighlightButton": "Highlight",
    "LinkButton": "Link",
    "ExtraSmallButton": "ExtraSmall",
    "SmallButton": "Small",
    "NormalButton": "Button",
    "MediumButton": "Medium",
    "LargeButton": "Large",
    "ExtraLargeButton": "ExtraLarge",
    "ButtonExtraExtraLargeText": "ExtraExtraLarge",
    "BlockButton": "Block",
    "Description1": "Button disable effects can be achieved by setting its own <code>IsDisabled</code> property in the <code>OnClick</code> callback method, or by calling the component instance method <code>SetDisable</code>",
    "Description2": "Because using the <code>IsDisabled</code> property requires an explicit manual call to the <code>StateHasChanged</code> method, which causes the component where the button is located to refresh as a whole, it is recommended that you use the instance method <code>SetDisable</code> refresh the button only",
    "SubTitle": "Performance comparison:",
    "IsDisabledTip": "This page transfer is <code>4.8K</code> when set with the <code>IsDisabled</code> property",
    "SetDisableTip": "This page transfer is <code>280B</code> when set up using the <code>SetDisable</code> method",
    "ButtonDisabled": "Click to be disabled",
    "ButtonAvailable": "Click to make the first button available",
    "ButtonOne": "Button one",
    "ButtonTwo": "Button two",
    "ButtonStatus": "Status button",
    "ButtonProgress": "Progress button",
    "ButtonAsync": "Asynchronous",
    "TooltipText": "Button",
    "TooltipTitle": "Tooltip",
    "TooltipIntro": "Set <code>TooltipText</code> <code>TooltipPlacement</code> <code>TooltipTrigger</code> shortcut button prompt bar information, position, and triggering method. For more functions, please use the <code>Tooltip</code> component to implement. In this example, the second button is in the <b>disabled</b> state, and the prompt bar is still available",
    "TooltipDisabledText": "Disabled",
    "ToggleButton": "Toggle",
    "ToggleIntroduction": "Get the current button <code>Toggle</code> state by setting the <code>IsActiveChanged</code> or <code>OnToggleAsync</code> callback method"
  },
  "BootstrapBlazor.Server.Components.Samples.PulseButtons": {
    "Block1Title": "Basic usage",
    "Block1Intro": "The underlying button usage.",
    "PulseButtonHeader": "PulseButton (heartbeat) button",
    "PulseButtonPara": "It is suitable for highlighting function to attract users' attention. The default button is circular",
    "PulseButtonPara2": "The heartbeat button component is inherited from the button, so a heartbeat ring is added on the basis of the original function of the button. Please refer to the switch style button in the lower right corner of the website."
  },
  "BootstrapBlazor.Server.Components.Samples.Cascaders": {
    "Title": "Cascader",
    "Block1Title": "Cascade selection",
    "Block1Intro": "Drop-down selection boxes are available in a variety of colors",
    "Block2Title": "Turn off cascading selection",
    "Block2Intro": "Cascading selection is not available",
    "Block3Title": "Two-way binding",
    "Block3Intro": "The values in the text box change when you change the cascading selection option by binding the <code>Value</code> property with the <code>Select</code> component.",
    "Block3Desc": "You can use <code>IsClearable</code> to control whether to display the clear button. The default value is <code>false</code>",
    "Block4Title": "Client validation",
    "Block4Intro": "When cascading selection is not selected, click the submit button to block.",
    "Block5Title": "The binding generic is the Guid structure",
    "Block5Intro": "The component binding value is an example of a Guid structure",
    "Block6Title": "The label is displayed",
    "Block6Intro": "When a component binds in both directions, it automatically determines whether label text is displayed based on the conditions",
    "BlockParentSelectableTitle": "Parent selectable",
    "BlockParentSelectableIntro": "Whether can select on the parent node",
    "BlockShowFullLevelsTitle": "Show Full Levels",
    "BlockShowFullLevelsIntro": "Whether show the full levels via <code>ShowFullLevels</code>",
    "Description": "The pre-label explicit rules are consistent with the <code>BootstrapInput</code> component of the <a href='input'>[portal]</a>",
    "Att1": "Whether to display the front label",
    "Att2": "The front label displays text",
    "Att3": "The place-in display text when not selected",
    "Att3Default": "Click to select ...",
    "Att4": "Style",
    "Att5": "Color",
    "Att6": "Whether to disable it",
    "Att7": "The data collection",
    "Event1": "This event is triggered when the cascading selection option changes",
    "SubmitButtonText": "Submit",
    "ValidateButtonText": "Validate",
    "item1": "Melbourne",
    "item1_child1": "Brunswick",
    "item1_child1_child": "so-and-so street",
    "item1_child2": "Fitzroy",
    "item1_child3": "Carlton",
    "item1_child4": "Thornbury",
    "item2": "Sydney",
    "item2_child1": "Millsons Point",
    "item2_child2": "Potts Point",
    "item2_child3": "North Sydney",
    "item3": "Brisbane",
    "item3_child1": "Brisbane",
    "item3_child2": "Gold Cost",
    "Divider1": "Bidirectional binding displays labels",
    "Divider2": "Bidirectional bindings do not display labels",
    "Divider3": "Customize DisplayText",
    "CascaderText": "Custom city"
  },
  "BootstrapBlazor.Server.Components.Samples.CherryMarkdowns": {
    "Header": "CherryMarkdown",
    "Tip": "Rich text box component based on CherryMarkdown",
    "MarkdownsNote": "If you edit too much content, <code>signalR</code> communication interruption may be triggered. Please adjust the <code>HubOptions</code> configuration.",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Use two-way binding to get the corresponding <code>html</code> and <code>markdown</code> content",
    "FileUploadTitle": "Handle file upload events yourself",
    "FileUploadIntro": "Use the <code>OnFileUpload</code> event to handle the file upload event, support directly pasting pictures to the browser",
    "CustomTitle": "custom content",
    "CustomIntro": "Customize the toolbar via <code>ToolbarSettings</code>, and customize the editor style via <code>EditorSettings</code>",
    "ViewTitle": "browse mode",
    "ViewIntro": "Pure browsing mode, no editor",
    "ApiTitle": "External control components",
    "ApiIntro": "Control content externally using CherryMarkdown's Api",
    "InsertCheckListButtonText": "Insert a CheckList",
    "InsertPictureButtonText": "insert a picture"
  },
  "BootstrapBlazor.Server.Components.Samples.Checkboxs": {
    "Title": "Checkbox",
    "Description": "Multiple-select in a set of alternatives",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Using alone can represent a switch between two states, and column head or header can represent a switch between three states when used. Components support generic data binding, setting the binding data type the <code>TValue</code>, and setting the component state by <code>State</code>",
    "DisabledTitle": "Disable the check box",
    "DisabledIntro": "Check box is not available, and the <code>IsDisabled</code> is set by whether the component is available",
    "ShowLabelTitle": "Color",
    "ShowLabelIntro": "Change the component background color by setting the <code>Color</code> property",
    "DisplayTextTitle": "Size",
    "DisplayTextIntro": "Change the component size by setting the <code>Size</code> property",
    "ShowAfterLabelTitle": "Label text",
    "ShowAfterLabelIntro": "The check box displays text, and the component status flips when you tap display text, using the <code>DisplayText</code> settings component to display text",
    "ShowAfterLabelDescription": "Set <code>DisplayText</code> property, or display text messages through bidirectional binding",
    "OnStateChangedTitle": "Two-way binding boolean",
    "OnStateChangedIntro": "Binding variables within a component, data automatically synchronized, binding data types <code>boolean</code> type when the value is automatically flipped",
    "BindStringTitle": "Bind string data in both directions",
    "BindStringIntro": "Binding variables within a component, data is automatically synchronized",
    "ValidateFormTitle": "Used in forms",
    "ValidateFormIntro": "When you use <code>Checkbox</code> in a form, the display label text is placed in front of the component",
    "ValidateFormDescription": "The pre-label explicit rules are consistent with the <code>BootstrapInput</code> component <a href='input'>[portal]</a>",
    "ItemTemplateTitle": "ItemTemplate",
    "ItemTemplateIntro": "Set <code>ItemTemplate</code> for customer the item UI",
    "OnBeforeStateChangedTitle": "OnBeforeStateChanged",
    "OnBeforeStateChangedIntro": "By setting the <code>OnBeforeStateChanged</code> callback method, you can cancel the state change logic",
    "OnBeforeStateChangedText": "Confirm",
    "OnBeforeStateChangedSwalTitle": "Confirm Select",
    "OnBeforeStateChangedSwalContent": "Whether the current checkbox is selected",
    "Att1": "Whether to display the front label",
    "Att2": "Whether to display the rear label",
    "Att3": "The front label displays text",
    "Att4": "Whether to disable it",
    "Att5": "The type of control",
    "OnBeforeStateChanged": "This method is called back before the selection box status changes",
    "OnStateChanged": "This method is called back when the selection box state changes",
    "StateChanged": "The state changes the callback method",
    "StatusText1": "Selected",
    "StatusText2": "Not selected",
    "StatusText3": "Indeterminate",
    "Checkbox2Text": "Two-way binding",
    "Checkbox3Text": "Handwritten labels"
  },
  "BootstrapBlazor.Server.Components.Samples.CheckboxLists": {
    "Title": "CheckboxList",
    "CheckboxListsTip": "The control is used to create a multi-select check box group",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Show check box groups by data binding",
    "NormalTips1": "Set bidirectional binding data value through <code>bind-Value</code >",
    "NormalTips2": "Set candidate data sources through <code>Items</code>",
    "NormalTips3": "Get the changed item instance through the <code>onSelectedChanged</code> callback method",
    "NormalTips4": "Enable label tooltip by <code>ShowLabelTooltip=\"true\"</code>",
    "ValidateFormTitle": "Client Validation",
    "ValidateFormIntro": "Built in <code>ValidateForm</code>",
    "ValidateFormTips1": "You can experience adaptive layout by changing the window size",
    "ValidateFormTips2": "In this example, the <code>Name</code> field of the binding model <code>binditem</code> is automatically changed by checking the option",
    "ValidateFormTips3": "Because it is built into the <code>ValidateForm</code> form, in this example, <code>RequiredAttribute</code> required for verification is added. When all options are cancelled, the verification result will be prompted",
    "ShowLabelTitle": "Bidirectional binding collection",
    "ShowLabelIntro": "Binding values are collections",
    "ShowLabelTip": "<code>TValue</code> is set to <code>IEnumerable&lt;int&gt;</code> generic collection, the <Code>ValueField</Code> specified field of the bound collection must be consistent with the generic type",
    "ItemTemplateTitle": "ItemTemplate",
    "ItemTemplateIntro": "Set <code>ItemTemplate</code> for customer the item UI",
    "EnumTitle": "Bidirectional binding enumeration",
    "EnumIntro": "The binding value is enumeration",
    "EnumTip": "When <code>CheckboxList</code> binds an enumeration set, <code>Items</code> does not need to be specified, <code>Items</code> will be automatically set to all values in the enumeration. If you need to bind some values, please provide the enumeration set <code>Items</code>",
    "NoBorderTitle": "No border",
    "NoBorderIntro": "By setting <code>ShowBorder='false'</code> do not display borders",
    "NoBorderTip": "Displays a red border when validation fails",
    "VerticalTitle": "Vertical arrangement",
    "VerticalIntro": "Arrange checkboxes vertically by setting <code>IsVertical=\"true\"</code >",
    "DisabledTitle": "Disable",
    "DisabledIntro": "Disable by setting <code>IsDisabled='true'</code>",
    "IsButtonTitle": "Button CheckboxList",
    "IsButtonIntro": "Set <code>IsButton=\"true\"</code> to change the checkbox style to a button style",
    "Att1": "Data source",
    "Att2": "Disable",
    "Att3": "Component values are used for bidirectional binding",
    "Att4": "Whether to arrange vertically",
    "Event1": "Call back this method when the state of the check box changes",
    "Header": "common",
    "Counter": "item is selected component binding value",
    "item1": "Pat",
    "item2": "Argo",
    "item3": "Doom",
    "item4": "Simon",
    "Foo": "Pat,Argo",
    "Description": "TValue is set to <code>IEnumerable&lt;string&gt;</code> generic collection",
    "AttributeMaxSelectedCount": "The maximum count of selected node",
    "AttributeOnMaxSelectedCountExceed": "Select the callback method when the maximum number of nodes is reached",
    "MaxSelectedCountTitle": "MaxSelectedCount",
    "MaxSelectedCountIntro": "Control the maximum number of selectable items by setting the <code>MaxSelectedCount</code> property, and handle the logic through the <code>OnMaxSelectedCountExceed</code> callback",
    "MaxSelectedCountDesc": "When more than 2 nodes are selected, a <code>Toast</code> prompt bar will pop up",
    "OnMaxSelectedCountExceedTitle": "Maximum Info",
    "OnMaxSelectedCountExceedContent": "You can select at most {0} items",
    "CheckboxListGenericTitle": "Generic List",
    "CheckboxListGenericIntro": "Enable generic support by using the <code>RadioListGeneric</code> component with <code>SelectedItem&lt;TValue&gt;</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.ColorPickers": {
    "Title": "ColorPicker",
    "Description": "Select color to use",
    "NormalTitle": "Basic Usage",
    "NormalIntro": "Set the color value by setting the <code>Value</code> property",
    "ValueTitle": "Set Initial Value",
    "ValueIntro": "Set the color value by setting the <code>Value</code> property",
    "TemplateTitle": "Display Template",
    "TemplateIntro": "Customize the display template by setting <code>Template</code>",
    "ValueDescription": "Set <code>Value='@Value'</code> to initialize the default value",
    "BindValueTitle": "Two-way binding",
    "BindValueIntro": "Set the color value by setting the <code>Value</code> property",
    "DisabledTitle": "Disabled",
    "DisabledIntro": "Disable this component by setting the <code>IsDisabled</code> property",
    "FormatterTitle": "Formatter",
    "FormatterIntro": "Set the display value by setting the <code>Formatter</code> callback method",
    "ValidateFormTitle": "Used in the verification form",
    "ValidateFormIntro": "Built in <code>ValidateForm</code> to use",
    "IsSupportOpacityTitle": "Support Opacity",
    "IsSupportOpacityIntro": "Enable transparency support by setting <code>IsSupportOpacity=\"true\"</code>",
    "EventOnValueChanged": "Color change callback delegate method",
    "AttributeTemplate": "The template for display",
    "AttributeFormatter": "Display color value formatting callback method",
    "AttributeIsSupportOpacity": "Whether to support transparency",
    "AttributeSwatches": "Preset candidate colors",
    "SupportOpacity": "Support Opacity",
    "Disabled": "Disabled"
  },
  "BootstrapBlazor.Server.Components.Samples.DateTimePickers": {
    "Title": "DatePicker",
    "Description": "Used to select or enter a date",
    "NormalTitle": "Select the day",
    "NormalIntro": "Select the control based on the date of the day in 「day」as the base unit",
    "ShowIconTitle": "Whether show the component icon",
    "ShowIconIntro": "Save space by setting <code>ShowIcon=\"false\"</code> to not display component icons",
    "ValidateFormTitle": "Client validation",
    "ValidateFormIntro": "Check data validity and prompt automatically based on custom validation rules",
    "DateTimeOffsetTitle": "Click on the pop-up date box",
    "DateTimeOffsetIntro": "Select the control based on the date of the day in 「day」 as the base unit",
    "IsEditableTitle": "Editable",
    "IsEditableIntro": "Enable manual input function by setting <code>IsEditable=\"true\"</code>",
    "BindValueTitle": "Data is bound in both directions",
    "BindValueIntro": "The values in the text box change as the date component time changes",
    "ViewModeTitle": "Selector with time",
    "ViewModeIntro": "Select the date and time in the same selector, click the confirm button and close the pop-up window",
    "ViewModeTip": "Set the value of the <code>viewMode</code> property to The <code>DateTime</code> of DatePickerViewMode.DateTime",
    "NullValueTitle": "Allow empty time",
    "NullValueIntro": "More for conditional selection",
    "NullValueTip": "The <b>empty</b>button automatically appears when the binding value is <code>DateTime?</code> for an empty type",
    "ShowLabelTitle": "The label is displayed",
    "ShowLabelIntro": "When you are a form component, the label in front of the component is displayed",
    "ShowLabelTip": "Set the <code>DisplayText</code> property value to <code>select time</code>, The pre-label explicit rules are consistent with the <code>BootstrapInput</code> component  of the <a href='input'>[portal]</a>",
    "DisabledTitle": "Disable",
    "DisabledIntro": "When you set the <code>IsDisabled</code> property value to <code>true</code>, the component suppresses input",
    "ShowSidebarTitle": "Sidebar with shortcuts",
    "ShowSidebarIntro": "When you set the <code>ShowSidebar</code> property value to <code>true</code>, the component displays the shortcut sidebar",
    "MinValueTitle": "Set the range of values",
    "MinValueIntro": "Set the <code>MinValue</code> property value to the <code>MaxValue</code> limit the range of optional values, in this case setting the range to <b>45</b>days",
    "BlockAutoCloseTitle": "Auto close",
    "BlockAutoCloseIntro": "Auto close the popup window by se <code>AutoClose</code> to <code>true</code>",
    "BlockAutoCloseDesc": "<code>AutoClose</code> The default value is <code>true</code> When selecting a date, the pop-up window will automatically close. When the value is set to <code>false</code>, the pop-up window needs to be closed when the <b>confirm</b> button is clicked",
    "BlockGroupTitle": "InputGroup",
    "BlockGroupIntro": "Used in the built-in <code>BootstrapInputGroup</code> and in combination with <code>BootstrapInputGroupLabel</code>",
    "Att1": "Whether to display the front label",
    "Att2": "Whether to display the shortcut sidebar",
    "Att3": "The front label displays text",
    "Att4": "Date format string The default is yyyyy-MM-dd",
    "Att6": "Whether to disable False by default",
    "Att8": "The value of the component is a two-way binding with ValueChanged",
    "Att9": "Get/Set Component display mode The default is the month-to-day display mode",
    "AttrAutoClose": "Whether auto close the popup window",
    "AttrIsEditable": "Is manual date entry allowed",
    "Event1": "Confirm that the button calls back the delegate",
    "Event2": "Callback delegates are used for bidirectional binding when component values change",
    "BlockGroupLabel": "Prev",
    "BlockGroupSuffixLabel": "Suffix",
    "DisplayText": "Select the time",
    "SubmitText": "Save",
    "Value": "Value",
    "Value.Required": "{0} is required.",
    "ValidateFormValue": "DateTimePick",
    "DateTimePickerTitle": "Select the time",
    "DateTimePickerIntro": "Select the hour, minute, and second on the clock dial to obtain the current date and time.",
    "DayTemplateTitle": "Custom date display",
    "DayTemplateIntro": "By setting the <code>DayTemplate</code> custom display template, the disabled date template is <code>DayDisabledTemplate</code>",
    "AttrShowLunar": "Whether to display ChineseLunar",
    "AttrShowSolarTerm": "Whether to display the 24 solar terms",
    "AttrShowFestivals": "Whether to display festival",
    "AttrShowHolidays": "Whether to display legal holidays",
    "Feature": "Feature",
    "FeatureShowLunar": "Lunar",
    "FeatureShowSolarTerm": "Solar Term",
    "FeatureShowFestivals": "Festivals",
    "FeatureShowHolidays": "Holidays",
    "FeatureIntro": "<b>Holidays</b> Functional dependency component packages <code>BootstrapBlazor.Holiday</code> <a href=\"holiday\" target=\"_blank\">[Portal]</a>",
    "FeatureFestivalIntro": "<b>The festival</b> function is provided by the built-in service <code>ICalendarFestivals</code> in the component library. The built-in default implementation provides 12 Gregorian festivals and 7 lunar festivals, which can be extended through custom festival services. For detailed function introductions, please refer to the <b>Festival Services</b> documentation <a href=\"festival\" target=\"_blank\">[Portal]</a>",
    "DisableOptions": "Disable options",
    "DisableWeekend": "Disable weekend",
    "DisableToday": "Disable today",
    "DisableDayCallbackTitle": "Customize the disable date",
    "DisableDayCallbackIntro": "Customize which days need to be disabled by setting <code>OnGetDisabledDaysCallback</code>",
    "DisableDayCallbackTip": "<ul class=\"ul-demo\"><li>When a component is assigned a disabled date, the component still displays its value by default. If you need to display the disabled date as an <b>empty string</b>, please set <code>DisplayDisabledDayAsEmpty=\"true\"</code></li><li>This example uses slightly more complex logic to determine the disabled date. The disabled date is a combination of conditions, so when the conditions change, you need to call the component instance method <code>ClearDisabledDays</code> to clear the internal cache</li></ul><p class=\"mb-3\">In this example, the first component has <code>DisplayDisabledDayAsEmpty=\"true\"</code> set, so the component value is <code>DateTime.Today</code> and the displayed value is <b>empty string</b></p><div>In this example, the data type of the second component is <b>non-nullable type</b>. Since the default value of the parameter <code>AutoToday</code> is <code>true</code> So even if the initial value is <code>DateTime.MinValue</code>, its display value is <code>DateTime.Today</code> Even when today is disabled, it is still displayed. If you need to display an <b>empty string</b>, please set <code>DisplayDisabledDayAsEmpty=\"true\"</code></div>",
    "DisableDayCallbackAllowNullDisplayText": "DateTime?",
    "DisableDayCallbackNotAllowNullDisplayText": "DateTime",
    "FeatureShowLunarIntro": "<code>ShowLunar</code> Whether to display the lunar calendar",
    "FeatureShowSolarTermIntro": "<code>ShowSolarTerm</code> Whether to display the 24 solar terms",
    "FeatureShowFestivalsIntro": "<code>ShowFestivals</code> Whether to display festivals",
    "FeatureShowHolidaysIntro": "<code>ShowHolidays</code> Whether to display holidays",
    "OnGetDisabledDaysCallbackEvent": "Disable date callback method",
    "AttrEnableDisabledDaysCache": "Whether to enable custom disabled date cache",
    "AttrDisplayDisabledDayAsEmpty": "Display disabled date as an empty string",
    "AttrFirstDayOfWeek": "The first day of the week"
  },
  "BootstrapBlazor.Server.Components.Samples.TimePickers": {
    "Title": "TimePicker",
    "Description": "Used to select or enter a timespan",
    "OnConfirmTitle": "Select any point in time",
    "OnConfirmIntro": "You can choose any time",
    "HasSecondsTitle": "Hide seconds",
    "HasSecondsIntro": "Whether to display or hide the seconds control",
    "TimeTitle": "Data is bound in both directions",
    "TimeIntro": "Click the confirm button to select the box value consistent with the text box value"
  },
  "BootstrapBlazor.Server.Components.Samples.ClockPickers": {
    "Title": "ClockPicker",
    "Description": "Select a time by dragging the watch needle",
    "BindValueTitle": "bind",
    "BindValueIntro": "By setting<code>IsAutoSwitch=\"false\"</code> to disable automatic switching of hour, minute, and stopwatch dial functions",
    "AutoSwitchText": "Whether to automatically switch the dial",
    "HasSecondsTitle": "Do not set the number of seconds",
    "HasSecondsIntro": "By setting<code>ShowSecond=\"false\"</code> to not display the second hand dial",
    "ShowMinuteTitle": "Do not set minutes",
    "ShowMinuteIntro": "By setting<code>ShowMinute=\"false\"</code>to not display the minute dial",
    "ShowClockScaleTitle": "Display dial scale",
    "ShowClockScaleIntro": "By setting<code>ShowClockScale=\"true\"</code> to display the dial scale",
    "IsAutoSwitchAttr": "Does it automatically switch between hours, minutes, and seconds",
    "ShowClockScaleAttr": "Is the dial scale displayed",
    "ShowMinuteAttr": "Is the minute displayed",
    "ShowSecondAttr": "Is seconds displayed"
  },
  "BootstrapBlazor.Server.Components.Samples.Editors": {
    "EditorsTitle": "Editor",
    "EditorsDescription": "Convert the entered text into <code>html</code> code snippets",
    "EditorsTips": "The <code>Editor</code> component is a secondary package of <a href='https://summernote.org/' target='_blank'><code>Summernote component</code></a>, such as If you need to use the localization function, please download the corresponding language pack from the official website and quote it by yourself. <code>zh-CN</code> <code>en-US</code> has been built in the required <code>css</code> <code>JavaScript</code> dynamically loaded on demand. If you edit too much content, <code>signalR</code> communication interruption may be triggered. Please adjust the <code>HubOptions</code> configuration.",
    "EditorNormalTitle": "Basic usage",
    "EditorNormalIntro": "The default rendering is <code>div</code> and it becomes a rich text edit box when clicked",
    "EditorNormalDescription": "Set the <code>IsEditor</code> attribute value to control whether the component defaults to <code>div</code> or <code>editor</code>",
    "EditorNormalDiv": "I am a normal <code>div</code> click and can’t edit",
    "EditorPlaceholderTitle": "Custom prompt message",
    "EditorPlaceholderIntro": "The prompt message when a null value is set by setting the <code>Placeholder</code> attribute",
    "EditorPlaceholderDescription": "The default prompt is <b>Edit after clicking</b>",
    "EditorIsEditorTitle": "Display as a rich text edit box by default",
    "EditorIsEditorIntro": "Set the component to be directly displayed as a rich text edit box by setting the <code>IsEditor</code> property. When uploading an image, you can get the image information through the <code>OnFileUpload</code> callback method",
    "EditorHeightTitle": "Custom height",
    "EditorHeightIntro": "Set the height of the component by setting the <code>Height</code> property",
    "EditorOnValueChangedTitle": "Two-way binding",
    "EditorOnValueChangedIntro": "In actual combat, two-way binding to <code>Value</code> automatically obtains the editing content of the client's rich text box in the background",
    "EditorOnValueChangedDescription": "Use <code>bind-Value</code> to bind the backend properties of <code>EditorValue</code> in two ways. After editing in the edit box, click the <b>Finish</b> button, and then enter the text box below. Show edited result",
    "EditorCustomerToolbarButtonsTitle": "Customize the extended edit box button",
    "EditorCustomerToolbarButtonsIntro": "Customize the extension of the edit box toolbar by setting the <code>CustomerPluginItems</code> property, and do the function by setting the <code>OnClickPluginItem</code> callback delegate",
    "EditorCustomerToolbarButtonsDescription": "In this example, two buttons are added to the toolbar by extending the <code>CustomerPluginItems</code> property. Click the button to pop up the <code>SweetAlert</code> modal box, click the modal box confirmation button and insert the text box A piece of content",
    "EditorToolbarItemsTitle": "Customize the rich text edit box of the toolbar",
    "EditorToolbarItemsIntro": "Customize the toolbar content by setting the <code>ToolbarItems</code> property. For the currently supported toolbar values, please refer to <a href='https://summernote.org/' target='_blank'>Summernote</a> Official website",
    "EditorToolbarItemsDescription": "In this example, by setting the <code>ToolbarItems</code> property, the default avaiLabel toolbar buttons are changed",
    "EditorSubmitTitle": "Show submit",
    "EditorSubmitIntro": "Use <code>ShowSubmit</code> control the <b>Submit</b> button display or not",
    "EditorSubmitDescription": "<code>ShowSubmit</code> The default value is <code>true</code> to display the submit button. The <code>OnValueChanged</code> callback method is triggered after the submit button is clicked on the design. This design greatly improves performance and saves server computing Force, after setting the value to <code>false</code>, it will use the <code>summernode</code> library <code>onChange</code> to trigger, which is applicable to the scene where the edited content needs to be obtained in real time",
    "Att1": "Prompt message when the value is empty",
    "Att1DefaultValue": "Click to edit",
    "Att2": "Whether to directly display as a rich text edit box",
    "AttrShowSubmit": "Whether show the submit button",
    "Att3": "Component height",
    "Att4": "Rich Text Box Toolbar Tool",
    "Att5": "Custom button",
    "DoMethodAsyncTitle": "Instance Method",
    "DoMethodAsyncIntro": "Call the instance method, please refer <a href='https://summernote.org/deep-dive'>summernote api</a>",
    "DoMethodAsyncDescription": "In this example, by setting the <code>ToolbarItems</code> property, the default available toolbar buttons are changed",
    "EditorEmptyPlaceholder": "Customize the prompt message for empty values",
    "EditorOnValueChangedLabel": "Show edit content:",
    "EditorOnValueChangedUpdateValue": "Changed value",
    "EditorOnValueChangedInitValue": "Initial value Test",
    "ToolTip1": "This is the tip of plugin1",
    "ToolTip2": "This is the tip of plugin2",
    "Swal1Title": "A pop-up window will pop up after clicking the plugin1 button",
    "Swal1Content": "After clicking the plug-in button, the window will pop up and confirm before proceeding to the next step.",
    "Ret1": "<div class='text-danger'>Data returned from plugin1</div>",
    "Swal2Title": "After clicking the plugin2 button, a pop-up window will appear",
    "Swal2Content": "After clicking the plug-in button, the window will pop up and confirm before proceeding to the next step.",
    "Ret2": "Data returned from plugin2",
    "DoMethodAsyncButton1": "Insert Html",
    "DoMethodAsyncButton2": "Update to  H2",
    "DoMethodAsyncButton3": "Insert Image",
    "DoMethodAsyncButton4": "Get Code",
    "DoMethodAsyncPasteHTML": "Here is the content inserted by the external button",
    "OnFileUploadAttribute": "File upload callback method"
  },
  "BootstrapBlazor.Server.Components.Samples.EditorForms": {
    "Title": "EditorForm",
    "Description": "Edit forms are automatically rendered through the bound data model",
    "SubDescription": "<code>EditorForm</code> component is a very useful component that, when editing data, simply assigns the <code>Model</code> property.",
    "EditorFormTips1": "The binding model automatically generates all properties by default, and you can change to not automatically build by setting <code>AutoGenerateAllItem</code>",
    "EditorFormTips2": "If you don't need to edit the columns, set the <code>Editable</code>, the default is <code>true</code> build editing components",
    "EditorFormTips3": "Complex edit columns, set up <code>EditTemplate</code> templates, and edit custom components",
    "EditorFormTips4": "The buttons in the form can be set up multiplely, just set the buttons <code>Buttons</code> template",
    "NormalTitle": "Basic usage",
    "NormalIntro": "By binding <code>TModel</code> data model, editable forms for individual fields of the model are automatically generated",
    "NormalDescription": "Directly bind the model <code>model</code>, setting the <b>Education</b><b>complete</b>field not to appear",
    "ValidateFormTitle": "Turn on data validation",
    "ValidateFormIntro": "Data compliance checks are implemented through nested <code>ValidateForm</code> components",
    "ValidateFormTips1": "The component is built into the <code>ValidateForm</code> to turn on data compliance checks, and <b>hobby</b>fields use the <code>EditTemplate</code> template to customize the component to render the data",
    "ValidateFormTips2": "Make the <code>birthday</code> field read-only by setting the <code>Readonly</code> property",
    "AutoGenerateTitle": "It is not automatically generated by default",
    "AutoGenerateIntro": "By setting the property <code>AutoGenerateAllItem</code> value of <code>false</code> the property is prohibited from being automatically generated, and the display property is controlled by setting the <code>FieldItems</code> internal collection",
    "SkipValidateTitle": "The components within the form component bind fields that are not model-independent",
    "SkipValidateIntro": "By setting the property <code>AutoGenerateAllItem</code> value of <code>false</code> the property is prohibited from being automatically generated, and the display property is controlled by setting the <code>FieldItems</code> internal collection",
    "ItemsPerRowTitle": "Set the number of controls displayed per row",
    "ItemsPerRowIntro": "Control the layout by setting the property values <code></code>ItemsPerRow",
    "ItemsPerRowDescription": "This example sets <code>ItemsPerRow=3</code> show 3 components per row",
    "AlignmentTitle": "Custom rendering component types",
    "AlignmentIntro": "Control the rendering component type by setting the <code>CompnentType</code> property values",
    "AlignmentTips1": "<code>inline</code> layout mode aligns the labels in the form right by setting the <code>LabelAlign=\"Alignment.Right\"</code>",
    "AlignmentTips2": "In layout mode, adjust the label width by setting the value of <code>LabelWidth</code>. If the global style variable <code>--bb-row-label-width</code> is not set by default, the default value is <b>120px</b>",
    "AlignmentTips3": "<code>Buttons</code> template you can nest <code>div</code> and style <code>text-end</code> align the right side of the button",
    "EditorFormAttributeTitle": "EditorItem Attribute",
    "Att1": "The currently bound data model",
    "Att2": "Bind column templates",
    "Att3": "Button template",
    "Att4": "Whether to display label",
    "Att5": "Whether to generate all properties",
    "Att6": "The number of components is displayed per row",
    "Att7": "Set how components are laid out",
    "Att8": "Label alignment in Inline layout mode",
    "Att9": "The current bound data value",
    "Att10": "Binding column data types",
    "Att11": "Whether to allow editing",
    "Att12": "Whether to read only",
    "Att13": "Edit the column's front label name",
    "Att14": "Column editing template",
    "LabelWidthAttr": "Label width",
    "IsDisplay": "Shown as Display component",
    "ShowLabelTooltip": "Show complete information when mouse hover over the label",
    "GroupBoxTitle": "An example of a form",
    "SubButtonText": "Submit",
    "TestName": "Tom",
    "TestAddress": "The test address",
    "AutoGenerateDescription": "In this example, by setting <code>the autoGenerate AllItem</code> value to <code>false</code>, turning off auto-generation, and rendering the form editing by manually adding two <code>EditoItem</code> edits",
    "SkipValidateDescription": "In some cases, the value of some columns in the form may be a secondary classification, etc., and you need to know the information for a level 1 classification, at which point the first-level classification requires additional components to render if <code>Select</code>, which is independent of the current context binding model <code>Model</code>, which requires that you set the <code>SkipValidate</code> value to <code>true</code>, turn off model validation for this component",
    "IsDisplayTitle": "Readonly Form",
    "IsDisplayIntro": "Make the entire form non-editable by setting <code>IsDisplay=\"true\"</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.FloatingLabels": {
    "FloatingLabelsTitle": "FloatingLabel",
    "FloatingLabelsSubtitle": "Enter characters with the mouse or keyboard",
    "FloatingLabelNormalTitle": "Basic usage",
    "FloatingLabelNormalIntro": "Provides basic text entry components",
    "FloatingLabelDisplayTextTitle": "One-way binding data",
    "FloatingLabelDisplayTextIntro": "Displays the value of variables within the component",
    "FloatingLabelBindValueTitle": "Client validation",
    "FloatingLabelBindValueIntro": "Check data validity and prompt automatically based on custom validation rules",
    "FloatingLabelBindValueDisplayText": "Client validation",
    "FloatingLabelPasswordTitle": "The password box",
    "FloatingLabelPasswordIntro": "By setting the property <code>type</code> value to <code>password</code> the password input box that is blocked by <code>*</code> after entering text",
    "FloatingLabelPasswordDescription": "In order to support more text box properties this component can be written directly to <code>type's 'email'</code> <code>type'number'</code> <code>type'phone'</code> and so on<code>httpl5</code> all property values supported by the new standard, the component does not set the <code>type</code> value using the default <code>type='text'</code>",
    "FloatingLabelPasswordDisplayText": "The password box",
    "FloatingLabelFormatStringTitle": "Generic binding",
    "FloatingLabelFormatStringIntro": "<code>BootstrapInput</code> component bidirectional binding value is generic, in this case a two-way binding of an <code>int</code> type value",
    "FloatingLabelFormatStringDisplayText": "Generic binding",
    "FloatingLabelFormatStringDiv1": "The binding value: {0}",
    "FloatingLabelDisabledTitle": "Disable",
    "FloatingLabelDisabledIntro": "When you set the <code>IsDisabled</code> property value to <code>true</code>, the component suppresses input",
    "FloatingLabelDisabledDisplayText": "Disable",
    "FloatingLabelFormatterTitle": "Custom format",
    "FloatingLabelFormatterIntro": "When you set the <code>FormatString</code> property value to <code>yyyy-MM-dd</code>, the component displays a time format of the year and day",
    "FloatingLabelFormatterDiv2": "Set up",
    "FloatingLabelFormatterDescription": "<code>The BootstrapInput</code> component binds <code>byte[]</code> array and formats it as an example of <code>base64</code> encoded string",
    "FloatingLabelFormatterDisplayText": "An array of bytes",
    "FloatingLabelsTestName": "Tom",
    "FloatingLabelsChildContent": "Validate the control",
    "FloatingLabelsShowLabel": "Whether to display the front label",
    "FloatingLabelsGroupBox": "Whether to display group box style",
    "FloatingLabelsDisplayText": "The front label displays text",
    "FloatingLabelsFormatString": "The numerically formatted string",
    "FloatingLabelsFormatter": "TableHeader instance",
    "FloatingLabelsType": "The type of control",
    "FloatingLabelsIsDisabled": "Whether to disable, Default is fasle",
    "FloatingLabelGroupBoxTitle": "GroupBox",
    "FloatingLabelGroupBoxIntro": "By setting <code>IsGroupBox=\"true\"</code>. Group box wrapper label"
  },
  "BootstrapBlazor.Server.Components.Samples.Inputs": {
    "InputsBaseUsage": "Basic usage",
    "InputsTitle": "Input",
    "InputsDescription": "Enter characters with the mouse or keyboard",
    "InputsNormalIntro": "Provides basic text entry components",
    "InputsNormalDescription": "You can set the <code>IsAutoFocus</code> whether to automatically get focus, and the components that are last executed when multiple text boxes set auto-focus will get focus",
    "InputsColorTitle": "Color",
    "InputsColorIntro": "Change the color of the text border by setting <code>Color</code>",
    "InputsKeyboardTitle": "Keyboard response",
    "InputsKeyboardIntro": "Using <code>OnEnterAsync</code> <code>OnEscAsync</code> callback delegates to respond to the <kbd>Enter</kbd> <kbd>ESC</kbd> keystrokes",
    "InputsPlaceholderTitle": "One-way binding data",
    "InputsPlaceholderIntro": "Displays the value of variables within the component",
    "InputsLabelsTitle": "Bind data in both directions",
    "InputsLabelsIntro": "Binding variables within a component, data is automatically synchronized",
    "InputsLabelsDescription": "when <code>BootstrapInput</code> components turn on bidirectional binding, the <code>Display/DisplayName</code> label value is automatically fetched based on the bound <code>Model</code> property value and appears as a <code>pre-Label</code>, by <code>DisplayText</code> Properties can customize the display of pre-labels, or turn off the display of pre-labels through the <code>ShowLabel</code> property",
    "InputsValidateFormTitle": "Client valiation",
    "InputsValidateFormIntro": "Check data validity and prompt automatically based on custom validation rules",
    "InputsValidateFormTips1": "When using bidirectional binding, you will automatically look for <code>the key</code> value  the resource file with a value of <code>{FieldName}.PlaceHolder</code> the corresponding value as <code>placeholder</code> shows that in this example, the <code>placeholder</code> value is the <code>Name.PlaceHolder</code> key corresponding value in the resource file<code>required</code> non-empty ",
    "InputsPasswordTitle": "The password box",
    "InputsPasswordIntro": "By setting the property <code>type</code> value to <code>password</code> the password input box that is blocked by <code>*</code> after entering text",
    "InputsPasswordDescription": "In order to support more text box properties this component can be written directly to <code>type='email'</code> <code>type='number'</code> <code>type='phone'</code> and so on<code>html5</code> all property values supported by the new standard, the component does not set the <code>type</code> value using the default <code>type='text'</code>",
    "InputsGenericTitle": "Generic binding",
    "InputsGenericIntro": "<code>BootstrapInput</code> component bidirectional binding value is generic, in this case a two-way binding of an int type value",
    "InputsGenericBindValue": "The binding value",
    "InputsDisabledTitle": "Disable",
    "InputsDisabledIntro": "When you set the <code>IsDisabled</code> property value to <code>true</code>, the component suppresses input",
    "InputsFormatStringTitle": "Custom format",
    "InputsFormatStringIntro": "When you set the <code>FormatString</code> property value to <code>yyyy-MM-dd</code>, the component displays a time format of the year and day",
    "InputsPassword2Title": "The password box",
    "InputsPassword2Intro": "Use the <code>BootstrapPassword</code> component",
    "InputsTrimTitle": "Trim",
    "InputsTrimIntro": "Use <code>IsTrim=\"true\"</code> to automatically trim white space when entering content",
    "TrimDescription": "The front and back spaces in the component will be trimmed when set <code>IsTrim</code> to <code>true</code>",
    "InputsOnInputTitle": "Fires when the value of the text box changes",
    "InputsOnInputIntro": "Use <code>UseInputEvent=\"true\"</code> to trigger when the value of the text box changes, used for key-by-key response occasions",
    "OnInputDescription": "The <code>ValueChanged</code> callback will be trigger when the keyboard is pressed if set the parameter <code>UseInputEvent</code> to <code>true</code>",
    "InputsAtt1": "Validate the control",
    "InputsAtt2": "Whether to display the front label",
    "InputsAtt3": "The front label displays text",
    "InputsAtt4": "Color",
    "InputsAtt5": "The numerically formatted string",
    "InputsAtt6": "TableHeader instance",
    "InputsAtt7": "The type of control",
    "InputsAtt8": "The user presses enter to call back the delegate",
    "InputsAtt9": "The user presses the Esc key to call back the delegate",
    "InputsAtt10": "Whether to disable Fasle by default",
    "InputsAtt11": "Whether to get the focus automatically Default is fasle",
    "IsSelectAllTextOnFocus": "Whether auto select the all text after focus",
    "IsSelectAllTextOnEnter": "Whether auto select the all text after presses enter",
    "SelectAllTextAsync": "Select the all text method",
    "ValidateRules": "Customer validation collection",
    "NormalPlaceHolder": "Please enter ...",
    "IsSelectAllTextOnFocusLabel": "Select all on focus",
    "IsSelectAllTextOnEnterLabel": "Select all on enter",
    "InputsKeyboardTips1": "Press the keyboard <kbd>Enter</kbd> or <kbd>Esc</kbd> test",
    "InputsKeyboardTips2": "Execute <code>@ref.SelectAllTextAsync()</code> method select the all text",
    "PlaceHolder": "Please enter ...",
    "InputsKeyboardLog": "The key triggers the current text box value",
    "InputsPlaceholderSpan": "One-way binding",
    "InputsLabelsDivider1": "Custom labels",
    "InputsLabelsTips1": "Set the <code>DisplayText</code> value to <b>custom label</b>",
    "InputLabelsText": "Custom labels",
    "InputsLabelsDivider2": "Occupants",
    "InputsLabelsTps2": "The value of <code>DisplayText</code>  is displayed when <code>ShowLabel</code> is <code>true</code>, regardless of whether the value is set",
    "InputsLabelsDivider3": "Do not occupy seats",
    "InputsLabelsTips3": "The value of <code>DisplayText</code> is not displayed when the <code>ShowLabel</code> is <code>false</code>",
    "TestName": "Tom",
    "InputsFormatStringSetting": "Set up",
    "InputsFormatStringTips": "The <code>BootstrapInput</code> component binds <code>byte[]</code> array and formats it as an example of <code>base64</code> encoded string",
    "UseInputEvent": "Whether use oninput event when bind-value",
    "IsTrim": "automatically trim white space when entering content",
    "ClearableTitle": "Clearable",
    "ClearableIntro": "By setting the <code>Clearable=\"true\"</code> parameter, a small <b>Clear</b> button will be displayed when the component gains focus or when the mouse hovers over it."
  },
  "BootstrapBlazor.Server.Components.Samples.InputNumbers": {
    "InputNumbersTitle": "InputNumber",
    "InputNumbersDescription": "Only standard numeric values are allowed, and custom ranges and other advanced features are supported",
    "InputNumbersNormalTitle": "Basic usage",
    "InputNumbersNormalIntro": "The <code>Numer</code> numeric type displays a text box, and the mobile side automatically pops up the numeric keypad",
    "InputNumbersRangeTitle": "Interval limit usage",
    "InputNumbersRangeIntro": "Set the <code>Max</code> <code>Min</code> to control the range of value intervals 1-10",
    "InputNumbersNullableTitle": "Nullable data type",
    "InputNumbersNullableIntro": "When binding to a data type that can be empty, the component allows empty strings. When inputting illegal data such as <code>1+2+3e</code>, the component UI value is an empty string",
    "InputNumbersShowButtonTitle": "Control button",
    "InputNumbersShowButtonIntro": "Set the <code>ShowButton</code> parameter to control whether the buttons are displayed to increase or decrease",
    "InputNumbersShowButtonDescription": "This example sets a maximum of 10 minimum value of 0",
    "InputNumbersStepTitle": "Custom steps",
    "InputNumbersStepIntro": "Set the <code>Step</code> parameter to control the increase or decrease in steps",
    "InputNumbersColorTitle": "Color",
    "InputNumbersColorIntro": "Set the <code>Color</code> parameter to customize the button color",
    "InputNumbersDateTypeTitle": "Data type",
    "InputNumbersDateTypeIntro": "This component uses generic support the underlying data type <code>int short long float double decimal</code>",
    "InputNumbersDisabledTitle": "Disable",
    "InputNumbersDisabledIntro": "When you set the <code>IsDisabled</code> property value to <code>true</code>, the component suppresses input",
    "InputNumbersValidateFormTitle": "The label is displayed",
    "InputNumbersValidateFormIntro": "When a component binds in both directions, it automatically determines whether label text is displayed based on the conditions",
    "InputNumbersValidateFormDescription": "The pre-label explicit rules are consistent with the <code>BootstrapInput</code> component of the > of the <a href=inputs'>[The portal]</a>",
    "InputNumbersAtt1": "The current value",
    "InputNumbersAtt2": "Maximum values can be allowed",
    "InputNumbersAtt3": "Minimum values can be allowed",
    "InputNumbersAtt4": "Step",
    "InputNumbersAtt5": "Whether to disable,Default is fasle",
    "InputNumbersAtt6": "Whether to display the front label",
    "InputNumbersAtt7": "The front label displays text",
    "InputNumbersStep1": "The step defaults to 1",
    "InputNumbersStep10": "The step defaults to 10",
    "InputNumbersStep0.1": "The step defaults to 0.1",
    "InputNumbersColorDescription1": "Show button",
    "InputNumbersColorDescription2": "No button",
    "InputNumbersValidateFormDivider1": "Bidirectional binding displays labels",
    "InputNumbersValidateFormDivider2": "Bidirectional bindings do not display labels",
    "InputNumbersValidateFormDivider3": "Custom  DisplayText",
    "InputNumbersValidateFormInputText": "Customization",
    "InputNumbersUseInputEventTitle": "OnInput",
    "InputNumbersUseInputEventIntro": "Component uses <code>OnInput</code> event for value updates"
  },
  "BootstrapBlazor.Server.Components.Samples.InputGroups": {
    "InputGroupsTitle": "InputGroup",
    "InputGroupsDescription": "Input can add labels and buttons before or after it to make as a group",
    "InputGroupsNormalTitle": "Basic usage",
    "InputGroupsNormalIntro": "Add a label before the <code>Input</code>, or Add a <code>Button</code> after the <code>Input</code>",
    "InputGroupsWidthTitle": "Custom Width",
    "InputGroupsWidthIntro": "Customize label width by setting <code>Width</code>parameters",
    "InputGroupsMultipleTitle": "Add multiple components",
    "InputGroupsMultipleIntro": "The <code>InputGroup</code> can have lots of children",
    "InputGroupsSelectTitle": "Add Select",
    "InputGroupsSelectIntro": "Add <code>Select</code> component to the <code>InputGroup</code>",
    "InputGroupsValidateFormTitle": "ValidateForm",
    "InputGroupsValidateFormIntro": "Inside <code>ValidateForm</code>",
    "InputGroupsNormalUserName": "UserName",
    "InputGroupsMultipleDistance": "Distance",
    "InputGroupsCheckboxTitle": "Checkbox",
    "InputGroupsCheckboxIntro": "Add <code>Checkbox</code> or <code>CheckboxList</code> to the <code>InputGroup</code>",
    "InputGroupsRadioTitle": "Radio",
    "InputGroupsRadioIntro": "Add <code>RadioList</code> to the <code>InputGroup</code>",
    "InputGroupsSlideButtonTitle": "SlideButton",
    "InputGroupsSlideButtonIntro": "Add <code>SlideButton</code> to the <code>InputGroup</code>",
    "InputGroupsDateTimePickerTitle": "DateTimePicker/Range",
    "InputGroupsDateTimePickerIntro": "Add <code>DateTimePicker</code> or <code>DateTimeRange</code> to the <code>InputGroup</code>",
    "InputGroupsDropdownTitle": "Dropdown",
    "InputGroupsDropdownIntro": "Add <code>Dropdown</code> to the <code>InputGroup</code>",
    "InputGroupsStatusText1": "CheckboxItem",
    "InputGroupsSwitchTitle": "Switch",
    "InputGroupsSwitchIntro": "Add <code>Switch</code> to the <code>InputGroup</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Markdowns": {
    "MarkdownsTitle": "Markdown",
    "MarkdownsDescription": "A text editor that provides support for the Markdown syntax",
    "MarkdownsNote": "If you edit too much content, <code>signalR</code> communication interruption may be triggered. Please adjust the <code>HubOptions</code> configuration.",
    "MarkdownsCss": "CSS file",
    "MarkdownsCssText": "dynamic import css",
    "MarkdownsJs": "JS file",
    "MarkdownsJsText": "dynamic import JavaScript",
    "MarkdownsLocalizationTipsTitle": "Localization",
    "MarkdownsLocalizationTips": "The component has a built-in Chinese to switch between current cultural information for Chinese",
    "MarkdownsNormalTitle": "Common usage",
    "MarkdownsNormalIntro": "The default setting",
    "MarkdownsNormalDescription": "Once you <code>Markdown</code> code, click on the relevant area below to display the data",
    "MarkdownsAsyncTitle": "Load the data asynchronously",
    "MarkdownsAsyncIntro": "Get <code>Markdown</code> display with <code>Webapi</code>",
    "MarkdownsAsyncButtonText": "load",
    "MarkdownsCommonPropertyTitle": "Common properties",
    "MarkdownsCommonPropertyIntro": "Change the default parameters",
    "MarkdownsCommonPropertyDescription": "Set the minimum height of the <code>Markdown</code> Editor <code>300px</code>, the default height <code>500px</code>, indicating that this is the <code>Markdown</code>, <code>tab</code> display, the default display of the WYSIWYG page",
    "MarkdownsCommonPropertyPlaceHolder": "This is Markdown",
    "MarkdownsIsViewerTitle": "Browser mode",
    "MarkdownsIsViewerIntro": "Simple browsing mode, not editable",
    "MarkdownsIsDarkTitle": "Dark mode",
    "MarkdownsIsDarkIntro": "Enable dark mode",
    "MarkdownsEnableHighlightTitle": "Enable the code highlighting plugin",
    "MarkdownsEnableHighlightIntro": "Enable plugins with <code>EnableHighlight=true</code>, highlighting using ``` followed by code formatting, and js highlight syntax for example ```js",
    "MarkdownsBrowserTitle": "External operation Markdown",
    "MarkdownsBrowserIntro": "Using APIs to manipulate the Editor from the outside, the specific API reference <a href='https://nhn.github.io/tui.editor/latest/ToastUIEditorCore'>tui.editor api</a>",
    "MarkdownsBrowserButtonText1": "Insert a line of text",
    "MarkdownsBrowserButtonText2": "Insert a picture",
    "MarkdownsBrowserButtonText3": "The cursor moves to the end",
    "MarkdownsBrowserText": "coconut palm",
    "MarkdownsValidateTitle": "Validate",
    "MarkdownsValidateIntro": "Check data validity and prompt automatically based on custom validation rules",
    "MarkdownsValidateSubmitText": "Save",
    "MarkdownString": "Test",
    "MarkdownsIsViewerDescription": "Set the <code>markdown</code> editor to browse-only mode, <code>IsViewer='true'</code>",
    "Att1": "Control height",
    "Att2": "The minimum height of the control",
    "Att3": "The interface displayed at initialization",
    "Att4": "Preview mode",
    "Att5": "UI language",
    "Att6": "Prompt information",
    "Att7": "Whether it is pure browsing mode",
    "Att8": "Whether it is dark mode",
    "Att9": "Whether code highlighting is enabled"
  },
  "BootstrapBlazor.Server.Components.Samples.MultiSelects": {
    "MultiSelectsTitle": "MultiSelect",
    "MultiSelectsDescription": "When you have multiple options, use the drop-down menu to present and provide a search for multiple choices",
    "MultiSelectColorTitle": "Color",
    "MultiSelectColorIntro": "Multi-select drop-down boxes in a variety of colors are available",
    "MultiSelectIsSingleLineTitle": "Single line display",
    "MultiSelectIsSingleLineIntro": "Make the component always render in one line by setting <code>IsSingleLine=\"true\"</code>",
    "MultiSelectIsSingleLineDescription": "When there are too many candidates, the component is laid out horizontally, and a horizontal scroll bar is displayed when the mouse is hovering over the component for data scrolling.",
    "MultiSelectBindingStringTitle": "A two-way binding value string",
    "MultiSelectBindingStringIntro": "Bind a comma string-splitting string",
    "MultiSelectBindingStringDescription": "<div>The <code>MultiSelect</code> component data source <code>Items</code> and <b>selected values</b> the <code>SelectItemsValue</code> support bidirectional binding;In this example, the <code>SelectItemsValue</code> variable by binding bidirectionally, and chooses to change its value through the drop-down box. </div>",
    "MultiSelectBindingCollectionTitle": "A collection of bidirectional binding values",
    "MultiSelectBindingCollectionIntro": "Bind a generic <code>a collection of IEnumerable<T></code>",
    "MultiSelectBindingCollectionDescription": "In this example, the <code>SelectArrayValues</code> collection variable by binding bidirectionally, and selects to change its value through the drop-down box",
    "MultiSelectBindingNumberTitle": "An array of two-way bound values",
    "MultiSelectBindingNumberIntro": "Bind an array <code>int[]</code>",
    "MultiSelectBindingNumberDescription": "In this example, an array variable <code>SelectedIntArrayValues</code>  selected by a bidirectional binding, selects to change its value through a drop-down box",
    "MultiSelectBindingEnumCollectionTitle": "Bidirectional binding enumerates the collection",
    "MultiSelectBindingEnumCollectionIntro": "Bind a generic a collection of <code>IEnumerable<Enum></code>",
    "MultiSelectBindingEnumCollectionDescription": "In this example, by binding <code>SelectEnumValues</code> collection variables in both directions, you choose to change their values through the drop-down box, <b>and you do not need to set the <code>Items</code> parameter when enumerating</b>type, the added feature is that the component tries to find resource files or <code>DisplayAttribute</code> And <code>DescriptionAttribute</code> labels attempt local translation, such as this example when switching to <b>Chinese</b> enumerates the values <b>elementary school</b><b>middle school </b>",
    "MultiSelectSearchTitle": "Search function",
    "MultiSelectSearchIntro": "Turn on search by setting the <code>ShowSearch</code> value",
    "MultiSelectSearchDescription": "In this example, the search callback delegate method is set <code>onSearchTextChanged</code> to customize search results if the display text is used internally to make a fuzzy match when not set",
    "MultiSelectFlagsEnumTitle": "Flags Enum",
    "MultiSelectFlagsEnumIntro": "When the binding value is an <code>Enum</code> data type, if it has a <code>Flags</code> tag, multiple selection mode is automatically supported",
    "MultiSelectGroupTitle": "Grouping",
    "MultiSelectGroupIntro": "Alternatives are presented in groups",
    "MultiSelectDisableTitle": "Disable the feature",
    "MultiSelectDisableIntro": "Set the component disabled state by setting the <code>IsDisabled</code> value",
    "MultiSelectDisableDescription": "The component does not respond when the state is disabled",
    "MultiSelectOptionChangeTitle": "Events when the option changes",
    "MultiSelectOptionChangeIntro": "Get the currently selected data set change event by setting the <code>onSelectedItemsChanged</code> callback method by setting",
    "MultiSelectClientValidationTitle": "Client validation",
    "MultiSelectClientValidationIntro": "When the drop-down box is not selected, it is blocked when the submit button is clicked.",
    "MultiSelectClientValidationDescription": "When built into the <code>ValidateForm</code> component, client authentication is automatically turned on, and the binding model has <code>Required</code> tags",
    "MultiSelectDisplayLabelTitle": "The label is displayed",
    "MultiSelectDisplayLabelIntro": "When a component binds in both directions, it automatically determines whether label text is displayed based on the conditions",
    "MultiSelectDisplayLabelDescription": "The pre-label explicit rules are consistent with the <code>BootstrapInput</code> component of the of the <a href='input'>[The portal]</a>",
    "MultiSelectVeryLongTextTitle": "Options for extra-long text",
    "MultiSelectVeryLongTextIntro": "The candidate text is particularly long",
    "MultiSelectButtonTitle": "Full and reverse buttons",
    "MultiSelectButtonIntro": "By setting <code>ShowToolbar</code> value settings component displays the toolbox, by setting <code>ShowDefaultButtons</code> value settings component displays the default buttons, by setting <code>ShowSearch</code> value settings component displays the search box",
    "MultiSelectMaxMinTitle": "Set the maximum and minimum number of options",
    "MultiSelectMaxMinIntro": "Set the limit on the number of options available to components by setting the <code>max</code> <code>Min</code> values",
    "MultiSelectExpandButtonTitle": "Extend the toolbar button",
    "MultiSelectExpandButtonIntro": "Customize features by setting <code>ButtonTemplate</code> custom toolbar buttons",
    "MultiSelectCascadingTitle": "Cascading bindings",
    "MultiSelectCascadingIntro": "The second drop-down box dynamically populates the content by selecting the different options for the first drop-down box.",
    "MultiSelectCascadingDescription": "In this example, clicking on the first drop-down box allows you to get the data source for the second multi-box by asynchronous means, and after assigning, call <code>StateHasChanged</code> to re-render the <b>multi-box </b>",
    "MultiSelectItemTemplateTitle": "Item Template",
    "MultiSelectItemTemplateIntro": "customer item template by set <code>ItemTemplate</code>",
    "MultiSelectDisplayTemplateTitle": "Display Template",
    "MultiSelectDisplayTemplateIntro": "customize display template by set <code>DisplayTemplate</code>",
    "MultiSelectPopoverTitle": "Popover dropdown menu",
    "MultiSelectPopoverIntro": "Set <code>IsPopover</code> to <b>true</b>, use <code>popover</code> render UI prevent The dropdown menu cannot be fully displayed because the parent container is set to <code>overflow: hidden</code>",
    "MultiSelectsAttribute_ShowLabel": "Whether to display the front label",
    "MultiSelectsAttribute_ShowCloseButton": "Whether to display the close button from label",
    "MultiSelectsAttribute_ShowToolbar": "Whether to display the function button",
    "MultiSelectsAttribute_ShowDefaultButtons": "Whether to display the default feature button",
    "MultiSelectsAttribute_DisplayText": "The front label displays text",
    "MultiSelectsAttribute_PlaceHolder": "The place-in display text when not selected",
    "MultiSelectsAttribute_PlaceHolder_DefaultValue": "Click to multi-select ...",
    "MultiSelectsAttribute_Class": "Style",
    "MultiSelectsAttribute_Color": "Color",
    "MultiSelectsAttribute_IsDisabled": "Whether to disable it",
    "MultiSelectsAttribute_IsSingleLine": "Whether to display in a single line",
    "MultiSelectsAttribute_Items": "The data collection",
    "MultiSelectsAttribute_ButtonTemplate": "Extend the button template",
    "MultiSelectsAttribute_ItemTemplate": "The template of selected item",
    "MultiSelectsAttribute_IsFixedHeight": "Fix the control height",
    "MultiSelectsEvent_OnSelectedItemsChanged": "This event is triggered when the drop-down option changes",
    "MultiSelectsEvent_OnSearchTextChanged": "Call back this method when the search text changes",
    "MultiSelectAdd": "Add",
    "MultiSelectDecrease": "Decrease",
    "MultiSelectClean": "Clear",
    "MultiSelectClientValidationSubmit": "Submit",
    "MultiSelectDisplayLabelShowLabel": "Bidirectional binding displays labels",
    "MultiSelectDisplayLabelHideLabel": "Bidirectional bindings do not display labels",
    "MultiSelectDisplayLabelCustomDisplayText": "Customize DisplayText",
    "MultiSelectDisplayLabelCustomText": "Custom name",
    "MultiSelectExpandButtonText": "Test",
    "MultiSelectMaxMinMax": "You can select up to two options",
    "MultiSelectMaxMinMin": "Select at least two options",
    "MultiSelectSearchLog": "Search for text",
    "MultiSelectVeryLongTextDisplayText": "Extra long text",
    "MultiSelectOptionChangeLog": "Select the collection of items",
    "MultiSelectIsEditableTitle": "Editable",
    "MultiSelectIsEditableIntro": "Make the component editable by setting the <code>IsEditable</code> parameter",
    "MultiSelectIsEditableDescription": "By setting the <code>EditSubmitKey</code> parameter, you can specify whether to submit via <kbd>Enter</kbd> or <kbd>Space</kbd>",
    "MultiSelectVirtualizeTitle": "Virtualize",
    "MultiSelectVirtualizeIntro": "Set <code>IsVirtualize</code> to <b>true</b> enable virtual scroll for large data",
    "MultiSelectVirtualizeDescription": "Component virtual scrolling supports two ways of providing data through <code>Items</code> or <code>OnQueryAsync</code> callback methods",
    "MultiSelectsAttribute_ShowSearch": "Whether to display the search box",
    "MultiSelectsAttribute_IsVirtualize": "Wether to enable virtualize",
    "MultiSelectsAttribute_DefaultVirtualizeItemText": "The text string corresponding to the first load value when virtual scrolling is turned on is separated by commas",
    "MultiSelectGenericTitle": "Generic",
    "MultiSelectGenericIntro": "Data source <code>Items</code> supports generics when using <code>SelectedItem&lt;TValue&gt;</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Radios": {
    "RadiosTitle": "Radio",
    "RadiosDescription": "Single in a set of alternatives",
    "RadiosNormalTitle": "Basic usage",
    "RadiosNormalIntro": "Select selectors are recommended because the options are visible by default and should not be too many",
    "RadiosDisableTitle": "Turn off the radio box",
    "RadiosDisableIntro": "The unavailable status of the radio box is <code>IsDisabled='true'</code>",
    "RadiosLabelTitle": "Label text",
    "RadiosLabelIntro": "The radio box displays text",
    "RadiosLabelText": "Button group",
    "RadiosBindingTitle": "Bind data in both directions",
    "RadiosBindingIntro": "Binding variables within a component, data automatically synchronized, binding an array of selectedItem types",
    "RadiosVerticalTitle": "Vertical arrangement",
    "RadiosVerticalIntro": "Make the components vertically arranged internally by setting the <code>IsVertical</code>",
    "RadiosEnumTitle": "The binding enumeration type",
    "RadiosEnumIntro": "You do not need to set up <code>Items</code> <code>Value</code> by binding both directions",
    "RadiosEnumDescription": "By setting the <code>IsAutoAddNullItem</code> automatically adds the <b>empty value</b>option, and by setting the <code>NullItemText</code> the custom <b>null</b>option",
    "RadiosEnumText": "null",
    "RadiosColorTitle": "Color",
    "RadiosColorIntro": "Change the component background color by setting the <code>Color</code> property",
    "RadiosIsButtonTitle": "Button Radio",
    "RadiosIsButtonIntro": "Set <code>IsButton</code> to <code>True</code> make the radio item display as Button",
    "RadiosItemTemplateTitle": "ItemTemplate",
    "RadiosItemTemplateIntro": "Set <code>ItemTemplate</code> for customer the item UI",
    "RadiosDisplayText": "Displays text",
    "RadiosNullItemText": "The empty value displays the text",
    "RadiosIsDisabled": "Whether to disable it",
    "RadiosIsVertical": "Whether it is vertically distributed",
    "RadiosIsAutoAddNullItem": "Whether the binding automatically adds an empty value when the type is enumerated",
    "RadiosItems": "Bind the data source",
    "RadiosIsButton": "Display as button style",
    "RadiosGroupName": "Group name",
    "RadiosOnSelectedChangedEvent": "Call back this method when the check box state changes",
    "RadiosLog1": "The component selects the value:",
    "RadiosLog2": "The value is displayed:",
    "RadiosLog3": "Component value:",
    "RadiosItem1": "Option one",
    "RadiosItem2": "Option two",
    "RadiosAdd1": "Beijing",
    "RadiosAdd2": "Shanghai",
    "RadioListGenericTitle": "Generic List",
    "RadioListGenericIntro": "Enable generic support by using the <code>RadioListGeneric</code> component with <code>SelectedItem&lt;TValue&gt;</code>",
    "RadiosAutoSelectFirstWhenValueIsNullTitle": "AutoSelectFirst",
    "RadiosAutoSelectFirstWhenValueIsNullIntro": "The selection of <code>RadioList</code> candidates can be controlled by setting the <code>AutoSelectFirstWhenValueIsNull</code> parameter. The default value of the parameter is <b>true</b>, which means that if the current value of the component is inconsistent with the value in the candidate, the first candidate is automatically selected. If it is set to <b>false</b>, all candidates will be unselected.",
    "RadiosAutoSelectFirstWhenValueIsNull": "Whether to select the first candidate by default when the value is not null"
  },
  "BootstrapBlazor.Server.Components.Samples.Rates": {
    "RatesTitle": "Rate",
    "RatesDescription": "Scoring components",
    "RatesNormalTitle": "Basic usage",
    "RatesNormalIntro": "<code>Rate</code> component represents the numeric level with 1 - 5 stars, and the value can be bound in both directions in the background by <code>bind-Value</code> Through the <code>Rate</code> component changes its value, the mouse swipe changes the value, and confirms its value when you click on the star",
    "RatesDisableTitle": "Disable",
    "RatesDisableIntro": "Disable components by setting <code>IsDisable</code> property to <code>true</code>",
    "RatesReadOnlyTitle": "Readonly",
    "RatesReadOnlyIntro": "Readonly components by setting <code>IsReadonly</code> property to <code>true</code>",
    "RatesIconTitle": "Item Template",
    "RatesIconIntro": "Set <code>ItemTemplate</code> and <code>custom-rate</code> custom the UI",
    "RatesSwitchOn": "Disable",
    "RatesSwitchOff": "Enable",
    "RatesValue": "The component value",
    "RatesIsDisabled": "Whether to disable the default value is false",
    "RatesIsReadonly": "Whether to readonly the default value is false",
    "RatesEvent1": "Call back the delegate when the value changes",
    "RatesMax": "MaxValue",
    "RatesItemTemplate": "ItemTemplate",
    "RatesLog": "Star rating:",
    "RatesCry": "Cry",
    "RatesTear": "Tear",
    "RatesSmile": "Smile",
    "RatesSurprise": "Surprise",
    "RatesGrin": "Grin",
    "RatesShowValueTitle": "Show value",
    "RatesShowValueIntro": "By setting <code>ShowValue=\"true\"</code> to show the value",
    "RatesIsWrapTitle": "Wrap",
    "RatesIsWrapIntro": "By setting <code>IsWrap=\"true\"</code> set to wrap. default value is not wrap",
    "RatesIsWrap": "Wrap",
    "RatesShowValue": "Show value"
  },
  "BootstrapBlazor.Server.Components.Samples.Selects": {
    "SelectsTitle": "Select",
    "SelectsDescription": "When there are too many options, use the drop-down menu to present and select content",
    "SelectsNormalTitle": "Select drop-down selection box",
    "SelectsNormalIntro": "Drop-down selection boxes are available in a variety of colors",
    "SelectsNormalDescription": "In this example, the first drop-down box does not have a <code>Value</code> bidirectional binding, so you only change when you select different options, and the remaining drop-down boxes share the same data source <code>Items</code> and bind <code>Value</code> values in both directions, changing together when you select different options",
    "SelectsDisableTitle": "Select disables the drop-down box",
    "SelectsDisableIntro": "Selector unavailable state",
    "SelectsDisableOption": "The options in the drop-down box <b>disable</b> the example",
    "SelectsBindingTitle": "Select two-way binding",
    "SelectsBindingIntro": "The values in the text box change as you change the drop-down option by binding the <code>Model.Name</code> property to the component with <code>Select</code>",
    "SelectsClearableTitle": "Clearable",
    "SelectsClearableIntro": "You can clear Select using a clear icon",
    "SelectsClearableDesc": "Cannot be a null integer. Setting <code>IsClearable</code> has no effect. Its default value is <b>0</b>",
    "SelectsBindingSelectedItemTitle": "Select two-way binding SelectItem type",
    "SelectsBindingSelectedItemIntro": "The values in the text box change as you change the drop-down option by binding the <code>SelectItem</code> property to the component with <code>Select</code> .",
    "SelectsCascadingTitle": "Select cascading binding",
    "SelectsCascadingIntro": "The second drop-down box dynamically populates the content by selecting the different options for the first drop-down box.",
    "SelectsCascadingButtonText1": "In Dialog",
    "SelectsClientValidationTitle": "Select client validation",
    "SelectsClientValidationIntro": "When the drop-down box is not selected, it is blocked when the submit button is clicked.",
    "SelectsOption1": "Please select ...",
    "SelectsOption2": "Beijing",
    "SelectsOption3": "Shanghai",
    "SelectsOption4": "Guangzhou",
    "SelectsClientValidationButtonText2": "Submit",
    "SelectsGroupTitle": "Grouping",
    "SelectsGroupIntro": "Alternatives are presented in groups",
    "SelectsGuidTitle": "The binding generic is the Guid structure",
    "SelectsGuidIntro": "The component binding value is an example of a Guid structure",
    "SelectsDisplayLabelTitle": "The label is displayed",
    "SelectsDisplayLabelIntro": "When a component binds in both directions, it automatically determines whether label text is displayed based on the conditions",
    "SelectsDisplayLabelDescription": "The pre-label explicit rules are consistent with the <code>BootstrapInput</code> component of the  of the <a href='input'>[The portal]</a>",
    "SelectsDisplayLabelDivider1": "Bidirectional binding displays labels",
    "SelectsDisplayLabelDivider2": "Bidirectional bindings show that bidirectional bindings do not display labels",
    "SelectsDisplayLabelDivider3": "Customize DisplayText",
    "SelectsDisplayLabelSelectText": "Custom city",
    "SelectsStaticTitle": "Static data",
    "SelectsStaticIntro": "Hard-coded writing directly inside the <code>Select</code> component is suitable for static data drop-down boxes",
    "SelectsEnumTitle": "Enumerate the data",
    "SelectsEnumIntro": "an example of a type enumerated a <code>select</code> component binding",
    "SelectsEnumDescription1": "Enumeration When the binding value is an empty enumeration type, the component automatically adds preferences internally through the <code>PlaceHolder</code> value, and when the <code>PlaceHolder</code> value is not set, <b>please select ... </b>as a preference, and this example binds <code>the EnumEducation</code> enumeration type data",
    "SelectsEnumDescription2": "Setting <code>PlaceHolder</code> is not valid when the binding value is an enumerated type",
    "SelectsEnumSelectText1": "Can be empty",
    "SelectsEnumSelectText2": "Not empty",
    "SelectsEnumSelectText3": "Using enum integer values ​​as Items",
    "SelectsNullableTitle": "The binding can be an empty type",
    "SelectsNullableIntro": "<code>an example of the Select</code> component binding <code>int?</code> type",
    "SelectsNullableDescription": "When the first option is selected, the binding value <code>SelectIntItem</code> to <code>null</code>",
    "SelectsNullableBooleanTitle": "The binding can be an empty Boolean type",
    "SelectsNullableBooleanIntro": "an example of the <code>bool?</code> type of <code>select</code> component binding",
    "SelectsNullableBooleanDescription1": "Can be used for the empty boolean type more than in the conditional search box",
    "SelectsNullableBooleanDescription2": "When the first option is selected, the binding value <code>SelectIntItem</code> to <code>null</code>",
    "SelectsCustomTemplateTitle": "Custom option templates",
    "SelectsCustomTemplateIntro": "By setting the <code>ItemTemplate</code> you can customize the option rendering style",
    "SelectsShowSearchTitle": "Drop-down box with search box",
    "SelectsShowSearchIntro": "Controls whether the search box is displayed by setting the <code>ShowSearch</code> property, which is not displayed by default <b>false</b>. You can set the <code>IsAutoClearSearchTextWhenCollapsed</code> parameter to control whether the text in the search box is automatically cleared after the drop-down box is collapsed. The default value is <b>false</b>.",
    "SelectsConfirmSelectTitle": "Drop-down box with confirmation",
    "SelectsConfirmSelectIntro": "Prevent the current value from changing by setting the <code>OnBeforeSelectedItemChange</code> delegate or setting the <code>ShowSwal</code> parameter to <code>true</code>.",
    "SelectConfirmSelectDesc1": "Set the <code>OnBeforeSelectedItemChange</code> callback method, and pop up a window in the callback method to confirm whether to change the value. If it returns <code>true</code>, the value will be changed, otherwise it will not be changed.",
    "SelectConfirmSelectDesc2": "Set <code>ShowSwal=\"true\"</code> and then confirm the value of the <code>SwalTitle</code> <code>SwalContent</code> parameter using the built-in popup window. In the callback method, you can confirm whether to change the value.",
    "SelectsTimeZoneTitle": "Timezone",
    "SelectsTimeZoneIntro": "Display data of Timezone",
    "SwalTitle": "The drop-down box value changes",
    "SwalContent": "Are you sure you want to change the option value?",
    "SwalFooter": "Click Confirm to change the option value and select Cancel to leave the value unchanged",
    "SelectsShowLabel": "Whether to display the front label",
    "SelectsShowSearch": "Whether to display the search box",
    "SelectsIsAutoClearSearchTextWhenCollapsed": "Whether to automatically clear the search bar when the drop-down box is collapsed",
    "SelectsDisplayText": "The front label displays text",
    "SelectsClass": "Style",
    "SelectsColor": "Color",
    "SelectsIsDisabled": "Whether to disable it",
    "SelectsItems": "The data collection",
    "SelectItems": "Static data templates",
    "SelectsItemTemplate": "The data options template",
    "SelectsChildContent": "The data template",
    "SelectsCategory": "The dialog icon",
    "SelectsContent": "The contents of the dialog box",
    "SelectsContentDefaultValue": "Are you sure you want to change the current value?",
    "SelectsDisableItemChangedWhenFirstRender": "Prohibit triggering the OnSelectedItemChanged callback method on first render",
    "SelectsOnSelectedItemChanged": "This event is triggered when the drop-down option changes",
    "SelectsOnBeforeSelectedItemChange": "This event is triggered before the drop-down option changes",
    "SelectsPlaceHolder": "Not selected",
    "SelectsDisplayTemplateTitle": "Display Template",
    "SelectsDisplayTemplateIntro": "Custom <code>UI</code> of display template",
    "SelectsPopoverTitle": "Popover dropdown menu",
    "SelectsPopoverIntro": "Set <code>IsPopover</code> to <b>true</b>, use <code>popover</code> render UI prevent The dropdown menu cannot be fully displayed because the parent container is set to <code>overflow: hidden</code>",
    "SelectsIsEditableTitle": "Editable",
    "SelectsIsEditableIntro": "By setting <code>IsEditable=\"true\"</code> to make the component editable",
    "SelectsIsEditableDesc": "After the editable function is enabled, if the input value is not in the candidate items, the new value can be returned through the <code>TextConvertToValueCallback</code> callback method, and the <code>Items</code> data source can be updated through the <code>OnInputChangedCallback</code> callback to prevent the input value from being lost after the page is refreshed.",
    "SelectsVirtualizeTitle": "Virtualize",
    "SelectsVirtualizeIntro": "Set <code>IsVirtualize</code> to <b>true</b> enable virtual scroll for large data",
    "SelectsVirtualizeDescription": "Component virtual scrolling supports two ways of providing data through <code>Items</code> or <code>OnQueryAsync</code> callback methods",
    "SelectsGenericTitle": "Generic",
    "SelectsGenericIntro": "Data source <code>Items</code> supports generics when using <code>SelectedItem&lt;TValue&gt;</code>",
    "SelectsGenericDesc": "<p>Please refer to <a href=\"https://github.com/dotnetcore/BootstrapBlazor/issues/4497?wt.mc_id=DT-MVP-5004174\" target=\"_blank\">Design Ideas</a> to understand this feature. In this example, by selecting the drop-down box option, the value obtained is the <code>Foo</code> instance, and the value displayed in the text box on the right is the <code>Address</code> value of the <code>Foo</code> attribute</p><p>In this example, <code>IsEditable=\"true\"</code> and <code>TextConvertToValueCallback</code> parameters are set. When a <code>Foo</code> that does not exist in the original data source is entered, a new <code>Foo</code> instance is added to the data source in the <code></code> callback method</p>",
    "SelectsOnInputChangedCallback": "Callback method for converting input text into corresponding Value in edit mode",
    "TextConvertToValueCallback": "Callback method when input text changes in edit mode",
    "SelectsIsEditable": "Whether editable",
    "SelectsIsVirtualize": "Wether to enable virtualize",
    "SelectsDefaultVirtualizeItemText": "The text string corresponding to the first load value when virtual scrolling is turned on is separated by commas",
    "SelectsShowSwal": "Whether show the swal confirm popup"
  },
  "BootstrapBlazor.Server.Components.Samples.Sliders": {
    "SlidersTitle": "Slider",
    "SlidersDescription": "Select within a fixed interval by dragging the slider",
    "SlidersNormalTitle": "Basic usage",
    "SlidersNormalIntro": "Change the current value as you drag the slider",
    "SlidersRangeTitle": "Range",
    "SlidersIsDisabledTitle": "Disabled",
    "SlidersIsDisabledIntro": "Disable components by setting <code>IsDisabled=\"true\"</code>",
    "SlidersRangeIntro": "Auto generate <code>min</code> <code>max</code> by set <code>RangeAttribute</code>",
    "SlidersIsDisabled": "Whether to disable it",
    "SlidersValue": "The current value of the component",
    "SlidersValueChanged": "ValueChanged callback method"
  },
  "BootstrapBlazor.Server.Components.Samples.Switches": {
    "SwitchesTitle": "Switch",
    "SwitchesDescription": "The most common switching applications are available",
    "SwitchesNormalTitle": "Basic usage",
    "SwitchesNormalIntro": "Click the button to switch statuses",
    "SwitchesNormalDescription": "Click the first switch to output the log with value",
    "SwitchesOnText": "On",
    "SwitchesOffText": "Off",
    "SwitchesDisableTitle": "Disable the state",
    "SwitchesDisableIntro": "Control the unavailable state of the component by setting the <code>IsDisabled</code> property",
    "SwitchesColorTitle": "Switch color",
    "SwitchesColorIntro": "Set the switch status color by setting the <code>OnColor</code> <code>OffColor</code> property values",
    "SwitchesBindingTitle": "Two-way binding",
    "SwitchesBindingIntro": "Binding variables within a component, data is automatically synchronized",
    "SwitchesBindingDescription1": "when the <code>Switch</code> component turns on bidirectional binding, the <code>DisplayName</code> label value is automatically obtained based on the bound <code>Model</code> property value and appears as a pre-<code>Label</code>, which can be customized to display the pre-label through the <code>DisplayText</code> property, or through the <code>ShowLabel</code> property turns off the display of the prelabel",
    "SwitchesBindingDescription2": "The pre-label explicit rules are consistent with the <code>BootstrapInput</code> component  of the <a href='input'>[The portal]</a>",
    "SwitchesBindingDisplayText1": "An example of a two-way binding",
    "SwitchesBindingDivText1": "The binding value",
    "SwitchesBindingDividerText1": "Custom labels",
    "SwitchesBindingTips1": "Set the <code>DisplayText</code> value to <b>custom label </b>",
    "SwitchesBindingDisplayText2": "Custom labels",
    "SwitchesBindingDividerText2": "Occupants",
    "SwitchesBindingTips2": "The value of <code>DisplayText</code> is displayed when <code>ShowLabel</code> is <code>true</code>, regardless of whether the value is set",
    "SwitchesBindingDividerText3": "Do not occupy seats",
    "SwitchesBindingTips3": "The value of <code>DisplayText</code> is not displayed when the <code>ShowLabel</code> is <code>false</code>",
    "SwitchesBindingDisplayText3": "Do not display",
    "SwitchesInnerTextTitle": "Displays built-in text",
    "SwitchesInnerTextIntro": "By setting <code>ShowInnerText</code> property control component displays built-in text",
    "SwitchesInnerTextDescription": "By setting the <code>onInnerText</code> <code>OffInnerText</code> property to change the built-in text, a Chinese character is recommended by default to customize the component width to increase the amount of built-in text",
    "SwitchesInnerTextLabelText1": "Default text:",
    "SwitchesInnerTextLabelText2": "Custom text:",
    "SwitchesInnerTextOnInnerText": "Be",
    "SwitchesInnerTextOffInnerText": "Not",
    "SwitchesNullableTitle": "Can be an empty type switch",
    "SwitchesNullableIntro": "Control the default value of the <code>Null</code> value by setting the <code>DefaultValueWhenNull</code> property, which is <code>false</code> when not set",
    "SwitchesAttributeClass": "Style",
    "SwitchesAttributeHeight": "Control height",
    "SwitchesAttributeIsDisabled": "Whether to disable it",
    "SwitchesAttributeOffColor": "Off color settings",
    "SwitchesAttributeOnColor": "Turn on the color settings",
    "SwitchesAttributeOnTextAttr": "The text is displayed when component On",
    "SwitchesAttributeOffTextAttr": "The text is displayed when the component is off",
    "SwitchesAttributeOnInnerTextAttr": "Component On has built-in display text",
    "SwitchesAttributeOffInnerTextAttr": "The component is built-in to display text when off",
    "SwitchesAttributeOnInnerTextDefaultValue": "On",
    "SwitchesAttributeOffInnerTextDefaultValue": "Off",
    "SwitchesAttributeShowInnerText": "Whether to display the built-in display text",
    "SwitchesAttributeWidth": "The width of the component",
    "SwitchesAttributeValue": "Get the value",
    "SwitchesAttributeShowLabel": "Whether to display the front label",
    "SwitchesAttributeDisplayText": "The front label displays text",
    "SwitchesAttributeOnValueChanged": "Call back the delegate method when the value changes",
    "SwitchesEventValueChanged": "Gets the value of the selection change"
  },
  "BootstrapBlazor.Server.Components.Samples.TextAreas": {
    "TextAreaPlaceHolder": "Please enter ...",
    "TextAreaTitle": "Textarea",
    "TextAreaSubTitle": "Used to enter a large amount of text",
    "TextAreaNormalTitle": "Basic usage",
    "TextAreaNormalIntro": "A large amount of text is acceptable",
    "TextAreaLabel": "Basic usage",
    "TextAreaDisableTitle": "Disable",
    "TextAreaDisableIntro": "When you set the <code>IsDisabled</code> property value to <code>true</code>, the component suppresses input",
    "TextAreaBindWayBindValue": "The binding value",
    "TextAreaReadOnlyTitle": "Readonly",
    "TextAreaReadOnlyIntro": "When you set the <code>readonly</code> property, the component prohibits input",
    "TextAreaHeightTitle": "Height",
    "TextAreaHeightIntro": "When you set the <code>rows</code> property, component initialization displays a fixed row height",
    "TextAreaBindWayTitle": "Two-way binding",
    "TextAreaBindWayIntro": "Binding variables within a component, data is automatically synchronized",
    "TextAreaShowLabel": "Whether to display the front label",
    "TextAreaDisplayText": "The front label displays text",
    "TextAreaIsDisabled": "Whether to disable Default is fasle",
    "TextAreaScrollTitle": "Content scrolling",
    "TextAreaScrollIntro": "Scroll to bottom/top/position",
    "TextAreaMockChat": "Mock chat ",
    "TextAreaMockChatRun": "Mock chat Run",
    "TextAreaMockChatStop": "Mock chat Stop",
    "TextAreaScrollToBottom": "Scroll to bottom",
    "TextAreaScrollToTop": "Scroll to top",
    "TextAreaScrollTo": "Scroll +20",
    "TextAreaAutoScroll": "Automatic scrolling",
    "TextAreaUseShiftEnterTitle": "Shift Enter",
    "TextAreaUseShiftEnterIntro": "By setting <code>UseShiftEnter=\"true\"</code> you can start using <kbd>Shift</kbd> + <kbd>Enter</kbd> for line breaks, which is suitable for dialog applications.",
    "TextAreaUseShiftEnterPlaceHolder": "Please enter some text, Enter sends Shift + Enter line break",
    "TextAreaUseShiftEnter": "Whether to use Shift + Enter instead of the original Enter key behavior",
    "TextAreaKeyEventTitle": "Enter/Esc KeyEvent",
    "TextAreaKeyEventIntro": "Start the <kbd>Enter</kbd> <kbd>Esc</kbd> key callback event by setting <code>OnEnterAsync</code> <code>OnEscAsync</code>",
    "TextAreaKeyEventPlaceHolder": "Press Enter/Esc key to trigger the event"
  },
  "BootstrapBlazor.Server.Components.Samples.Toggles": {
    "TogglesOnText": "On",
    "TogglesOffText": "Off",
    "TogglesTitle": "Toggle",
    "TogglesSubTitle": "The most common switching application is available with a value of <code>true</code> <code>false</code>",
    "TogglesNormalTitle": "Basic usage",
    "TogglesNormalIntro": "Click the button to switch statuses",
    "BasicUsageP": "Click the first switch to output the log with value",
    "TogglesDisableTitle": "Disable the state",
    "TogglesDisableIntro": "The switch is not available.",
    "TogglesBindToWayTitle": "Bind data in both directions",
    "TogglesBindToWayIntro": "Binding variables within a component, data is automatically synchronized",
    "BindToWayP1": "when the <code>Switch</code> component turns on bidirectional binding, the <code>DisplayName</code> label value is automatically obtained based on the bound <code>Model</code> property value and appears as a <code>pre-Label</code>, which can be customized to display the pre-label through the <code>DisplayText</code> property, or through the <code>ShowLabel</code> property turns off the display of the prelabel",
    "BindToWayDisplayText1": "An example of a two-way binding",
    "BindToWayDiv": "The binding value:",
    "CustomLabelText": "Custom labels",
    "BindToWayP2": "Set the <code>DisplayText</code> value to <b>custom label </b>",
    "BindToWayP3": "The</code> value of <code>DisplayText is displayed when <code>ShowLabel</code> is <code>true</code>, regardless of whether the value is set",
    "OccupantsText": "Occupants",
    "NotOccupantsText": "Not Occupants",
    "BindToWayP4": "The value of <code>DisplayText</code> is not displayed when the <code>ShowLabel</code> is <code>false</code>",
    "NotDisplayText": "Do not display",
    "Color": "Color",
    "IsDisabled": "Whether to disable it",
    "OffTextAttr": "The text is displayed when the component is off",
    "OffTextDefaultValue": "Shrink",
    "OnTextAttr": "The text is displayed when component On",
    "OnTextDefaultValue": "Unfold",
    "Width": "The width of the component",
    "Value": "Get the value",
    "ShowLabel": "Whether to display the front label",
    "DisplayText": "The front label displays text",
    "OnValueChanged": "Call back the delegate method when the value changes",
    "ValueChanged": "Gets the value of the selection change",
    "DisplayName": "Binding label"
  },
  "BootstrapBlazor.Server.Components.Samples.Transfers": {
    "LeftPanelText": "The list on the left",
    "LeftButtonText": "To the left",
    "RightPanelText": "The list on the right",
    "RightButtonText": "To the Right",
    "PlaceHolder": "Please enter",
    "TransfersTitle": "Transfer",
    "TransferNormalTitle": "Basic usage",
    "TransferNormalIntro": "Select the candidate items on the left and click the move button to move them to the right",
    "TransferCustomerTitle": "Customizable",
    "TransferCustomerIntro": "You can customize the list title copy, button copy, rendering function of data items, check status copy at the bottom of the list, content area at the bottom of the list, and so on.",
    "TransferSearchTitle": "Searchable",
    "TransferSearchIntro": "In cases where there is a lot of data, you can search and filter the data.",
    "TransferBindTitle": "Two-way binding",
    "TransferBindIntro": "When component data changes, the bidirectional binding <code>bind-Value</code> values change synchronously",
    "TransferBindDescription": "<code>Transfer</code> component is a generic component that supports three binding types <code>string</code> <code>IEnumerable&lt;string&gt;</code> <code>IEnumerable&lt;SelectedItem&gt;</code> in this case bidirectional binding The<code>SelectValue</code> type is <code>IEnumerable&lt;SelectedItem&gt;</code>",
    "BindToWayButtonText1": "Add",
    "TransferValidateTitle": "Client Validation",
    "TransferValidateIntro": "When component data changes, the bidirectional binding <code>bind-Value</code> values change synchronously",
    "ClientValidationP1": "The <code>Transfer</code> component built into the <code>ValidateForm</code> component turns on client authentication, in this case the component bidirectional binding <code>Model.Hobby</code> type is <code>IEnumerable&lt;string&gt;</code>",
    "ClientValidationButtonText": "Submit",
    "TransferDisableTitle": "Disable",
    "TransferDisableIntro": "When you set the <code>IsDisabled</code> property value to <code>true</code>, the component suppresses input",
    "TransferItemClassTitle": "Set the Item style",
    "TransferItemClassIntro": "By setting the <code>OnSetItemClass</code> callback method styles options based on the<code> values of </code>SelectedItem",
    "Items": "A collection of component-bound data items",
    "TransferMinMaxTitle": "Max Min Constraint",
    "TransferMinMaxIntro": "By setting <code>Min</code> <code>Max</code> Parameter to limit the number of options",
    "LeftButtonTextAttr": "The left button displays text",
    "LeftPanelTextAttr": "The left panel Header displays text",
    "LeftPanelDefaultValue": "List 1",
    "RightButtonTextAttr": "The right button displays text",
    "RightPanelTextAttr": "The right panel Header displays text",
    "RightPanelTextDefaultValue": "List 2",
    "ShowSearch": "The right panel Header displays text ...",
    "LeftPanelSearchPlaceHolderString": "The search box placeholder string in the left panel",
    "RightPanelSearchPlaceHolderString": "The search box placeholder string in the right panel",
    "IsDisabled": "Whether to disable it",
    "OnSelectedItemsChanged": "The callback method when the component binding data item collection options change",
    "OnSetItemClass": "Set the Item style callback method",
    "Data": "Data",
    "Backup": "Backup",
    "LeftHeaderTemplate": "the left panel Header template",
    "LeftItemTemplate": "the left panel Item template",
    "RightHeaderTemplate": "the right panel Header template",
    "RightItemTemplate": "the right panel Item template"
  },
  "BootstrapBlazor.Server.Components.Samples.UploadAvatars": {
    "UploadsTitle": "AvatarUpload",
    "UploadsSubTitle": "Click to upload a file, usually used to upload a preview of one or a group of avatar-like images",
    "UploadsNote": "If you edit too much content, <code>signalR</code> communication interruption may be triggered. Please adjust the <code>HubOptions</code> configuration.",
    "AvatarUploadTitle": "Basic usage",
    "AvatarUploadIntro": "<code>AvatarUpload</code> component, using the <code>OnChange</code> to limit the format and size of images uploaded by users. In this example, only <code>jpg/png/bmp/jpeg/gif</code> five picture formats are allowed. The component processes user uploaded avatars by setting the <code>OnChange</code> callback function. If this callback is not provided, the component will use the built-in method to try to read the uploaded file and generate the preview data in <code>base64</code> format.",
    "AvatarUploadTips3": "When you set up <code>IsSingle</code>, you can upload only one image or file",
    "AvatarUploadTips5": "RELATED: <a href='https://www.runoob.com/tags/att-input-accept.html' target='_blank'>[Accept]</a>  <a href='https://www.iana.org/assignments/media-types/media-types.xhtml' target='_blank'>[Media Types]</a>",
    "AvatarUploadTips6": "Set the preview address <code>PrevUrl</code> with the <code>DefaultFileList</code> property",
    "AvatarUploadTips7": "Verify that an example of using a picture box is used in the form",
    "AvatarUploadButtonText": "Submit",
    "AvatarUploadValidateTitle": "ValidateForm",
    "AvatarUploadValidateIntro": "Place it in <code>ValidateForm</code> to integrate automatic data validation function. For details, please refer to <code>ValidateForm</code> component. In this example, the uploaded file extension is limited to <code>.png, .jpg, .jpeg</code>. An error message will be displayed when uploading other formats. The file size limit is <code>5M</code>. An error message will also be displayed when it exceeds",
    "AvatarUploadAcceptTitle": "Accept",
    "AvatarUploadAcceptIntro": "The component provides <code>Accept</code> property for upload file filtering, in this case the circular avatar box accepts both GIF and JPEG images, sets the <code>Accept='image/gif, image/jpeg'</code> and can be written as: <code>Accept='image/*'</code> if you don't restrict the format of the image. Whether this property is not secure or should be to file format validation using the <b>server-side authentication</b>",
    "UploadsWidth": "The width of the preview box",
    "UploadsHeight": "The height of the preview box",
    "UploadsIsCircle": "Whether it is circular avatar mode",
    "UploadsBorderRadius": "Border radius",
    "UploadsValidateFormTitle": "ValidateForm",
    "UploadsValidateFormValidContent": "Saved successfully",
    "UploadsValidateFormInValidContent": "Please correct it and submit the form again",
    "UploadsFormatError": "The file format is incorrect",
    "UploadsAvatarMsg": "Avatar upload"
  },
  "BootstrapBlazor.Server.Components.Samples.UploadInputs": {
    "UploadsTitle": "InputUpload",
    "UploadsSubTitle": "Select one or more files to upload by clicking the Browse button.",
    "UploadsNote": "If you edit too much content, <code>signalR</code> communication interruption may be triggered. Please adjust the <code>HubOptions</code> configuration.",
    "UploadNormalTitle": "Basic usage",
    "UploadNormalIntro": "You can show the <b>Delete</b> button by setting <code>ShowDeleteButton=\"true\"</code>",
    "UploadNormalLabelPhoto": "Select one or more files",
    "UploadFormSettingsTitle": "ValidateForm",
    "UploadFormSettingsIntro": "Use the file upload component to constrain the file format within the form",
    "UploadFormSettingsLi1": "Using the <code>ValidateForm</code> form component, custom validation is set by setting the <code>fileValidation</code> label of the model properties to support file <b>extension</b><b>size</b>validation, in this case with the extension <code>.png .jpg .jpeg</code> and the file size limit to <code>5M</code>",
    "UploadFormSettingsLi2": "After selecting the file and not starting to upload the file, click the <code>submit</code> button to verify that the data is legitimate, and then upload the file <code>OnSubmit</code> callback delegate, noting that the <b>Picture</b>property type is <code>IBrowserFile</code>",
    "UploadFormSettingsButtonText": "Submit",
    "UploadsIsDirectory": "Whether to upload the entire directory",
    "UploadsIsMultiple": "Whether to allow multiple file uploads",
    "UploadsShowProgress": "Whether to display the upload progress",
    "UploadsDefaultFileList": "The collection of files has been uploaded",
    "UploadsShowDeleteButton": "Whether to display the Delete button",
    "UploadsIsDisabled": "Whether to disable it",
    "UploadsPlaceHolder": "The place-in string",
    "UploadsBrowserButtonClass": "Upload button style",
    "UploadsBrowserButtonIcon": "Browse the button icon",
    "UploadsBrowserButtonText": "The browse button displays text",
    "UploadsDeleteButtonClass": "Remove the button style",
    "UploadsDeleteButtonIcon": "Remove the button icon",
    "UploadsDeleteButtonText": "Delete the button text",
    "UploadsDeleteButtonTextDefaultValue": "Delete",
    "UploadsAccept": "Upload the received file format",
    "UploadsOnDelete": "Call back this method when you click the Delete button",
    "UploadsOnChange": "Call back this method when you click the Browse button"
  },
  "BootstrapBlazor.Server.Components.Samples.UploadButtons": {
    "UploadsTitle": "ButtonUpload",
    "UploadsSubTitle": "Upload files by clicking on them, usually used to upload file attachments",
    "UploadsNote": "If you edit too much content, <code>signalR</code> communication interruption may be triggered. Please adjust the <code>HubOptions</code> configuration.",
    "ButtonUploadTitle": "Basic usage",
    "ButtonUploadIntro": "By setting <code>ShowUploadFileList=\"true\"</code> you can display the uploaded file list, and setting <code>ShowDeleteButton=\"true\"</code> you can display the <b>Delete</b> button"
  },
  "BootstrapBlazor.Server.Components.Samples.UploadCards": {
    "UploadsTitle": "CardUpload",
    "UploadsSubTitle": "Click the button to pop up the file selection box to select one or more files, which will be presented in a card-style preview mode.",
    "UploadsNote": "If you edit too much content, <code>signalR</code> communication interruption may be triggered. Please adjust the <code>HubOptions</code> configuration.",
    "ButtonUploadTitle": "Basic usage",
    "ButtonUploadIntro": "Use <code>DefaultFileList</code> to set up uploaded content",
    "UploadPreCardStyleTitle": "Preview the card style",
    "UploadPreCardStyleIntro": "<code>CardUpload</code> components and rendered in card-style band preview mode",
    "UploadFileIconTitle": "The file icon",
    "UploadFileIconIntro": "Icons are displayed in different file formats",
    "UploadFileIconTemplateTitle": "Custom file icon",
    "UploadFileIconTemplateIntro": "By setting the <code>IconTemplate</code> parameter and using the <code>FileIcon</code> component, you can further customize the file icon <a href=\"/file-icon\">[FileIcon example]</a>",
    "UploadBase64Title": "Base64 format",
    "UploadBase64Intro": "By setting the <code>PrevUrl</code> parameter value of the <code>UploadFile</code> instance, use the image content string in the <code>data:image/xxx;base64,XXXXX</code> format as the preview file path",
    "UploadsFileTitle": "Upload",
    "UploadsFileError": "The file is larger than 5M. Please reselect the file to upload.",
    "UploadsSuccess": "File saved successfully",
    "UploadsSaveFileError": "File save failed",
    "UploadsWasmError": "In wasm mode, please call the api to save",
    "UploadActionButtonTemplateTitle": "Custom action button",
    "UploadActionButtonTemplateIntro": "Customize the action buttons on the card by setting the `<code>ActionButtonTemplate</code>` parameter (appending it to the end of the default button), and customize the action buttons on the card by setting the `<code>BeforeActionButtonTemplate</code>` parameter (insert it before the default button)."
  },
  "BootstrapBlazor.Server.Components.Samples.UploadDrops": {
    "UploadsTitle": "DropUpload",
    "UploadsSubTitle": "Upload one or more files by clicking on the component or by dragging or pasting",
    "UploadsNote": "If the uploaded file is too large, it may trigger <code>signalR</code> communication interruption. Please adjust the <code>HubOptions</code> configuration yourself.",
    "DropUploadTitle": "Basic usage",
    "DropUploadIntro": "Handle all uploaded files via the <code>OnChange</code> callback",
    "DropUploadFooterText": "File size should not exceed 5Mb",
    "UploadsBodyTemplate": "Body Template",
    "UploadsIconTemplate": "Icon Template",
    "UploadsTextTemplate": "Text Template",
    "UploadsUploadIcon": "Icon",
    "UploadsUploadText": "Text",
    "UploadsShowFooter": "Whether to display Footer",
    "UploadsFooterTemplate": "Footer Text Template",
    "UploadsFooterText": "Footer text"
  },
  "BootstrapBlazor.Server.Components.Samples.ValidateForms": {
    "ChangeButtonText": "Change",
    "ResetButtonText": "Reset",
    "ValidateFormsSubmitButtonText": "Submit",
    "ValidateFormsTitle": "ValidateForm",
    "ValidateFormsSubTitle": "Form components that can be used for data compliance checks",
    "ValidateFormNormalTitle": "Basic usage",
    "ValidateFormNormalIntro": "Data compliance checks are automatically performed when components placed in the <code>ValidateForm</code> are submitted",
    "ValidateFormNormalBasicUsageDescription": "Introduction",
    "ValidateFormNormalLi1": "<code>ValidateForm</code> component supports asynchronous setting of <code>Model</code> values",
    "ValidateFormNormalLi2": "The form event is for <code>OnValidSubmit</code> <code>OnInvalidSubmit</code>",
    "ValidateFormNormalLi3": "<code>Model</code> parameter is required is not allowed to be empty",
    "ValidateFormNormalLi4": "Multiple buttons can be placed within the form to set whether the <code>ButtonType='ButtonType.Submit'</code> parameter is submitted to the form",
    "ValidateFormNormalLi5": "The client authentication mechanism supports the model's <code>Required</code> label, setting the default English prompt information when not set by setting the <code>ErrorMessage</code> parameter prompt",
    "ValidateFormNormalLi6": "The form checks by default whether the binding field values within the form are legitimate, and you can set the <code>ValidateAllProperties</code> property value to <code>true</code> if you need to check all fields in the model",
    "ValidateFormNormalLi7": "Set the asynchronous submission form by setting the value of the Button <code>Button</code> property <code>IsAsync</code>",
    "ValidateFormNormalLi8": "Components within a form are typically used to bind the property values of <code>Model</code> in both directions using bidirectional binding techniques, causing the component to refresh and re-render when its value changes <code>StateHasChanged</code>, and the method is called, i.e. its component or page is refreshed and re-rendered",
    "ValidateFormNormalLi9": "After the value of the component control in the form is modified, the <code>OnFieldChanged</code> method is called",
    "ValidateFormNormalFormLabelWidth": "The default width of component front label is <code>120px</code>. If you need more, please change the style variable <code>--bb-row-label-width</code> in the project style file or remove <code>RowType.Inline</code>",
    "ValidateFormNormalBasicUsageDescription2": "Note:",
    "ValidateFormInnerComponentTitle": "Built-in components",
    "ValidateFormInnerComponentIntro": "Place the support form components into the <code>ValidateForm</code>",
    "ValidateFormInnerComponentInnerComponentLabel": "Examples of components that support form validation",
    "ValidateFormInnerComponentInnerComponentDescription1": "Example illustration",
    "ValidateFormInnerComponentInnerComponentLi1": "The name is the string type",
    "ValidateFormInnerComponentInnerComponentLi2": "The age is an integer type",
    "ValidateFormInnerComponentInnerComponentLi3": "Birthday is the datetime type",
    "ValidateFormInnerComponentInnerComponentLi4": "Education is an enumeration type",
    "ValidateFormInnerComponentInnerComponentLi5": "Hobbies are collection types",
    "ValidateFormInnerComponentInnerComponentDescription2": "In this example, by setting the <b>submit button</b> property <code>IsAsync</code> to submit the form asynchronously, click Submit to disable itself, and resume after the asynchronous operation is complete",
    "ValidateFormCustomDisplayErrorTitle": "Custom displays error messages",
    "ValidateFormCustomDisplayErrorIntro": "Set the custom error message by calling <code>SetError</code> method",
    "ValidateFormCustomDisplayErrorDescription": "<b>Scenario</b><p>the client verification after the pass of the database save operation, if other problems, you can still make a form custom error prompt, in this case, after the data verification is legal, click the <code>submit form</code> button, the name field will show, <code>the database already exists</code> such a custom prompt</p>",
    "ValidateFormValidatorAllFieldTitle": "Validate all field values",
    "ValidateFormValidatorAllFieldIntro": "This component checks the model binding field values within the form by default, setting the <code>ValidateAllProperties</code> values if you need to check all field values for the model",
    "ValidateFormValidatorAllFieldDescription": "The <code>Address</code> is not placed in this example, because the <code>ValidateAllProperties</code> parameter value is <code>true</code>, the <code>Addres</code> field is still checked, and <code>OnInvalidSubmit</code> is triggered when the data is submitted after all the data in the timely form is legitimate callback delegate",
    "ValidateFormComplexValidationTitle": "Complex type support",
    "ValidateFormComplexValidationIntro": "Supports any complex type of binding and validation",
    "ValidateFormComplexValidationDescription": "The second binding in this example is a super-complex type <code>ComplexModel.Dummy.Dummy2.Name</code> Empty the value, click <b>submit the form</b>validate the data. After the second text box verifies compliance, the error prompt is displayed again by calling the <code>SetError</code>",
    "ValidateFormComplexValidationPre": "ComplexForm.SetError('Dummy.Dummy2.Name','数据库中已存在');",
    "ValidateFormDynamicFormTitle": "Dynamically adjust the components within the form",
    "ValidateFormDynamicFormIntro": "By changing the components within the form, verify that the form can still be validated correctly",
    "ValidateFormDynamicFormDescription": "Click the <b>Change component</b>button <code>address</code> The component changes to <code>count</code> components, <b>reset component</b>button recovery, <code>name</code> <code>address</code> component is required, <code>count</code> The component has a default value of <code>0</code> So you can check through the data",
    "ValidateFormInnerFormLabelTitle": "Set the component label right alignment within the form",
    "ValidateFormInnerFormLabelIntro": "Set the alignment of labels throughout the station or in a specific form with style uniformity",
    "ValidateFormInnerFormLabelDescription": "Address text box adds <b>email address</b>validation rules",
    "ValidateFormCustomValidationFormTitle": "Customize the verification form",
    "ValidateFormCustomValidationFormIntro": "Add custom validation rules by setting <code>Rules</code>",
    "CustomValidationFormP1": "Address text box adds <b>email address</b>verification rules, click On Submission to verify",
    "CustomValidationFormComment1": "Add mailbox validation rules",
    "CustomValidationFormComment2": "Used in Razor files",
    "ValidateFormValidateTitle": "Manual Validate",
    "ValidateFormValidateIntro": "call the <code>ValidateForm</code> instance method <code>Validate</code> for trigger the form validation",
    "ValidateButtonText": "Save",
    "ValidateFormValidateDescription": "The button is not submit button. so not trigger the form <code>submit</code> action, in this sample code use <code>OnClickWithoutRender</code> parameter for improve performance.",
    "Model": "Form component-bound data model, required properties",
    "ValidateAllProperties": "Whether to check all fields",
    "ShowRequiredMark": "Whether the required items in the form display the * mark",
    "ChildContent": "The instance of the subcomponent template",
    "OnValidSubmit": "Callback delegate when data compliance checks pass when the form is submitted",
    "OnInvalidSubmit": "Callback delegates when the data compliance check fails when the form is submitted",
    "SetError": "Set up a validation failure method",
    "Validate": "Trigger form validate",
    "OnInvalidSubmitLog": "OnInvalidSubmit callback delegate: The validation failed",
    "OnValidSubmitLog": "OnValidSubmit callback delegate: Verification passed",
    "OnValidSubmitStartingLog": "OnValidSubmit callback delegate: Starting ...",
    "OnValidSubmitDoneLog": "OnValidSubmit callback delegate: Done!",
    "OnInvalidSubmitCallBackLog": "OnInvalidSubmit callback delegate",
    "OnValidSubmitCallBackLog": "OnValidSubmit callback delegate",
    "DatabaseExistLog": "Exists in the database",
    "LongDisplayText": "I am very long display text",
    "LongDisplayDescription": "In this example, set the <code>ShowLabelTooltip</code> in the <code>form-inline</code> style to <code>true</code> to make the mouse hover over the cropped label to display the complete information",
    "ShowLabelTooltip": "Show complete information when mouse hover over the label",
    "DisableAutoSubmitFormByEnter": "Disable automatic submit form",
    "ValidateFormDisableAutoSubmitFormByEnterTitle": "Disable automatic submit form",
    "ValidateFormDisableAutoSubmitFormByEnterIntro": "When the focus is in the input box in the form, pressing <kbd>Enter</kbd> will automatically submit the form by default. You can disable automatic submission by setting <code>DisableAutoSubmitFormByEnter=\"false\"</code>",
    "DisableAutoSubmitFormByEnterDesc": "<code>form</code> form is an important element of<code>web</code>. If there is an <code>input</code> element in the form, when this element gets the focus, pressing <kbd>Enter</kbd> will automatically submit the form. This is a feature of the form element, not our component code logic. If this function is not needed, disable it by setting <code>DisableAutoSubmitFormByEnter=\"true\"</code>, In this example, pressing Enter in the text box will not automatically <b>submit</b> and perform data compliance check. You need to click the <b>Submit</b> button to submit the form",
    "ValidateFormIValidatableObjectTitle": "IValidatableObject",
    "ValidateFormIValidatableObjectIntro": "The <code>IValidatableObject</code> interface provides more flexible custom validation, making it very suitable for performing complex data validation scenarios, such as validating combinations of multiple properties.",
    "ValidateFormIValidatableObjectDescription": "This example uses the <code>IValidatableObject</code> interface to implement validation that <code>Telephone 1</code> and <code>Telephone 2</code> must not be the same, and that <code>Name</code> cannot be empty. In this example, <code>Name</code> is not provided, but since the model implements validation through the <code>IValidatableObject</code> interface, it still triggers the <code>OnInvalidSubmit</code> callback delegate when submitting data.",
    "ValidateFormIValidateCollectionTitle": "IValidateCollection",
    "ValidateFormIValidateCollectionIntro": "The <code>IValidateCollection</code> interface provides more flexible custom <code>linked</code> validation, which is very suitable for very complex data validation, such as combining multiple attributes for validation.",
    "ValidateFormIValidateCollectionDescription": "This example uses <code>IValidateCollection</code> to verify that <code>Telephone 1</code> and <code>Telephone 2</code> cannot be the same. If any cell is changed so that the phone numbers are the same, both text boxes will prompt.",
    "ValidateMetadataTypeTitle": "MetadataType IValidateCollection",
    "ValidateMetadataTypeIntro": "The model uses <code>[MetadataType(typeof(MockModelMetadataType))]</code> to specify the metadata type <code>MockModelMetadataType</code> for model validation. If the specified model inherits the <code>IValidateCollection</code> interface, its <code>Validate</code> method is called to perform data compliance checks.",
    "LabelWidth": "Label width"
  },
  "BootstrapBlazor.Server.Components.Samples.Ajaxs": {
    "AjaxTitle": "Ajax call",
    "AjaxDescribe": "The ajax method used to use js directly in the browser to interact with the server currently only supports both input and output as json, and the return value is a json string, which can be converted and processed by itself.",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Impersonate a login",
    "NormalB": "Special attention:",
    "NormalDiv": "Here is only a login simulation, and there is no real call to<code> HttpContext.SignInAsync </code>, the real use needs to refresh the page after the login is completed, otherwise the real login can not be successful.",
    "GoToTitle": "Page jump",
    "GoToIntro": "Implementing page jumps with<code> Js </code> addresses an issue where <code> Blazor </code> pages don't really refresh when they're jumped as <b> SPA </b>",
    "InvokeAsync": "Execute fetch",
    "GoTo": "Execute goto",
    "NormalButtonText1": "Login successful",
    "NormalButtonText2": "Login failed",
    "GoToButtonText1": "Jump to the first page of the document",
    "GoToButtonText2": "Jump to yourself (refresh page)"
  },
  "BootstrapBlazor.Server.Components.Samples.Avatars": {
    "Title": "Avatar",
    "SubTitle": "Present user or thing information as icons, pictures, or characters.",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Set the shape and size of your avatar <code>IsCircle</code> and <code>Size</code>.",
    "IconTitle": "The type of presentation",
    "IconIntro": "Three types are supported: icons, pictures, and characters",
    "BorderTitle": "Border",
    "BorderIntro": "By setting the <code>IsBorder</code> whether to display the avatar border, the border in this mode when the picture fails to load is <code>border-danger</code> style, and when the load is successful, the border is <code>border-success</code>; The borders in the remaining modes are <code>border-info</code>",
    "CircletTitle": "Asynchronous loading",
    "CircleIntro": "Suitable for scenarios where the picture address is obtained asynchronously by interfaces such as <code>webapi</code>",
    "Size": "The size of the avatar box",
    "IsBorder": "Whether the border is displayed",
    "IsCircle": "Whether it is a circle",
    "IsIcon": "Whether it is an icon",
    "IsText": "Whether to display as text",
    "Icon": "The avatar box displays an icon",
    "Text": "The avatar box displays text",
    "Url": "Image avatar path address",
    "GetUrlAsync": "Gets the Image avatar path address asynchronous callback delegate",
    "BasicUsageDivider": "Split the line",
    "BorderDiv1": "The first fillet square avatar box is loaded correctly, so the border is <b class='text-info' > blue </b>",
    "BorderDiv2": "The second circular avatar loads the picture path incorrectly, so the border is <b class='text-danger'> red </b>and the picture appears as the default icon"
  },
  "BootstrapBlazor.Server.Components.Samples.Badges": {
    "Title": "Badge",
    "SubTitle": "A number or status tag that appears next to a button, icon, or icon",
    "BasicusageTitle": "Basic usage",
    "BasicusageIntro": "Small badge assembly in a variety of colors is available",
    "PillTitle": "Capsule badge",
    "PillIntro": "Set the badge pendant with the  of the property <code>IsPill='true'</code> to set the fillet",
    "ButtonTitle": "The badge inside the button",
    "ButtonIntro": "Button internal badge",
    "ChildContent": "Content",
    "Class": "Style",
    "Color": "Color",
    "IsPill": "Capsule style",
    "ButtonSpan": "The primary button"
  },
  "BootstrapBlazor.Server.Components.Samples.ShieldBadges": {
    "Title": "ShieldBadge",
    "SubTitle": "Badge component with icon label text like Shields Badge",
    "ShieldBadgeNormalTitle": "Basic usage",
    "ShieldBadgeNormalIntro": "Use <code>Icon</code> to set the icon, <code>Label</code> to set the left text, and <code>Text</code> to set the right text"
  },
  "BootstrapBlazor.Server.Components.Samples.BarcodeReaders": {
    "Title": "BarcodeReader",
    "SubTitle": "This component scans the bar code by calling the camera to obtain the bar code content bar code/QR code",
    "Attention": "Pay special attention to:",
    "Li1": "The site wants to enable <code>https</code>, which is required by browser vendors",
    "Li2": "The mobile iOS system must use the <code>Safari</code> browser to switch the front/rear camera keys to turn off the function button",
    "Li3": "The high probability of Android phones requiring native system browsers, <code>Chrome</code> is certain to be possible, and some browsers may not be compatible with cameras",
    "Li4": "The bar code recognition rate is related to the pixel, bar code size and mobile phone execution efficiency",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "The code is identified by the camera",
    "Step": "How to do this:",
    "BasicUsageLi1": "Tap to start turning on the camera",
    "BasicUsageLi2": "Scan the barcode",
    "BasicUsageLi3": "Click the close button to turn off the camera",
    "ImageTitle": "Basic usage",
    "ImageIntro": "Scan code recognition with still pictures",
    "ImageLi1": "Click the code to pop up the selection file box",
    "ImageLi2": "Select a picture that contains barcodes",
    "ImageLi3": "Start recognizing barcodes",
    "ButtonScanText": "Scan button text",
    "ButtonScanTextDefaultValue": "Scan",
    "ButtonStopText": "Turn off button text",
    "ButtonStopTextDefaultValue": "Turn off",
    "AutoStopText": "Auto-turn off button text",
    "AutoStopTextDefaultValue": "Turn off automatically",
    "DeviceLabel": "Pre-label text for the device list",
    "DeviceLabelDefaultValue": "Camera",
    "InitDevicesString": "Initialize the device list text",
    "InitDevicesStringDefaultValue": "The camera is being identified",
    "NotFoundDevicesString": "No video-related device text was found",
    "NotFoundDevicesStringDefaultValue": "No video-related devices were found",
    "AutoStart": "Whether the camera is automatically turned on when the component is initialized",
    "AutoStop": "Whether to stop automatically after scanning to barcode",
    "ScanType": "Scan the camera or picture",
    "OnInit": "Initialize the camera callback method",
    "OnResult": "Scan to barcode callback method",
    "OnStart": "Turn on the camera callback method",
    "OnClose": "Turn off the camera callback method",
    "OnError": "An error callback method occurred",
    "OnDeviceChanged": "switch camera device callback method",
    "InitLog": "Initialize the camera to complete",
    "ScanCodeLog": "Scan to barcode",
    "ErrorLog": "An error has occurred",
    "OpenCameraLog": "Turn on the camera",
    "CloseCameraLog": "Turn off the camera"
  },
  "BootstrapBlazor.Server.Components.Samples.Blocks": {
    "Title": "Block",
    "SubTitle": "Depending on the parameter conditions, the contents of the block are determined to be displayed, usually in conjunction with permission authorization",
    "BasicUsageTitle": "Common usage",
    "BasicUsageIntro": "Determines whether component content is displayed by setting the <code>OnQueryCondition</code> callback method return value",
    "TemplateTitle": "Template",
    "TemplateIntro": "By setting <code>authorized</code> <code>NotAuthorized</code> you can set what appears when you meet and do not meet the criteria, respectively",
    "AuthorizateTitle": "Judging by permissions",
    "AuthorizateIntro": "This example simulates a user logging in to control whether the content <code>Block</code> is displayed, which is easier to use than <code>AuthorizeView</code>",
    "UsersTitle": "Pre-set the user",
    "UsersIntro": "By setting <code>Users</code> controls the display, which is displayed when the currently logged-in user is a preset user",
    "RolesTitle": "Preset roles",
    "RolesIntro": "By setting <code>Roles</code> controls the display, which is displayed when the currently logged-in user is in a preset role",
    "Tips": "By setting different <code>Name</code> as a resource, combined with the authorization system to authorize this resource can be achieved to any element of the Web page permission control",
    "OnQueryCondition": "Whether to display this Block",
    "ChildContent": "The content is displayed within the Block block",
    "Authorized": "The contents of the block block are displayed in a compliant condition",
    "NotAuthorized": "The block does not meet the criteria for displaying content",
    "IsShow": "Show",
    "IsHide": "Hide",
    "Login": "Login",
    "Logout": "Logout",
    "Content": "I am component content",
    "AuthorizateDiv1": "I am the contents of the component of the <code>CondtionBlock</code>, and the current logged-in user: <code>{0}</code>",
    "AuthorizateDiv2": "I am the contents of the <code>AuthorizeView</code> component and the current logged-in user: <code>{0}</code>",
    "AuthorizateDiv3": "I am the contents of the <code>AuthorizeView</code> component and are not currently logged in",
    "TemplateDiv1": "I am the component content that  displayed in <b>accordance</b>with the criteria",
    "TemplateDiv2": "I am the component content that  displayed that <b>not accordance</b>the  criteria",
    "UsersDiv1": "The current user <code>{0}</code> allows you to see this content",
    "RolesDiv1": "The current role <code>User</code> allow this content to be seen"
  },
  "BootstrapBlazor.Server.Components.Samples.Cards": {
    "Title": "Card",
    "SubTitle": "Aggregate information to display in a card container",
    "BasicUsageTitle": "Card card components",
    "BasicUsageIntro": "Card is a simple example",
    "FooterTitle": "Header & Footer",
    "FooterIntro": "You can show the content by adding the HeaderTemplate and FooterTemplate elements",
    "IsCenterTitle": "Center",
    "IsCenterIntro": "Make content center by <code>IsCenter=true</code>",
    "ColorTitle": "A card with a border color",
    "ColorIntro": "By setting, <code>The</code> makes the border and Body color appropriate",
    "CollapsibleIntro": "Card body can collapse/expand by set <code>IsCollapsible</code> to true",
    "CollapsibleIntroDesc": "Set <code>Collapsed</code> value to <code>true</code> for default collapsed card body.",
    "CollapsibleHeaderTemplateTitle": "Header Template",
    "CollapsibleHeaderTemplateIntro": "Setting <code>HeaderTemplate</code> for custom <code>CardHeader</code>",
    "ShadowTitle": "Shadow effect",
    "ShadowIntro": "Enable shadow effect by set <code>IsShadow</code> to true",
    "BodyTemplate": "Get/set up BodyTemplate",
    "FooterTemplate": "Get/set up FooterTemplate",
    "HeaderTemplate": "Get/set up HeaderTemplate",
    "Class": "Style",
    "Color": "Set the color of the card border",
    "IsCenter": "Make align center by set IsCenter to true",
    "IsCollapsible": "Collapse card body by set IsCollapsible to true",
    "Collapsed": "Collapsed by default",
    "IsShadow": "Add shadow effect by set IsShadow to true",
    "Compare": "CardCompare",
    "CollapsibleTitle": "Collapsible",
    "CollapsibleHeaderTemplate": "Header Template",
    "CollapsibleBody": "Click card hader for collapse/expand card body",
    "ShadowBody": "Shadow effect sample",
    "HeaderPaddingY": "Header top and bottom padding"
  },
  "BootstrapBlazor.Server.Components.Samples.Calendars": {
    "Title": "Calendar",
    "SubTitle": "Containers that display data as calendars. When the data is date or by date, such as schedule, schedule, price calendar, etc., lunar calendar, etc. Year/month switching is currently supported.",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "The underlying calendar is displayed.",
    "BindTitle": "Data is bound in both directions",
    "BindIntro": "The calendar box automatically updates the text box when the time is selected",
    "ViewModeTitle": "Show by week",
    "ViewModeIntro": "By setting the property <code>CalendarViewMode.Week</code>",
    "CellTemplateTitle": "Cell Template",
    "CellTemplateIntro": "customer the cell template via <code>CellTemplate</code>",
    "HeaderTemplateTitle": "Header Template",
    "HeaderTemplateIntro": "Customize the header template by setting the property <code>HeaderTemplate</code>",
    "HeaderTemplateDesc": "Customize the UI by setting the <code>BodyTemplate</code> and <code>HeaderTemplate</code>. In this example, additional columns are added to the front and back of the month view, and a timeline is added to the week view",
    "AppTitle": "Practical applications",
    "AppIntro": "Curriculum",
    "AppText": "Currently, the <code>ChildContext</code> is temporarily rendered by the week component, and the data-related operating components in all cells are not encapsulated and will be refined later",
    "Siesta": "Siesta",
    "Value": "The component value",
    "ChildContent": "Subcomponents",
    "ValueChanged": "Call back the delegate when the value changes",
    "CellTemplate": "Cell template",
    "CellTemplateDemoTitle": "Example of actual man hour system",
    "CellTemplateDemoIntro": "Click the cell pop-up window to edit the working hours, and then close the pop-up window to re summarize the statistical data",
    "CellTemplateDemoSummary": "Work hour statistics of the month",
    "None": "None",
    "Chinese": "Chinese",
    "Math": "Math",
    "English": "English",
    "Study": "Study",
    "FirstDayOfWeek": "The first day of the week"
  },
  "BootstrapBlazor.Server.Components.Samples.Cameras": {
    "Title": "Camera",
    "SubTitle": "This component takes pictures by calling the camera",
    "Attention": "Pay special attention to:",
    "Li1": "The site wants to enable <code>https</code>, which is required by browser vendors",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Take pictures through the camera",
    "BasicUsageStep": "Steps:",
    "BasicUsageLi1": "Click start to open the camera",
    "BasicUsageLi2": "Click the photo button",
    "BasicUsageLi3": "Click the close button to close the camera",
    "ShowPreview": "Whether to show photo preview",
    "AutoStart": "Whether open the camera auto",
    "OnInit": "Initialize the camera callback method",
    "OnStart": "Start capture callback method",
    "OnClose": "Turn off the capture callback method",
    "OnCapture": "Callback method for successful capture",
    "VideoWidth": "The width of Video window",
    "VideoHeight": "The height of Video window",
    "CaptureJpeg": "Set the capture image format as Jpeg, default is Png",
    "Quality": "Capture image quality, default is 0.9",
    "DeviceLabel": "Camera",
    "InitDevicesString": "Initializing ...",
    "PlayText": "Open",
    "StopText": "Close",
    "PreviewText": "Preview",
    "SaveText": "Save",
    "NotFoundDevicesString": "Video device not found"
  },
  "BootstrapBlazor.Server.Components.Samples.Captchas": {
    "Title": "Captchas",
    "SubTitle": "Human-machine recognition by dragging the slider",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Simple human-machine identification",
    "ImageTitle": "Specify the path and name of the graph bed",
    "ImageIntro": "Set the map bed path <code>ImagesPath</code>, the picture name by <code>ImagesName</code>, and the background by calculating the full path name of the stitched random picture",
    "ImageCallbackTitle": "Specify the graph bed delegate method",
    "ImageCallbackIntro": "Set a custom method to stitch the full path name of a random picture by <code>GetImageName</code>",
    "ImagesPath": "Figure the path of the bed",
    "ImagesName": "The name of the slider background file",
    "HeaderText": "Component Header displays text",
    "HeaderTextDefaultValue": "Please complete the security verification",
    "BarText": "Drag the slider to display the text",
    "BarTextDefaultValue": "Swipe right to fill the puzzle",
    "FailedText": "The background map failed to load to display text",
    "FailedTextDefaultValue": "The load failed",
    "LoadText": "The background map displays text when it loads",
    "LoadTextDefaultValue": "Loading ...",
    "TryText": "The puzzle failure slider displays text",
    "TryTextDefaultValue": "Try again",
    "Offset": "Puzzle alignment offset",
    "Width": "Puzzle width",
    "Height": "Puzzle height",
    "OnValid": "The slider verification code calls back this method after the validation results are determined",
    "GetImageName": "Custom method for getting the name of the background map file"
  },
  "BootstrapBlazor.Server.Components.Samples.Carousels": {
    "Title": "Carousel",
    "SubTitle": "In limited space, loop through the same type of pictures, text, and more",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "A wide range of basic usages are used to bind components to an array of picture paths by setting the <code>Items</code> property values",
    "ShowControlsTitle": "Show Controls",
    "ShowControlsIntro": "Set <code>ShowControls</code> to <code>true</code> for show/hide the controls of Carousel",
    "ShowIndicatorsTitle": "Indicator",
    "ShowIndicatorsIntro": "Set <code>ShowIndicators</code> to <code>true</code> for show/hide the indicator of Carousel",
    "FadeTitle": "Fade in and out",
    "FadeIntro": "By setting the <code>IsFade</code> property, the picture switches with a fade-in and fade-out effect",
    "CaptionTitle": "Caption",
    "CaptionIntro": "Set <code>CarouselItem</code> parameter <code>Caption</code> for the content of caption",
    "IntervalTitle": "Individual interval",
    "IntervalIntro": "Set <code>Interval</code> to a <code>CarouselItem</code> to change the amount of time to delay between automatically cycling to the next item. the default value is <b>5000</b> ms",
    "TouchSwipingTitle": "Disable touch swiping",
    "TouchSwipingIntro": "Set <code>DisableTouchSwiping</code> disable the swiping function on mobile",
    "CaptionTemplateTitle": "Caption Template",
    "CaptionTemplateIntro": "Set <code>CarouselItem</code> 的 <code>CaptionTemplate</code> custom the caption of item",
    "CaptionClassTitle": "Caption Class",
    "CaptionClassIntro": "Set <code>CarouselItem</code> 的 <code>CaptionClass</code> custome the class of caption",
    "CaptionClassP1": "Set the <code>CaptionClass</code> to <code>d-none d-md-block</code> do not show the <code>Caption</code> in the small screen",
    "OnClickTitle": "Click on the image to call back the event",
    "OnClickIntro": "After you set the <code>OnClick</code> property by setting, click <code>Image</code> to trigger the <code>OnClick</code> callback delegate",
    "ChildContentTitle": "ChildContent",
    "ChildContentIntro": "Use <code>ChildContent</code> render the customer content",
    "Images": "Images collection",
    "IsFade": "Whether to fade in and out",
    "Width": "Set the width of the picture",
    "OnClick": "Click on the image to call back the delegate",
    "HoverPause": "If set to true, pauses the cycling of the carousel on mouseenter and resumes the cycling of the carousel on mouseleave. If set to false, hovering over the carousel won’t pause it",
    "PlayMode": "autoplay the carousel mode"
  },
  "BootstrapBlazor.Server.Components.Samples.Client": {
    "Title": "Get client connection information",
    "SubTitle": "More for system log tracking",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "The injection service displays client information",
    "BasicUsageP1": "Introduction to usage",
    "BasicUsageP2": "1. The <code>UseBootstrapBlazor</code> middleware in the <b>Startup.cs</b> file that client information collection is performed.",
    "BasicUsageTips": "<code>app.UseBootstrapBlazor</code> Middleware is located assembly <code>BootstrapBlazor.Middleware</code>, please refer to this package yourself for proper use",
    "BasicUsageP3": "2. The component uses the injection service <code>WebClientService</code> to call the <code>GetClientInfo</code> method.",
    "BasicUsageP4": "3. Turn on IP geolocation",
    "LocatorsProviderOptions": "<code>BootstrapBlazorOptions</code> section <code>WebClientOptions</code> By default it is <code>false</code>, which means the IP address location function is not enabled. Please change it to <code>true</code> in the configuration file or code.",
    "LocatorsProviderDesc1": "Update the <code>appsetting.json</code> project configuration file",
    "LocatorsProviderDesc2": "Or use the code to open",
    "LocatorsProviderDesc3": "Or enable this function through configuration",
    "GroupBoxTitle": "Connection information",
    "IpLocatorFactoryDesc": "This service has built-in IP geolocation function. For detailed configuration and documentation, please refer to",
    "Id": "Connection ID",
    "RequestUrl": "RequestUrl",
    "Ip": "Ip",
    "City": "City",
    "OS": "OS",
    "Browser": "Browser",
    "Engine": "Engine",
    "Device": "Device",
    "Language": "Language"
  },
  "BootstrapBlazor.Server.Components.Samples.Circles": {
    "Title": "Circle",
    "SubTitle": "Chart class components. There are generally two uses:",
    "CircleTips1": "Displays the percentage of progress for a task",
    "CircleTips2": "Count the proportion of certain indicators.",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Set the circular progress by setting the <code>Value</code> property",
    "ColorTitle": "Color",
    "ColorIntro": "Set the color of the circular progress bar by setting the <code>Color</code> property",
    "StrokeWidthTitle": "The width of the progress bar",
    "StrokeWidthIntro": "Set the width of the circular progress bar by setting the <code>StrokeWidth</code> property",
    "ChildContentTitle": "Customize the display",
    "ChildContentIntro": "Customize the display content with custom subcomponents",
    "Width": "The width of the component",
    "StrokeWidth": "The width of the progress bar",
    "Value": "Current progress",
    "Color": "The color of the progress bar",
    "ShowProgress": "Whether to display progress bar information",
    "ChildContent": "ChildContent",
    "IncreaseSpan": "Increase",
    "DecreaseSpan": "Decrease",
    "ChildContentP1": "The size of the consumer population",
    "ChildContentSpan": "Total number of people"
  },
  "BootstrapBlazor.Server.Components.Samples.Collapses": {
    "Title": "Collapse",
    "SubTitle": "The content area is contained by the collapsed panel",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Multiple panels can be expanded at the same time, with no effect between panels",
    "AccordionTitle": "Accordion effect",
    "AccordionIntro": "Only one panel can be expanded at a time",
    "IconTitle": "Icon",
    "IconIntro": "Show icon in header",
    "ColorTitle": "The child title color",
    "ColorIntro": "Each panel sets a different color",
    "ItemsTitle": "Dynamic updates",
    "ItemsIntro": "The <code>CollapseItems</code> is set by conditional logic",
    "CollapseItems": "Content",
    "IsAccordion": "Whether the accordion effect",
    "OnCollapseChanged": "The callback of switch expand/collapse item state",
    "Consistency": "Consistency",
    "ConsistencyItem1": "Consistent with real life: consistent with real-life processes, logic, follow the user's habits of language and concepts;",
    "ConsistencyItem2": "Consistent in the interface: All elements and structures need to be consistent, such as design styles, icons and text, the location of elements, and so on.",
    "Feedback": "Feedback",
    "FeedbackItem1": "Control feedback: through the interface style and interactive effect so that users can clearly perceive their own actions;",
    "FeedbackItem2": "Page feedback: After the operation, the current state is clearly represented by changes in the page elements.",
    "Efficiency": "Efficiency",
    "EfficiencyItem1": "Simplify the process: design simple and intuitive operating process;",
    "EfficiencyItem2": "Clear and clear: clear language and clear expression, so that users quickly understand and then make decisions;",
    "EfficiencyItem3": "Help users identify: The interface is straightforward, allowing users to quickly identify rather than recall, reducing the user's memory burden.",
    "Controllability": "Controllability",
    "ControllabilityItem1": "User decision-making: according to the scene can give the user action advice or security tips, but can not replace the user to make decisions;",
    "ControllabilityItem2": "Results controllable: Users are free to perform actions, including undoing, falling back, and terminating the current operation.",
    "ButtonText": "Toggle",
    "HeaderTemplateTitle": "Header Template",
    "HeaderTemplateIntro": "Customize the <b>Header</b> display content by setting <code>HeaderTemplate</code>",
    "CollapseItemAttributeText": "The title of header",
    "CollapseItemAttributeIcon": "The icon of header",
    "CollapseItemAttributeTitleColor": "The color of header",
    "CollapseItemAttributeClass": "The class of item",
    "CollapseItemAttributeHeaderClass": "The class of header",
    "CollapseItemAttributeHeaderTemplate": "Header template",
    "CollapseItemAttributeIsCollapsed": "The item status collapsed"
  },
  "BootstrapBlazor.Server.Components.Samples.DateTimeRanges": {
    "Title": "Date Time Range Picker",
    "Description": "Select a date in the same picker",
    "NormalTitle": "Basic skills",
    "NormalIntro": "Take 'day' as the basic unit, select a period of time",
    "BindValueTitle": "Data two-way binding",
    "BindValueIntro": "Click the confirm button, the time selection box value is the same as the text box value. Enable auto-close by setting <code>AutoClose=\"true\"</code>. Directly display the selected value by setting <code>ShowSelectedValue=\"true\"</code>",
    "MaxMinValueTitle": "Max and Min",
    "MaxMinValueIntro": "set time range",
    "DisabledTitle": "Disabled",
    "DisabledIntro": "When the <code>IsDisabled</code> attribute value is set to <code>true</code>, the component disables input",
    "SidebarTitle": "Sidebar with shortcut keys",
    "SidebarIntro": "When the <code>ShowSidebar</code> property value is set to <code>true</code>, the component displays the shortcut sidebar",
    "SidebarTip": "by setting <code>ShowSidebar</code> The parameter enables the display sidebar shortcut options function, by setting <code>SidebarItems</code> The parameter collection replaces the default shortcuts built into the component",
    "TodayTitle": "Show today button",
    "TodayIntro": "When the <code>ShowToday</code> attribute value is set to <code>true</code>, the today shortcut button is displayed below the component",
    "TodayTip": "Click <code>Today</code> Button，time limit <code>yyyy-MM-dd 00:00:00 to yyyy-MM-dd 23:59:59</code>",
    "SingleViewTitle": "Single view mode",
    "SingleViewTip": "Allow independent selection of start and end times by setting <code>RenderMode=\"Single\"</code>",
    "ValidateFormTitle": "Used in the form",
    "ValidateFormIntro": "Build components into <code>ValidateForm</code> used in",
    "AutoCloseTitle": "AutoClose",
    "AutoCloseIntro": "Click on the sidebar shortcuts to Close the pop-up automatically",
    "Submit": "Submit",
    "Limit": "time limit",
    "ViewModeTitle": "ViewMode",
    "ViewModeIntro": "By setting <code>ViewMode=\"DatePickerViewMode.Year\"</code>, the component view is the year view, and by setting <code>ViewMode=\"DatePickerViewMode.Month\"</code>, the component view is the year view.",
    "Feature": "Feature",
    "FeatureShowLunar": "Lunar",
    "FeatureShowSolarTerm": "Solar Term",
    "FeatureShowFestivals": "Festivals",
    "FeatureShowHolidays": "Holidays"
  },
  "BootstrapBlazor.Server.Components.Samples.Ips": {
    "IpTitle": "IpAddress",
    "IpSubTitle": "The IP Address component is a reusable component for entering and validating IP addresses.",
    "IpNormalTitle": "Basic usage",
    "IpNormalIntro": "Enter and display the  <code>ip</code>  address in sections, for example: <code>192.168.1.1</code>",
    "IsDisabledTitle": "IsDisabled",
    "IsDisabledIntro": "Make the component disabled by setting <code>IsDisabled</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Displays": {
    "Title": "Display",
    "SubTitle": "Displays static text data",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Show only",
    "BindWayTitle": "Bind data in both directions",
    "BindWayIntro": "Two-way binding automatically gets the display labels in the resource file",
    "BindWayP1": "When the <code>Display</code> components turn on bidirectional binding, the <code>Display/DisplayName</code> label value is automatically obtained based on the <code>Model</code> property value of the binding and appears as a <code>pre-Label</code>, with <code>DisplayText</code> properties you can customize the display of the pre-label, or by turning off the display of the pre-label through the <code>ShowLabel</code> property",
    "DataTypeTitle": "Generic binding",
    "DataTypeIntro": "The <code>Display</code> component has built-in processing of <code>enumerated</code> <code>collections</code> <code>array</code>, customize formatting or callback delegate methods if they do not meet the criteria",
    "EditorFormTitle": "Used within the form",
    "EditorFormIntro": "The <code>Display</code> component is used in form components <code>EditorForm</code>, and is used in detail pages and is not editable",
    "FormatStringTitle": "Custom format",
    "FormatStringIntro": "When you set the <code>FormatString</code> property value to <code>yyyy-MM-dd</code>, the component displays a time format of the year and day",
    "LookupTitle": "Lookup",
    "LookupIntro": "Set the <code>Lookup</code> value to <code>IEnumerable&lt;SelectedItem&gt;</code> collection, through which the component will perform translations through the <code>Value</code> display <code>Text</code>",
    "LookupP1": "In this example, the component <code>Value='@IntValue'</code> set <code>Lookup='@IntValueSource'</code> component to display the <code>Value</code> corresponding to the value of the <code>Text</code> Value",
    "ShowLabel": "Whether to display the front label",
    "DisplayText": "The front label displays text",
    "FormatString": "The numerically formatted string",
    "Formatter": "TableHeader instance",
    "TypeResolver": "It is used internally when the type resolution callback method tvalue is an array instance",
    "BasicUsage": "Basic usage",
    "BindWayCustomLabel": "Custom labels",
    "BindWayP2": "Set the <code>DisplayText</code> value to <b>custom label </b>",
    "BindWayOccupants": "Occupants",
    "BindWayP3": "The value of <code>DisplayText</code> is displayed when <code>ShowLabel</code> is <code>true</code>, regardless of whether the value is set",
    "BindWayNotOccupants": "Do not occupy seats",
    "BindWayP4": "The value of <code>DisplayText</code> is not displayed when the <code>ShowLabel</code> is <code>false</code>",
    "Integer": "Integer",
    "Enum": "Enumerate",
    "Collection": "Collection",
    "Arr": "Array",
    "FormatStringSettingText": "Set up",
    "FormatStringP": "The <code>Display</code> component binding <code>byte[]</code> array, formatted as an example of <code>base64</code> encoded string",
    "ShowTooltipTitle": "Show Tooltip",
    "ShowTooltipIntro": "Wrapper with <code>Tooltip</code> or <code>ShowTooltip=\"true\"</code> component for show tooltip title"
  },
  "BootstrapBlazor.Server.Components.Samples.DropdownWidgets": {
    "Title": "DropdownWidget",
    "SubTitle": "More for head information summary presentation",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Write pendant content directly on the page through <code>ChildContent</code>",
    "AttributeTitle": "DropdownWidgetItem",
    "Icon": "Widget icon",
    "BadgeColor": "Badge color",
    "HeaderColor": "Header color",
    "BadgeNumber": "The number of badges displayed",
    "ShowArrow": "Whether to display a small arrow",
    "MenuAlignment": "Menu alignment",
    "HeaderTemplate": "Header template",
    "BodyTemplate": "Body template",
    "FooterTemplate": "Footer template",
    "BasicUsageMessage": "You have 4 unread messages",
    "BasicUsageViewMessage": "View all messages",
    "BasicUsageNotify": "You have 10 unread notifications",
    "BasicUsageViewNotify": "View all notifications",
    "BasicUsageTasks": "You have 3 tasks",
    "BasicUsageViewTasks": "View all tasks",
    "OnItemCloseAsync": "Close dropdown widget item callback method"
  },
  "BootstrapBlazor.Server.Components.Samples.Empties": {
    "Title": "Empty",
    "SubTitle": "Sub Title PlaceHolder",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Just add <code>Empty</code> tag",
    "ImageTitle": "Set the path to the empty state picture",
    "ImageIntro": "Just set the <code>Image</code> property",
    "TemplateTitle": "Customize the empty state template",
    "TemplateIntro": "The inner set renders custom components <code>Template</code> labels",
    "Image": "Customize the picture path",
    "Text": "Custom description information",
    "TextDefaultValue": "There is no description at this time",
    "Width": "Customize the width of the picture",
    "Height": "Customize the height of the picture",
    "Template": "Custom templates",
    "ChildContent": "ChildContent",
    "ImageText": "No data at this time",
    "TemplateText": "Customize the empty state template",
    "TemplateIButtonText": "Go back to the previous page"
  },
  "BootstrapBlazor.Server.Components.Samples.GroupBoxes": {
    "Title": "GroupBox",
    "SubTitle": "Simulate WinForm's GroupBox components",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Put your own components inside the <code>GroupBox</code>",
    "AttTitle": "Set the component title",
    "GroupTitle": "An example of a form",
    "GroupP1": "I'm an example of <code>GroupBox</code>",
    "GroupP2": "For more examples, please refer to the <code>EditorForms</code> Form Example <a href='editor-form' target='_blank'>[the portal]</a>"
  },
  "BootstrapBlazor.Server.Components.Samples.LinkButtons": {
    "LinkButtonsComTitle": "LinkButton",
    "LinkButtonsSubTitle": "Provider A html tag as Button",
    "LinkButtonTextTitle": "LinkButton",
    "LinkButtonTextIntro": "Set <code>Text</code> for displayed text",
    "LinkButtonText": "LinkButton",
    "LinkButtonUrlTitle": "Navigation Url",
    "LinkButtonUrlIntro": "Set <code>Url</code> for navigation Url",
    "LinkButtonTitleTitle": "Tooltip",
    "LinkButtonTitleIntro": "Set <code>Title</code> for tooltip",
    "LinkButtonTitleDetail": "show <code>Tooltip</code> when hover on this button",
    "LinkButtonImageTitle": "Image",
    "LinkButtonImageIntro": "Set <code>ImageUrl</code> for image",
    "LinkButtonChildTitle": "Template",
    "LinkButtonChildIntro": "Set <code>ChildContent</code> for customer template",
    "LinkButtonOnClickTitle": "OnClick",
    "LinkButtonOnClickIntro": "Set <code>OnClick</code> handler onclick event",
    "LinkButtonIconTitle": "Icon",
    "LinkButtonIconIntro": "Set <code>Icon</code> for display as icon button",
    "LinkButtonColorTitle": "Color",
    "LinkButtonColorIntro": "Set <code>Color</code> change the color of text",
    "LinkButtonIsDisabledTitle": "Disabled",
    "LinkButtonIsDisabledIntro": "Set <code>IsDisabled</code> for disable the link button",
    "LinkButtonVerticalTitle": "Vertical",
    "LinkButtonVerticalIntro": "Set <code>IsVertical</code> for vertical layout the icon and text",
    "Text": "Text",
    "Url": "Url",
    "Title": "Tooltip Title",
    "ImageUrl": "ImageUrl",
    "TooltipPlacement": "Tooltip placement",
    "ChildContent": "ChildContent",
    "OnClick": "OnClick",
    "Icon": "Icon",
    "LinkButtonTitleTooltip": "this is Tooltip title",
    "LinkButtonIsDisabledText": "Disabled",
    "LinkButtonColorText": "Button",
    "LinkButtonVerticalText": "TestButton"
  },
  "BootstrapBlazor.Server.Components.Samples.ListViews": {
    "ListViewsTitle": "ListView",
    "ListViewsSubTitle": "Provides rule arrangement controls",
    "ProductListText": "The list of products",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Apply to a large number of duplicate data implementation rule arrangements",
    "BasicUsageP1": "The <code>OnListViewItemClick</code> event is triggered when you click on the image",
    "PaginationTitle": "Paginated display",
    "PaginationIntro": "Set the <code>Pageable</code> display paginated components",
    "GroupTitle": "Group display",
    "GroupIntro": "Set up grouping <code>GroupName</code> data. set the group order by <code>GroupOrderCallback</code>",
    "CollapseTitle": "Collapsable",
    "CollapseIntro": "Set up grouping can collapable via <code>Collapsible=\"true\"</code>",
    "Collapsible": "Whether to collapsable",
    "IsAccordionTitle": "Group accordion",
    "IsAccordionIntro": "Set up grouping can accordion via <code>IsAccordion=\"true\"</code>",
    "Items": "Component data source",
    "Pageable": "Whether to paginated",
    "HeaderTemplate": "ListView Header template",
    "BodyTemplate": "ListView Body template",
    "FooterTemplate": "ListView Footer template",
    "Collapse": "Group collapse",
    "IsAccordion": "Group accordion",
    "OnQueryAsync": "Asynchronous query callback method",
    "OnListViewItemClick": "The ListView element calls back when it clicks on the delegate",
    "QueryAsync": "Manually query data methods",
    "CollapsedGroupCallback": "Callback for set the IsCollapsed parameter of Collapse component",
    "GroupOrderCallback": "Callback for set the order of group",
    "GroupItemOrderCallback": "Callback for set the order of items on group",
    "GroupHeaderTextCallback": "Callback for set the header text of group"
  },
  "BootstrapBlazor.Server.Components.Samples.Locators": {
    "LocatorsTitle": "Get the IP geographic location",
    "LocatorsSubTitle": "More for system log tracking and analysis",
    "LocatorsNormalTitle": "Basic usage",
    "LocatorsNormalIntro": "The injection service displays client geographic location information",
    "LocatorsNormalDescription": "Introduction to usage",
    "LocatorsNormalInjectIPLocator": "The component uses the injection service <code>IIPLocatorProvider</code> call the <code>Locate</code> method",
    "LocatorsNormalTipsTitle": "Some geographic location query interfaces may return character sets from other character sets such as<code>gbk</code>, and the program may report an error",
    "LocatorsNormalTips1": "Solution:",
    "LocatorsNormalTips2": "The <code>Startup</code> file add the following phrase to the  <code>ConfigureServices</code> method",
    "LocatorsNormalExtendDescription": "Extend the custom geo-location query interface",
    "LocatorsNormalExtend1": "1. Implement a custom locator",
    "LocatorsNormalExtend2": "2. Configure a custom locator",
    "LocatorsNormalExtend3": "3. Use locator",
    "LocatorsNormalCustomerLocator": "Add <code>CustomerLocatorProvider</code> to the service container using the <code>AddSingleton</code> method",
    "LocatorsNormalIpTitle": "IP test data",
    "LocatorsNormalTips3": "Shandong, China Unicom",
    "LocatorsNormalTips4": "Shushan District Hefei, Anhui China Telecom",
    "LocatorsNormalInputText": "IpAddress",
    "LocatorsNormalDisplayText": "Geographical location",
    "LocatorsNormalButtonText": "Locating",
    "LocatorsProviderDesc": "<p>The component library has two built-in free online geolocation locators, <code>BaiduIpLocatorProvider</code> <code>BaiduIpLocatorProviderV2</code><p><p>The component library has a built-in paid online geolocation locator <code>BootstrapBlazor.JuHeIpLocatorProvider</code> <a href=\"https://www.nuget.org/packages/BootstrapBlazor.JuHeIpLocatorProvider\" target=\"_blank\">Nuget package</a> <a href=\"https://juhe.cn\" target=\"_blank\">Official website address</a></p><p>The component library has a built-in free offline geolocation locator <code>BootstrapBlazor.IP2Region</code> <a href=\"https://www.nuget.org/packages/BootstrapBlazor.IP2Region\" target=\"_blank\">Nuget package</a></p>"
  },
  "BootstrapBlazor.Server.Components.Samples.Print": {
    "PrintsTitle": "Print",
    "PrintsSubTitle": "Used to print a document or a local view",
    "PrintsTips1": "Set up <code style='margin-left: 14px;' > PreviewUrl</code>, open a new page for print preview and click the print button on this page for page printing",
    "PrintsTips2": "If you are printing a button in the <code>Dialog</code> component when you do not set the <code>PreviewUrl</code>, the pop-up contents are printed",
    "PrintsButtonText": "Print",
    "PrintButtonTitle": "Basic usage",
    "PrintButtonIntro": "Print the page by clicking the print button",
    "PrintsButtonDescription": "After clicking the print button below, a new page pops up for print preview, confirms that it is correct, and then clicks the print button in the print preview page for printer selection",
    "PrintDialogTitle": "Print the bullet window",
    "PrintDialogIntro": "Turn on printing by setting up the <code>ShowPrint</code>",
    "PrintDialogP": "In this example, the pop-up window content is a custom component <code>{0}</code> the <code>Footer</code> where the button itself is located is hidden, so the <code>Print</code> button built into the pop-up window cannot be displayed, and setting the <code>{1}</code> makes the <b>print</b>The button appears in the title bar",
    "PrintServiceTitle": "Print service",
    "PrintServiceIntro": "By setting up the content components to print, call the <b>print service</b> directly print jobs. Printing Service <code>PrintService</code> Service Document <a href=\"/print-service\" target=\"_blank\">[Portal]</a>",
    "PrintsDialogTitle": "The data query window"
  },
  "BootstrapBlazor.Server.Components.Samples.Tags": {
    "TagsTitle": "Tag",
    "TagsSubTitle": "Used for marking and selection.",
    "Tag1": "Label I",
    "Tag2": "Label II",
    "Tag3": "Label III",
    "Tag4": "Label IV",
    "Tag5": "Label V",
    "Tag6": "Label VI",
    "Tag7": "Label VII",
    "TagsNormalTitle": "Basic usage",
    "TagsNormalIntro": "Non floating elements in the page will not disappear automatically.",
    "TagsCloseButtonTitle": "Close button",
    "TagsCloseButtonIntro": "Provides a label for the close button",
    "TagsIconTitle": "With Icon",
    "TagsIconIntro": "Improve readability when representing a state.",
    "TagsChildContent": "ChildContent",
    "TagsClass": "Class",
    "TagsColor": "Color",
    "TagsIcon": "Icon",
    "TagsShowDismiss": "Close button",
    "TagsOnDismiss": "Close label callback method"
  },
  "BootstrapBlazor.Server.Components.Samples.Timelines": {
    "TimelinesTitle": "Timeline",
    "TimelinesSubTitle": "Visualize time flow information",
    "TimelinesNormalTitle": "Basic usage",
    "TimelinesNormalIntro": "<code>Timeline</code> can be split into multiple <cdoe>activities</code> arranged in positive or reverse order of timestamps, which are an important feature that distinguishes them from other controls, and should be used with care to distinguish them from <code>Step</code> component.",
    "TimelinesNormalDescription": "sort:",
    "TimelinesCustomNodeStyleTitle": "Customize the node style",
    "TimelinesCustomNodeStyleIntro": "You can customize the node color according to the actual scene, or use the icon directly.",
    "TimelinesLeftTitle": "Shown on the left",
    "TimelinesLeftIntro": "Content takes turns appearing on the left side of the timeline",
    "TimelinesLeftDescription": "Control the content appearing on the left side of the timeline by setting the <code>IsLeft</code> property",
    "TimelinesAlternateTitle": "Alternate presentations",
    "TimelinesAlternateIntro": "Content appears alternately on both sides of the timeline",
    "TimelinesAlternateDescription": "Control the alternating timeline left and right by setting the <code>IsAlternate</code> property",
    "TimelinesDisplayCustomComponentTitle": "Show custom components",
    "TimelinesDisplayCustomComponentIntro": "Custom components are displayed on the timeline",
    "TimelinesDisplayCustomComponentDescription": "Control the custom components that the timeline displays by setting the <code>CustomerComponent</code> of the <code>TimelineItem</code>",
    "TimelinesSelectedItem1": "Positive order",
    "TimelinesSelectedItem2": "Reverse order",
    "TimelineItemContent1": "Creation time",
    "TimelineItemContent2": "Approved",
    "TimelineItemContent3": "The event starts on schedule",
    "TimelineItemContent4": "The default style of the node",
    "TimelineItemContent5": "Support for custom colors",
    "TimelineItemContent6": "Icons are supported",
    "TimelinesDescription1": "Real-time output",
    "TimelinesDescription2": "Counter",
    "TimelinesDescription3": "Weather forecast information",
    "TimelinesItems": "A collection of data",
    "TimelinesIsReverse": "Whether to display in reverse order",
    "TimelinesIsLeft": "Whether the left side presents content",
    "TimelinesIsAlternate": "Whether to alternate the content",
    "TimelinesColor": "Node color",
    "TimelinesContent": "The body of the content",
    "TimelinesIcon": "Node icon",
    "TimelinesDescription": "The node description text",
    "TimelinesComponent": "Node custom components",
    "TimelinesAttributeTitle": "TimelineItem attributes"
  },
  "BootstrapBlazor.Server.Components.Samples.Searches": {
    "SearchesTitle": "Search box",
    "SearchesSubTitle": "Used for data search",
    "SearchesPlaceHolder": "Search for examples",
    "SearchesNormalTitle": "Basic usage",
    "SearchesNormalIntro": "Enter some of the data to search",
    "SearchesNormalDescription": "Please enter <code>1234</code> to get the Smart Prompt and turn on auto focus by setting <code>IsAutoFocus='true'</code>",
    "SearchesDisplayButtonTitle": "The Empty button is displayed",
    "SearchesDisplayButtonIntro": "Control whether the Empty button is displayed by setting the <code>ShowClearButton</code> parameter",
    "SearchesKeyboardsTitle": "Keyboard input instant search",
    "SearchesKeyboardsIntro": "Control whether search operations are performed in real time by setting <code>IsTriggerSearchByInput</code> parameter",
    "SearchesValidateFormTitle": "ValidateForm",
    "SearchesValidateFormIntro": "Inside <code>ValidateForm</code>",
    "SearchesNoDataTip": "Auto-complete data prompts when there is no match",
    "SearchesNoDataTipDefaultValue": "No matching data",
    "SearchesButtonLoadingIcon": "Searching for button icon",
    "SearchesClearButtonIcon": "Clear the button color",
    "SearchesClearButtonText": "Empty the button text",
    "SearchesClearButtonColor": "Clear the button color",
    "SearchesButtonColor": "Search for button color",
    "SearchesIsAutoFocus": "Whether to get the focus automatically",
    "SearchesIsAutoClearAfterSearch": "Click Search to automatically empty the search box",
    "SearchesIsTriggerSearchByInput": "Whether the search mode is triggered by input, it is triggered by clicking the search button by default",
    "SearchesShowClearButton": "Whether the Clear button is displayed",
    "SearchesOnSearch": "Call back this delegate when you click Search",
    "SearchesOnClear": "Click Recall this order when emptying",
    "SearchesItemTemplateTitle": "Item Template",
    "SearchesItemTemplateIntro": "By setting <code>ItemTemplate</code> and matching generic data, you can achieve any desired effect. In this example, by searching for any keyword, the backend calls any third-party search results and displays them. After selecting the search item, you can handle it yourself through the <code>OnSelectedItemChanged</code> callback method",
    "SearchesShowPrefixIconTitle": "ShowPrefixIcon",
    "SearchesShowPrefixIconIntro": "Control whether to show the prefix icon by setting the <code>ShowPrefixIcon</code> parameter",
    "SearchesShowPrefixIconDescription": "You can customize the prefix through <code>PrefixIconTemplate</code>. In this example, the <code>Svg</code> icon is used through the prefix template.",
    "SearchesButtonTemplateTitle": "Button Template",
    "SearchesButtonTemplateIntro": "Customize the buttons displayed by the component by setting <code>ButtonTemplate</code>",
    "SearchesButtonTemplateDesc": "Customize the buttons displayed in front of the component by setting <code>PrefixButtonTemplate</code>",
    "SearchesButtonTemplateDesc2": "In a custom template, you can call the <code>OnClear</code> <code>OnSearch</code> method inside the <code>Search</code> component with the context.",
    "SearchesIsClearableTitle": "IsClearable",
    "SearchesIsClearableIntro": "Display the clear icon by setting <code>IsClearable=\"true\"</code>",
    "SearchesIsClearable": "Whether to display the clear icon",
    "SearchesClearIcon": "Clear Icon",
    "SearchesPrefixButtonTemplate": "Prefix button template",
    "SearchesButtonTemplate": "Button template",
    "SearchesIconTemplateTitle": "Icon Template",
    "SearchesIconTemplateIntro": "Customize the icon displayed by the component by setting <code>IconTemplate</code>",
    "SearchesIconTemplateDesc": "The search component context <code>SearchContext&lt;string&gt;</code> provides the <code>OnClear</code> <code>OnSearch</code> methods within the component"
  },
  "BootstrapBlazor.Server.Components.Samples.Titles": {
    "Title": "Title",
    "SubTitle": "Used to set page title",
    "Tips": "<p><code>NET6. 0</code> you can use the Microsoft <code>PageTitle</code> component to set the page title. This component additionally provides setting the current page title in the form of service</p>",
    "BasicUsageTitle": "BasicUsage",
    "BasicUsageIntro": "Add the <code>Title</code> component to the web page and set the <code>text</code> attribute",
    "BasicUsageTips": "The <code>Title</code> component is used by ordinary components after setting <code>text</code>, and can be called by the service when the <code>text</code> attribute is not set",
    "BasicUsageP": "<b>Set the <code>Text</code> property</b>",
    "BasicUsageTitleText": "I am the title",
    "BasicUsageP1": "Test page",
    "AdvanceTitle": "Advanced usage",
    "AdvanceIntro": "There is no need to add the <code>Title</code> component to the webpage, and the injection service <code>TitleService</code> is called",
    "AdvanceB": "Pay attention:",
    "AdvanceP": "When using this method, please add <b>not set <code>Text</code> attribute in <code>App</code> or <code>MainLayout</code> or <code>Page</code> The <code>Title</code> component of </b>",
    "FuncationParmeter": "I am the title",
    "StaticTitle": "Static method",
    "StaticIntro": "Call the <code>TitleService</code> static method directly",
    "StaticB": "Pay attention",
    "StaticDiv": "When using this method, please add <b>not set <code>Text</code> attribute in <code>App</code> or <code>MainLayout</code> or <code>Page</code>The <code>Title</code> component of </b>"
  },
  "BootstrapBlazor.Server.Components.Components.DemoBlock": {
    "Title": "",
    "TooltipText": "Copied"
  },
  "BootstrapBlazor.Server.Components.Components.Tips": {
    "Title": "Tips"
  },
  "BootstrapBlazor.Server.Components.Components.AttributeTable": {
    "Title": "Attributes"
  },
  "BootstrapBlazor.Server.Components.Components.MethodTable": {
    "Title": "Methods"
  },
  "BootstrapBlazor.Server.Components.Common.AttributeItem": {
    "Name": "Parameter",
    "Description": "Description",
    "Type": "Type",
    "ValueList": "ValueList",
    "DefaultValue": "DefaultValue"
  },
  "BootstrapBlazor.Server.Components.Common.EventItem": {
    "Name": "Parameter",
    "Description": "Description",
    "Type": "Type"
  },
  "BootstrapBlazor.Server.Components.Common.MethodItem": {
    "Title": "Methods",
    "Name": "Parameter",
    "Description": "Description",
    "Type": "Type",
    "Parameters": "Parameters",
    "ReturnValue": "ReturnValue"
  },
  "BootstrapBlazor.Server.Components.Layout.ComponentLayout": {
    "Title": "Enterprise-level component library based on Bootstrap and Blazor",
    "Example": "Example",
    "Video": "Video",
    "ViewRazorCode": "View Razor Code",
    "ViewC#Code": "View C# Code",
    "ViewExample": "View Example",
    "IconTheme": "Icon",
    "Group": "Community"
  },
  "BootstrapBlazor.Server.Components.Samples.Alerts": {
    "Title": "Alert",
    "SubTitle": "Displays important alert messages.",
    "BaseUsageText": "Basic usage",
    "IntroText1": "Alert components are non-overlay elements in the page that does not disappear automatically.",
    "CloseButtonUsageText": "Close button",
    "IntroText2": "Customize the close button as texts or other symbols.",
    "WithIconUsageText": "With Icon",
    "IntroText3": "Displaying an icon improves readability.",
    "ShowBarUsageText": "With Bar",
    "IntroText4": "Show <code>Tip</code>",
    "ShowBorderTitle": "Border",
    "ShowBorderIntro": "Set <code>ShowBorder=\"true\"</code> show border",
    "ShowShadowTitle": "Shadow",
    "ShowShadowIntro": "Set <code>ShowShadow=\"true\"</code> Show shadow",
    "AlertPrimaryText": "A simple primary alert—check it out!",
    "AlertSecondaryText": "A simple secondary alert—check it out!",
    "AlertSuccessText": "A simple success alert—check it out!",
    "AlertDangerText": "A simple danger alert—check it out!",
    "AlertWarningText": "A simple warning alert—check it out!",
    "AlertInfoText": "A simple info alert—check it out!",
    "AlertDarkText": "A simple dark alert—check it out!"
  },
  "BootstrapBlazor.Server.Components.Samples.RibbonTabs": {
    "RibbonTabsTitle": "RibbonTab",
    "RibbonTabsDescription": "Office menu tab",
    "RibbonTabsNormalTitle": "Basic usage",
    "RibbonTabsNormalIntro": "Initialize the tab by setting <code>Items</code>",
    "RibbonTabsFloatTitle": "Suspended",
    "RibbonTabsFloatIntro": "By setting <code>ShowFloatButton</code>, the shrink button is displayed on the right side of the tab without occupying the main form space",
    "RibbonTabsFloatContent": "I am the body content, I will move up after the menu is collapsed",
    "RibbonTabsRightButtonsTemplateTitle": "top right button template",
    "RibbonTabsRightButtonsTemplateIntro": "By setting <code>RightButtonsTemplate</code> some shortcut buttons can be added to the upper right corner of the tab",
    "RibbonTabsRightButtonsTemplateContent": "Documentation",
    "RibbonTabsShowFloatButtonAttr": "Display the small floating arrow",
    "RibbonTabsOnFloatChanged": "Callback method when the suspension state of the component changes",
    "RibbonTabsRibbonArrowUpIcon": "Tab up arrow icon",
    "RibbonTabsRibbonArrowDownIcon": "Tab down arrow icon",
    "RibbonTabsRibbonArrowPinIcon": "Tab Pinnable Icons",
    "RibbonTabsShowFloatButton": "Display the small floating arrow",
    "RibbonTabsItems": "Data source",
    "RibbonTabsOnItemClickAsync": "Click the command button callback method",
    "OnMenuClickAsyncAttr": "Click the command menu callback method",
    "RibbonTabsRightButtonsTemplate": "Right button template",
    "RibbonTabsItemsText1": "Document",
    "RibbonTabsItems1": "Task 1",
    "RibbonTabsItems2": "Task 2",
    "RibbonTabsItems3": "Task 3",
    "RibbonTabsItems4": "Open",
    "RibbonTabsItems5": "Save",
    "RibbonTabsItems6": "Save as",
    "RibbonTabsItemsText2": "Edit",
    "RibbonTabsItems7": "Open",
    "RibbonTabsItems8": "Save",
    "RibbonTabsItems9": "Save as",
    "RibbonTabsItems10": "Task 1",
    "RibbonTabsItems11": "Task 2",
    "RibbonTabsItems12": "Task 3",
    "ItemsGroupName1": "Group one",
    "ItemsGroupName2": "Group two",
    "RibbonTabsHeaderClickTitle": "Header click callback",
    "RibbonTabsHeaderClickIntro": "Handler the event of click header via <code>OnHeaderClickAsync</code>",
    "RibbonTabsAnchorTitle": "Anchor",
    "RibbonTabsAnchorIntro": "Set <code>IsSupportAnchor=\"true\"</code> enable anchor support",
    "RibbonTabsAnchorDesc": "Set <code>EncodeAnchorCallback</code> custom the encode hash rule, set <code>DecodeAnchorCallback</code> custom the decode hash rule"
  },
  "BootstrapBlazor.Server.Components.Samples.Logouts": {
    "LogoutsTitle": "Logout component",
    "LogoutsDescription": "Used for site logout action",
    "LogoutsNormalTitle": "Common usage",
    "LogoutsNormalIntro": "Use the built-in template directly",
    "LogoutsShowUserNameTitle": "Only show avatars",
    "LogoutsShowUserNameIntro": "Set <code>ShowUserName</code> to <code>false</code>",
    "LogoutsChildContentTitle": "Custom display template",
    "LogoutsChildContentIntro": "Set <code>ChildContent</code> or write other components directly inside the component",
    "LogoutsChildContentCustomDisplay": "Customize display content",
    "LogoutsHeaderTemplateTitle": "Custom Login Information Template",
    "LogoutsHeaderTemplateIntro": "set up <code>HeaderTemplate</code>",
    "LogoutsHeaderTemplateUser1": "General manager",
    "LogoutsHeaderTemplateUser2": "Admin",
    "LogoutsLinkTemplateTitle": "Custom link template",
    "LogoutsLinkTemplateIntro": "set up <code>LinkTemplate</code>",
    "LogoutsLinkTemplatePersonalCenter": "personal center",
    "LogoutsLinkTemplateSetup": "set up"
  },
  "BootstrapBlazor.Server.Components.Samples.AutoRedirects": {
    "Title": "AutoRedirect automatic jump component",
    "Description": "Through the set address, automatically jump to the specified page when there is no mouse or keyboard action on the page",
    "NormalTitle": "Common usage",
    "NormalIntro": "By setting the <code>Interval</code> interval, when there is no mouse or keyboard action, it will automatically jump to the address set by <code>RedirectUrl</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.AnchorLinks": {
    "AnchorLinkTitle": "AnchorLink",
    "AnchorLinkDescribe1": "Apply to title strip",
    "AnchorLinkDescribe2": "Anchor link, click to copy for easy sharing",
    "AnchorLinkDemoTitle": "Common usage",
    "AnchorLinkDemoIntroduction": "After placing the label click on the copy anchor link to the pasteboard",
    "AnchorLinkTips1": "Anchor Link Component Properties",
    "AnchorLinkTips2": "It is a required item, and the function of copying the anchor link will not be provided if it is not filled in",
    "AnchorLinkTips3": "Component anchor icons are available via",
    "AnchorLinkTips4": "The parameter is customized and the default is",
    "AnchorLinkTips5": "<code>TooltipText</code> Used to set the prompt message after copying the address",
    "AttrId": "Id",
    "AttrIcon": "Icon",
    "AttrText": "Display text",
    "AttrTooltipText": "Tooltip text",
    "AnchorLinkText": "I am a clickable anchor link"
  },
  "BootstrapBlazor.Server.Components.Samples.QRCodes": {
    "QRCodesTitle": "QRCode",
    "QRCodesSubTitle": "Generate QR code",
    "QRCodesNormalTitle": "Basic usage",
    "QRCodesNormalIntro": "Click the Generate button to generate a <code>QRCode</code>",
    "QRCodesContentTitle": "Direct build",
    "QRCodesContentIntro": "Specify the contents of the QR code with the <code>Content</code> parameter",
    "QRCodesWidthTitle": "Size",
    "QRCodesWidthIntro": "<code>Width</code> of the QRCode",
    "QRCodesColorTitle": "Color",
    "QRCodesColorIntro": "<code>DarkColor</code> set the black color，<code>LightColor</code> set the white color",
    "SuccessText": "QR code generated successfully",
    "ClearText": "QR code clear successfully",
    "OnGenerated": "Call back after QR code generation",
    "OnCleared": "Call back after QR code clear",
    "Width": "Size",
    "ClearButtonText": "The text of Clear button",
    "ClearButtonIcon": "The icon of Clear button",
    "GenerateButtonText": "The text of Generate button",
    "GenerateButtonIcon": "The icon of Generate button",
    "ShowButtons": "Whether show the buttons",
    "DarkColor": "The color of black",
    "LightColor": "The color of white",
    "QRCodesPlaceHolderValue": "Please input ...",
    "QRCodesClearButtonTextValue": "Clear",
    "QRCodesGenerateButtonTextValue": "Generate"
  },
  "BootstrapBlazor.Server.Components.Samples.Anchors": {
    "Title": "Anchor",
    "SubTitle": "Hyperlinks to scroll on one page.",
    "BaseUsageText": "Basic usage",
    "IntroText1": "For displaying anchor hyperlinks on page and jumping between them.",
    "IntroText2": "Click <code>Anchor</code> item try it",
    "ContentText1": "<p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p><p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p><p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p><p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p><p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p>",
    "DescTarget": "Anchor Target Id",
    "DescIsAnimation": "Enable scroll smooth",
    "DescContainer": "Id of the element where the scroll bar is located",
    "DescOffset": "The offset is used to adjust the gap use",
    "DescChildContent": "Content"
  },
  "BootstrapBlazor.Server.Components.Samples.Breadcrumbs": {
    "Title": "Breadcrumb",
    "Describe": "Display the path of the current page and quickly return to any previous page.",
    "Block1Title": "Basic usage",
    "Block1Intro": "Suitable for a wide range of basic usage."
  },
  "BootstrapBlazor.Server.Data.Foo": {
    "Name": "Name",
    "DateTime": "DateTime",
    "Address": "Address",
    "Address.PlaceHolder": "required",
    "Count": "Count",
    "Count.PlaceHolder": "required",
    "Complete": "Complete",
    "Education": "Education",
    "Hobby": "Hobby",
    "ReadonlyColumn": "Readonly Column",
    "Name.Required": "{0} is required.",
    "Address.Required": "{0} is required.",
    "Education.Required": "{0} is required.",
    "Hobby.Required": "{0} is required.",
    "Name.PlaceHolder": "required",
    "Hobbies": "Swimming,Climb,Shoot,Chess",
    "Foo.Name": "Zhangsan {0}",
    "Foo.Address": "Lane {0} of Jinshajiang Road, Putuo District, Shanghai",
    "Foo.Address2": "Earth, China, Lane {0} of Jinshajiang Road, Putuo District, Shanghai. Here is an example of super long cell",
    "Foo.BindValue": "BindValue",
    "True": "Pass",
    "False": "Failed",
    "NullItemText": "Not Set"
  },
  "BootstrapBlazor.Server.Components.Samples.ValidateForms.ComplexFoo": {
    "Name": "Name",
    "Name.Required": "{0} is required."
  },
  "BootstrapBlazor.Server.Components.Samples.ValidateForms.Dummy2": {
    "Name": "Name",
    "Name.Required": "Dummy2 {0} is required"
  },
  "BootstrapBlazor.Server.Data.EnumEducation": {
    "PlaceHolder": "Click to select ...",
    "Primary": "Primary",
    "Middle": "Middle"
  },
  "BootstrapBlazor.Server.Components.Components.ThemeChooser": {
    "Title": "Click to choose theme",
    "HeaderText": "Themes"
  },
  "BootstrapBlazor.Server.Components.Samples.Uploads.Person": {
    "Name": "Name",
    "Name.Required": "{0} is required",
    "Picture": "File",
    "Picture.Required": "{0} is required"
  },
  "BootstrapBlazor.Server.Components.Components.CultureChooser": {
    "Label": "Language："
  },
  "BootstrapBlazor.Server.Components.Components.GlobalSearch": {
    "SearchPlaceHolder": "Search",
    "SearchingText": "Searching ...",
    "SearchResultText": "Found {0} results in {1}ms",
    "LogoText": "Powered by BootstrapBlazor",
    "SearchResultPlaceHolder": "Type something to search",
    "EmptySearchResultPlaceHolder": "No match searches",
    "EnterKeyText": "to Select",
    "ArrowKeyText": "to Navigate",
    "EscKeyText": "to Close"
  },
  "BootstrapBlazor.Server.Components.Components.Header": {
    "DownloadText": "Download",
    "HomeText": "Home",
    "IntroductionText": "Documents",
    "TutorialsText": "Tutorials",
    "FullScreenTooltipText": "Full Screen"
  },
  "BootstrapBlazor.Server.Components.Layout.BaseLayout": {
    "SiteTitle": "Bootstrap Blazor enterprise-level UI component library",
    "FlowText": "Workflow",
    "InstallAppText": "Install PWA App",
    "InstallText": "Install",
    "CancelText": "Cancel",
    "Title": "View update log",
    "ChatTooltip": "Azure OpenAI",
    "LightMode": "Light Mode",
    "DarkMode": "Dark Mode"
  },
  "BootstrapBlazor.Server.Components.Layout.NavMenu": {
    "GetStarted": "Getting Started",
    "Introduction": "Introduction",
    "Install": "Install",
    "ProjectTemplate": "Template",
    "HostMode": "Hosting Models",
    "Globalization": "Globalization",
    "Localization": "Localization",
    "WebAppBlazor": "WebApp Blazor",
    "ServerBlazor": "Server-side Blazor",
    "ClientBlazor": "Client-side Blazor",
    "MauiBlazor": "Maui Blazor",
    "Labels": "Labels",
    "ZIndex": "Layout",
    "Breakpoints": "Breakpoints",
    "Theme": "Theme",
    "GlobalException": "Global Exception",
    "GlobalOption": "Global Option",
    "LayoutPage": "Admin Template",
    "FAIcon": "FontAwesome Icons",
    "Components": "Components",
    "Client": "WebClientService",
    "LayoutComponents": "Layouts",
    "Divider": "Divider",
    "DragDrop": "DragDrop",
    "Layout": "Layout",
    "FullScreen": "FullScreen",
    "Footer": "Footer",
    "Row": "Row",
    "Scroll": "Scroll",
    "Skeleton": "Skeleton",
    "Split": "Split",
    "Responsive": "Responsive",
    "NavigationComponents": "Navigations",
    "Anchor": "Anchor",
    "AnchorLink": "AnchorLink",
    "AutoRedirect": "Auto Redirect",
    "Breadcrumb": "Breadcrumb",
    "Dropdown": "Dropdown",
    "Logout": "Logout",
    "GoTop": "GoTop",
    "Menu": "Menu",
    "Navigation": "Nav",
    "Pagination": "Pagination",
    "Steps": "Step",
    "Tab": "Tab",
    "NotificationComponents": "Notifications",
    "Alert": "Alert",
    "Console": "Console",
    "Dialog": "Dialog",
    "Dispatch": "Dispatch",
    "Drawer": "Drawer",
    "EditDialog": "EditDialog",
    "FloatingLabel": "FloatingLabel",
    "Message": "Message",
    "Modal": "Modal",
    "Light": "Light",
    "PopConfirm": "PopConfirmButton",
    "Progress": "Progress",
    "SearchDialog": "SearchDialog",
    "SwitchButton": "Switch Button",
    "Spinner": "Spinner",
    "SweetAlert": "SweetAlert",
    "Timer": "Timer",
    "Toast": "Toast",
    "FormsComponents": "Forms",
    "AutoComplete": "AutoComplete",
    "AutoFill": "AutoFill",
    "Block": "Block",
    "Button": "Button",
    "Cascader": "Cascader",
    "Checkbox": "Checkbox",
    "CheckboxList": "CheckboxList",
    "ColorPicker": "ColorPicker",
    "DateTimePicker": "DateTimePicker",
    "DateTimeRange": "DateTimeRange",
    "Editor": "Editor",
    "EditorForm": "EditorForm",
    "EyeDropper": "EyeDropper Service",
    "Input": "Input",
    "InputNumber": "InputNumber",
    "InputGroup": "InputGroup",
    "Ip": "IpAddress",
    "Markdown": "Markdown",
    "CherryMarkdown": "Cherry-Markdown",
    "MultiSelect": "MultiSelect",
    "Radio": "Radio",
    "Rate": "Rate",
    "Select": "Select",
    "SelectObject": "Select-Object",
    "SelectTable": "Select-Table",
    "SelectTree": "Select-Tree",
    "Slider": "Slider",
    "Switch": "Switch",
    "Textarea": "Textarea",
    "Toggle": "Toggle",
    "Transfer": "Transfer",
    "Upload": "Upload",
    "ValidateForm": "ValidateForm",
    "DataComponents": "Datas",
    "Ajax": "Ajax",
    "Avatar": "Avatar",
    "Badge": "Badge",
    "BarcodeReader": "BarcodeReader",
    "Card": "Card",
    "Calendar": "Calendar",
    "Camera": "Camera",
    "Captcha": "Captcha",
    "Carousel": "Carousel",
    "Circle": "Circle",
    "Collapse": "Collapse",
    "CountUp": "CountUp",
    "Display": "Display",
    "DropdownWidget": "DropdownWidget",
    "GroupBox": "GroupBox",
    "Handwritten": "HandWritten",
    "LinkButton": "LinkButton",
    "ListView": "ListView",
    "ListGroup": "ListGroup",
    "Locator": "IpLocatorFactory",
    "Icon": "Icon",
    "IFrame": "IFrame",
    "ImageViewer": "ImageViewer",
    "FileIcon": "FileIcon",
    "Popover": "Popover",
    "Print": "Print",
    "Repeater": "Repeater",
    "QRCode": "QRCode",
    "Search": "Search",
    "Tag": "Tag",
    "Timeline": "Timeline",
    "Title": "TitleService",
    "Download": "Download",
    "Tooltip": "Tooltip",
    "Reconnector": "Reconnector",
    "Tree": "Tree",
    "TreeView": "TreeView",
    "TableComponents": "Table",
    "Table": "Table",
    "TableBase": "Base",
    "TableRow": "Row",
    "TableColumn": "Column",
    "TableColumnDrag": "Column Dragging",
    "TableColumnResizing": "Column Width",
    "TableColumnList": "Columns Show/Hide",
    "TableColumnAlign": "Column Alignment",
    "TableColumnCopy": "Column Replication",
    "TableColumnTemplate": "Column Template",
    "TableCell": "Cell",
    "TableDetail": "Detail",
    "TableDynamic": "Dynamic",
    "TableDynamicObject": "DynamicObject",
    "TableSearch": "Search",
    "TableFilter": "Sort/Filter",
    "TableFixHeader": "FixHeader",
    "TableHeaderGroup": "HeaderGroup",
    "TableFixColumn": "FixColumn",
    "TablePage": "Pagination",
    "TableToolbar": "Toolbar",
    "TableEdit": "Edit",
    "TableTracking": "Tracking",
    "TableDynamicExcel": "Excel-DataTable",
    "TableExcel": "Excel-Items",
    "TableExport": "Export",
    "TableSelection": "Selection",
    "TableAutoRefresh": "AutoRefresh",
    "TableFooter": "Footer",
    "TableDialog": "Table-Dialog",
    "TableWrap": "Wrap",
    "TableTree": "Table-Tree",
    "TableLoading": "Table-Loading",
    "TableLookup": "Lookup",
    "TableVirtualization": "Row Virtualization",
    "TableAttribute": "Attribute",
    "Topology": "Topology HMI",
    "MenuAccordion": "Accordion",
    "MenuExpandAll": "Expand",
    "Empty": "Empty",
    "Charts": "Chart",
    "ChartSummary": "Introduction",
    "ChartLine": "Line",
    "ChartBar": "Bar",
    "ChartPie": "Pie",
    "ChartDoughnut": "Doughnut",
    "ChartBubble": "Bubble",
    "Transition": "Transition",
    "Geolocation": "GeoLocationService",
    "Notification": "NotificationService",
    "SignaturePad": "SignaturePad",
    "Speech": "Speech",
    "SpeechComponents": "Speech",
    "SpeechIntro": "Introduction",
    "Recognizer": "Recognizer",
    "Synthesizer": "Synthesizer",
    "SpeechWave": "SpeechWave",
    "WebSpeech": "Web Speech Api",
    "OnScreenKeyboard": "OnScreenKeyboard",
    "RibbonTab": "RibbonTab",
    "PulseButton": "PulseButton",
    "Bluetooth": "IBluetooth",
    "PdfReader": "PDF Reader",
    "PdfViewer": "PDF Viewer",
    "VideoPlayer": "VideoPlayer",
    "FileViewer": "FileViewer",
    "FlipClock": "FlipClock",
    "DriverJs": "DriverDotnetJs",
    "BaiduOcr": "IBaiduOcr",
    "AzureOpenAI": "AzureOpenAI",
    "HtmlRenderer": "HtmlRenderer",
    "Html2Image": "IHtml2Image",
    "Html2Pdf": "IHtml2Pdf",
    "Mask": "MaskService",
    "ContextMenu": "ContextMenu",
    "ClockPicker": "ClockPicker",
    "TimePicker": "TimePicker",
    "DockViewComponents": "DockView",
    "DockViewComponents2": "DockViewV2",
    "DockViewIndex": "DockView Overview",
    "DockViewColumn": "DockView Column",
    "DockViewRow": "DockView Row",
    "DockViewStack": "DockView Stack",
    "DockViewNest": "DockView Nest",
    "DockViewComplex": "DockView Complex",
    "DockViewVisible": "DockView Visible",
    "DockViewLock": "DockView Lock",
    "DockViewLayout": "DockView Custom",
    "DockViewTitle": "DockView Title",
    "DockViewV2Index": "DockViewV2 Overview",
    "DockViewV2Column": "DockViewV2 Column",
    "DockViewV2Row": "DockViewV2 Row",
    "DockViewV2Group": "DockViewV2 Group",
    "DockViewV2Nest": "DockViewV2 Nest",
    "DockViewV2Complex": "DockViewV2 Complex",
    "DockViewV2Visible": "DockViewV2 Visible",
    "DockViewV2Lock": "DockViewV2 Lock",
    "DockViewV2Layout": "DockViewV2 Custom",
    "DockViewV2Title": "DockViewV2 Title",
    "OtherComponents": "Others",
    "MouseFollowerIntro": "MouseFollower",
    "Live2DDisplayIntro": "Live2D Widget",
    "SlideButton": "SlideButton",
    "DialButton": "DialButton",
    "CountButton": "CountButton",
    "Splitting": "Splitting",
    "QueryBuilder": "QueryBuilder",
    "WebSerial": "ISerialService",
    "MindMap": "Mind Map",
    "Mermaid": "Mermaid",
    "Marquee": "Marquee",
    "Stack": "Stack",
    "Segmented": "Segmented",
    "Utility": "Utility",
    "JSExtension": "JSRuntime Extensions",
    "Clipboard": "Clipboard Service",
    "CodeEditor": "CodeEditor",
    "Gantt": "Gantt",
    "ImageCropper": "ImageCropper",
    "Services": "Services",
    "AzureTranslator": "AzureTranslator",
    "BarcodeGenerator": "BarcodeGenerator",
    "ZipArchive": "IZipArchiveService",
    "BrowserFinger": "BrowserFingerService",
    "SvgEditor": "SvgEditor",
    "Waterfall": "Waterfall",
    "Holiday": "ICalendarHoliday",
    "Festival": "ICalendarFestival",
    "Lookup": "ILookupService",
    "DialogService": "DialogService",
    "OnlineText": "Online Users",
    "PrintService": "PrintService",
    "ConnectionService": "ConnectionService",
    "ExportPdfButton": "ExportPdfButton",
    "ThemeProvider": "IThemeProvider",
    "IconPark": "ByteDance IconPark",
    "IntersectionObserver": "IntersectionObserver",
    "AntDesignIcon": "AntDesign Icon",
    "Icons": "Icons",
    "BootstrapIcon": "Bootstrap Icons",
    "MaterialIcon": "Material Icons",
    "ElementIcon": "Element Icon",
    "FluentSystemIcon": "Fluent Icons",
    "DrawerService": "DrawerService",
    "SortableList": "SortableList",
    "WinBox": "WinBox",
    "Player": "Player",
    "RDKit": "RDKit",
    "SmilesDrawer": "SmilesDrawer",
    "Affix": "Affix",
    "Watermark": "Watermark",
    "OctIcon": "Oct Icons",
    "UniverIcon": "Univer Icons",
    "Typed": "Typed",
    "UniverSheet": "UniverSheet",
    "ShieldBadge": "ShieldBadge",
    "OtpInput": "OtpInput",
    "TotpService": "ITotpService",
    "VideoDevice": "IVideoDevice",
    "AudioDevice": "IAudioDevice",
    "FullScreenButton": "FullScreenButton",
    "Meet": "Meet",
    "InputUpload": "InputUpload",
    "ButtonUpload": "ButtonUpload",
    "AvatarUpload": "AvatarUpload",
    "CardUpload": "CardUpload",
    "DropUpload": "DropUpload",
    "Vditor": "Vditor Markdown",
    "TcpSocketFactory": "ITcpSocketFactory",
    "OfficeViewer": "Office Viewer",
    "SocketComponents": "Socket Services",
    "SocketAutoReceive": "Auto Receive",
    "SocketManualReceive": "Manual Receive",
    "DataPackageAdapter": "DataPackageAdapter",
    "SocketAutoConnect": "Reconnect",
    "SocketDataEntity": "DataEntity",
    "ModbusComponents": "Modbus Services",
    "SerialPortComponents": "SerialPort Services",
    "ModbusFactory": "IModbusFactory",
    "SerialPortFactory": "ISerialPortFactory",
    "NetworkMonitor": "Network Monitor",
    "Toolbar": "Toolbar",
    "OpcDaService": "OpcDaServer",
    "Navbar": "Navbar",
    "TaskDashBoard": "TaskDashBoard",
    "Dom2ImageService": "Dom2HtmlService",
    "SelectRegion": "Region Selector",
    "SelectProvince": "Province Selector",
    "SelectCity": "City Selector",
    "HikVision": "HikVisionWebPlugin"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesHeader": {
    "TablesHeaderTitle": "Header grouping function",
    "TablesHeaderDescription": "When the data structure is complex, multi-level headers can be used to show the hierarchical relationship of the data",
    "TablesHeaderNormalTitle": "Basic usage",
    "TablesHeaderNormalIntro": "Set the <code>MultiHeaderTemplate</code> template",
    "TablesHeaderNormalTips1": "By setting <code>ShowMultiFilterHeader</code> value to control whether to display the filter header",
    "TablesHeaderNormalTips2": "Pay attention to the details. After the first column of cells is merged, there will be no cells in the first column of the last row header, so you need to set the style yourself  <code>border-bottom</code> consistent with other cells",
    "TablesHeaderNormal_Time": "time",
    "TablesHeaderNormal_Info": "Personal information",
    "TablesHeaderNormal_Name": "personal name",
    "TablesHeaderNormal_Address": "personal address"
  },
  "BootstrapBlazor.Server.Components.Samples.SelectTrees": {
    "SelectTreesTitle": "SelectTree",
    "SelectTreesDescription": "A tree-like data structure is presented in the drop-down box for selection",
    "SelectTreesNormalTitle": "Common usage",
    "SelectTreesNormalIntro": "Selected node",
    "SelectTreesDisableTitle": "Disabled",
    "SelectTreesDisableIntro": "Disabled the component by set <code>IsDisabled</code> to true",
    "SelectTreesBindingTitle": "Select two-way binding",
    "SelectTreesBindingIntro": "The values in the text box change as you change the drop-down option by binding the Model.Name property to the component with Select Tree",
    "SelectTreesClientValidationTitle": "Validation",
    "SelectTreesClientValidationIntro": "validate the value when submit the form. Inside <code>ValidateForm</code>",
    "SelectTreesEditTitle": "Edit",
    "SelectTreesEditIntro": "By setting <code>IsEditable=\"true\"</code> you can edit the input textbox",
    "SelectTreesEditDesc": "After setting <code>IsEditable=\"true\"</code>, the content displayed in the text box is the <code>Value</code> value of the node selected in the <code>TreeView</code>, the input value may not be in the <code>Items</code> collection",
    "SelectTreesIsPopoverTitle": "IsPopover",
    "SelectTreesIsPopoverIntro": "Set <code>IsPopover</code> to <b>true</b>, use popover render UI prevent The dropdown menu cannot be fully displayed because the parent container is set to <code>overflow: hidden</code>",
    "SelectTreesClientValidationButtonText": "Submit"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesDetailRow": {
    "TablesDetailRowTitle": "Display detail line function",
    "TablesDetailRowDesc": "Used to display parent-child relationship table data",
    "DetailRowTemplateTitle": "Simple Application",
    "DetailRowTemplateIntro": "Set the detail row content by setting the <code>DetailRowTemplate</code> template",
    "DetailRowTemplateP": "In the detail row, another field <code>education</code> of the binding row is displayed in the form of ordinary text",
    "DetailRowTemplateP1": "Through the <code>IsDetails</code> parameter, it is possible to dynamically switch whether to display the detail row function",
    "DetailRowTemplate2Title": "Nested Table Component Application",
    "DetailRowTemplate2Intro": "Set the detail behavior sub-table data by setting the <code>DetailRowTemplate</code> template",
    "DetailRowTemplate2P": "Another <code>Table</code> component is nested in the detail row. Since each row must be associated with sub-table data, for performance reasons, this function adopts the <code>lazy loading</code> mode. , that is, after clicking the expand button, the nested <code>Table</code> is filled with data, and the <code>ShowDetailRow</code> callback delegate can control whether each row displays the detail row. In this example, the <code> Complete</code> attribute to control whether to display the detail line, you can test this function by turning the page",
    "HeightTitle": "Fix the header to enable the detail row function",
    "HeightIntro": "Set the content of the detail row by setting the <code>Height</code> template after the header is fixed",
    "HeightP": "In this example, after the header is fixed, the detail line function is enabled",
    "DetailRowTemplate3Title": "Use Tab component in detail row",
    "DetailRowTemplate3Intro": "Set the detail row content by setting the <code>DetailRowTemplate</code> template",
    "DetailRowTemplate3P": "In this example, the <code>Tab</code> component is used in the detail row to split the data into two <code>TabItem</code> contents again to demonstrate the data splitting again",
    "DynamicTitle": "Detail row of dynamic data",
    "DynamicIntro": "Data source is <code>DataTable</code>",
    "EducationText": "Education:",
    "DetailTextTrue": "Enable",
    "DetailTextFalse": "Disable",
    "TabItemText": "Associated Data",
    "DetailRowTemplateIsAccordion": "IsAccordion"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.Tables": {
    "ButtonAddColumnText": "Add Column",
    "ButtonRemoveColumnText": "Remove Column",
    "TableBaseTitle": "Table",
    "TableBaseDescription": "It is used to display multiple pieces of data with similar structure. You can sort, filter, compare or other user-defined operations on the data.",
    "TableBaseExplain1": "The <code> Table </code> component already supports mobile terminal adaptation. When the screen is smaller than the <code> rendermoderesponsewidth </code> set value, the component will be rendered as a card for easy viewing of data, and its default value is <code> 768 </code>",
    "TableBaseExplain2": "<code>Table</code> component has a <code> rendermode </code> attribute. Its default value is <code> auto </code> and other values are defined as follows",
    "TableBaseTips1": "<code>Auto</code>: Use <code> cardview </code> mode when the screen is smaller than 768px, otherwise use <code> Table </code> mode",
    "TableBaseTips2": "<code>Table</code>: Table rendering mode, using <code> table </code> elements for data rendering, suitable for viewing data in a wide screen",
    "TableBaseTips3": "<code>CardView</code>：Card rendering mode, using <code> div </code> elements for data rendering, which is suitable for viewing data on a narrow screen",
    "TableBaseTips4": "<code>TableColumn</code> When using <code>@bind-Field</code> to bind a complex type, All complex type properties must be instantiated",
    "TableBaseNormalTitle": "Basic table",
    "TableBaseNormalIntro": "Basic table presentation usage",
    "TableBaseNormalDescription": "Update data source when clicking button <code> items </code> component <code> Table </code> display data is automatically updated",
    "TableBaseStripedTitle": "Tables with zebra stripes",
    "TableBaseStripedIntro": "Using a table with zebra stripes, it is easier to distinguish data from different rows. Just set <code> istriped = true </code>",
    "TableBaseBorderedTitle": "Bordered tables",
    "TableBaseBorderedIntro": "Increase the effect of table frame by setting <code> isbordered </code> attribute",
    "TableBaseSizeTitle": "Compact tables",
    "TableBaseSizeIntro": "Set the <code> tablesize </code> attribute to make the gap in the table smaller and suitable for big data display",
    "TableBaseSizeDescription": "<code> Tablesize </code> is an enumeration type of table size, the default value is <code> normal </code>, and the compact value is <code> compact </code>",
    "TableBaseHeaderStyleTitle": "Header style",
    "TableBaseHeaderStyleIntro": "By setting <code> headerstyle </code> Properties",
    "TableBaseHeaderStyleDescription": "<code> Headerstyle </code> is the table header style, and the default value is <code> none </code>",
    "AttributeTitle": "Table Attribute",
    "TableSizeAttr": "Table Size",
    "HeaderStyleAttr": "Table Header Style",
    "HeaderTextWrap": "Table header text wrap",
    "HeightAttr": "Fixed Header",
    "PageItemsAttr": "IsPagination=true Sets the number of data to display per page",
    "AutoRefreshIntervalAttr": "Auto Refresh Interval",
    "ExtendButtonColumnWidthAttr": "Row action button column width",
    "RenderModeResponsiveWidthAttr": "Component Layout Mode Automatic Switching Threshold",
    "IndentSizeAttr": "Tree data indent width (pixel px)",
    "ItemsAttr": "Data Collection",
    "PageItemsSourceAttr": "IsPagination=true Sets the external data source for the number of data displayed per page",
    "EditModeAttr": "Set edit row data mode",
    "MultiHeaderTemplateAttr": "Header Grouping Template",
    "TableFooterAttr": "Table Footer Template",
    "TableToolbarTemplateAttr": "Custom Button Template",
    "EditTemplateAttr": "Edit Pop-up Template",
    "ExportButtonDropdownTemplateAttr": "The template of Export dropdown button item",
    "ShowAdvancedSearchAttr": "Show advanced search",
    "SearchTemplateAttr": "Advanced Search Template",
    "BeforeRowButtonTemplateAttr": "Table Row Button Template Before Button",
    "RowButtonTemplateAttr": "Table Row Button Templates are placed after buttons by default",
    "DetailRowTemplateAttr": "Table Detail Line Template",
    "IsAutoCollapsedToolbarButtonAttr": "Whether auto collapsed the buttons on toolbar",
    "IsBorderedAttr": "Border",
    "IsPaginationAttr": "Display pagination",
    "IsStripedAttr": "Zebra stripe",
    "IsRenderedAttr": "Whether the component is rendered",
    "IsMultipleSelectAttr": "If it is multi-select mode, the first column is automatically a checkbox column when true",
    "IsAutoRefreshAttr": "Do you automatically refresh the table",
    "IsTreeAttr": "Is it tree data",
    "IsDetailsAttr": "Whether it is a detail row table, use DetailRowTemplate for logical judgment when not set",
    "IsHideFooterWhenNoDataAttr": "Whether to show Footer when no data is available",
    "IsKeepSelectedRowsAttr": "Whether to keep the selected row after switch page index",
    "IsKeepSelectedRowAfterAddAttr": "Whether to keep the selected row after call add method",
    "ClickToSelectAttr": "Click on the line to select the line",
    "ShowCheckboxTextAttr": "Selection column that displays text",
    "ShowFooterAttr": "Show feet",
    "ShowFilterHeaderAttr": "Show filtered rows",
    "ShowMultiFilterHeaderAttr": "Whether to display filtered rows for multilevel headers",
    "ShowSearchAttr": "Show search bar",
    "ShowSearchTextAttr": "Show search text box",
    "ShowSearchTextTooltipAttr": "Do you show the search box text prompt bar",
    "ShowResetButtonAttr": "Show empty search button",
    "ShowSearchButtonAttr": "Show Search Button",
    "SearchModeAttr": "Search Bar Rendering",
    "CollapsedTopSearchAttr": "Shrink the top search box",
    "ShowToolbarAttr": "Show Toolbar",
    "ShowLineNoAttr": "Show Line Number",
    "ShowDefaultButtonsAttr": "Show default button to add edit delete",
    "ShowAddButtonAttr": "Show Add Button",
    "ShowEditButtonAttr": "Show Edit Button",
    "ShowEditButtonCallbackAttr": "Displays an inline edit button, use showEditButton value when not set",
    "ShowDeleteButtonAttr": "Show delete button",
    "ShowDeleteButtonCallbackAttr": "Show Use ShowEditButton value when the inline delete button is not set",
    "ShowExtendButtonsAttr": "Show row action button",
    "ShowExtendEditButtonAttr": "Show row edit action button",
    "ShowExtendEditButtonCallbackAttr": "Show row edit action button callback",
    "ShowExtendDeleteButtonAttr": "Show row delete action button",
    "ShowExtendDeleteButtonCallbackAttr": "Show row delete action button callback",
    "DisableExtendEditButtonAttr": "Disable row edit action button",
    "DisableExtendEditButtonCallbackAttr": "Disable row edit action button callback",
    "DisableExtendDeleteButtonAttr": "Disable row delete action button",
    "DisableExtendDeleteButtonCallbackAttr": "Disable row delete action button callback",
    "ShowUnsetGroupItemsOnTopAttr": "Whether ungrouped edits are rendered at the beginning",
    "ShowSkeletonAttr": "Whether to display skeleton screen when first render",
    "ShowLoadingInFirstRenderAttr": "Whether to display the loading animation when first render",
    "ShowColumnListAttr": "Show Column show/hide control buttons",
    "OnColumnVisibleChangedAttr": "Trigger this callback when switch show/hide column in the list",
    "ShowEmptyAttr": "Show no data prompts",
    "ShowToastAfterSaveOrDeleteModelAttr": "Do you show a toast prompt box after a save/delete failure",
    "ShowToastBeforeExport": "Whether show the Toast popup before export",
    "ShowToastAfterExport": "Whether show the Toast popup after export",
    "BeforeExportCallback": "The callback before export",
    "AfterExportCallback": "The callback after export",
    "TreeIconAttr": "Small arrow for tree data rows",
    "ScrollingDialogContentAttr": "Edit whether the pop-up box appears inside the scroll bar",
    "FixedExtendButtonsColumnAttr": "Whether to fix the extended button column",
    "OnQueryAsyncAttr": "Asynchronous query callback method",
    "OnAddAsyncAttr": "New Button Callback Method",
    "OnColumnCreatingAttr": "Callback delegate method on column creation",
    "ColumnOrderCallbackAttr": "Callback delegate method on column order",
    "OnDoubleClickCellCallbackAttr": "Set cell double-click event",
    "OnDeleteAsyncAttr": "Delete Button Asynchronous Callback Method",
    "OnEditAsyncAttr": "Edit button asynchronous callback method",
    "OnSaveAsyncAttr": "Save button asynchronous callback method",
    "OnResetSearchAsyncAttr": "Reset Search Button Asynchronous Callback Method",
    "OnClickRowCallbackAttr": "Click on row callback delegate method",
    "OnAfterSaveAsyncAttr": "Asynchronous callback method after save data",
    "OnAfterDeleteAsyncAttr": "Asynchronous callback method after delete data",
    "OnAfterModifyAsyncAttr": "Asynchronous callback method after save or delete data",
    "OnAfterRenderCallbackAttr": "Callback method after table rendering",
    "OnTreeExpandAttr": "Tree data node expandable callback delegate method",
    "OnDoubleClickRowCallbackAttr": "Double-click row callback delegate method",
    "SortIconAttr": "Sort default icon",
    "SortIconAscAttr": "Sort ascending icon",
    "SortIconDescAttr": "Sort Descending Icon",
    "EditDialogSaveButtonTextAttr": "Edit pop-up save button text",
    "EditDialogIsDraggableAttr": "Edit pop-up is draggable",
    "EditDialogShowMaximizeButtonAttr": "Edit pop-ups show the maximize button",
    "EditDialogSizeAttr": "Edit pop-up size",
    "SearchDialogIsDraggableAttr": "Search pop-ups are draggable",
    "SearchDialogShowMaximizeButtonAttr": "Search pop-ups show the maximize button",
    "SearchDialogSizeAttr": "Search pop-up size",
    "AddModalTitleAttr": "New Data Pop-up Title",
    "EditModalTitleAttr": "Edit data pop-up Title",
    "UnsetTextAttr": "tooltip displays text when sort is not set",
    "UnsetTextValue": "Click ascending",
    "SortAscTextAttr": "tooltip displays text when sorting in ascending order",
    "SortAscTextValue": "Click-down",
    "SortDescTextAttr": "tooltip displays text when sorting in descending order",
    "SortDescTextValue": "Unsort",
    "RenderModeAttr": "Table Component Layout Mode Settings",
    "EmptyTextAttr": "EmptyText",
    "EmptyImageAttr": "Show picture link address when no data",
    "EmptyTemplateAttr": "Display template when no data",
    "EditDialogItemsPerRowAttr": "Number of components per line",
    "EditDialogRowTypeAttr": "Set component layout",
    "EditDialogLabelAlignAttr": "Label alignment in Inline Layout mode",
    "AddAsyncMethod": "Manual data addition method",
    "EditAsyncMethod": "Methods for Manually Editing Data",
    "QueryAsyncMethod": "Manual query data method",
    "TextWrapAttr": "Allow line breaks",
    "AutoGenerateColumnsAttr": "Whether columns are automatically generated",
    "CssClassAttr": "Custom Cell Style",
    "EditableAttr": "Whether to generate edit components",
    "EditTemplateColumnAttr": "Template",
    "FilterableAttr": "Filterable data",
    "FilterTemplateAttr": "Filter Template",
    "FilterAttr": "Column Filter",
    "HeaderTemplateAttr": "Header Template",
    "IsReadonlyWhenAddAttr": "This column is read-only when new",
    "IsReadonlyWhenEditAttr": "This column is read-only when editing",
    "LookupAttr": "Dictionary Data Source",
    "LookupStringComparisonAttr": "Dictionary Data Source Comparison Rules",
    "LookupServiceKeyAttr": "The LookupService service gets the Lookup data collection key value",
    "LookupServiceDataAttr": "The LookupService service gets the Lookup data collection data value",
    "ReadonlyAttr": "Is it read-only mode when editing",
    "SearchTemplateColumnAttr": "Template",
    "ShowTipsAttr": "Show cell Tooltips",
    "SearchableAttr": "Participate in the search",
    "SortableAttr": "Sort or not",
    "DefaultSortAttr": "Is the default sort sequence",
    "DefaultSortOrderAttr": "Default collation",
    "ShowAdvancedSortAttr": "Whether to show the Advanced Sort button",
    "TextAttr": "Header Displays Text",
    "TextEllipsisAttr": "Whether to omit text when exceeded",
    "TemplateAttr": "Template",
    "VisibleAttr": "Whether to display this column",
    "IsVisibleWhenAddAttr": "Whether to display this column in new item dialog",
    "IsVisibleWhenEditAttr": "Whether to display this column in edit item dialog",
    "WidthAttr": "Column width (px)",
    "FixedAttr": "Whether to fix this column",
    "GroupNameAttr": "Current Property Grouping",
    "GroupOrderAttr": "Current Property Grouping order",
    "ShownWithBreakPointAttr": "Show Node Threshold",
    "FormatStringAttr": "Format String",
    "FormatterAttr": "Column Formatting Callback Delegate",
    "AlignAttr": "Text Alignment",
    "OrderAttr": "Sequence Number",
    "OnCellRenderAttr": "Cell callback method",
    "IsMarkupStringAttr": "Whether column is MarkupString string",
    "ShowGotoNavigatorAttr": "Whether show the Goto navigator",
    "GotoTemplateAttr": "The template for Goto custom component",
    "GotoNavigatorLabelTextAttr": "Goto label text",
    "ShowPageInfoAttr": "Whethere show the pagination info",
    "PageInfoTemplateAttr": "The template for custom page info",
    "PageInfoTextAttr": "Pagination label text",
    "AllowDragOrderAttr": "Allow dragging column headings to adjust table column order",
    "AutoScrollLastSelectedRowToViewAttr": "whether the last selected row will automatically scroll to the view",
    "TableBaseNormalRefreshText": "Refresh",
    "TableBaseHeaderStyleMode": "The style of table header",
    "IsPopoverToolbarDropdownButtonAttr": "Whether float the popup window for dropdown button in the toolbar"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesColumn": {
    "TablesColumnTitle": "Table Column",
    "TablesColumnDescription": "Used to display multiple pieces of data with similar structures, data can be sorted, filtered, compared or other custom operations.",
    "ColumnTextTitle": "Custom column name",
    "ColumnTextIntro": "Add column header display name by setting <code>Text</code>",
    "ColumnTextDesc": "The fields in the table component <code>TableColumns</code> template are automatically displayed according to the <code>DisplayName</code> tag value of the bound model. If you want to customize the display name, please set <code>Text</code> property",
    "SelectTitle": "Table with select list",
    "SelectIntro": "Add the first column of the table by setting <code>IsMultipleSelect=\"true\"</code> to select the column, and the <code>ShowRowCheckboxCallback</code> callback delegate can control whether each row displays the checkbox. In this example, the <code> Complete</code> attribute to control whether to display the checkbox",
    "ShowCheckboxTitle": "Checkbox table with display text",
    "ShowCheckboxIntro": "By setting <code>ShowCheckboxText=true</code> the display text in the first column of the table is <b>select</b>",
    "DisabledTitle": "Select Box Column",
    "DisabledIntro": "<code>RowTemplate</code> internal component <code>TableCell</code> set <code>Checkbox</code> and set related data binding. In this example, data binding will select The box component is bound to the value",
    "FormatterTitle": "Custom column data format",
    "FormatterIntro": "Format the cell value by specifying the <code>FormatString</code> or <code>Formatter</code> callback delegate when the column is bound",
    "FormatterP1": "In this example the column <code>DateTime</code> values ​​are formatted according to <code>FormatString</code> to <code>yyyy-MM-dd</code> year month day format",
    "FormatterP2": "In this example the column <code>Count</code> value is formatted according to <code>Formatter</code> to <code>0.00</code> with two decimal places",
    "AlignTitle": "Column data alignment",
    "AlignIntro": "Set the alignment by specifying the <code>Align</code> attribute when the column is bound",
    "AlignP1": "In this example the column <code>DateTime</code> is set to center alignment <code>Alignment.Center</code>",
    "AlignP2": "In this example the column <code>Count</code> is set to right-align <code>Alignment.Right</code>",
    "ShowCopyColumnTitle": "Show copy column icon",
    "ShowCopyColumnIntro": "Set <code>ShowCopyColumn</code> show the icon for copy entire column data",
    "ShowCopyColumnDesc": "You can fine-tune the <code>Tooltip</code> related parameters of the copy column data icon by setting <code>ShowCopyColumnTooltip</code> <code>CopyColumnTooltipText</code> <code>CopyColumnCopiedTooltipText</code> and other settings",
    "ShowColumnToolboxTitle": "Column Toolbox",
    "ShowColumnToolboxIntro": "Enable the column toolbar button by setting the <code>ToolboxTemplate</code> parameter",
    "BindComplexObjectTitle": "Bind Complex Types and Expressions",
    "BindComplexObjectIntro": "When binding a complex type, whether the bound object collection is empty or not, the <code>TItem</code> must provide a parameterless constructor. Otherwise, it is required to provide a construction callback through <code>CreateItemCallback</code>. When binding a complex expression, the bound expression must not throw a <code>NullReferenceException</code> exception. If the business logic cannot avoid this issue, it is recommended to handle it using a <code>Template</code>",
    "BindComplexObjectP1": "In this example, the complex type <code>ComplexFoo</code> does not have a parameterless constructor, so a construction callback for <code>ComplexFoo</code> should be provided through <code>CreateItemCallback</code>",
    "BindComplexObjectP2": "In this example, we want to bind a complex expression <code>context.Company.Name</code> to the column <code>CompanyName</code>, but the business logic cannot ensure that the value of the <code>Company</code> property is not <code>null</code> at the time of binding. Therefore, we can first bind a simple expression and then handle it using the column template <code>Template</code>",
    "BindComplexObjectButtonText": "Set company",
    "ComplexFooDateTime": "DateTime",
    "ComplexFooName": "Name",
    "ComplexFooAddress": "Address",
    "ComplexFooAge": "Age",
    "ComplexFooCompany": "Company",
    "OnColumnCreatingTitle": "Set current column properties",
    "OnColumnCreatingIntro": "By specifying <code>OnColumnCreating</code> callback, make secondary data changes to the column collection",
    "OnColumnCreatingP1": "Existing columns can be extended through the parameters in the <code>OnColumnCreating</code> callback method:",
    "OnColumnCreatingP2": "You can also implement some special functions according to your own business logic; in this example, the <code>Name</code> column is set to <code>read-only</code> through the callback function",
    "OnColumnCreatingLi1": "Remove the display of some columns according to business logic",
    "OnColumnCreatingLi2": "Render components to specific columns according to business logic and assign values ​​to <code>ComponentType</code> <code>ComponentParameters</code>",
    "AdvanceTitle": "Practical Example",
    "AdvanceIntro": "Custom rendering of columns by showing template <code>Template</code>",
    "CustomColText1": "Custom Column Name 1",
    "CustomColText2": "Custom column name 2",
    "CustomColText3": "Custom column name 3",
    "ColumnIgnoreTitle": "Column Ignored",
    "ColumnIgnoreIntro": "By setting the <code>Ignore</code> parameter to control whether the column is rendered, this parameter is different from <code>Visible</code>. Setting<code>Visible=\"false\"</code> to not display the column can be checked and displayed in the list through <code>ShowColumnList=\"true\"</code>",
    "ColumnIgnoreButtonText": "Ignoring/Not Ignoring",
    "ColumnOrderTitle": "Column Order",
    "ColumnOrderIntro": "Set the order by setting the <code>Order</code> parameter of <code>TableColumn</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesColumnDrag": {
    "TablesColumnTitle": "Table Column",
    "TablesColumnDescription": "Used to display multiple pieces of data with similar structures, data can be sorted, filtered, compared or other custom operations.",
    "AllowDragOrderTitle": "Allow dragging column headings to adjust table column order",
    "AllowDragOrderIntro": "By specifying <code>AllowDragColumn</code>, set the table columns to allow dragging column headings to adjust the table column order",
    "AllowDragOrderDesc": "<p>Pressing the mouse over a column heading and dragging it to another column heading position can adjust the column to be in front of the target column, but the built-in columns in the Table component, such as <code>DetailRow</code>, <code>LineNo</code>, <code>MultipleSelect</code>, and <code>Operation</code> columns, cannot be adjusted</p><p>This example enables localized storage by setting the <code>ClientTableName</code> parameter. After dragging and adjusting the order, the page can be refreshed, and the column order remains in the previous state</p><p>By setting the <code>ColumnOrderCallback</code> callback method, server-side column order persistence can be achieved</p>"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesColumnResizing": {
    "TablesColumnTitle": "Table Column",
    "TablesColumnDescription": "Used to display multiple pieces of data with similar structures, data can be sorted, filtered, compared or other custom operations.",
    "WidthTitle": "Customize the width of each column",
    "WidthIntro": "By setting the <code>TableColumn</code> <code>Width</code> property, the column width is controlled, and the inline button operation column width is controlled by the <code>ExtendButtonColumnWidth</code> property",
    "WidthP1": "Continue the previous example in this example, implement four custom function buttons, and extend them to the row. When each button is clicked, there is a corresponding callback delegate method. <code>TableToolbarButton</code> uses It is the way of <code>Delegate</code> to complete the data exchange. When the toolbar button is clicked, set the <code>OnClick</code> delegate method to obtain the selected row data set in the table",
    "WidthP2": "<code>RowButtonTemplate</code> button template places the custom button behind the built-in button by default. If you need to place the custom button before the built-in button, please use the <code>BeforeRowButtonTemplate</code> template",
    "WidthP3": "Control whether the button is displayed by setting the button <code>IsShow</code> parameter",
    "AllowResizingTitle": "Allow column resizing",
    "AllowResizingIntro": "Set table columns to allow resizing by specifying <code>AllowResizing</code>",
    "AllowResizingDesc": "<b>Note:</b> <code>Table</code> scrollbar only appears when the parent container has valid width values, By setting the <code>ShowColumnWidthTooltip</code> parameter, you can control whether to display the column width tooltip. The default value is <code>false</code>",
    "WidthButtonText1": "Details",
    "WidthButtonText2": "Edit",
    "WidthButtonText3": "Permissions",
    "WidthButtonText4": "Approval",
    "WidthConfirmButtonText": "Confirm",
    "CustomerButtonTitle": "Custom button processing method",
    "CustomerButtonContent": "The button processing logic is distinguished by different functions. The parameter Items is the selected row data collection in the Table component, and the currently selected data is {0}",
    "OnRowButtonClickContent": "The button processing logic is distinguished by different functions, and the parameter Item is the current row data"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesColumnList": {
    "TablesColumnTitle": "Table Column",
    "TablesColumnDescription": "Used to display multiple pieces of data with similar structures, data can be sorted, filtered, compared or other custom operations.",
    "ShownWithBreakPointTitle": "Automatically show/hide columns based on screen width",
    "ShownWithBreakPointIntro": "Set whether to display at different widths by specifying the <code>ShownWithBreakPoint</code> attribute",
    "ShownWithBreakPointP1": "<code>ShownWithBreakPoint</code> enumeration value: ",
    "ShownWithBreakPointLi1": "<code>None</code> is displayed if not set",
    "ShownWithBreakPointLi2": "<code>Small</code> is displayed when the screen is greater than or equal to <code>576px</code>",
    "ShownWithBreakPointLi3": "<code>Medium</code> is displayed when the screen is greater than or equal to <code>768px</code>",
    "ShownWithBreakPointLi4": "<code>Large</code> is displayed when the screen is greater than or equal to <code>992px</code>",
    "ShownWithBreakPointLi5": "<code>ExtraLarge</code> is displayed when the screen is greater than or equal to <code>1200px</code>",
    "ShownWithBreakPointP2": "In this example, the <code>Count</code> column is set to <code>BreakPoint.Large</code>, that is, the screen will only be displayed when it is larger than <code>992px</code>",
    "ShownWithBreakPointP3": "Note:",
    "ShownWithBreakPointP4": "Because the <code>Table</code> component supports mobile adaptation by default, the card mode is used for small screens. In this example, the explicit setting uses <code>RenderMode=\"TableRenderMode. Table\"</code> mode",
    "VisibleTitle": "Custom show/hide columns",
    "VisibleIntro": "Set whether the column is displayed by specifying the <code>ShowColumnList</code> attribute",
    "VisibleP1": "<code>ShowColumnList</code> The default value is false, and if it is explicitly specified as true, the corresponding column adjustment button will appear in the toolbar",
    "VisibleP2": "<code>TableColumn</code> adds the <code>Visiable</code> property, its default value is true, this column will not be displayed when the display is set to false",
    "VisibleP3": "In this example, the <b>quantity</b> column is not displayed by setting <code>Visible</code>, and it can be displayed through the column control button",
    "VisibleP4": "Trigger the <code>OnColumnVisibleChanged</code> callback when switch the column state <b>Show/Hide</b>",
    "ResetVisibleColumnsButtonText": "Set Columns",
    "ResetVisibleColumnsDesc": "Call the instancel method <code>ResetVisibleColumns</code> of <code>Table</code> for set the multiple columns visible value"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesColumnTemplate": {
    "TablesColumnTitle": "Table Column",
    "TablesColumnDescription": "Used to display multiple pieces of data with similar structures, data can be sorted, filtered, compared or other custom operations.",
    "TableColumnTitle": "Custom Column Data Template",
    "TableColumnIntro": "Customize the <code>Template</code> template of the <code>TableColumn</code> column to implement any UI",
    "TableColumnP1": "In this example, the column <code>DateTime</code> value is displayed in different colors depending on whether the <code>Complete</code> value is <code>true</code>",
    "TableColumnP2": "In this example, the column <code>Complete</code> is displayed as a <code>Checkbox</code> component according to the value of <code>Complete</code>",
    "TableColumnP3": "<code>Template</code> template comes with <code>Context</code> associated context, its value is of type <code>TableColumnContext</code>",
    "TableColumnLi1": "<code>Value</code> is the data value of the currently bound column",
    "TableColumnLi2": "<code>Row</code> is the data value of the row where the currently bound column is located",
    "TemplateTitle": "Custom Column Template",
    "TemplateIntro": "By specifying <code>Template</code> set the last column to display as a custom button",
    "AutoGenerateColumnsTitle": "Auto Generate Columns",
    "AutoGenerateColumnsIntro": "By specifying the <code>AutoGenerateColumns</code> property value as <code>true</code>, enable the function of automatically generating column information based on the binding model",
    "AutoGenerateColumnsP1": "In this example, by setting the value of <code>AutoGenerateColumns</code> to <code>true</code>, the automatic column generation function is enabled. All attributes of the bound model entity class are all generated by default. code>AutoGenerateColumnAttribute</code> tag class for function settings, such as: ",
    "AutoGenerateColumnsLi1": "<code>Ignore</code> means ignore this property, i.e. not generate",
    "AutoGenerateColumnsLi2": "<code>Readonly</code> means read only",
    "AutoGenerateColumnsLi3": "For more attributes, see <a href=\"{0}/blob/main/src/BootstrapBlazor/Attributes/AutoGenerateColumnAttribute.cs\" target=\"_blank\" >Source code</a>",
    "AutoGenerateColumnsP2": " In this example the <code>date</code> column is formatted through the <code>[AutoGenerateColumn(Order = 1, FormatString = \"yyyy-MM-dd\")]</code> tag; Set the template column in the code to customize the <code>Complete</code> column and use the <code>Switch</code> component to render; through the <code>[AutoGenerateColumn(Order = 10)]</code> tag in the <code>Order</code> set the display order",
    "TableTemplateTips": "Special attention: When using the <b>Template</b>, practical application scenarios often encounter situations where several or more columns need to be linked. In this case, directly placing the linked components into the <code>EditTemplate</code> cannot complete the linkage. The correct approach is to separate the small components that need to be linked into a separate component and complete the linkage within this component"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesEdit": {
    "TablesEditTitle": "Table",
    "TablesEditDescription": "Commonly used in single table maintenance, simple addition, deletion, modification, search, sorting, filtering, search and other common functions can be realized through attribute configuration, and very complex business requirements can be realized through advanced usage of <code>Template</code>",
    "TablesEditItemsTitle": "Use collection as data source to realize editing function",
    "TablesEditItemsIntro": "Set <code>Items</code> as the data source, without setting <code>OnSaveAsync</code> <code>OnDeleteAsync</code> callback delegate to use built-in processing logic to update and delete functions",
    "TablesEditItemsDescription": "Setting <code>Items</code> as the data source eliminates the need to set <code>OnSaveAsync</code> <code>OnDeleteAsync</code> callback delegates to use built-in processing logic for updates and deletes. Meanwhile, it should be noted that the <code>[Key]</code> tag of the <code>Foo</code> attribute of the class instance <code>Foo</code> of the generic constraint of <code>TItem</code> should be configured correctly; The `IsGroupExtendButtons` parameter controls whether the inline function buttons are displayed in a group. The default is `true`.",
    "TablesEditTemplateTitle": "Tables with single table maintenance",
    "TablesEditTemplateIntro": "Set <code>ShowSearch</code> to show the query component",
    "TablesEditTemplateDescription": "In this example, the right alignment of <code>Count</code> is set, the <code>Complete</code> column is set to center alignment, and the Boolean column is automatically rendered as a <code>Switch</code> component",
    "TablesEditTemplateDisplayLabel": "Detail",
    "TablesEditTemplateDisplayDetail1": "Detail 1",
    "TablesEditTemplateDisplayDetail2": "Detail 2",
    "TablesEditOnAddAsyncTitle": "Automatically generate tables for single table maintenance function",
    "TablesEditOnAddAsyncIntro": "When the <code>OnAddAsync</code> or <code>OnSaveAsync</code> callback delegate method is set, if the <code>EditTemplate</code> is not set to edit the template, the component will try to automatically generate the form maintenance UI",
    "TablesEditOnAddAsyncDescription": "Client-side validation can be achieved by setting validation tags such as <code>[Required]</code> of the <code>Foo</code> attribute of the class instance <code>Foo</code> of the generic constraint of <code>TItem</code>",
    "TablesEditOnAddAsyncTips1": "When the data binding type is a nullable type, it is automatically allowed to be null, such as the date binding column is of type <code>DateTime?</code>",
    "TablesEditOnAddAsyncTips2": "When the data binding type is a numerical type, for example, if the quantity binding column is of type <code>int</code>, numerical verification is performed automatically",
    "TablesEditOnAddAsyncTips3": "Some data columns presented in the table are calculated results. This type of column cannot be edited. By setting <code>Ignore=true</code> to automatically generate the editing UI, the editing component of this column will not be generated, such as In this example, the <code>Count</code> column does not appear in the edit popup",
    "TablesEditOnAddAsyncTips4": "By setting <code>Readonly=true</code> to automatically generate editing UI, this field will be read-only, please assign the default value to <code>Model</code> when creating a new one",
    "TablesEditOnAddAsyncTips5": "Make the extension buttons appear in front of the row by setting <code>IsExtendButtonsInRowHeader=true</code>",
    "TablesEditOnAddAsyncTips6": "Make the edit popup draggable by setting <code>EditDialogDraggable='true'</code>",
    "TablesColumnEditTemplateTitle": "Custom column editing template",
    "TablesColumnEditTemplateIntro": "When the <code>EditTemplate</code> of the column is set, the component automatically generates the form maintenance UI using this template as the rendered UI; <code>Hobby</code> is listed as a custom component <code>DemoHobbyTemplate</code> and is rendered using a multi-select box component",
    "TablesColumnEditTemplateDescription1": "Use the drop-down box to select the name when custom editing by setting the <code>EditTemplate</code> of the name column",
    "TablesColumnEditTemplateTips": "In this example, <code>Name</code> is listed as a custom component <code>TableNameDrop</code>, which defaults to <code>please select ...</code> when creating a new one",
    "TablesEditModeTitle": "set edit mode",
    "TablesEditModeIntro": "By setting the <code>EditMode</code> property of the table, set the component to edit the row data in the pop-up window or edit the data in the row",
    "TablesEditModeDescription": "<code>EditMode</code> is an enumeration type and its values ​​are: <code>Popup</code> <code>EditForm</code> <code>InCell</code> Its default value is <code>Popup</code> pop-up window to edit row data",
    "TablesEditModeTips1": "In this example, the data source <code>Items</code> is set as two-way binding, which is especially suitable for parent-child table entry. You can directly use the data source when saving.",
    "TablesEditModeTips2": "<code>EditForm</code> Pattern example",
    "TablesEditInjectDataServiceTitle": "Using the inject data service",
    "TablesEditInjectDataServiceIntro": "When the data operation callback method is not provided, the component automatically finds the registered data service to add, delete, modify and check the data.",
    "TablesEditDataServiceTitle": "Use custom data services",
    "TablesEditDataServiceIntro": "By setting the <code>DataService</code> attribute of the table, use an independent data service to add, delete, modify and check data",
    "TablesEditDataServiceDescription": "custom data service",
    "TablesEditDataServiceTips1": "After enabling the use of the injected data service, you can set the component individually by setting the <code>DataServices</code> parameter, if the instance provided by the internal use of the injected service is not set",
    "TablesEditDataServiceTips2": "In this example, by setting the <code>EditDialogShowMaximizeButton</code> parameter, the <b>Maximize</b> button is displayed in the edit pop-up window",
    "TablesEditFooterTemplateTitle": "Custom button in EditDialog footer",
    "TablesEditFooterTemplateIntro": "Set <code>EditFooterTemplate</code> custom button in <code>EditDialog</code> <code>Footer</code>",
    "TablesEditFooterTemplateDescription": "Click the Edit button in the table to pop up the Edit pop-up window. The buttons in the pop-up window <code>Footer</code> are user-defined buttons. In order to keep the functions of the original <b>Close</b> and <b>Save</b> buttons while facilitating the second opening, two corresponding components <code>DialogCloseButton</code> <code>DialogSaveButton</code> These two buttons do not need to write the click related processing methods",
    "TablesEditModeAddModalTitle": "Add test data window",
    "TablesEditModeEditModalTitle": "Edit Test Data Window",
    "TablesEditModeInCell": "<code>InCell</code> Pattern example",
    "TablesEditModeDrawer": "<code>Drawer</code> Pattern example",
    "TablesEditShowSearchPlaceHolderString": "Cannot be empty, within 50 characters",
    "TablesEditInjectDataServiceDescription": "The database operations of adding, deleting, modifying and checking are performed by registering the data service without assigning the following callback delegates. The priority level is that the callback method is called first if there is a callback method.",
    "TablesEditInjectDataServiceTips1": "Startup file injects data service",
    "TablesEditInjectDataServiceTips2": "Implementation principle and usage introduction",
    "TablesEditInjectDataServiceTips3": "custom data service",
    "TablesEditInjectDataServiceTips4": "After enabling the use of the injected data service, you can set the component individually by setting the <code>DataServices</code> parameter, if the instance provided by the internal use of the injected service is not set",
    "TablesVisibleTitle": "Editor Visible/Hidden",
    "TablesVisibleIntro": "If the <code>IsVisibleWhenAdd</code> or <code>IsVisibleWhenEdit</code> property is set to <code>false</code>, hide this column when creating or updating. In this example, the <b>New</b> pop-up window does not display <b>Count</b> <b>Edit</b> Pop up window does not display <b>Complete</b> edit the item",
    "TablesReadonlyColumnTitle": "Readonly Column",
    "TablesReadonlyColumnIntro": "By setting <code>Field</code> and <code>FieldName</code>",
    "TablesReadonlyColumnDescription": "Corresponding database calculated columns, or model read-only attributes",
    "TablesReadonlyColumnTips1": "Do not write <code>@bind-Field</code>. Read-only columns cannot be entered when <b>Add</b> or <b>Edit</b>",
    "TablesReadonlyColumnTips2": "The old version needs to write the complete code as follows",
    "TablesTemplateColumnTitle": "TemplateColumn",
    "TablesTemplateColumnIntro": "By using <code>TableTemplateColumn</code> instead of <code>TableColumn</code> component, you can avoid binding model.",
    "TablesTemplateColumnDescription": "The title display text is set by setting the <code>Text</code> property, and the cell display content is set by <code>Template</code>. The template context is a <code>TableColumnContext</code> instance. The current row model instance can be obtained through <code>@v.Row</code>. Template columns do not participate in data editing functions such as <b>New</b> and <b>Edit</b>.",
    "TableTemplateColumnText": "Template"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesVirtualization": {
    "TablesVirtualizationTitle": "Table virtual scroll row",
    "TablesVirtualizationDescription": "When the Table component displays large data, it usually uses paging to load data. There is also a virtual row technology similar to the automatic loading of data in the background when the mobile phone scrolls to the bottom.",
    "VirtualizationNormalTitle": "Normal use",
    "VirtualizationNormalIntro": "Background on-demand loading when scrolling data without paging",
    "VirtualizationNormalDescription": "<p>Need to set <code>ScrollMode</code> <code>Height</code> <code>RowHeight</code> <code>PageItems</code> parameters to set virtual scrolling</p>",
    "TablesFooterFixedLabel": "Fixed Footer",
    "TablesFooterInfo": "Count：",
    "TablesFooterFixedText": "Fixed",
    "TablesFooterNotFixedText": "Stack",
    "VirtualizationDynamicTitle": "Get data dynamically",
    "VirtualizationDynamicIntro": "Background on-demand loading when scrolling data without paging",
    "VirtualizationDynamicDescription": "Display row placeholders when scrolling quickly to improve user experience"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesLoading": {
    "TablesLoadingTitle": "Display data loading function",
    "TablesLoadingDescription": "When calling the remote data interface, there may be a delay due to network reasons, you can use the display loading function to shield",
    "TablesLoadingShowLoadingTitle": "Basic usage",
    "TablesLoadingShowLoadingIntro": "Just set <code>ShowLoading</code>",
    "TablesLoadingShowSkeletonTitle": "Skeleton screen",
    "TablesLoadingShowSkeletonIntro": "Set <code>ShowSkeleton</code> to",
    "TablesLoadingShowLoadingInFirstRenderTitle": "Turn off loading animation",
    "TablesLoadingShowLoadingInFirstRenderIntro": "Just set <code>ShowLoadingInFirstRender</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesTree": {
    "TablesTreeTitle": "Table tree data display",
    "TablesTreeDescription": "The table supports the display of tree data",
    "TablesTreeTip_title": "Control whether it is tree data through the <code>IsTree</code> parameter",
    "TablesTreeTip_note1": "Tree-structure conversion of datasets through <code>TreeNodeConverter</code>",
    "TablesTreeTip_note2": "Set <code>TableTreeNode</code> its <code>IsExpand</code> parameter to control whether the current child node is expanded",
    "TablesTreeTip_note3": "When clicking the child item expansion arrow, the child item data is obtained through the <code>OnTreeExpand</code> callback delegate method",
    "TablesTreeTip_note4": "Maintain line state fallback mechanism, <code>ModelEqualityComparer</code> <code>CustomKeyAttribute</code> <code>IEqualityComparer&lt;TItem&gt;</code> <code>Equals</code> overloaded method",
    "TablesTreeStep1": "Step 1: Set <code>IsTree</code> to <code>true</code>",
    "TablesTreeStep2": "Step 2: Set <code>Items</code> or <code>OnQueryAsync</code> to get component data collection",
    "TablesTreeStep3": "Step 3: Set <code>TreeNodeConverter</code> to convert the component data collection into a tree structure",
    "TablesTreeStep4": "Step 4: Set the <code>OnTreeExpand</code> callback delegate to expand the response line to get the child item data set",
    "TablesTreeDataTitle": "tree data display",
    "TablesTreeDataIntro": "Open the tree table by setting <code>IsTree</code>",
    "TablesTreeLevelTitle": "Hierarchical indentation",
    "TablesTreeLevelIntro": "Control the indent width of each layer by setting <code>IndentSize</code> .",
    "TablesTreeLevelTips1": "The default level indent width is <code>16px</code> by setting <code>Indent</code> to change the indent width",
    "TablesTreeLevelTips2": "In this example change the indent width to <code>8px</code>",
    "TablesTreeEditTitle": "Tree data with single table maintenance",
    "TablesTreeEditIntro": "Realize simple addition, deletion, modification and checking functions.",
    "TablesTreeIconTitle": "icon",
    "TablesTreeIconIntro": "Change the little arrow icon that indicates by setting <code>TreeIcon</code>",
    "TablesTreeIconTips1": "The default level indent width is <code>16px</code> by setting <code>Indent</code> to change the indent width",
    "TablesTreeIconTips2": "In this example change the indent width to <code>8px</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesWrap": {
    "TablesWrapTitle": "Table wrapping example",
    "TablesWrapDescription": "When the content of the header or the cell in the row is too long, the effect of omitting, wrapping, etc. can be realized by changing the style",
    "TablesWrapTip": "<b>Note:</b>Because the <code>Table</code> component has realized the function of adapting to the mobile terminal, this demo needs to be viewed on the computer side",
    "TablesWrapNormalTitle": "Example of super long header",
    "TablesWrapNormalIntro": "In some special cases, the header may be relatively long, and the header needs to be controlled within a fixed width. When the mouse moves over the header, <code>Tooltip</code> is displayed to display the complete header information.",
    "TablesWrapNormalDescription": "You can drag the window size, and the horizontal scroll bar will automatically appear when the window is too small",
    "TablesWrapHeaderTextWrapTitle": "The header is too long to wrap",
    "TablesWrapHeaderTextWrapIntro": "Wrap the super long header by setting <code>HeaderTextWrap</code>",
    "TablesWrapHeaderTextWrapDescription": "You can drag the window size. When the window is too small, the horizontal scroll bar will automatically appear, and the header will automatically wrap.",
    "TablesWrapLongDataTitle": "Example of extra-long wrapping of cell data",
    "TablesWrapLongDataIntro": "In some special cases, the cell content may be long and need to be wrapped",
    "TablesWrapLongDataTips1": "You can drag the window size, the <b>address</b> column will be automatically wrapped when the window is too small",
    "TablesWrapLongDataTips2": "Enable word wrapping by setting <code>TextWrap</code>",
    "TablesWrapLongDataTips3": "<b>Note:</b> It is recommended to use <code>Width</code> to set the column width",
    "TablesWrapDataResizingTitle": "Example of over-length omission of cell data",
    "TablesWrapDataResizingIntro": "In some special cases, the content of the cell may be relatively long, and it needs to be omitted.",
    "TablesWrapDataResizingTips1": "You can drag the window size, and the <b>address</b> column will be automatically omitted if the window is too small",
    "TablesWrapDataResizingTips2": "Enable text ellipsis by setting <code>TextEllipsis</code>",
    "TablesWrapDataResizingTips3": "<b>Note:</b> It is recommended to use <code>Width</code> to set the column width. If the column width is not set, it will automatically use 200px width inside",
    "TablesWrapDataResizingTips4": "After the text in the cell is omitted, you can use the <code>ShowTips</code> property to control whether to display all the text on mouse hover, the default is <code>false</code>, You can customize the display content of <code>Tooltip</code> by setting the <code>GetTooltipTextCallback</code> callback method",
    "TablesWrapDataResizingTips5": "Drag the address column, the cell display content will automatically increase and decrease",
    "TablesWrapCustomCellTitle": "Custom in-cell typography",
    "TablesWrapCustomCellIntro": "Use templates for special layout of in-cell data",
    "TablesWrapNormalColumHeaderText_DateTime": "I'm a super long schedule head",
    "TablesWrapNormalColumHeaderText_Name": "I am a super long name header",
    "TablesWrapNormalColumHeaderText_Address": "I am a super long address header",
    "TablesWrapHeaderTextWrapColumHeaderText_DateTime": "I'm a super long schedule head",
    "TablesWrapHeaderTextWrapColumHeaderText_Name": "I am a super long name header",
    "TablesWrapHeaderTextWrapColumHeaderText_Address": "I am a super long address header",
    "TablesWrapLongDataColumHeaderText_DateTime": "Time",
    "TablesWrapLongDataColumHeaderText_Name": "Name",
    "TablesWrapLongDataColumHeaderText_Address": "Address",
    "TablesWrapDataResizingColumHeaderText_DateTime": "time",
    "TablesWrapDataResizingColumHeaderText_Name": "Name",
    "TablesWrapDataResizingColumHeaderText_Address": "Address",
    "TablesWrapCustomCellColumHeaderText_DateTime": "time",
    "TablesWrapCustomCellColumHeaderText_Name": "Name",
    "TablesWrapCustomCellColumHeaderText_Address": "Address",
    "TablesWrapCustomCellTemplate_State": "state",
    "TablesWrapCustomCellTemplate_Time": "time"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesTracking": {
    "TablesTrackingTitle": "Table table",
    "TablesTrackingDescription": "Applicable to application scenarios where parent and child tables are submitted together",
    "TablesTrackingNormalTitle": "tracking mode",
    "TablesTrackingNormalIntro": "Set <code>IsTracking</code> with <code>Items</code> without setting <code>OnSaveAsync</code> and other callback methods",
    "TablesTrackingNormalTips1": "The prompt information of the <b>Save</b> <b>Delete</b> button can be turned off by setting <code>ShowToastAfterSaveOrDeleteModel='false'</code>",
    "TablesTrackingNormalTips2": "All data editing in this mode edits the original data and updates the data source through <code>bind-Items</code>, so no <b>Cancel</b> button is provided"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesFooter": {
    "TablesFooterTitle": "Table Footer",
    "TablesFooterDescription": "For statistics",
    "TablesFooterStatisticsTitle": "Statistics example",
    "TablesFooterStatisticsIntro": "Set <code>ShowFooter=true</code> to show <code>Footer</code> custom total function, fixed the footer by set <code>IsFixedFooter</code>",
    "TablesFooterStatisticsTips1": "The <code>Table</code> component has a <code>TableFooter</code> template whose data context is the data collection of the <code>Table</code> component <code>IEnumerable&lt;TItem&gt;</code>",
    "TablesFooterStatisticsTips2": "The associated context in the <code>TableFooter</code> template <code>context</code> is the current page data collection",
    "TablesFooterStatisticsTips3": "The content of the cell <code>td</code> can be customized in the <code>TableFooter</code> template, or the built-in <code>TableFooterCell</code> component can be used for data display",
    "TablesFooterTemplateTitle": "Footer template",
    "TablesFooterTemplateIntro": "Set <code>FooterTemplate</code> to customize the content displayed at the bottom of the table",
    "TablesFooterTemplateDescription": "<code>Footer</code> is displayed by default when there is no data. You can hide <code>Footer</code> by setting the <code>@nameof(Table<Foo>.IsHideFooterWhenNoData)</code> parameter",
    "TablesFooterStatisticsTotal": "Total:",
    "TablesFooterTemplateSentences": "Here you can write some descriptive sentences",
    "TablesFooterTemplateTotal": "Total:"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesAutoRefresh": {
    "TablesAutoRefreshTitle": "Auto Refresh table",
    "TablesAutoRefreshDescription": "In a certain application scenario, the change of the data source needs to refresh the table component",
    "TablesAutoRefreshNormalTitle": "Auto Refresh",
    "TablesAutoRefreshNormalIntro": "This example demonstrates monitoring the data source in a background thread, and notifies the table component to refresh the data when the data source changes",
    "TablesAutoRefreshNormalTips1": "The auto refresh function is enabled by setting the value of the <code>IsAutoRefresh</code> property. The default value of the <code>AutoRefreshInterval</code> property is 2000 milliseconds, which is the auto refresh interval, and the component's <code>QueryAsync is called periodically. The </code> method makes the table auto-refresh",
    "TablesAutoRefreshNormalTips2": "In this example, a new piece of data is added every 2 seconds and a maximum of 10 pieces of data are maintained",
    "TablesAutoRefreshControlTitle": "Control whether to update automatically by setting a variable",
    "TablesAutoRefreshControlIntro": "This example controls whether to automatically update by setting a variable",
    "TablesAutoRefreshControlDescription": "Enable/disable automatic update function by clicking the button",
    "TablesAutoRefreshControlToggleAuto": "Change Auto",
    "TablesAutoRefreshControlIsAutoRefresh": "The current value"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesSelection": {
    "TablesSelectionTitle": "Table Selection",
    "TablesSelectionDescription": "Set the table row state by setting <code>SelectedRows</code>, and set the highlight by selecting the style",
    "TablesSelectionNormalTitle": "Set row selection function",
    "TablesSelectionNormalIntro": "Defaults to the selected state when the table is initialized by setting the <code>SelectedRows</code> property collection",
    "TablesSelectionNormalTips": "Maintain line state fallback mechanism, <code>ModelEqualityComparer</code> <code>CustomKeyAttribute</code> <code>IEqualityComparer&lt;TItem&gt;</code> <code>Equals</code> overloaded method",
    "TablesSelectionNormalSelectRow": "selected row record",
    "TablesSelectionNormalButtonText": "clear selection",
    "TablesSelectionKeepInfo": "Keep State:",
    "TablesSelectionKeepOnText": "Keep",
    "TablesSelectionKeepOffText": "No keep",
    "TablesSelectionCountText": "Count：{0}",
    "TablesSelectionScrollTitle": "Callback method after rendering",
    "TablesSelectionScrollIntro": "Perform some special operations by setting the <code>OnAfterRenderCallback</code> callback method",
    "TablesSelectionScrollDescription": "After clicking the button, select the last row and automatically scroll the selected row to the visible area of the window. This code is an example, and this function can be enabled by setting <code>AutoScrollLastSelectedRowToView=\"true\"</code>, Set the alignment via the <code>AutoScrollVerticalAlign</code> parameter",
    "TablesSelectionScrollButtonText": "Select Last Row"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesExcel": {
    "TablesExcelTitle": "Table Excel",
    "TablesExcelDescription": "Commonly used for large data sheet maintenance",
    "TablesExcelOnQueryTitle": "binding collection",
    "TablesExcelOnQueryIntro": "Get data collection through <code>OnQueryAsync</code> callback",
    "TablesExcelTips": "When using the <code>List&lt;TItem&gt;</code> generic collection as a data source, you need to follow the steps below to set",
    "TablesExcelSetDataSourceTitle": "1. Set the data source",
    "TablesExcelSetDataSourceDescription": "Set the <code>Items</code> property of the <code>Table</code> component or the <code>OnQueryAsync</code> callback delegate method",
    "TablesExcelNewLogicTitle": "2. Handle the new logic",
    "TablesExcelNewLogicDescription": "Set the <code>OnAddAsync</code> callback delegate function to handle the <b>New</b> logic",
    "TablesExcelNewLogicNote1": "The code here is sample code",
    "TablesExcelNewLogicNote1Address": "custom address",
    "TablesExcelNewLogicNote2": "output log information",
    "TablesExcelNewLogicNote2Log1": "Collection value change notification column",
    "TablesExcelNewLogicNote2Log2": "Type",
    "TablesExcelDeleteLogicTitle": "3. Handle delete logic",
    "TablesExcelDeleteLogicDescription": "Set the <code>OnDeleteAsync</code> callback delegate function to handle the <b>delete</b> logic",
    "TablesExcelDeleteLogicNote1": "The code here is sample code",
    "TablesExcelDeleteLogicNote2": "output log information",
    "TablesExcelDeleteLogicNote2Log1": "Collection value change notification column",
    "TablesExcelDeleteLogicNote2Log2": "Type",
    "TablesExcelUpdateLogicTitle": "4. Handle the update logic",
    "TablesExcelUpdateLogicDescription1": "Set the <code>OnSaveAsync</code> callback delegate function to handle the cell <b>update</b> logic",
    "TablesExcelUpdateLogicDescription2": "After all cells in the component are edited and updated, the <code>OnSaveAsync</code> callback delegate will be automatically triggered, and the parameter is the current update model <code>TItem</code>",
    "TablesExcelUpdateLogicNote": "The code here is sample code",
    "TablesExcelUpdateLogicLog1": "Cell Change Notification Class: Foo",
    "TablesExcelUpdateLogicLog2": "value: cell",
    "TablesExcelCellRenderTitle": "Individually control how cells are rendered by editing the template",
    "TablesExcelCellRenderIntro": "Advanced usage",
    "TablesExcelCellRenderTips1": "<code>IsFixedHeader</code> fixed header height is set to <code>Height='500px'</code>",
    "TablesExcelCellRenderTips2": "<code>Name</code> is not editable display avatar"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesDynamicExcel": {
    "TablesDynamicExcelTitle": "Excel-DataTable",
    "TablesDynamicExcelDescription": "Commonly used for large data sheet maintenance",
    "TablesDynamicExcelNormalTitle": "Excel mode",
    "TablesDynamicExcelNormalIntro": "Make the component render like <code>Excel</code> by setting the table's <code>IsExcel</code> property",
    "TablesDynamicExcelNormalDescription": "When the binding is <b>dynamic type</b> in <code>Excel</code> mode, <code>TableColumn</code> cannot be used to set column properties. In this example is used <code>DynamicContext</code> Instance object <code>DataTableDynamicContext</code> constructor to set",
    "TablesDynamicExcelEnumTitle": "Enum type",
    "TablesDynamicExcelEnumIntro": "Set the column <code>Items</code> value, and render the enum type into a <code>Select</code> component",
    "TablesDynamicExcelEnumNotSet": "not set",
    "TablesDynamicExcelEnumTip": "Use the above code to render the <code>Education</code> column using the <code>Select</code> component",
    "TablesDynamicExcelKeyboardTitle": "Keyboard Support",
    "TablesDynamicExcelKeyboardIntro": "This example is used to test keyboard support in <code>Excel</code> mode",
    "TablesDynamicExcelKeyboardDescription": "Currently supported",
    "TablesDynamicExcelKeyboardTips_IsExcel": "After the <code>IsExcel</code> mode is enabled, some parameters will no longer take effect, and the zebra <code>IsStriped</code> tree table <code>IsTree</code> has more detail lines <code>IsDetails</code> Select column <code>IsMultipleSelect</code>",
    "TablesDynamicExcelKeyboardTips_DatTable": "When using <code>DatTable</code> as the data source, you need to follow the steps below to set",
    "TablesDynamicExcelKeyboardTips1_Title": "1. Set the data source context",
    "TablesDynamicExcelKeyboardTips1_note1": "Set the <code>TItem</code> property of the <code>Table</code> component to <code>DynamicObject</code>",
    "TablesDynamicExcelKeyboardTips1_note2": "Set the <code>DynamicContext</code> property of the <code>Table</code> component to the <code>DataTableDynamicContext</code> instance",
    "TablesDynamicExcelKeyboardTips1_note3": "Set the Enum type to render to Select",
    "TablesDynamicExcelKeyboardTips1_note4": "Convert enum to List",
    "TablesDynamicExcelKeyboardTips2_Title": "2. Handle <code>DataRow</code> change logic",
    "TablesDynamicExcelKeyboardTips2_note1": "Set the <code>OnChanged</code> callback delegate function to handle the <b>New/Delete</b> logic",
    "TablesDynamicExcelKeyboardTips2_note2": "output log information",
    "TablesDynamicExcelKeyboardTips3_Title": "3. Handle <code>DataCell</code> change logic",
    "TablesDynamicExcelKeyboardTips3_note1": "Set the <code>OnValueChanged</code> callback delegate function to handle the cell <b>update</b> logic",
    "TablesDynamicExcelKeyboardTips3_note2": "Get built-in OnValueChanged callback",
    "TablesDynamicExcelKeyboardTips3_note3": "Invoke internally provided methods",
    "TablesDynamicExcelKeyboardTips3_note4": "The internal method updates the original data source DataTable",
    "TablesDynamicExcelKeyboardTips3_note5": "output log information"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesExport": {
    "TablesExportTitle": "Table Export",
    "TablesExportDescription1": "By setting <code>ShowExportButton</code> to display the export button, the component has built-in export Excel function",
    "TablesExportDescription2": "The export function provides an export callback method <code>OnExportAsync</code>, which can be used to export data by providing a custom export method. If no data export method is provided, the component will export data according to the injected export service",
    "TablesExportTips": "inject service",
    "TablesExportNote1": "Add BootstrapBlazor component",
    "TablesExportNote2": "Add Table Excel export service",
    "TablesExportShowExportButtonTitle": "Table export function",
    "TablesExportShowExportButtonIntro": "Whether to display the export button by setting the <code>ShowExportButton</code> property, the default is <code>false</code>",
    "TablesExportShowExportCsvButtonTitle": "Export Csv/Pdf Button",
    "TablesExportShowExportCsvButtonIntro": "Show/hide <code>Csv/Pdf</code> button by set <code>ShowExportCsvButton=\"true\"</code> <code>ShowExportPdfButton=\"true\"</code>",
    "TablesExportOnExportAsyncTitle": "Custom export method",
    "TablesExportOnExportAsyncIntro": "You can customize the export method by setting the <code>OnExportAsync</code> callback delegate method. If you don't set it, the built-in export function of the component will be used. You can set the column property <code>IgnoreWhenExport=\"true\"</code> to ignore this column when exporting",
    "TablesExportButtonDropdownTemplateTitle": "Custom export dropdown button",
    "TablesExportButtonDropdownTemplateIntro": "Customize the content of the export button dropdown box by setting the <code>ExportButtonDropdownTemplate</code> template",
    "TablesExportButtonExcelText": "Export Page data - Excel",
    "TablesExportButtonExcelAllText": "Export All data - Excel",
    "TablesExportButtonCliBoardText": "Export Page data - ClipBoard",
    "TablesExportButtonCliBoardAllText": "Export All data - ClipBoard",
    "TablesExportToastTitle": "Export Data",
    "TablesExportToastSuccessContent": "Export success，auto close after 4 second",
    "TablesExportToastFailedContent": "Export failed，auto close after 4 second",
    "TablesExportPdfDesc": "Export Pdf function dependencies on additional packages",
    "TablesExportPdfNote1": "Injecting the <code>Html2Pdf</code> service",
    "TablesExportPdfNote2": "Added Html2Pdf export service"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesToolbar": {
    "TablesToolbarTitle": "Table",
    "TablesToolbarDescription": "It is used to display multiple pieces of data with similar structure, and the data can be sorted, filtered, compared or other custom operations.",
    "TablesToolbarNormalTitle": "Table with Toolbar",
    "TablesToolbarNormalIntro": "Set <code>ShowToolbar</code> to show the toolbar component",
    "TablesToolbarQueryTableTitle": "Form with query",
    "TablesToolbarQueryTableIntro": "Set <code>ShowSearch</code> to show the query component",
    "TablesToolbarQueryTableDescription": "In this example, the <b>View</b> button is displayed by setting <code>ShowCardView</code> to switch the rendering mode of the <code>Table</code> component",
    "TablesToolbarCustomButtonTitle": "Custom extension button",
    "TablesToolbarCustomButtonIntro": "Set the <code>TableToolbarTemplate</code> template to add custom extension buttons",
    "TablesToolbarCustomButtonDescription": "In this example, a classic application scenario is implemented",
    "TablesToolbarCustomButtonTips1_title": "Click the download button to open the download thread in the background for data processing, <code>disable</code> download button",
    "TablesToolbarCustomButtonTips1_note1": "A progress bar is displayed in the foreground, and it is being packaged and exported. During this period, other transactions can be processed.",
    "TablesToolbarCustomButtonTips1_note2": "After the data processing is completed, close the foreground prompt pop-up window, <code>restore</code> download button",
    "TablesToolbarCustomButtonTips2_title": "In this example, by setting the <code>IsAsync</code> property of the <code>TableToolbarButton</code> button to enable <b>asynchronous operation mode</b>, please note that <code>OnClickCallback</code> needs to be in the callback delegate Use true <b>async operations</b> otherwise no effect",
    "TablesToolbarCustomDisplayButtonTitle": "Custom display function buttons",
    "TablesToolbarCustomDisplayButtonIntro": "By setting the <code>ShowAddButton</code> <code>ShowEditButton</code> <code>ShowDeleteButton</code> attribute value to control whether the individual function button is displayed, when <code>ShowDefaultButtons</code> is set to <code> When false</code>, all buttons are not displayed",
    "TablesToolbarCustomButton1": "Download 1",
    "TablesToolbarCustomButton2": "Download 2",
    "TableToolbarPopConfirmButton1": "Confirm",
    "TablesToolbarCustomComponentTitle": "Custom Component",
    "TablesToolbarCustomComponentIntro": "Use the <code>TableToolbarComponent</code> component to implement placing the components you need on the toolbar",
    "TablesToolbarCustomComponentDescription": "The custom component currently does not render when shrunk into a small icon, and will be resolved later when a better solution is available, If you want to place components behind built-in buttons, please use the <code>TableToolbarTemplate</code> template",
    "TablesToolbarShowRefreshTitle": "Do not display the refresh button",
    "TablesToolbarShowRefreshIntro": "Set <code>ShowToolbar=\"true\"</code> <code>ShowRefresh=\"false\"</code> to display the toolbar and not the refresh button.",
    "TablesToolbarShowRefreshDesc": "Click the <code>Refresh</code> button. The component instance method <code>QueryAsync</code> is called internally. If the <b>virtual scrolling</b> mode is used, different request data modes are triggered according to different data sources. If the <code>OnQueryAsync</code> callback method is used as the data source, it is automatically called."
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesCell": {
    "TablesCellTitle": "Table Cell",
    "TablesCellDescription": "Cell related operation example",
    "TableCellMergeCellTitle": "Merge Cells",
    "TableCellMergeCellIntro": "Basic table display usage",
    "TableCellMergeCellTip": "In this example, by setting the <code>OnCellRenderHandler</code> callback delegate, the cell merge operation is performed on the two columns <code>Name</code> and <code>Address</code> through the judgment condition, And set the background color of the merged cell by setting the <code>TableCellArgs</code> attribute <code>Class</code> value to <code>cell-demo</code> style sheet name",
    "TableCellOnDoubleClickCellTitle": "Double-click cell",
    "TableCellOnDoubleClickCellIntro": "Set the double-click event of the current cell by setting the <code>OnDoubleClickColumn</code> callback",
    "TableCellOnDoubleClickCellTip": "After setting the double-click cell callback, a subscript horizontal line appears in the cell after the mouse hovers over the cell, as a reminder, which can be overridden by the <code>.table-cell .is-dbcell</code> style",
    "RowAttr": "The current cell row data, please convert it into a binding model",
    "ColumnNameAttr": "Current cell binding column name",
    "ColspanAttr": "Number of merged cells",
    "ClassAttr": "Current cell style",
    "ValueAttr": "Current cell display content",
    "TableCellOnDoubleClickCellToastTitle": "Double-click cell callback",
    "TableCellOnDoubleClickCellCurrentCellName": "Current cell name:",
    "TableCellOnDoubleClickCellCurrentValue": "Current Value:"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesLookup": {
    "TablesLookupTitle": "Table Lookup",
    "TablesLookupDescription": "Used to automatically convert foreign key columns to <code>Text</code> display text",
    "TableLookupNormalTitle": "Lookup external data source",
    "TableLookupNormalIntro": "Auto-translate display text by setting <code>Lookup</code>",
    "TableLookupNormalTips2": "The component automatically converts <code>Complete</code> to a preset in the <code>DataSource</code> collection",
    "TableLookupNormalTips3": "In this example, the <code>ILookupService</code> service is used for unified processing, and the <code>Lookup</code> data collection is obtained from the service by setting the <code>LookupServiceKey</code> value",
    "TableLookupNormalTips1": "For detailed <code>ILookupService</code> documentation, please refer to <a href=\"lookup\" target=\"_blank\">[Portal]</a>"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesRow": {
    "TablesRowTitle": "Table Row",
    "TablesRowDesc": "Used to display multiple pieces of data with similar structures, data can be sorted, filtered, compared or other custom operations.",
    "RowNumberTitle": "Show row numbers",
    "RowNumberIntro": "By setting the <code>ShowLineNo</code> property to <code>true</code>, the table displays the row number, the default value is <code>false</code>",
    "RowNumberP": "Set the <code>LineNoText</code> property value to set the line number column header display text, the default is <code>line number</code>",
    "ClickToSelectTitle": "Click the cell to select the entire row effect",
    "ClickToSelectIntro": "By setting the <code>ClickToSelect</code> property value, you can click any cell to select the entire row, and the selected row style is set to <code>active</code>",
    "ClickToSelectP": "You can set the <code>OnClickRowCallback</code> callback delegate method to handle the clicked row accordingly. After clicking any row in the table, the <code>Name</code> value of the bound data of the selected row will be displayed below",
    "ClickToSelectP2": "Note: UI rendering is not performed inside this callback delegate. When UI data update operation is required, please manually and explicitly call the <code>StateHasChanged</code> method",
    "DoubleClickToEditTitle": "DoubleClickToEditTitle",
    "DoubleClickToEditIntro": "By setting the <code>DoubleClickToEdit</code> attribute value, you can double-click any cell to edit the current row. This function is only available if the <code>Edit</code> function is available",
    "DoubleClickToEditP": "The mobile terminal (CardView) mode temporarily does not support double-click to edit the current row function",
    "DoubleClickToEditP1": "The multi-select mode also supports the double-click editing function. If you set the <code>ClickToSelect</code> click selection effect, the double-click editing function will cause the row selection state to be alternately selected. Please set <code>ClickToSelect=false. </code> Disable this feature",
    "DoubleClickRowCallbackTitle": "Custom row double click event",
    "DoubleClickRowCallbackIntro": "This function is only valid in the <code>Table</code> component single-selection mode. By setting the <code>DoubleClickRowCallback</code> attribute value, you can double-click any cell to customize the callback delegate method and realize your own the required function",
    "DoubleClickRowCallbackP": "The mobile terminal (CardView) mode temporarily does not support double-click editing of the current row function",
    "SetRowClassFormatterTitle": "Custom row highlighting",
    "SetRowClassFormatterIntro": "By setting the <code>SetRowClassFormatter</code> attribute value, you can set the row style through the row data logic, and realize the function of your own highlighting requirements",
    "SetRowClassFormatterP": "In this example, the <code>SetRowClassFormatter</code> method will highlight the row by judging the <code>Count > 60</code> of the bound data",
    "RowNumberText": "Number",
    "ClickToSelectP3": "Currently selected row:",
    "ClickToSelectNoneText": "None",
    "PlaceHolder": "Cannot be empty, within 50 characters",
    "RowContentTemplateTitle": "Row Content Template",
    "RowContentTemplateIntro": "By setting the <code>RowContentTemplate</code> template, you can implement custom row cell linkage logic by sub-packaging components to achieve performance optimization and avoid the problem of refreshing the entire table component after linkage due to cell data refresh.",
    "RowContentTemplateDesc": "In this example, a custom component is used to select a date, link the quantity column, randomly generate a random number, and save it to the original data, so there is no need to refresh the entire <code>Table</code> component.",
    "RowTemplateTitle": "Row Template",
    "RowTemplateIntro": "By setting the <code>RowTemplate</code> template, you can implement the row merging function according to your own business logic"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesDynamic": {
    "TablesDynamicTitle": "Table Dynamic",
    "TablesDynamicDescription": "Supports dynamically adding columns",
    "TablesDynamicDataTableTitle": "Common usage",
    "TablesDynamicDataTableIntro": "Only show <code>DataTable</code> data",
    "TablesDynamicEditTitle": "Edit function",
    "TablesDynamicEditIntro": "Add editing and maintenance functions",
    "TablesDynamicEditDescription": "By setting the <code>OnChanged</code> callback method of the <code>DataTableDynamicContext</code> instance, the value is automatically set when a new row is created",
    "TablesDynamicDynamicColTitle": "Dynamic Column",
    "TablesDynamicDynamicColIntro": "Dynamic adjustment of the <code>DataTable</code> table component automatically updates via code",
    "TablesDynamicPageTitle": "Pagination",
    "TablesDynamicPageIntro": "Use <code>Pagination</code> component",
    "TablesDynamicDynamicColButtonAddColumnText": "Add Column",
    "TablesDynamicDynamicColButtonRemoveColumnText": "Remove Column"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesSearch": {
    "TablesSearchTitle": "Table Search",
    "TablesSearchDesc": "Commonly used for single table maintenance, simple addition, deletion, modification, search, sorting, filtering, search and other common functions can be realized through attribute configuration, and very complex can be realized through the advanced usage of <code>Template</code> business needs functions",
    "SearchTableTips": "The search function of the <code>Table</code> component provides two modes, which can be set through <code>SearchMode</code>. The default is <code>Popup</code>, which is the popup mode. In the <b>Top</b> mode, the search bar will be built into the top of the table. In this mode, the <b>Refresh</b> button and the <b>Search</b> button are combined into one, you can set the <code> ShowSearchButton=false</code> close the search button",
    "SearchTableTitle": "Table with search function",
    "SearchTableIntro": "Set <code>ShowSearch</code> to display the query component, customize the search UI by setting the <code>SearchTemplate</code> template",
    "SearchTableLi1": "Enable no data display function by setting <code>ShowEmpty=\"true\"</code>",
    "SearchTableLi2": "The <code>EmptyText</code> parameter is used to set the text to be displayed when there is no data, the default is to take the built-in text in the resource file",
    "SearchTableLi3": "<code>EmptyTemplate</code> parameter is used to customize no data display template",
    "AutoGenerateSearchTitle": "Auto-generate search function table",
    "AutoGenerateSearchIntro": "When <code>ShowSearch</code> is set, if <code>SearchTemplate</code> is not set when editing template, the component will try to automatically generate search criteria UI",
    "AutoGenerateSearchP": "When the column information is bound, set the <code>Searchable</code> property and set the search criteria to automatically build the UI. You can set the <code>SearchDialogShowMaximizeButton</code> to maximize the search pop-up window display <b>Maximize</b> button",
    "AutoGenerateSearchTips": "<p>When building a search popup window automatically, since each column is set to <code>Searchable</code>, the component will pass <code>SearchText</code> and set <code>Searchable</code> Each column whose value is <code>true</code> automatically builds a search lambda expression, which is obtained through the attribute <code>Searches</code> of <code>QueryPageOptions</code></p>",
    "AutoGenerateSearchComment": "Logical relationship usage",
    "CustomColSearchTitle": "Custom Column Search Template",
    "CustomColSearchIntro": "When <code>SearchTemplate</code> is set, the component automatically generates the search UI using this template as the rendering UI",
    "CustomColSearchP": "By setting the <code>SearchTemplate</code> of the name column to customize the edit, use the drop-down box to select the name",
    "CustomColSearchP1": "Because it is a search condition, in this example, the drop-down box of the name search column is added. Please select... item",
    "CustomColSearchP2": "The column search template is generated in the search order <code>SearchTemplate</code> -> <code>AutoGenerate</code> first to find out whether the search template is set, and then automatically generated according to the bound field type",
    "CustomColSearchP3": "Control whether to display the entire search bar by setting <code>ShowSearch</code>",
    "CustomColSearchP4": "Control whether to display the fuzzy search bar by setting <code>ShowSearchText</code>",
    "CustomColSearchP5": "Control whether to display the reset search button by setting <code>ShowResetButton</code>",
    "CustomColSearchP6": "Control whether to display the advanced search button by setting <code>ShowAdvancedSearch</code>",
    "CustomColSearchP7": "Make the search popup draggable by setting <code>SearchDialogDraggable=\"true\"</code>",
    "CustomerSearchModelTitle": "Custom Search Model",
    "CustomerSearchModelIntro": "Set <code>CustomerSearchModel</code> and <code>CustomerSearchTemplate</code> to fully control the search criteria UI",
    "CustomerSearchModelP": "Due to a certain application scenario, our form entity class <code>TItem</code> is not ideal as a search model, for example, we have an attribute that is <code>int</code> or <code> enum</code>, we need a blank condition item of <b>all</b> or <b>please select...</b> as a search condition. It is very difficult to use the default model at this time , you can use the custom search model <code>CustomerSearchModel</code> and <code>CustomerSearchTemplate</code> to customize the control search interface",
    "AddModelTitle": "Add Test Data Window",
    "EditModelTitle": "Edit Test Data Window",
    "SelectedItemText": "Please select...",
    "SelectedItemText1": "Name1",
    "SelectedItemText2": "Name2",
    "SelectedItemValue1": "Name1",
    "SelectedItemValue2": "Name2",
    "AutoGenerateSearchGroupBoxTitle": "Search function experience area",
    "DisplayText1": "Search Mode",
    "DisplayText2": "Fuzzy Search",
    "DisplayText3": "Display reset",
    "DisplayText4": "Display Search",
    "SearchTableGroupBoxText": "Search Criteria",
    "NamePlaceholder": "Please enter your name within 50 characters",
    "AddressPlaceholder": "Please enter the address within 500 characters",
    "AutoHeightIntro": "<p><b>Highly Adaptive</b></p><p>In this example, when the parent container height is set to <code>600px</code> expand/collapse the search bar, the table automatically fills the parent container</p>"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesFilter": {
    "MultiFilterTitle": "Multiple selection list filtering",
    "MultiFilterIntro": "Use the built-in <code>MultiFilter</code> component to provide multi-select filtering via <code>FilterTemplate</code>",
    "MultiFilterTips": "The component provides two ways to set the data source: <code>Items</code> and <code>OnGetItemsAsync</code>",
    "MultiFilterTipsLi1": "<code>Items</code> is suitable for small amounts of data and statically prepared data sets",
    "MultiFilterTipsLi2": "<code>OnGetItemsAsync</code> is suitable for large and dynamic data collections. For performance reasons, the component uses a local lazy record method to fill in data, that is, the callback is called to obtain data when the filter window is opened.",
    "TablesFilterTitle": "Filter and sort function",
    "TablesFilterDesc": "Filter to quickly find the data you want to see; sort to quickly find or compare data.",
    "TablesFilterDescLi1": "Filters a column of data to specify the column to be filtered by specifying the <code>filterable</code> property of the column",
    "TablesFilterDescLi2": "Sort a column of data, specify the column to be sorted by specifying the <code>Sortable</code> property of the column, change the collation by multiple clicks",
    "FilterableTitle": "Table with filterable data",
    "FilterableIntro": "Set the <code>Filterable</code> property of <code>the TableColumn</code> column to control whether the column header has data filtering enabled",
    "FilterableP": "<code>Filterable</code> currently supports two applications：",
    "FilterableLi1": "The <code>Filters</code> in the query method parameters are filter criteria, and the database can filter the data by itself through this property when querying data",
    "FilterableLi2": "No sense of use, normal query data, no processing is done to filtering, internal processing will be carried out according to <code>Filter</code>",
    "FilterableLi3": "When external filtering has been made, set the <code>Value of the IsFiltered</code> property of the <code>QueryData&lt;TItem&gt;</code> parameter to <code>true</code>",
    "FilterableLi4": "Each column can be set separately, and the filter between columns is <code>And</code> and relationship",
    "FilterableDiv": "This example is <code>of DateTime, string, bool, enum, int type, and</code> the pop-up filter box is also different",
    "FilterableAlert": "To enable filtering, you only need to set the <code>Filterable</code> value of <code>TableColumn</code> to <code>true</code>, no additional code required",
    "FilterTemplateTitle": "Custom Filter Template",
    "FilterTemplateIntro": "Set <code>FilterTemplate</code> template values, customize column filter templates, very suitable for complex types of filter pop-ups",
    "ShowFilterHeaderTitle": "Show Filter Header",
    "ShowFilterHeaderIntro": "Show filter header when the <code>ShowFilterHeader</code> property value is <code>set to true</code>",
    "DefaultSortTitle": "Default sort function",
    "DefaultSortIntro": "Default sorts as default when setting the <code>DefaultSort</code> property value to <code>true</code>",
    "DefaultSortLi1": "Set <code>DefaultSort=true</code> to enable the default sort function, when multiple columns set this property, the first column works",
    "DefaultSortLi2": "Set <code>DefaultSortOrder</code> value, set default collation",
    "DefaultSortP": "In this case the default sort is the last column in reverse order",
    "SortListTitle": "Multi-column sort",
    "SortListIntro": "Set <code>the SortList</code> property, use this parameter for multi-column sorting when the table loads",
    "SortListP": "The default collation in this case is: <code>DeteTime desc</code> <code>Address</code>, you don't need to handle the sort logic yourself, the component is already built-in",
    "OnSortTitle": "Dynamic multi-column sorting",
    "OnSortIntro": "Set <code>OnSort</code> Parameters",
    "OnSortP": "When clicking the column header to sort, the component calls the<code> OnSort </code>callback internally, where its return value can be set according to the business logic to achieve dynamic multi-column sorting, in this case, when clicking the <b>time</b> column header for positive order sorting, use <code>DateTime,Count</code>  internally, use<code>DateTime desc, Count desc</code>when Count reverse order",
    "OnAdvancedSortTitle": "Custom sort",
    "OnAdvancedSortIntro": "By setting <code>ShowAdvancedSort=\"true\"</code> to show the <b>Advanced Sort</b> button.",
    "SetFilterInCodeTitle": "Set filters by code",
    "SetFilterInCodeIntro": "Example shows how to set filters through code",
    "SetFilterInCodeButtonText1": "Name contains 01",
    "SetFilterInCodeButtonText2": "Reset All Filter",
    "TablesFilterTemplateDescription": "<p><code>The FilterTemplate</code> type is <code>RenderFragment</code> <span>its value is a custom component, and the component must inherit</span> <code>the filterBase</code> In this case, the last column in this case<b>, the Quantity column</b>, uses the <code>custom component by filtering the template CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[portal] CustomerFilter component source code</a></p><p class=\"code-label\">Notes:</p><ul class=\"ul-demo\"><li>Custom filter components are wrapped with <code>FilterProvider</code>, and <code>FilterProvider</code> must be under the <code>FilterTemplate</code> node</li><li>Filters can be fine-tuned through the parameters of the <code>FilterProvider</code> component; for example, by setting <code>ShowMoreButton</code> to control whether the <b>+ -</b> symbol is displayed</li><li>Before <code>v9.6.2</code>, use <code>OnFilterValueChanged</code> to trigger the filter callback. After refactoring, use <code>OnFilterAsync</code> to trigger the filter callback method.</li></ul-demo>",
    "CustomerFilterItem1": "All",
    "CustomerFilterItem2": "Greater than 10",
    "CustomerFilterItem3": "Greater than 50",
    "CustomerFilterItem4": "Greater than 80"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesFixedHeader": {
    "TablesFixedHeaderTitle": "Fixed header function",
    "TablesFixedHeaderDesc": "When scrolling data, the header is fixed to facilitate viewing the header information of each column",
    "TablesFixedHeaderDescP": " The fixed header of this component adopts the <code>double header</code> method. When there is a common problem, the column is not aligned. Please add some styles according to your actual situation.<br /> Please set the width of each column as much as possible to avoid the problem of misalignment of column width",
    "FixedHeaderTitle": "Width adaptive",
    "FixedHeaderIntro": "Set <code>Height=200</code> and <code>IsFixedHeader=\"true\"</code> fixed header",
    "FixedHeaderP": "Example of vertical scroll bar after more data is loaded",
    "FixedHeaderP1": "Please set a column width, allow a column width not set, auto-fill",
    "FixedWidthTitle": "FixedWidth",
    "FixedWidthIntro": "Set the <code>Height=200</code> and <code>IsFixedHeader=\"true\"</code> fixed header, when the displayed data on each page is <code>10</code> rows, the height exceeds the set value <code>200</code>, A vertical scroll bar appears on the Table component",
    "FixedWidthP": "All columns are set to width, and a horizontal scroll bar will automatically appear when the screen is too small",
    "AllowResizingTitle": "Width Adjustable",
    "AllowResizingIntro": "Set the <code>AllowResizing</code> property while fixing the header so that the column width can be adjusted",
    "AllowResizingP": "By setting the <code>Height</code> parameter to fix the header, by setting <code>AllowResizing</code>, the parameter allows the column width to be adjusted",
    "AutoHeightTitle": "Automatic Height",
    "AutoHeightIntro": "Do not set the <code>Height</code> value to adapt the height through the parent container",
    "AutoHeightP": "In this example, when the height of the parent container of the <code>Table</code> changes, the component will adapt to the height and width",
    "DialogIntro": "<code>Table</code> inside <code>Dialog</code>",
    "DialogDesc": "<p>Tips for using the<code>Table</code> with a fixed header in the <code>Dialog</code>:</p><div>The <code>Dialog</code> should assign values to the<code>Class</code> parameter of <code>DialogOption</code>. In this example, it is set to<code>dialog-table</code>. This operation is to enable us to customize the style to locate the<code>Table</code> component's parent container in the <code>Dialog</code> and set its height, Here you can use the writing method of adaptive height <code>height: calc (100vh - 400px);</code>; When the parent container of a <code>Table</code>component has a height, the component itself will perform adaptive height adaptation through calculation</div>",
    "DialogTitle": "In Dialog",
    "DialogButtonText": "Dialog"
  },
  "BootstrapBlazor.Server.Components.Samples.Table.TablesAttribute": {
    "TableAttributeTitle": "AutoGenerateClassAttribute/AutoGenerateColumnAttribute",
    "TableAttributeDescription": "By using feature tags, you can save a lot of code",
    "AutoGenerateClassAttribute": "AutoGenerateClassAttribute",
    "AutoGenerateColumnAttribute": "AutoGenerateColumnAttribute",
    "AutoGenerateClassP1": "1. Usage",
    "AutoGenerateClassP1Content": "In this example, by setting <code>Filterable=true</code>, all columns in the table are filterable.",
    "AutoGenerateCode": "The equivalent code is as follows:",
    "AutoGenerateClassP2": "1. Usage",
    "AutoGenerateClassP2Content": "In this example, we enable the filter function for the table's <code>Name</code> column by setting <code>Filterable=true</code>",
    "TableAttributeIntro": "Priority",
    "TableAttributeIntroLI1": "Only <code>AutoGenerateClassAttribute</code> been set and its parameter value is used as the basis",
    "TableAttributeIntroLI2": "Only <code>AutoGenerateColumnAttribute</code> been set and its parameter value is used as the basis",
    "TableAttributeIntroLI3": "Write <code>AutoGenerateClassAttribute</code> and write <code>AutoGenerateColumnAttribute</code> to merge the two parameter values and take the value of <code>AutoGenerateColumnAttribute</code>",
    "TableAttributeIntroLI4": "When setting the TableColumn parameter value, the TableColumn parameter value is the final value.",
    "TableAttributeQA1": "I wrote <code>AutoGenerateClassAttribute</code> and <code>AutoGenerateColumnAttribute</code> to combine the two parameter values and give an example",
    "TableAttributeQAP1": "Because <code>AutoGenerateClassAttribute</code> sets <code>Filterable</code> to <code>true</code>, and <code>AutoGenerateColumn</code> keeps <code>Filterable</code> to its default value of <code>false</code>, the final <code>UI</code> uses <code>true</code>",
    "TableAttributeQAP2": "Since <code>AutoGenerateClassAttribute</code> is not set, <code>Sortable</code> remains at the default value of <code>false</code>, and <code>AutoGenerateColumn</code> sets the <code>Sortable</code> value to <code>true</code>, the final <code>UI</code> uses <code>true</code>",
    "TableAttributeQAP3": "In the latest version, some parameter values ​​such as <code>Filterable</code> of <code>TableColumn</code> are changed to <b>nullable data type</b>, and their default value is changed from <code>false</code> to <code>null</code>. Therefore, as long as the value of the <code>Filterable</code> parameter of <code>TableColumn</code> is not null, the <code>TableColumn</code> value is used as the final <code>UI</code> value.",
    "TableAttributeColumn": "TableColumn value"
  },
  "BootstrapBlazor.Server.Components.Pages.Introduction": {
    "Title": "Introduction",
    "SubTitle": "BootstrapBlazor is an enterprise-level component library based on Bootstrap and Blazor, which can be considered as the Blazor version of the Bootstrap project.",
    "UpdateTitle": "Update Log",
    "UpdateLog": "In order to fix the components <b><code>bugs</code></b>, a small version of the component may be released every day.",
    "UpdateLogLink": "[Update Log]",
    "LearnTitle": "Learning materials",
    "LearnLi1": "Blazor Official Document",
    "LearnLi2": "Use Blazor WebAssembly and Visual Studio Code to generate web applications",
    "LearnLi3": "What is Blazor",
    "LearnLi4": "Exercise-Configure the development environment",
    "LearnLi5": "Blazor Components",
    "LearnLi6": "Exercise-Add Components",
    "LearnLi7": "Data binding and events",
    "LearnLi8": "Exercise-Data binding and Events",
    "Summarize": "Summarize",
    "ProjectsShow": "Exhibition",
    "P5": "The largest code hosting collaborative development platform in China <b><a href='{0}' target='_blank'>Gitee</a></b> C# The highest star in the sector <a href='{1}' target='_blank'><img src='{2}' alt='star'></a> Works <b><a href='{3}' target='_blank'>Universal background management system BootstrapAdmin</a></b> Ready to use this component to achieve all functions",
    "ShowWebSiteTitle1": "Demo Site(MVC & Blazor)",
    "ShowWebSiteTitle2": "Demo Site(Blazor)",
    "GetStarted": "Get Started",
    "QuickStart": "Quick Start",
    "Features": "Features of Components",
    "P6": "The Bootstrap Blazor UI component library provides everything from basic <code>Button</code> components to advanced web-level <code>Online</code> components",
    "Advantage": "Advantage",
    "AdvantageLi1": "No need to write <code>JavaScript</code> to use components",
    "AdvantageLi2": "The component supports all <code>html</code> features",
    "AdvantageLi3": "The component supports two-way data binding",
    "AdvantageLi4": "Components support automatic client verification",
    "AdvantageLi5": "Component support combination",
    "Community": "Community"
  },
  "BootstrapBlazor.Server.Components.Components.QQGroup": {
    "Group": "QQ Group",
    "Status": " Full",
    "Welcome": "Welcome to join the group discussion"
  },
  "BootstrapBlazor.Server.Components.Components.EventTable": {
    "Title": "Event"
  },
  "BootstrapBlazor.Server.Components.Samples.Handwrittens": {
    "Title": "Handwritten",
    "SubTitle": "Used to save the mobile terminal signature as Base64 encoded string",
    "Tips": "Deprecated, please use the <a href=\"signature-pad\">BootstrapBlazor.SignaturePad</a> component",
    "BaseUsageText": "Basic usage",
    "IntroText1": "Touch device handwritten signature as Base64.",
    "IntroText2": "For desktop browser testing, please use F12 to simulate a touch device.",
    "HandwrittenButtonText": "Signature",
    "SaveButtonText": "Save button text",
    "SaveButtonTextDefaultValue": "Save",
    "ClearButtonText": "Clear the button text",
    "ClearButtonTextDefaultValue": "Clear",
    "Result": "Handwritten signature imgBase64 string",
    "HandwrittenBase64": "Handwritten result callback method"
  },
  "BootstrapBlazor.Server.Components.Samples.ImageViewers": {
    "ImageViewerTitle": "Image Viewer pictures",
    "ImageViewerDescription": "In container, and retain the native characteristics of the img, to support lazy loading, custom placeholder, load, failure, etc",
    "ImageViewerNormalTitle": "Basic usage",
    "ImageViewerNormalIntro": "Load and display the image files",
    "ImageViewerPlaceHolderTitle": "The placeholder content",
    "ImageViewerPlaceHolderIntro": "Can be set up by the <code>Show Place Holder</code> open placeholder function, by setting the <code>Place Holder Template</code> define placeholder content",
    "ImageViewerPlaceHolderTemplateTitle": "The placeholder template",
    "ImageViewerPlaceHolderTemplateIntro": "Can be set up by the <code>Place Holder Template</code> open placeholder Template function, not set <code>Url</code>  or being loaded displayed when the content of the Template",
    "ImageViewerErrorTemplateTitle": "Load failed",
    "ImageViewerErrorTemplateIntro": "Can be set up by the <code>Error Template</code> open Error Template function, Url parameter <code>Url</code> unable to load images displayed when the content of the Template",
    "ImageViewerPreviewListTitle": "A larger preview",
    "ImageViewerPreviewListIntro": "Can be set up by the <code>Preview List</code> opens a larger Preview of the function, set <code>ZoomSpeed</code> to control the speed of scrolling and scaling",
    "ImageViewersAttrUrl": "Picture Url",
    "ImageViewersAttrAlt": "Native Alt attribute",
    "ImageViewersAttrShowPlaceHolder": "Whether display placeholder for large images added",
    "ImageViewersAttrHandleError": "Error loading fail whether display placeholder",
    "ImageViewersAttrPlaceHolderTemplate": "Placeholder template is not set the Url or being loaded a larger version",
    "ImageViewersAttrErrorTemplate": "The template image path errors",
    "ImageViewersAttrFitMode": "Native object-fit attributes",
    "ImageViewersAttrZIndex": "Native z-the index attribute",
    "ImageViewersAttrPreviewList": "A larger preview link set",
    "ImageViewersAttrOnLoadAsync": "The callback method picture when it is loaded successfully",
    "ImageViewersAttrOnErrorAsync": "Images load failed callback methods",
    "ImageViewersAttrIsIntersectionObserver": "Images lazy loading by view window",
    "ImageViewerNormalTips1": "<code>object-fit: fill</code> Fill the default drawing picture to fill the whole container, does not guarantee that keep the original proportion",
    "ImageViewerNormalTips2": "<code>object-fit: contain</code> Contains keep original size scaling to ensure the whole image can be appeared in the container, so this parameter may be left blank in the container",
    "ImageViewerNormalTips3": "<code>object-fit: cover</code> Cover to keep the original size scaling, width and height of at least one consistent and containers (size small) so this parameter may let image section area is not visible",
    "ImageViewerNormalTips4": "<code>object-fit: none</code> No keep original size proportion, while maintaining the original size, hidden extra parts",
    "ImageViewerNormalTips5": "<code>object-fit: scale-down</code> To reduce as if, in turn, set the <b>none</b> or <b>contain the</b> is the relatively small size of the ultimate",
    "ImageViewerPlaceHolderTips1": "Pictures after loading the default browser caches, suggest <KBD>F12</KBD> turn off caching experience this functionality",
    "ImageViewerPlaceHolderDefault": "Default",
    "ImageViewerPlaceHolderCustom": "Custom",
    "ImageViewerPlaceHolderLoading": "Loading ...",
    "ImageViewerPlaceHolderTemplateTips1": "Pictures after loading the default browser caches, suggest <KBD>F12</KBD> turn off caching experience this functionality",
    "ImageViewerPlaceHolderTemplateUrl": "Is not set Url",
    "ImageViewerPlaceHolderTemplatePlaceholder": "The placeholder template",
    "ImageViewerPlaceHolderTemplateLoadingShow": "When loading show",
    "ImageViewerErrorTemplateUrlError": "Url The path error",
    "ImageViewerErrorTemplateCustom": "The custom",
    "ImageViewerErrorTemplateLoadFailed": "Load failed",
    "ImagePreviewerTitle": "Use ImagePreviewer Standalone",
    "ImagePreviewerIntro": "Pop up the Previewer directly in conjunction with other components like Button",
    "ImagePreviewerButton": "Show Previewer",
    "IntersectionObserverTitle": "Intersection Observer",
    "IntersectionObserverIntro": "By setting <code>IsIntersectionObserver=\"true\"</code> to enable lazy loading, the image will not be loaded when it is in the invisible area, and will be loaded only when it is about to be visible."
  },
  "BootstrapBlazor.Server.Components.Samples.Geolocations": {
    "GeolocationsTitle": "Geolocation",
    "GeolocationNormalText": "Basic usage",
    "GeolocationNormalIntro": "Obtain location information through browser API.",
    "GeolocationNormalIntro2": "Click the button to get your coordinates.",
    "GeolocationNormalIntro3": "Note: For security reasons, when a web page tries to access location information, the user is notified and asked to grant permission. Be aware that each browser has its own policies and methods for requesting this permission.",
    "GetLocationButtonText": "Get Location",
    "WatchPositionButtonText": "Watch Position",
    "ClearWatchPositionButtonText": "Stop Watch Position",
    "GetLocationResultSuccess": "Call GetLocaltion success",
    "GetLocationResultFailed": "Call GetLocaltion failed",
    "WatchPositionResultSuccess": "Call WatchPosition success",
    "WatchPositionResultFailed": "Call WatchPosition failed",
    "ClearWatchPositionResultSuccess": "Stop watch position success",
    "ClearWatchPositionResultFailed": "Stop watch position failed",
    "Longitude": "Longitude",
    "Latitude": "Latitude",
    "Accuracy": "Accuracy",
    "Altitude": "Altitude",
    "AltitudeAccuracy": "AltitudeAccuracy",
    "Heading": "Heading",
    "Speed": "Speed",
    "LastUpdateTime": "UpdateTime",
    "CurrentDistance": "CurrentDistance",
    "TotalDistance": "TotalDistance"
  },
  "BootstrapBlazor.Server.Components.Samples.Notifications": {
    "NotificationsTitle": "Notifications",
    "NotificationsNormalTitle": "Basic usage",
    "NotificationsNormalIntro": "Notification information through browser API.",
    "NotificationsNormalDescription": "Click the button to notification.",
    "NotificationsNormalTips1": "Note: For security reasons, when a web page tries to access notifications, the user is notified and asked to grant permission.",
    "NotificationsNormalButtonText": "Display notification",
    "NotificationSilentButtonText": "Display silent notification",
    "NotificationsNormalCheckPermissionText": "Check Permission",
    "NotificationsNormalPermissionText": "Permission",
    "NotificationsNormalSilentText": "Silent",
    "NotificationsNormalTitleText": "Title",
    "NotificationsNormalMessageText": "Message",
    "NotificationsIconText": "Icon",
    "NotificationsSoundText": "The audio URL to play when the notification",
    "CheckPermissionResultSuccess": "Check permission success",
    "NotificationResultSuccess": "Call Notification success",
    "NotificationsNormalTips2": "Uses the static class <code>BrowserNotification</code> to call the <code>Dispatch</code> method",
    "NotificationsNormalShowNotificationCallbackText": "Show notification callback",
    "NotificationsNormalGetPermissionCallbackText": "Get permission callback",
    "NotificationsNormalOnClickText": "Click notification callback method name",
    "NotificationsNormalTitleSampleText": "You have a new logistics notification",
    "NotificationsNormalMessageSampleText": "Your package has arrived on Panama South Road, and there are only 3 stops left for distribution."
  },
  "BootstrapBlazor.Server.Components.Samples.SignaturePads": {
    "BaseUsageText": "Basic usage",
    "BaseUsageIntro": "Signature with touch or mouse",
    "ButtonCssStyleText": "Button CSS style",
    "ButtonCssStyleIntro": "Set button css",
    "CustomButtonText": "Custom button text",
    "CustomButtonIntro": "Custom button text",
    "SignText": "signature",
    "Tips": "Complex signatures will cause a large amount of data to be transmitted, and ssr will show a reload error. The configuration changes the maximum size of a single incoming hub message (default 32KB) to solve this problem. <code> builder.Services.AddServerSideBlazor().AddHubOptions(o => o.MaximumReceiveMessageSize = null); </code> ",
    "Title": "SignaturePad",
    "CleanText": "Clean",
    "ResponsiveInterfaceText": "Responsive signature interface",
    "ResultBase64Text": "Your signature in base64",
    "ResultText": "Your signature",
    "SignatureText": "Signature",
    "BackText": "Back",
    "TipsResponsive": "When device width is less than 640px (such as mobile phones) automatically topless without borders, the width is less than 500px the button is automatically rotated. Optional transparent background."
  },
  "BootstrapBlazor.Server.Components.Samples.SignaturePadPageResponsive": {
    "BackText": "Back",
    "ResponsiveInterfaceText": "Responsive signature interface",
    "ResultBase64Text": "Your signature in base64",
    "ResultText": "Your signature",
    "SignatureText": "Signature",
    "TipsResponsive": "When device width is less than 640px (such as mobile phones) automatically topless without borders, the width is less than 500px the button is automatically rotated. Optional transparent background."
  },
  "BootstrapBlazor.Server.Components.Samples.Reconnectors": {
    "Title": "Reconnector",
    "SubTitle": "Reflect the connection state in the UI (Blazor Server)",
    "ReconnectingTemplateAttr": "Template for attempting to reconnect",
    "ReconnectFailedTemplateAttr": "Template for reconnection failed",
    "ReconnectRejectedTemplateAttr": "Template for reconnection rejected",
    "ReconnectingTemplateText": "attempting to reconnect",
    "ReconnectFailedTemplateText": "reconnection failed",
    "ReconnectRejectedTemplateText": "reconnection rejected",
    "Intro": "The following table describes the <b>CSS</b> classes applied to the <code>components-reconnect-modal</code> element by the Blazor framework.",
    "IntroTitle": "Template",
    "Usage": "Usage",
    "Step1": "1. Add code in <code>_Layout.cshtml</code>",
    "Step2": "2. Add code in <code>App.razor</code>",
    "TableHeader1": "CSS class",
    "TableHeader2": "Indicates",
    "TableRow1": "A lost connection. The client is attempting to reconnect. Show the modal.",
    "TableRow2": "An active connection is re-established to the server. Hide the modal.",
    "TableRow3": "Reconnection failed, probably due to a network failure. To attempt reconnection, call <code>window.Blazor.reconnect()</code> in JavaScript.",
    "TableRow4": "Reconnection rejected. The server was reached but refused the connection, and the user's state on the server is lost. To reload the app, call <code>location.reload()</code> in JavaScript. This connection state may result when:",
    "TableRow5": "<li>A crash in the server-side circuit occurs.</li><li>The client is disconnected long enough for the server to drop the user's state. Instances of the user's components are disposed.</li><li>The server is restarted, or the app's worker process is recycled.</li>",
    "Application": "Application"
  },
  "BootstrapBlazor.Server.Components.Samples.OnScreenKeyboards": {
    "OnScreenKeyboardsTitle": "On-Screen keyboard",
    "OnScreenKeyboardsNormalText": "Basic usage",
    "OnScreenKeyboardsNormalIntro": "Full Keyboard",
    "OnScreenKeyboardsTypekeyboardTitle": "Keyboard",
    "OnScreenKeyboardsTypeNumpadTitle": "Numpad",
    "OnScreenKeyboardsThemeDarkTitle": "Theme dark",
    "OnScreenKeyboardsSpecialcharactersTitle": "Special characters europe",
    "OnScreenKeyboardsSpecialcharactersCustomerTitle": "Special characters in customer",
    "OnScreenKeyboardsAppTitle": "BootstrapBlazor component",
    "OnScreenKeyboardsAppDescription": "Bind",
    "OnScreenKeyboardsTips": "If the performance is not normal, you can add this css to debug",
    "OnScreenKeyboardsCss": "<code> .kioskboard-body-padding { padding-top: unset !important;} </code>",
    "OnScreenKeyboardsBasicTitle": "Basic"
  },
  "BootstrapBlazor.Server.Components.Samples.Bluetooth": {
    "BluetoothTitle": "IBluetooth Service ",
    "BluetoothIntro": "Provides methods to query Bluetooth availability and request access to devices",
    "BluetoothDescription": "Allows websites to communicate with Bluetooth devices connected to the user's computer. For example, you can connect to a Bluetooth printer to print.",
    "BluetoothTipsLi1": "This feature is available only in secure contexts (HTTPS)",
    "BluetoothTipsLi2": "This is an experimental technology Check the <a href=\"https://developer.mozilla.org/en-US/docs/Web/API/Bluetooth#browser_compatibility\" target=\"_blank\">Browser compatibility table</a> carefully before using this in production",
    "BluetoothTipsTitle": "Note: The <code>IBluetoothDevice</code> interface instance inherits <code>IAsyncDisposable</code>. When switching routes, you need to release its resources by calling its <code>DisposeAsync</code>.",
    "NotSupportBluetoothTitle": "Scan Devices",
    "NotSupportBluetoothContent": "The current browser does not support serial port operations. Please change to Edge or Chrome browser.",
    "BluetoothRequestText": "Scan",
    "BluetoothConnectText": "Connect",
    "BluetoothDisconnectText": "Disconnect",
    "BluetoothGetBatteryText": "Battery",
    "BluetoothGetHeartRateText": "HeartRate",
    "BaseUsageTitle": "Basic usage",
    "BaseUsageIntro": "Request communication with Bluetooth devices through the <code>IBluetooth</code> service",
    "BluetoothGetCurrentTimeText": "Time",
    "BluetoothDeviceInfoText": "Device Info",
    "UsageDesc": "Click the Scan button and select the phone to test in the pop-up window",
    "BluetoothGetServicesText": "Services",
    "BluetoothGetCharacteristicsText": "Characteristics",
    "BluetoothReadValueText": "ReadValue"
  },
  "BootstrapBlazor.Server.Components.Samples.FileIcons": {
    "Title": "File Icon",
    "Intro": "The icon show the file extension",
    "BaseUsageTitle": "Base Usage",
    "BaseUsageIntro": "Set the <code>Extension</code> parameter for the file type",
    "ColorTitle": "Color",
    "ColorIntro": "Set <code>IconColor</code> for the file extension badge background color",
    "BackgroundTemplateTitle": "Background Template",
    "BackgroundTemplateIntro": "Set <code>BackgroundTemplate</code> custom the file icon",
    "CustomCssTitle": "Custom css",
    "CustomCssIntro": "Set <code>class</code> parameter set the style for the file icon component",
    "ExtensionAttr": "The extension of file",
    "IconColorAttr": "The backgound color for badge of extension",
    "BackgroundTemplateAttr": "The template for custom the backgroup file",
    "SizeTitle": "Size",
    "SizeIntro": "Set the icon size by setting <code>Size</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.PdfReaders": {
    "PdfTitle": "PDF Reader",
    "PdfIntro": "Embed and display PDF documents directly in web pages without relying on a PDF reader installed locally by the user.",
    "PdfReaderNormalText": "Basic usage",
    "PdfReaderNormalIntro": "Set the PDF file address using the <code>Url</code> parameter, or specify the file stream to be rendered using the <code>OnGetStreamAsync</code> parameter.",
    "PdfReaderFAIconDesc": "The <code>PdfReader</code> component icon depends on the <code>BootstrapBlazor.FontAwesome</code> package. You need to reference the following styles; otherwise, the toolbar icon will not display.",
    "PdfReaderSetPdfStreamDesc": "Rendering can be performed by calling the instance method <code>SetPdfStreamAsync</code> or <code>SetPdfBase64DataAsync</code>.",
    "PdfReaderDownloadFileNameDesc": "You can set the download file name by configuring the parameter <code>DownloadFileName</code>.",
    "PdfReaderStreamModeText": "Stream mode",
    "PdfReaderStreamModeIntro": "read remote files by cross-domain",
    "PdfReaderCompatibilityModeText": "Compatibility mode",
    "PdfReaderCompatibilityModeIntro": "Compatible with older browsers",
    "PdfReaderAdvancedText": "Advanced parameters",
    "PdfReaderAdvancedIntro": "Can be use advanced parameters",
    "PdfReaderIssue": "Destructive update reference link: remove pdfoobject",
    "AttributesPdfReaderFilename": "PDF file path (Url or relative path)",
    "AttributesPdfReaderStreamMode": "Use stream mode to read files across domains",
    "AttributesPdfReaderWidth": "Width unit (px/%)",
    "AttributesPdfReaderHeight": "High unit (px/%)",
    "AttributesPdfReaderStyleString": "Component appearance Css Style",
    "AttributesPdfReaderPage": "Page",
    "AttributesPdfReaderPageMode": "Page mode",
    "AttributesPdfReaderZoom": "Zoom mode",
    "AttributesPdfReaderSearch": "Query String",
    "AttributesPdfReaderRefresh": "Refresh Components",
    "AttributesPdfReaderNavigateToPage": "Jump to the specified page number",
    "AttributesPdfReaderRefreshPage": "Refresh and jump to page number",
    "AttributesPdfReaderRefreshComponent": "Refresh component (query keyword, page number, page mode, zoom mode)",
    "AttributesPdfReaderStream": "The file stream used for rendering. If it is empty, the URL parameter is used to read the file",
    "AttributesPdfReaderViewerBase": "Browser page path",
    "AttributesPdfReaderViewerBaseDefaultValue": "built-in",
    "AttributesPdfReaderNavPanels": "Show Navigation Pane",
    "AttributesPdfReaderToolbar": "Show Toolbar",
    "AttributesPdfReaderStatusBar": "show the status bar",
    "AttributesPdfReaderDebug": "Display debugging information",
    "PdfReaderAdvancedViewMode": "ViewMode",
    "PdfReaderAdvancedPageMode": "PageMode",
    "PdfReaderAdvancedPagePrevious": "PagePrevious",
    "PdfReaderAdvancedPageNext": "PageNext",
    "PdfReaderAdvancedGoToPage": "GoTo",
    "PdfReaderAdvancedRefreshPage": "RefreshPage",
    "PdfReaderAdvancedStreamModeLabel": "StreamMode",
    "PdfReaderAdvancedFilenameLabel": "The file in the wwwroot relative path or url",
    "PdfReaderAdvancedSearchLabel": "Search",
    "PdfReaderAdvancedReadOnlyLabel": "Disable copy/print/download",
    "PdfReaderAdvancedWatermarkLabel": "Watermark content",
    "PdfReaderCompatibilityModeTips": "- Chrome < 97 automatically uses version 2.4.456<br/>- Chrome < 109 automatically uses version 2.6.347<br/>- Note: ReadOnly and Watermark cannot be used in these two compatibility modes",
    "LocalFileName": "local PDF file path"
  },
  "BootstrapBlazor.Server.Components.Samples.PdfViewers": {
    "PdfViewerTitle": "PDFViewer",
    "PdfViewerDescription": "Open the PDF file in the component to read its contents",
    "PdfViewerNormalTitle": "Basic usage",
    "PdfViewerNormalIntro": "Load a PDF file by setting the <code>Url</code> parameter. Set <code>UseGoogleDocs</code> to use docs.google.com preview",
    "PdfViewerToastSuccessfulContent": "PDF document loaded successfully.",
    "PdfViewerToastNotSupportContent": "The browser does not support inline viewing of PDF files."
  },
  "BootstrapBlazor.Server.Components.Samples.VideoPlayers": {
    "VideoPlayersTitle": "VideoPlayer",
    "VideoPlayersNormalTitle": "Basic usage",
    "VideoPlayersNormalIntro": "",
    "VideoPlayersChangeURLTitle": "Switch playback resources",
    "VideoPlayersChangeURLIntro": "Use the Reload method to switch playback resources",
    "VideoPlayersTips": "Silent mode enabled by default, this is the way for autoplay follow the modern browser standards.",
    "MineType": "MineType",
    "ResourceUrl": "Resource Address",
    "MineTypeDesc": "Resource types",
    "ValueList": "(see footer)",
    "Width": "Width",
    "Height": "Height",
    "ShowControls": "Displays the control bar",
    "AutoPaly": "Autoplay",
    "Poster": "Set the cover resource, relative or absolute path",
    "SwitchResource": "Toggle playback resources",
    "SetPoster": "Set the cover",
    "ShowBar": "Wether show bar",
    "OnError": "Error callback"
  },
  "BootstrapBlazor.Server.Components.Components.PackageTips": {
    "Tips": "<p class=\"code-label\">Precautions</p><p>This component relies on <a href='https://www.nuget.org/packages?q={0}' target='_blank'><code>{0}</code></a>, which needs to reference its component package when using this component</p><p class=\"code-label\">Nuget Install</p><p>Use nuget.org to install <a href='https://www.nuget.org/packages?q={0}' target='_blank'><code>{0}</code></a> component</p>"
  },
  "BootstrapBlazor.Server.Components.Samples.FileViewers": {
    "Title": "FileViewer",
    "BaseUsageText": "Basic usage",
    "BaseUsageIntro": "Excel/Word file path or URL",
    "BaseUsageText2": "Reload file",
    "BaseUsageIntro2": "Using the Reload method",
    "Tips": "Currently only supports Excel(.xlsx) and Word(.docx) formats.<br/><b>Note</b>:<br/>If throw <code>The type initializer for 'Gdip' threw an exception.<code> error under Linux, please install libgdiplus and enable System. Drawing support.<br/>Enable System.Drawing support for non-Windows platforms in your project file (*.csproj), add:"
  },
  "BootstrapBlazor.Server.Components.Samples.CountUps": {
    "Title": "CountUp",
    "Description": "Animates a numerical value by counting to it",
    "CountUpsNormalTitle": "Normal",
    "CountUpsNormalIntro": "Set <code>Value</code>",
    "Value": "Obtain/Set value",
    "CountOption": "option value",
    "OnCompleted": "Counting end callback method",
    "StartValue": "number to start at",
    "Duration": "animation duration in seconds",
    "UseEasing": "ease animation",
    "DecimalPlaces": "number of decimal places",
    "Decimal": "decimal",
    "UseGrouping": "example: 1,000 vs 1000",
    "UseIndianSeparators": "example: 1,00,000 vs 100,000",
    "Separator": "grouping separator",
    "Prefix": "text prepended to result",
    "Suffix": "text appended to result",
    "SmartEasingThreshold": "smooth easing for large numbers above this if useEasing",
    "SmartEasingAmount": "amount to be eased for numbers above threshold",
    "EnableScrollSpy": "start animation when target is in view",
    "ScrollSpyDelay": "delay (ms) after target comes into view",
    "ScrollSpyOnce": "run only once",
    "Numerals": "numeral glyph substitution"
  },
  "BootstrapBlazor.Server.Components.Samples.EyeDroppers": {
    "EyeDropperTitle": "EyeDropper Service",
    "EyeDropperDescription": "The <code>EyeDropperService</code> provides a mechanism for creating an eyedropper tool. Using this tool, users can sample colors from their screens, including outside of the browser window.",
    "EyeDropperNormalTitle": "Basic usage",
    "EyeDropperNormalIntro": "Using the <code>EyeDropperService</code> application can start the eyedropper mode. Once started, the cursor changes to indicate to the user that the mode is active. The user can then either select a color from anywhere on the screen, or dismiss the eyedropper mode by pressing <kbd>Escape</kbd>",
    "EyeDropperNormalButtonText": "Pick",
    "EyeDropperTips1": "This is an experimental technology Check the <a href=\"https://developer.mozilla.org/en-US/docs/Web/API/EyeDropper_API#browser_compatibility\" target=\"_blank\">Browser compatibility table</a> carefully before using this in production. ",
    "EyeDropperTips2": "To prevent malicious websites from getting pixel data from a user's screen without them realizing, the EyeDropper API implements the following measures. Only be called in response to a user action (like a button click)",
    "EyeDropperTips3": "To help users notice the eyedropper mode more easily, it is made obvious by browsers. The normal mouse cursor disappears after a short delay and a magnifying glass appears instead. There is also a delay between when the eyedropper mode starts and when the user can select a pixel to ensure the user has had time to see the magnifying glass",
    "EyeDropperTips4": "Users are also able to cancel the eyedropper mode at any time (by pressing the <kbd>Escape</kbd> key)"
  },
  "BootstrapBlazor.Server.Components.Pages.Chats": {
    "ChatsTitle": "Azure OpenAI",
    "ChatsDescription": "Azure OpenAI service is a chatbot based on Azure cloud service, which can interact with users through dialogue",
    "ChatNormalTitle": "Azure OpenAI",
    "ChatNormalIntro": "Chat dialog by calling <code>IAzureOpenAIService</code> service method <code>GetChatCompletionsAsync</code>",
    "ChatUserTitle": "Chat session",
    "ChatUserMessageTitle": "Hello {0}",
    "ChatInfo": "Due to the lack of free interfaces in GPT, the number of experiences has been <b>{1}</b> times, and the current number is <b>{0}</b>"
  },
  "BootstrapBlazor.Server.Components.Samples.HtmlRenderers": {
    "Title": "Html Renderer",
    "SubTitle": "Render components into Html strings",
    "BaseUsageText": "Normal",
    "IntroText": "Some application scenarios require us to obtain the <code>Html</code> code fragment finally output by <code>Component</code>, and call the <code>RenderAsync</code> instance method of <code>IComponentHtmlRenderer</code> service"
  },
  "BootstrapBlazor.Server.Components.Samples.ContextMenus": {
    "ContextMenuItemCopy": "Copy",
    "ContextMenuItemPast": "Past",
    "ContextMenuTitle": "ContextMenu",
    "ContextMenuDescription": "Context menu that pops up when the user clicks the right mouse button",
    "ContextMenuNormalTitle": "Basic usage",
    "ContextMenuNormalIntro": "Right click on the row of <code>div</code> to pop up a context menu",
    "ContextMenuCustomUITitle": "Custom component",
    "ContextMenuCustomUIIntro": "Right click on the row of <code>Li</code> to pop up a context menu",
    "ContextMenuTableTitle": "Table",
    "ContextMenuTableIntro": "Right click on the <code>Table</code> to pop up a context menu",
    "ContextMenuTreeTitle": "Tree",
    "ContextMenuTreeIntro": "Right click on the <code>Tree</code> to pop up a context menu",
    "ContextMenuCallbackTitle": "ContextMenu Callback",
    "ContextMenuCallbackIntro": "By setting the <code>ContextMenu</code> component parameter <code>OnBeforeShowCallback</code>, you can get the callback event before the right-click menu pops up, which can be used for data preparation or render menus based on conditions",
    "ContextMenuDisabledTitle": "OnDisabledCallback",
    "ContextMenuDisabledIntro": "By setting the <code>ContextMenuItem</code> component parameter <code>OnDisabledCallback</code> callback method, you can set whether the current right-click option is disabled."
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews.Index": {
    "DockViewTitle": "DockView",
    "DockViewDescription": "A multi window layout manager for webapps",
    "DockViewIntro": "<p><code>DockView</code> component is wrapped <a href=\"https://github.com/golden-layout/golden-layout?wt.mc_id=DT-MVP-5004174\" target=\"_blank\">Golden Layout</a> lib，it is a <code>JavaScript</code> layout manager which enables you to layout components in a web page and re-arrange them with drag and drop. Its features include: </p><ul class=\"ul-demo\"><li>Native popup windows</li><li>Touch support</li><li>Support for application frameworks such as <code>Angular</code> and <code>Vue</code></li><li>Virtual components</li><li>Comprehensive API</li><li>Load and save layouts</li><li>Focus components</li><li>Completely themeable</li><li>Works in modern browsers (<code>Firefox</code>, <code>Chrome</code>)</li><li>Responsive design</li></ul>"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews.DockViewCol": {
    "DockViewColTitle": "DockView - Column",
    "DockViewColIntro": "Make the <code>DockView</code> vertical by setting <code>Type=\"DockContentType.Column\"</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews.DockViewRow": {
    "DockViewRowTitle": "DockView - Row",
    "DockViewRowIntro": "Make the <code>DockView</code> horizontal by setting <code>Type=\"DockContentType.Row\"</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews.DockViewStack": {
    "DockViewStackTitle": "DockView - Stack",
    "DockViewStackIntro": "Make the <code>DockView</code> group layout by setting <code>Type=\"DockContentType.Stack\"</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews.DockViewComplex": {
    "DockViewComplexTitle": "DockView - Complex",
    "DockViewComplexIntro": "Complex layouts can be achieved by combining and nesting <code>DockContentType</code> values"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews.DockViewLayout": {
    "DockViewLayoutTitle": "DockView - Custom Layout",
    "DockViewLayoutIntro": "Initialize the display layout of the control panel by setting the <code>LayoutConfig</code> property of <code>DockView</code>, and get the display layout of the panel by using the <code>GetLayoutConfig</code> method"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews.DockViewLock": {
    "DockViewLockTitle": "DockView - Lock",
    "DockViewLockIntro": "By setting the <code>IsLock</code> property of <code>DockView</code>, you can control whether all panels can be dragged."
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews.DockViewVisible": {
    "DockViewVisibleTitle": "DockView - Visible",
    "DockViewVisibleIntro": "Control whether to display the component by setting <code>Visible</code>, and use <code>OnVisibleStateChangedAsync</code> to set the panel closing callback delegate method"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews.DockViewNest": {
    "DockViewNestTitle": "DockView - Nested Layouts",
    "DockViewNestIntro": "<code>DockView</code> can be nested inside <code>DockComponent</code> and its label can be made invisible by setting <code>ShowHeader=\"false\"</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews2.Index": {
    "DockView2Title": "DockViewV2",
    "DockView2Description": "A multi window layout manager for webapps",
    "DockView2Intro": "<p><code>DockView</code> component is wrapped <a href=\"https://github.com/mathuo/dockview?wt.mc_id=DT-MVP-5004174\" target=\"_blank\">Golden Layout</a> lib，it is a <code>JavaScript</code> layout manager which enables you to layout components in a web page and re-arrange them with drag and drop. Its features include: </p><ul class=\"ul-demo\"><li>Native popup windows</li><li>Touch support</li><li>Support for application frameworks such as <code>Angular</code> and <code>Vue</code></li><li>Virtual components</li><li>Comprehensive API</li><li>Load and save layouts</li><li>Focus components</li><li>Completely themeable</li><li>Works in modern browsers (<code>Firefox</code>, <code>Chrome</code>)</li><li>Responsive design</li></ul>"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews2.DockViewCol": {
    "DockViewColTitle": "DockViewV2 - Column",
    "DockViewColIntro": "Make the <code>DockViewV2</code> layout vertically by setting <code>Type=\"DockContentType.Column\"</code> and initialize its panel height by setting <code>Height=\"240\"</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews2.DockViewRow": {
    "DockViewRowTitle": "DockViewV2 - Row",
    "DockViewRowIntro": "Make the <code>DockViewV2</code> layout horizontally by setting <code>Type=\"DockContentType.Row\"</code> and initialize its panel width by setting <code>Width=\"240\"</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews2.DockViewGroup": {
    "DockViewGroupTitle": "DockViewV2 - Group",
    "DockViewGroupIntro": "Make the <code>DockViewV2</code> group layout by setting <code>Type=\"DockContentType.Group\"</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews2.DockViewComplex": {
    "DockViewComplexTitle": "DockViewV2 - Complex",
    "DockViewComplexIntro": "Complex layouts can be achieved by combining and nesting <code>DockContentType</code> values"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews2.DockViewLayout": {
    "DockViewLayoutTitle": "DockViewV2 - Custom Layout",
    "DockViewLayoutIntro": "Initialize the display layout of the control panel by setting the <code>LayoutConfig</code> property of <code>DockView</code>, and get the display layout of the panel by using the <code>GetLayoutConfig</code> method"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews2.DockViewLock": {
    "DockViewLockTitle": "DockViewV2 - Lock",
    "DockViewLockIntro": "By setting the <code>IsLock</code> property of <code>DockViewV2</code>, you can control whether all panels can be dragged, and by setting <code>ShowLock</code>, you can control whether the lock button is displayed."
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews2.DockViewTitle": {
    "DockViewTitleTitle": "DockViewV2 - Title",
    "DockViewTitleIntro": "By setting <code>ShowTitleBar</code> to control whether to display the function button before the title, use <code>OnClickTitleBarCallback</code> to set the callback delegate method, and use <code>TitleTemplate</code> to customize complex functions"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews2.DockViewVisible": {
    "DockViewVisibleTitle": "DockViewV2 - Visible",
    "DockViewVisibleIntro": "Control whether to display the component by setting <code>Visible</code>, and use <code>OnVisibleStateChangedAsync</code> to set the panel closing callback delegate method"
  },
  "BootstrapBlazor.Server.Components.Samples.DockViews2.DockViewNest": {
    "DockViewNestTitle": "DockViewV2 - Nested Layouts",
    "DockViewNestIntro": "<code>DockViewV2</code> can be nested inside the <code>DockViewComponent</code> component. Its label can be made invisible by setting <code>ShowHeader=\"false\"</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.MouseFollowers": {
    "MouseFollowersTitle": "Mouse Follower",
    "MouseFollowersDescription": "create amazing and smooth effects for the mouse cursor on your website.。",
    "MouseFollowerNormalTitle": "Normal mode",
    "MouseFollowerNormalIntro": "A Mouse Follower pointer",
    "MouseFollowerTextTitle": "Text mode",
    "MouseFollowerTextIntro": "To display text in the cursor use this method",
    "MouseFollowerIconTitle": "Icon mode",
    "MouseFollowerIconIntro": "If you use SVG spritesheet in your project and want to display them in the cursor, then you can use this method. In this case, you need to specify the path to the SVG sprite in the options and set class names.",
    "MouseFollowerImageTitle": "Image mode",
    "MouseFollowerImageIntro": "This method allows you to show any picture in the cursor",
    "MouseFollowerVideoTitle": "Video mode",
    "MouseFollowerVideoIntro": "You can also play videos",
    "MouseFollowersFollowerMode": "MouseFollowerMode.Normal，MouseFollowerMode.Text ，MouseFollowerMode.Icon ，MouseFollowerMode.Image ，MouseFollowerMode.Video ",
    "MouseFollowersGlobalMode": "Global | Local, Mode",
    "MouseFollowersContent": "Text | icon | imagepath | videopath"
  },
  "BootstrapBlazor.Server.Components.Samples.ExportPdfButtons": {
    "ExportPdfButtonsTitle": "Convert specified webpage content to Pdf",
    "ExportPdfButtonsDescription": "Export <code>HTML</code> fragments or web page elements as <code>Pdf</code>",
    "ExportPdfButtonTips": "<code>IHtml2Pdf</code> service interfaces, please refer to <a target=\"_blank\" href=\"./html2pdf\">[Portal]</a>",
    "NormalTitle": "ElementId",
    "NormalIntro": "Export specified elements by <code>Id</code>",
    "SelectorTitle": "Selector",
    "SelectorIntro": "Export Pdf by specifying element <code>Selector</code>",
    "GroupBoxTitle": "Edit form",
    "ToastTitle": "Export Pdf",
    "ToastContent": "Exporting Pdf file",
    "ToastDownloadTitle": "Download Pdf",
    "ToastDownloadContent": "Pdf file {0} download successful",
    "AttributeElementId": "Specify the export Pdf element Id",
    "AttributeSelector": "Specify export Pdf element selector",
    "AttributeStyleTags": "Specify the export of Pdf element style sheets",
    "AttributeScriptTags": "Specify export Pdf element script",
    "AttributePdfFileName": "Specify the export Pdf file name",
    "AttributeAutoDownload": "Do you want to automatically download Pdf",
    "AttributeOnBeforeExport": "Callback delegate before exporting Pdf",
    "AttributeOnBeforeDownload": "Callback delegate before downloading Pdf",
    "AttributeOnAfterDownload": "Callback delegate after downloading Pdf"
  },
  "BootstrapBlazor.Server.Components.Samples.Html2Pdfs": {
    "Html2PdfTitle": "Html export to Pdf",
    "Html2PdfDescription": "Export Html fragments or web page elements as Pdf",
    "Html2PdfNote": "If you export too much content, <code>signalR</code> communication interruption may be triggered. Please adjust the <code>HubOptions</code> configuration.",
    "Html2PdfElementTitle": "Export DOM",
    "Html2PdfElementIntro": "Export <code>Html</code> element content as <code>Pdf</code> stream",
    "Html2PdfElementDesc": "Call <code>IHtml2Pdf</code> service instance method <code>PdfStreamFromHtmlAsync</code>. export <code>html</code> to <code>Pdf</code>",
    "ExportPdfButtonTitle": "ExportPdfButton",
    "ExportPdfButtonIntro": "Export the specified <code>Id</code> element content as <code>Pdf</code> by setting <code>ExportPdfButton</code> component parameter <code>ElementId</code>",
    "ExportButtonText": "Export Pdf",
    "ToastTitle": "Export Pdf",
    "ToastContent": "Export table by id to pdf success.",
    "Tips1": "Introduce",
    "Tips2": "service",
    "PackageIntro": "Component default not implemented <code>IHtml2Pdf</code>, please refer to the package <code>BootstrapBlazor.Html2Pdf</code> package",
    "Html2PdfIntro1": "1. Retrieve web page elements through the <code>getHTML</code> script <code>HTML</code> code",
    "Html2PdfIntro2": "2. Generate web page code using a template using <code>HTML</code> code. <code>Note</code> the style sheet required for the web page needs to be provided <code>_content/BootstrapBlazor/css/bootstrap.blazor.bundle.min.css</code>",
    "Html2PdfIntro3": "3. Convert web pages to Pdf using the <code>IHtml2Pdf</code> service instance method <code>PdfStreamFromHtmlAsync</code>",
    "Html2PdfIntro4": "4. <code>IHtml2Pdf</code> Implement service usage <code>PuppeterSharp</code> convert web pages to <code>Pdf</code>, download <code>Chromium</code> runtime when running for the first time, which may be slow under poor network conditions"
  },
  "BootstrapBlazor.Server.Components.Samples.Live2DDisplays": {
    "Live2DDisplayTitle": "Live2D Widget",
    "Live2DDisplayDescription": "Live2D Widget plugin based on pixi live2d display, supporting all versions of Live2D models.",
    "Live2DDisplayNormalTitle": "Usage",
    "Live2DDisplayNormalIntro": "By adjusting the default parameter options, achieve dynamic changes in the model.",
    "Live2DDisplayNormalTips": "Add the following code to Program.cs.",
    "Live2DDisplaysSource": "Model data source, CDN path or local path.",
    "Live2DDisplaysScale": "Model Display Scale.",
    "Live2DDisplaysXOffset": "The X-axis offset of the model on the canvas canvas canvas.",
    "Live2DDisplaysYOffset": "The Y-axis offset of the model on the canvas canvas canvas.",
    "Live2DDisplaysIsDraggable": "Can the model be dragged (not yet implemented).",
    "Live2DDisplaysAddHitAreaFrames": "Display the model by clicking on the area box.",
    "Live2DDisplaysPosition": "The default display location enumeration for the model.",
    "Live2DDisplaysBackgroundColor": "Canvas palette background color.",
    "Live2DDisplaysBackgroundAlpha": "Is the canvas canvas canvas background transparent."
  },
  "BootstrapBlazor.Server.Components.Samples.SlideButtons": {
    "SlideButtonTitle": "SlideButton",
    "SlideButtonIntro": "After clicking the button, a function menu and other information will pop up, mostly used for displaying secondary functions",
    "SlideButtonHeaderText": "Foo List",
    "BaseUsageText": "Basic usage",
    "BaseUsageIntro": "Provide secondary function menu data items by setting <code>Items</code>",
    "ShowHeaderText": "ShowHeader",
    "ShowHeaderIntro": "By setting <code>ShowHeader</code> to control whether a title bar is displayed, the default value is <code>false</code>",
    "AutoCloseText": "IsAutoClose",
    "AutoCloseIntro": "By setting <code>IsAutoClose</code> to control whether to click on areas outside the pop-up window to automatically close the pop-up window",
    "SlideButtonItemsText": "SlideButtonItems",
    "SlideButtonItemsIntro": "Directly enter the <code>SlideButtonItems</code> collection as the data source on the page",
    "BodyTemplateText": "BodyTemplate",
    "BodyTemplateIntro": "Customize the pop-up data by setting <code>BodyTemplate</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.DialButtons": {
    "DialButtonTitle": "DialButton",
    "DialButtonIntro": "After clicking the button, a function menu and other information will pop up, mostly used for displaying secondary functions",
    "BaseUsageText": "Basic usage",
    "BaseUsageIntro": "By setting <code>Placement</code> value for set the dial button popup direction"
  },
  "BootstrapBlazor.Server.Components.Samples.CountButtons": {
    "Title": "CountButton",
    "Description": "It is often used to force a period of execution time logic, such as waiting for input 60 seconds after sending a verification code",
    "BaseUsageText": "Basic usage",
    "BaseUsageIntro": "Set the countdown time through the <code>Count</code> parameter value, which defaults to <b>5</b> seconds",
    "TextTitle": "Timing Text",
    "TextIntro": "Set countdown text through <code>CountText</code> parameter values",
    "Text": "Send code",
    "CountButtonText": "Try again in {0} seconds",
    "Count": "count down",
    "CountText": "timing text",
    "CountTextCallback": "timing text callback method"
  },
  "BootstrapBlazor.Server.Components.Samples.QueryBuilders": {
    "QueryBuilderTitle": "QueryBuilder",
    "QueryBuilderSubTitle": "Can be used for generating forms and table filtering conditions",
    "QueryBuilderNormalTitle": "Basic usage",
    "QueryBuilderNormalIntro": "Build filter conditions directly in the <code>Razor</code> file through <code>QueryGroup</code> <code>QueryColumn</code>",
    "QueryBuilderHeaderTitle": "Display control buttons",
    "QueryBuilderHeaderIntro": "Turn off the control button by setting <code>ShowHeader=\"false\"</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.WebSerials": {
    "WebSerialTitle": "Web Serial",
    "WebSerialIntro": "Serial port is a widely used communication protocol that enables data transmission between computers",
    "WebSerialDescription": "allow websites to communicate with peripherals connected to a user's computer. It provides the ability to connect to devices that are required by the operating system to communicate via the serial API",
    "WebSerialNormalTitle": "Basic usage",
    "WebSerialNormalIntro": "By calling the <code>ISerialService</code> service, you can connect, open, close, read and write to the serial port device.",
    "BaudRateText": "BaudRate",
    "DataBitsText": "DataBits",
    "StopBitsText": "StopBits",
    "ParityTypeText": "ParityType",
    "BufferSizeText": "BufferSize",
    "FlowControlTypeText": "FlowControlType",
    "RequestPortText": "Request",
    "OpenPortText": "Open",
    "ClosePortText": "Close",
    "WriteButtonText": "Write",
    "WriteDataText": "Send Data",
    "ReadDataText": "Receive Data",
    "CRLFText": "CRLF",
    "HEXText": "HEX",
    "LoopSendText": "Loop",
    "LoopIntervalText": "Interval(ms)",
    "WebSerialTipsLi1": "This feature is available only in secure contexts (HTTPS)",
    "WebSerialTipsLi2": "This is an experimental technology Check the <a href=\"https://developer.mozilla.org/en-US/docs/Web/API/SerialPort#browser_compatibility\" target=\"_blank\">Browser compatibility table</a> carefully before using this in production",
    "WebSerialTipsTitle": "Note: The <code>ISerialPort</code> interface instance inherits <code>IAsyncDisposable</code>. When switching routes, you need to release its resources by calling its <code>DisposeAsync</code>",
    "NotSupportSerialTitle": "Get Port",
    "NotSupportSerialContent": "The current browser does not support serial port operations. Please change to Edge or Chrome browser.",
    "OpenPortSerialTitle": "Open Port",
    "OpenPortSerialContent": "Failed to open the serial port",
    "GetSignalsButtonText": "Signals",
    "GetInfoButtonText": "Infos"
  },
  "BootstrapBlazor.Server.Components.Samples.MindMaps": {
    "MindMapTitle": "Mind Map",
    "MindMapDescription": "Used to display specific Json format data as a Web mind map",
    "MindMapNormalTitle": "Basic usage",
    "MindMapLayout": "Layout",
    "MindMapTheme": "Theme",
    "Sample1ButtonText": "Example 1",
    "Sample2ButtonText": "Example 2: week arrangement",
    "ExportButtonText": "ExportPng",
    "ExportJsonButtonText": "ExportJSON",
    "GetFullDataButtonText": "GetFullData",
    "GetDataButtonText": "GetData",
    "SetDataButtonText": "SetData",
    "ResetButtonText": "Reset",
    "FitButtonText": "Fit",
    "Scale1ButtonText": "ZoomOut",
    "Scale2ButtonText": "ZoomIn",
    "CustomButtonText": "Custom",
    "Data": "Data",
    "Export": "Download as file",
    "GetData": "Get data",
    "SetData": "Import data",
    "Reset": "Reset",
    "SetTheme": "switch themes",
    "SetLayout": "switch layout",
    "MindMapExtensionDesc": "<p>Because <code>MindMap</code> encapsulates many <b>api</b> methods, the component library cannot fully encapsulate them, so extension methods are provided. For example, if you need a combination button to use the component, you can call your own <code>Javascript</code> through your own code to control <code>MindMap</code></p><ul><li>The custom button calls the component instance method <code>MindMap.Execute(\"clickCustom\", \"args1\")</code>, assuming the parameter is <code>args1</code></li><li>Your own <code>Javascript</code> is responsible for handling the <code>clickCustom</code> event</li><li><code>this</code> in the <code>clickCustom</code> method is the current <code>MindMap</code> instance, and you can call any of its methods to develop your own business</li></ul><p>The complete example is as follows:</p>"
  },
  "BootstrapBlazor.Server.Components.Samples.Mermaids": {
    "MermaidTitle": "Mermaid",
    "MermaidDescription": "This component renders Markdown-inspired text definitions to dynamically create and modify diagrams.",
    "MermaidNormalTitle": "Basic usage",
    "MermaidNormalIntro": "Mermaid basic style",
    "MermaidStyleTitle": "Custom styles",
    "MermaidStyleIntro": "",
    "MermaidType": "Type",
    "DownloadPdfButtonText": "Export Pdf"
  },
  "BootstrapBlazor.Server.Components.Samples.Speeches.WebSpeeches": {
    "WebSpeechTitle": "Web Speech Api",
    "WebSpeechSubTitle": "Provide speech recognition/synthesis services using browser interface functions",
    "WebSpeechNormalTitle": "Speech Synthesizer",
    "WebSpeechNormalIntro": "After entering the text, select the corresponding language to read aloud",
    "WebSpeechSpeakButtonText": "Speak",
    "WebSpeechStopButtonText": "Stop",
    "WebSpeechText": "Welcome blazor",
    "WebSpeechRecognitionTitle": "Speech Recognition",
    "WebSpeechRecognitionIntro": "Input voice through microphone for voice recognition",
    "WebSpeechRecognitionButtonText": "Recognition",
    "WebSpeechRecognitionContinuousTitle": "Real-time speech recognition",
    "WebSpeechRecognitionContinuousIntro": "Real-time speech recognition by setting the <code>WebSpeechRecognitionOption</code> parameter <code>Continuous=\"true\" InterimResults=\"true\"</code>",
    "WebSpeechRecognitionContinuousButtonText": "Recognition",
    "RecognitionErrorNotAllowed": "The user agent disallowed any speech input from occurring for reasons of security, privacy or user preference",
    "RecognitionErrorNoSpeech": "No speech was detected",
    "RecognitionErrorAborted": "Speech input was aborted in some manner, perhaps by some user-agent-specific behavior like a button the user can press to cancel speech input",
    "RecognitionErrorAudioCapture": "Audio capture failed",
    "RecognitionErrorNetwork": "Network communication required for completing the recognition failed",
    "RecognitionErrorNotSupported": "The browser does not support speech recognition",
    "RecognitionErrorServiceNotAllowed": "The user agent disallowed the requested speech recognition service, either because the user agent doesn't support it or because of reasons of security, privacy or user preference. In this case it would allow another more suitable speech recognition service to be used instead",
    "RecognitionErrorBadGrammar": "There was an error in the speech recognition grammar or semantic tags, or the chosen grammar format or semantic tag format was unsupported",
    "RecognitionErrorLanguageNotSupported": "The user agent does not support the language specified in the value of lang attribute of the SpeechRecognition object. The set of supported languages is browser-dependent, and from frontend code there is no way to programmatically determine what languages a user's browser supports for speech recognition"
  },
  "BootstrapBlazor.Server.Components.Samples.ListGroups": {
    "ListGroupsTitle": "ListGroup",
    "ListGroupsSubTitle": "Mostly used for data browsing and selection",
    "ListGroupsTips": "<li>Set the list box to display the dataset through <code>Items</code></li><li>Set the list box data item display text by <code>GetItemDisplayText</code></li><li>Due to the internal height of the component being set to <code>100%</code>, the parent container will be automatically filled when used. When the parent container is set to a height, a scroll bar will automatically appear on the list items. In this example, set the height of the external container element code>list-group-demo</code> to <code>280px</code></li>",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Set datasource by <code>Items</code>",
    "HeaderTextTitle": "Header",
    "HeaderTextIntro": "By set <code>HeaderText</code> for header text",
    "HeaderText": "Header Title",
    "HeaderTemplateTitle": "Header Template",
    "HeaderTemplateIntro": "Set <code>HeaderTemplate</code> for custom Header",
    "AttrItems": "the collection of data source",
    "AttrValue": "current value",
    "AttrHeaderTemplate": "the template of Header",
    "AttrHeaderText": "the title of Header",
    "AttrItemTemplate": "the template of Item",
    "AttrOnClickItem": "the callback on click item",
    "AttrOnDoubleClickItem": "the callback on double click item",
    "GetItemDisplayText": "the callback on get item display text"
  },
  "BootstrapBlazor.Server.Components.Samples.Marquees": {
    "MarqueeTitle": "Marquee component",
    "MarqueeDescription": "The component is mostly used to create scrolling text, usually for news scrolling, advertising scrolling, etc.",
    "MarqueeBase": "Usage",
    "MarqueeBaseIntro": "Adjusting the text scrolling effect through parameters"
  },
  "BootstrapBlazor.Server.Components.Samples.Stacks": {
    "Title": "Stack Layout",
    "BasicTitle": "Basic",
    "BasicIntro": "Lets you arrange its subcomponents in a horizontal or vertical stack",
    "RowMode": "Row",
    "ColumnMode": "Column",
    "Mode": "mode",
    "Justify": "justify-content",
    "AlignItems": "align-items",
    "IsWrap": "wrap",
    "IsReverse": "reverse",
    "AlignSelf": "align-self",
    "StackItemGrowShrinkDesc": "<code>StackItem</code> 子项还有两个控制方式:",
    "StackItemGrowShrinkLi": "<li>Use <code>.flex-grow-*</code> utilities to toggle a flex item’s ability to grow to fill available space. In the example below, the <code>.flex-grow-1</code> elements uses all available space it can, while allowing the remaining two flex items their necessary space.</li><li>Use <code>.flex-shrink-*</code> utilities to toggle a flex item’s ability to shrink if necessary. In the example below, the second flex item with <code>.flex-shrink-1</code> is forced to wrap its contents to a new line, “shrinking” to allow more space for the previous flex item with <code>.w-100</code>.</li>",
    "AttrIsRow": "Flex direction",
    "AttrIsWrap": "Change how flex items wrap in a flex container",
    "AttrIsReverse": "Start the horizontal or vertical direction from the opposite side.",
    "AttrJustify": "Change the alignment of flex items on the main axis",
    "AttrAlignItems": "Change the alignment of flex items on the cross axis",
    "AttrChildContent": "Child content render fragment"
  },
  "BootstrapBlazor.Server.Components.Samples.Segmenteds": {
    "Title": "Segmented",
    "SubTitle": "displaying multiple options and user can select a single option",
    "BasicTitle": "Basic",
    "BasicIntro": "select a single option",
    "IsDisabledTitle": "Disable",
    "IsDisabledIntro": "Make one of them prohibited",
    "ItemTemplateTitle": "Custom Rendering",
    "ItemTemplateIntro": "Use <code>ItemTemplate</code> to custom-render SegmentedItems",
    "IconTitle": "Icon",
    "IconIntro": "Set the Icon for the segmented item",
    "SizeTitle": "Size",
    "SizeIntro": "Set <code>Size</code> defines three sizes (large, default, small) with heights of <code>40px</code>, <code>32px</code>, and <code>4px</code>2",
    "SegmentItemTitle": "SegmentItem",
    "SegmentItemIntro": "Write <code>Razor</code> in <code>Razor</code>",
    "BlockTitle": "Block",
    "BlockIntro": "<code>block</code> property will make the Segmented fit to its parent width",
    "ItemsAttr": "Data source",
    "SizeAttr": "Set the component size",
    "IsDisabledAttr": "Whether to disable, Default is fasle",
    "ValueAttr": "The value of segment",
    "ValueChangedAttr": "This event fires when the segment selector options change",
    "OnValueChanged": "Callback for the Value changed",
    "ItemTemplateAttr": "The template of segement item",
    "ChildContent": "The template of segment content",
    "IsBlockAttr": "Whether fit the parent width",
    "ShowTooltipAttr": "Whether show to tooltip for segment item",
    "ChildContentAttr": "Child content template"
  },
  "BootstrapBlazor.Server.Components.Samples.CodeEditors": {
    "Title": "Code Editor",
    "BasicTitle": "Basic Use",
    "BasicIntro": "Basic Use",
    "Value": "Gets or sets the value of the input",
    "Theme": "Theme of the editor",
    "Language": "Language used by the editor: csharp, JavaScript, ...",
    "ValueChanged": "Gets or sets a callback that updates the bound value"
  },
  "BootstrapBlazor.Server.Components.Samples.JSRuntimeExtensions": {
    "JSTips": "Before use, import the module according to the following code",
    "OpenUrlTitle": "OpenUrl",
    "OpenUrlIntro": "Open url in a Window",
    "OpenUrlTips": "Default to:",
    "IsMobileTitle": "GetIsMobileDevice",
    "IsMobileIntro": "Determine userAgent through regular expressions, indicating whether the current device is a mobile device",
    "EvalTitle": "JS Eval",
    "EvalIntro": "Dynamically run Java Script code within the current scope using the Eval function.",
    "FunctionTitle": "JS Function",
    "FunctionIntro": "Dynamically run Java Script code within the global scope through the Function function.",
    "OpenUrlAttr": "Open a url in a specific window",
    "IsMobileAttr": "Determine whether the current device is a mobile device",
    "EvalAttr": "Call Eval method",
    "FunctionAttr": "Call Function method"
  },
  "BootstrapBlazor.Server.Components.Samples.Clipboards": {
    "ClipboardTitle": "ClipboardService",
    "ClipboardIntro": "Clipboard service! Please note that it can only be run under <code>HTTPS</code> secure connections or used in the localhost development environment.",
    "ClipboardMessage": "Text content: {0}, copied to clipboard",
    "ClipboardGetTextMessage": "Read clipboard text content: {0}",
    "ClipboardCopyMethod": "Copy text to the clipboard method",
    "ClipboardGetMethod": "Method for reading clipboard content",
    "ClipboardGetTextMethod": "Method for reading clipboard text content"
  },
  "BootstrapBlazor.Server.Components.Samples.Gantts": {
    "Title": "A simple, interactive, modern web Gantt gallery with dragging, resizing, dependencies, and timescales",
    "BasicTitle": "Basic usage",
    "BasicDesc": "Drag tasks across the timeline, resize to change duration, click to view more information",
    "ViewModeTitle": "Change the view",
    "ViewModeDesc": "Switch view mode call <code>change_view_mode</code>",
    "AttrItems": "Data Source",
    "AttrOnClick": "The callback that is triggered when you click on a task",
    "AttrOnDataChanged": "A callback that is triggered when a task is dragged",
    "AttrOnProgressChanged": "A callback that is triggered when a task progress is dragged",
    "AttrOption": "Configuration items",
    "AttrMethod": "Change the Gantt chart view"
  },
  "BootstrapBlazor.Server.Components.Samples.ImageCroppers": {
    "Title": "Image cropper",
    "ImageCropperNormalText": "Basic usage",
    "ImageCropperNormalIntro": "The URL of the image can be set by setting the <code>Url</code> parameter. The cropping ratio can be set by setting <code>ImageCropperOption.AspectRatio=16/9f</code>. <code>1</code> is a square.",
    "ImageCropperRoundText": "Round",
    "ImageCropperRoundIntro": "Set the cropping mode to circular by setting the <code>IsRound</code> parameter",
    "ImageCropperResetText": "Reset",
    "ImageCropperReplaceText": "Replace",
    "ImageCropperRotateText": "Rotate",
    "ImageCropperEnableText": "Enable",
    "ImageCropperDisabledText": "Disabled",
    "ImageCropperClearText": "Clear",
    "AttributesImageCropperUrl": "Image Url",
    "AttributesImageCropperIsDisabled": "Whether the component is disabled",
    "AttributesImageCropperOnCropAsync": "Crop result callback method",
    "AttributesImageCropperOptions": "Crop option",
    "AttributesImageCropperShape": "Crop shape"
  },
  "BootstrapBlazor.Server.Components.Samples.Translators": {
    "TranslatorsTitle": "Azure Translator",
    "TranslatorsDescription": "Converts characters or letters of a source language to the corresponding characters or letters of a target language.",
    "TranslatorsNormalTitle": "Basic usage",
    "TranslatorsNormalIntro": "Call <code>TranslateAsync</code> method for convert target language",
    "TranslatorsInjectService": "Inject Service",
    "TranslatorsTranslate": "Translate"
  },
  "BootstrapBlazor.Server.Components.Samples.BarcodeGenerators": {
    "Title": "Barcode generator",
    "BarcodeGeneratorNormalText": "Barcode Generator",
    "BarcodeGeneratorNormalIntro": "Renders a one-dimensional barcode in the corresponding format by giving the <code>Value</code> value",
    "OnCompletedAsync": "Barcode generation (svg) callback method",
    "Options": "Barcode options",
    "Format": "Barcode format",
    "Value": "Barcode value",
    "Width": "Width of a single bar",
    "Height": "Height of the barcode",
    "DisplayValue": "Display barcode text",
    "Text": "Overwrite the displayed text",
    "FontOptions": "Font style",
    "Font": "Font",
    "TextAlign": "Text Alignment",
    "TextPosition": "Text Position",
    "TextMargin": "Text Margin",
    "FontSize": "Font size",
    "Background": "Background color",
    "LineColor": "Line Color",
    "Margin": "Margin",
    "MarginTop": "Top margin",
    "MarginBottom": "Bottom margin",
    "MarginLeft": "Left margin",
    "MarginRight": "Right margin",
    "Flat": "Bottom line is flat (EAN8/EAN13 only)"
  },
  "BootstrapBlazor.Server.Components.Samples.ZipArchives": {
    "ZipArchivesTitle": "IZipArchive",
    "ZipArchivesSubTitle": "Component built-in service that can compress files or folders into archive files with specified names",
    "ZipArchiveInjectText": "Inject service",
    "ZipArchiveFileText": "Archive file",
    "ZipArchiveDirectoryText": "Archive directory",
    "ZipArchiveExtractText": "Extract"
  },
  "BootstrapBlazor.Server.Components.Samples.Tutorials.Translation.Translator": {
    "File": "File",
    "Hide": "Hide",
    "Language": "Language",
    "Load": "Load",
    "LoadContent": "All localization items loaded successfully",
    "LoadTitle": "Load",
    "Operation": "Operation",
    "Save": "Save",
    "SaveContent": "All localization items saved successfully",
    "SaveTitle": "Save",
    "Show": "Show",
    "ToolboxCardTitle": "Tools",
    "Translate": "Translate"
  },
  "BootstrapBlazor.Server.Components.Samples.SelectTables": {
    "Title": "Table Select",
    "Intro": "The dropdown box is a table used to display the selection requirements for complex types",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Suitable for candidates with a relatively large amount of information, presenting information using <code>Table</code>",
    "NormalDesc": "You can use <code>IsClearable</code> to control whether to display the clear button. The default value is <code>false</code>",
    "ColorTitle": "Color",
    "ColorIntro": "Change component border color by setting <code>Color</code>",
    "IsDisabledTitle": "Disabled",
    "IsDisabledIntro": "When you set the <code>IsDisabled</code> property value to <code>true</code>, the component suppresses select",
    "TemplateTitle": "Value Template",
    "TemplateIntro": "Present customized display content by customizing the <code>Template</code>",
    "AttributeItems": "Data source table display content set",
    "AttributeTableColumns": "Table Display Column Set",
    "AttributeColor": "Color",
    "AttributeIsDisabled": "Is it disabled",
    "AttributeShowAppendArrow": "Is the right extended small arrow displayed",
    "AttributeGetTextCallback": "Get display value callback method",
    "AttributePlaceHolder": "Placeholder",
    "AttributeHeight": "Table height",
    "AttributeTableMinWidth": "The min width of Table",
    "AttributeTemplate": "Display Template",
    "ValidateFormTitle": "ValidateForm",
    "ValidateFormIntro": "Intercept data when the value is empty",
    "SortableTitle": "Sort/Filter",
    "SortableIntro": "Enable sorting and filtering functions by setting <code>Sortable</code> <code>Filterable</code> in <code>TableColumn</code>, just like the component <code>Table</code>",
    "SearchTitle": "Sort/Filter",
    "SearchIntro": "By setting <code>TableColumn</code> <code>Searchable</code> to enable column searchability, just like the component <code>Table</code>, by setting <code>IsPagination</code> <code>ShowSearch</code> to enable pagination and table search functions"
  },
  "BootstrapBlazor.Server.Components.Samples.SelectTables+SelectTableMode": {
    "Foo.Required": "{0} is required."
  },
  "BootstrapBlazor.Server.Components.Samples.SelectObjects": {
    "Title": "Table-Object",
    "Intro": "Dropdown boxes are used to display the selection requirements for complex types for any component",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Use built in <code>ListView</code> component to select images",
    "NormalDesc": "You can use <code>IsClearable</code> to control whether to display the clear button. The default value is <code>false</code>",
    "MinWidthTitle": "Min-Width",
    "MinWidthIntro": "Change the minimum width of the dropdown box by setting the <code>DropdownMinWidth</code> value",
    "HeightTitle": "Height",
    "HeightIntro": "Change the height of the dropdown box by setting the <code>Height</code> value",
    "CustomComponentTitle": "Custom Components",
    "CustomComponentIntro": "Any component can be placed in a dropdown box, and a callback is required for assignment or window closure"
  },
  "BootstrapBlazor.Server.Components.Samples.BrowserFingers": {
    "BrowserFingerTitle": "Browser fingerprint",
    "BrowserFingerIntro": "Obtain the client browser fingerprint by calling the <code>IBrowserFingerService</code> service instance method <code>GetFingerCodeAsync</code>. The fingerprint is consistent in privacy mode",
    "GetFingerCodeAsync": "Method for obtaining fingerprints",
    "GetClientHubIdAsync": "Method for obtaining client hub Id"
  },
  "BootstrapBlazor.Server.Components.Samples.SvgEditors": {
    "SvgEditorTitle": "SvgEditor",
    "BasicTitle": "Svg Editor",
    "BasicIntro": "Use svg editor"
  },
  "BootstrapBlazor.Server.Components.Samples.FlipClocks": {
    "FlipClocksTitle": "FlipClock",
    "FlipClocksDescription": "Used for website timing or countdown",
    "CountText": "Counter",
    "CountIntro": "By setting <code>ViewMode=\"FlipClockViewMode.Count\"</code> to enable the timer function, the start time can be set using <code>StartValue</code>",
    "IsCountDownText": "CountDown",
    "IsCountDownIntro": "By setting <code>ViewMode=\"FlipClockViewMode.CountDown\"</code> for the countdown function, the start time can be set using <code>StartValue</code>. Trigger the <code>OnCompletedAsync</code> callback method when the countdown ends",
    "CustomText": "Custom Text",
    "CustomIntro": "Customize the display content by setting parameters",
    "Custom": "Parameter Settings",
    "Height": "Height",
    "FontSize": "Font Size",
    "CardHeight": "Card Height",
    "CardWidth": "Card Width",
    "CardMargin": "Card Margin",
    "CardGroupMargin": "Card Group Margin",
    "ShowDay_Description": "Show day",
    "ShowHour_Description": "Show hour",
    "ShowMinute_Description": "Show minute",
    "ShowMonth_Description": "Show month",
    "ShowYear_Description": "Show year",
    "ViewMode_Description": "View mode",
    "StartValue_Description": "Start time",
    "OnCompletedAsync_Description": "Callback when timer completed",
    "Height_Description": "Height",
    "BackgroundColor_Description": "Background color",
    "FontSize_Description": "Font size",
    "CardWidth_Description": "Card width",
    "CardHeight_Description": "Card height",
    "CardColor_Description": "Card font color",
    "CardBackgroundColor_Description": "Card background color",
    "CardDividerHeight_Description": "Card divider height",
    "CardDividerColor_Description": "Card divider color",
    "CardMargin_Description": "Card margin",
    "CardGroupMargin_Description": "Card group margin"
  },
  "BootstrapBlazor.Server.Components.Samples.Icons.BootstrapIcons": {
    "Title": "Bootstrap Icons",
    "BaseUsageText": "Free, high quality, open source icon library",
    "Icons": "For icon list, please visit <a href=\"https://icons.getbootstrap.com\" target=\"_blank\">[portal]</a>",
    "P1": "Extending the Component Package by Reference",
    "P2": "After adding the stylesheet file link open icon"
  },
  "BootstrapBlazor.Server.Components.Samples.Icons.FluentSystemIcons": {
    "Title": "Fluent System Icons",
    "BaseUsageText": "Microsoft Free Open Source Icon Library",
    "Icons": "For icon list, please visit <a href=\"https://react.fluentui.dev/?path=/docs/icons-catalog--docs\" target=\"_blank\">[portal]</a>",
    "P1": "Extending the Component Package by Reference",
    "P2": "After adding the stylesheet file link open icon"
  },
  "BootstrapBlazor.Server.Components.Samples.Icons.ElementIcon.ElementIcons": {
    "ElementIconTitle": "Element-plus Icons",
    "ElementIconDescription": "Free, high quality, open source icon library",
    "CopiedTooltipText": "Copied",
    "P1": "1. After referencing the extension package, add the package built-in style file to open the icon",
    "P2": "2. Enable css isolation and automatically reference component styles after compilation",
    "P3": "Please copy the following code segement",
    "Icons": "For icon list, please visit <a href=\"https://element.eleme.cn/#/zh-CN/component/icon\" target=\"_blank\">[portal]</a>"
  },
  "BootstrapBlazor.Server.Components.Samples.Icons.FAIcons": {
    "Title": "Font Awesome Icons",
    "BaseUsageText": "<code>BootstrapBlazor</code> uses <code>Font Awesome</code> latest version as the built-in icon library. All icons are as follows",
    "SwitchButtonTextOff": "Click to copy",
    "SwitchButtonTextOn": "Show Copy Dialog",
    "P1": "Extending the Component Package by Reference",
    "P2": "After adding the stylesheet file link open icon",
    "CopiedTooltipText": "Copied",
    "Icons": "For icon list, please visit <a href=\"https://fontawesome.com/icons\" target=\"_blank\">[portal]</a>"
  },
  "BootstrapBlazor.Server.Components.Samples.Icons.MaterialDesignIcons": {
    "Title": "MaterialDesign Icons",
    "BaseUsageText": "Material Design system icons are simple, modern and user-friendly",
    "Icons": "For icon list, please visit <a href=\"https://pictogrammers.com/library/mdi\" target=\"_blank\">[portal]</a>",
    "P1": "Extending the Component Package by Reference",
    "P2": "After adding the stylesheet file link open icon"
  },
  "BootstrapBlazor.Server.Components.Samples.Icons.IconPark.IconParks": {
    "IconParkTitle": "ByteDance Svg Icon Lib",
    "IconParkDescription": "It has covered all platforms of ByteDance commercial product series and has been introduced and used by 12 platforms as the underlying code, ensuring the uniformity of icon style and cognition.",
    "CopiedTooltipText": "Copied",
    "P1": "1. After referencing the extension package, add the package built-in style file to open the icon",
    "P2": "2. Enable css isolation and automatically reference component styles after compilation",
    "P3": "Please copy the following code segement",
    "Icons": "For icon list, please visit <a href=\"https://iconpark.oceanengine.com/official\" target=\"_blank\">[portal]</a>"
  },
  "BootstrapBlazor.Server.Components.Samples.Icons.AntDesign.AntDesignIcons": {
    "AntDesignIconTitle": "AntDesign Svg Icon Lib",
    "AntDesignIconDescription": "Semantic vector graphics.",
    "CopiedTooltipText": "Copied",
    "P1": "1. After referencing the extension package, add the package built-in style file to open the icon",
    "P2": "2. Enable css isolation and automatically reference component styles after compilation",
    "P3": "Please copy the following code segement",
    "Icons": "For icon list, please visit <a href=\"https://ant.design/components/icon\" target=\"_blank\">[portal]</a>"
  },
  "BootstrapBlazor.Server.Components.Samples.Icons.OctIcon.OctIcons": {
    "OctIconTitle": "Oct Svg Icon Lib",
    "OctIconDescription": "A scalable set of icons handcrafted with <3 by GitHub",
    "CopiedTooltipText": "Copied",
    "P1": "1. After referencing the extension package, add the package built-in style file to open the icon",
    "P2": "2. Enable css isolation and automatically reference component styles after compilation",
    "P3": "Please copy the following code segement",
    "Icons": "For icon list, please visit <a href=\"https://primer.style/foundations/icons\" target=\"_blank\">[portal]</a>"
  },
  "BootstrapBlazor.Server.Components.Samples.Icons.UniverIcon.UniverIcons": {
    "UniverIconTitle": "Univer Svg Icon Lib",
    "UniverIconDescription": "Icons used by Univer",
    "CopiedTooltipText": "Copied",
    "P1": "1. After referencing the extension package, add the package built-in style file to open the icon",
    "P2": "2. Enable css isolation and automatically reference component styles after compilation",
    "P3": "Please copy the following code segement",
    "Icons": "For icon list, please visit <a href=\"https://univer.ai/en-US/icons\" target=\"_blank\">[portal]</a>"
  },
  "BootstrapBlazor.Server.Components.Samples.BootstrapBlazorIcons": {
    "IconsTitle": "Icon",
    "IconsDescription": "Supports font icons, vector SVG icons, and Image pictures",
    "FATitle": "Font Icons",
    "FAIntro": "You can specify the icon style by setting <code>Name</code>",
    "SvgTitle": "Svg Icons",
    "SvgIntro": "Load the <code>Svg</code> sprite image by setting <code>IsSvgSprites=\"true\"</code> <code>Url</code> and specify its <code>Id</code> value by <code>Name</code>",
    "ImageTitle": "Image",
    "ImageIntro": "Customize the displayed content through the <code>ChildContent</code> template",
    "Icons": "For icon list, please visit <a href=\"https://icons.getbootstrap.com\" target=\"_blank\">[portal]</a>"
  },
  "BootstrapBlazor.Server.Components.Samples.DriverDotnetJs": {
    "DriverJsPopoverTitleText": "Animated Tour Example",
    "DriverJsPopoverContentText1": "Here is the menu. Click it and a detailed example will appear on the right panel.",
    "DriverJsPopoverContentText2": "Here is the component introduction. You can switch the icon theme by clicking the radio button below",
    "DriverJsPopoverContentText3": "This is the sample area, where specific examples are shown",
    "DriverJsPopoverContentText4": "Here is the example area",
    "DriverJsPopoverContentText5": "Click here to get started",
    "DriverJsTitle": "drive the user's focus across the page",
    "DriverJsSubtitle": "built to be highly configurable. You can configure the driver globally, or per step. You can also configure the driver on the fly, while it’s running",
    "DriverJsNormalTitle": "Basic usage",
    "DriverJsNormalIntro": "Simple configuration with a click of a button to start user step-by-step guidance",
    "DriverJsNormalDesc": "Disable the animation effect by setting the <code>DriverJsConfig</code> parameter <code>Animate=\"false\"</code>",
    "DriverJsPopoverTitle": "Popover",
    "DriverJsPopoverIntro": "By setting the <code>DriverJsPopover</code> component to configure <code>Popover</code> related configuration information",
    "DriverJsPopoverDesc": "For detailed parameter information, please see <a href=\"https://driverjs.com/docs/configuration\" target=\"_blank\">[Portal]</a>",
    "DriverJsPopoverStyleTitle": "Custom Popover",
    "DriverJsPopoverStyleIntro": "By setting <code>PopoverClass=\"driverjs-theme\"</code> custome the popover UI",
    "DriverJsDestroyTitle": "Destroy callback",
    "DriverJsDestroyIntro": "Callback method before destruction <code>OnBeforeDestroyAsync</code> or callback method for destruction <code>OnDestroyedAsync</code>",
    "DriverJsDestroyDesc": "You can use the <code>OnBeforeDestroyAsync</code> callback to add some logic when the user tries to exit the tour. Prevent destruction when the callback method <code>OnBeforeDestroyAsync</code> returns not <code>NULL</code> string. You can also prevent the user from exiting the tour using <code>AllowClose</code> option. This option is useful when you want to force the user to complete the tour before they can exit.",
    "DriverJsHighlightTitle": "Highlight",
    "DriverJsHighlightIntro": "By calling the <code>DriverJs</code> component instance method <code>Highlight</code>, the specified element is highlighted and focused."
  },
  "BootstrapBlazor.Server.Components.Samples.IntersectionObservers": {
    "IntersectionObserverTitle": "IntersectionObserver",
    "IntersectionObserverDescription": "Scrolling makes the element visible to trigger component callbacks, mostly used for data lazy loading functions",
    "IntersectionObserverBaseUsage": "Basic usage",
    "IntersectionObserverNormalIntro": "Monitor element visibility changes by setting <code>RootSelector</code> <code>RootMargin</code> <code>Threshold</code> parameter values",
    "IntersectionObserverNormalDescription": "This example loads 100 pictures. The invisible pictures load the default pictures (cached). When you scroll to the visible area, you load the real pictures.",
    "IntersectionObserverLoadTitle": "Load",
    "IntersectionObserverLoadIntro": "After scrolling to the bottom, a loading more indicator appears, notifying the background to load data",
    "IntersectionObserverLoadDesc1": "By setting <code>Threshold=\"1.0\"</code> to constrain the loading indicator to be fully visible, perform the load more action",
    "IntersectionObserverLoadDesc2": "Ensure that the loading indicator visibility is always checked by setting <code>AutoUnobserve=\"false\"</code> to prevent automatic removal of the check once it becomes visible",
    "IntersectionObserverLoadDesc3": "Simulate network delay of 1s by setting the <code>OnLoadMoreAsync</code> method",
    "IntersectionObserverVisibleTitle": "Threshold",
    "IntersectionObserverVisibleIntro": "By setting <code>Threshold</code> specifying a ratio of intersection area to total bounding box area for the observed target",
    "IntersectionObserverVisibleDesc": "In this example, <code>Threshold=\"1\"</code> is set, which means that the trigger condition is to play when the video is fully visible, otherwise it will automatically pause",
    "IntersectionObserverVisiblePauseLabel": "Video Paused",
    "IntersectionObserverVisiblePlayLabel": "Video Playing",
    "IntersectionObserverThresholdTitle": "IntersectionRatio",
    "IntersectionObserverThresholdIntro": "After setting <code>Threshold</code>, the intersection ratio between the observed element and the root element is obtained through the callback parameter <code>IntersectionObserveEntry</code> attribute <code>IntersectionRatio</code>",
    "IntersectionObserverThresholdDesc": "Drag the scroll bar of the <code>div</code> below to observe data changes",
    "AttributeUseElementViewport": "The element that is used as the viewport for checking visibility of the target",
    "AttributeRootMargin": "Margin around the root. Can have values similar to the CSS margin property",
    "AttributeThreshold": "Either a single number or an array of numbers which indicate at what percentage of the target's visibility the observer's callback should be executed",
    "AttributeAutoUnobserveWhenIntersection": "Whether to automatically cancel the observation when element visible",
    "AttributeAutoUnobserveWhenNotIntersection": "Whether to automatically cancel the observation when element invisible",
    "AttributeOnIntersectingAsync": "The callback when intersecting",
    "AttributeChildContent": "Child component",
    "LoadMoreTitle": "LoadMore Component",
    "LoadMoreIntro": "By setting the <code>LoadMore</code> component parameter <code>IsLoading</code> to control the loading state, the <code>OnLoadMoreAsync</code> callback method loads more data",
    "LoadMoreDesc": "<p>In this example, the loading indicator is displayed by setting <code>CanLoading</code> to <code>true</code>, and the <b>No More Data</b> prompt text is displayed when loading is complete.</p><ul class=\"ul-demo\"><li>Customize the UI for loading more through <code>LoadingTemplate</code></li><li>Customize the UI displayed when there is no more data through <code>NoMoreTemplate</code></li><li>Set the indicator text displayed when there are no more add-ons through the <code>NoMoreText</code> parameter</li></ui>"
  },
  "BootstrapBlazor.Server.Components.Samples.SortableLists": {
    "SortableListTitle": "SortableList",
    "SortableListDescription": "Reorderable drag-and-drop lists",
    "SortableListNormalTitle": "Simple list example",
    "SortableListNormalIntro": "Get the root element by setting the <code>RootSelector</code> parameter of the <code>SortableListOption</code>",
    "SortableListGroupTitle": "Group",
    "SortableListGroupIntro": "By setting the <code>SortableListOption</code> parameter <code>Group</code> to specify the group name, elements between different groups can be dragged",
    "SortableListCloneTitle": "Clone",
    "SortableListCloneIntro": "Set the <code>SortableListOption</code> parameter <code>Clone</code> to set whether to clone the current element when dragging",
    "SortableListDisableSortTitle": "Disable Sort",
    "SortableListDisableSortIntro": "By setting the <code>SortableListOption</code> parameter <code>Sort</code> to set whether to sort the current element when dragging",
    "SortableListHandlerTitle": "Handler",
    "SortableListHandlerIntro": "By setting the <code>SortableListOption</code> parameter <code>Handle</code> to specify the draggable element, the entire element is dragged when the mouse drags the icon",
    "SortableListFilterTitle": "Filter",
    "SortableListFilterIntro": "By setting the <code>SortableListOption</code> parameter <code>Filter</code> to set conditional drag elements, the red element in the example cannot be dragged",
    "SortableListNestTitle": "Nest",
    "SortableListNestIntro": "By nesting the <code>SortableList</code> component",
    "SortableListMultiTitle": "Multiple Drag",
    "SortableListMultiIntro": "By setting the <code>SortableListOption</code> parameter <code>MultiDrag</code> you can select multiple items before dragging",
    "SortableListTableTitle": "Table Row",
    "SortableListTableIntro": "By setting the <code>SortableListOption</code> parameter <code>RootSelector</code> to specify the drag root element as <code>tbody</code>, you can drag rows.",
    "SortableListClassTitle": "Because <code>SortableList</code> is a container component, its contents are all custom components and cannot be styled. You need to set the style yourself according to the actual situation.",
    "SortableListClassLi1": "Chosen item style <code>sortable-chosen</code>",
    "SortableListClassLi2": "The default style of drag element clones is <code>sortable-ghost</code> and can be customized through <code>GhostClass</code>",
    "SortableListClassLi3": "Drag elements to swap items. Default style <code>sortable-swap-highlight</code> can be customized by <code>SwapClass</code>",
    "SortableListSwapTitle": "Swap",
    "SortableListSwapIntro": "By setting the <code>Swap</code> parameter of <code>SortableListOption</code>, the drag item and the target item are swapped.",
    "SortableListOnAddTitle": "Multiple SortableList",
    "SortableListOnAddIntro": "Get the <code>SortableList</code> to which the dragged item belongs by setting the <code>FromId</code> parameter of the <code>SortableEvent</code>. In this example, the elements in the three areas can be dragged arbitrarily",
    "AttributeSortableListOption": "SortableListOption instance",
    "AttributeOnAdd": "Callback method when adding elements",
    "AttributeOnUpdate": "Callback method when updating elements",
    "AttributeOnRemove": "Callback method when deleting elements"
  },
  "BootstrapBlazor.Server.Components.Samples.WinBoxes": {
    "WinBoxTitle": "WinBox",
    "WinBoxDescription": "Components that emulate Windows window styles",
    "WinBoxNormalTitle": "Basic usage",
    "WinBoxNormalIntro": "By setting the <code>WinBoxOption</code> parameter value, a pop-up window is created and displayed.",
    "AttributeRoot": "Pop-up container root node",
    "AttributeTitle": "Pop-up title",
    "AttributeClass": "Pop-up style",
    "AttributeBackground": "Popup background color",
    "AttributeBorder": "Pop-up border",
    "AttributeIcon": "Pop-up title icon",
    "OnCreateAsync": "Create a pop-up callback method",
    "OnShownAsync": "Pop-up window visible callback method",
    "OnHideAsync": "Hide pop-up window callback method",
    "OnFocusAsync": "Pop-up window gets focus callback method",
    "OnBlurAsync": "Pop-up window loses focus callback method",
    "OnFullscreenAsync": "Pop-up full screen callback method",
    "OnRestoreAsync": "Restore pop-up window callback method",
    "OnMaximizeAsync": "Maximize pop-up window callback method",
    "OnMinimizeAsync": "Minimize pop-up window callback method",
    "OnCloseAsync": "Close pop-up window callback method"
  },
  "BootstrapBlazor.Server.Components.Samples.Players": {
    "PlayersTitle": "Player",
    "PlayersDescription": "A simple, accessible and customisable media player for Video, Audio, YouTube and Vimeo",
    "PlayersTips": "<code>Player</code> supports <b>Video</b>，<b>Audio</b>，<b>Youtube</b> and <b>Vimeo</b>",
    "PlayersNormalTitle": "Basic usage",
    "PlayersNormalIntro": "The callback method <code>OnInitAsync</code> sets the configuration instance <code>PlayerOption</code> required by the component. The player is set through the <code>PlayerOption</code> property value.",
    "PlayersHlsTitle": "HLS",
    "PlayersHlsIntro": "Enable <code>Hls</code> support by setting <code>IsHls=\"true\"</code>",
    "PlayersAudioTitle": "Audio Player",
    "PlayersAudioIntro": "Play audio files by setting <code>Mode=\"PlayerMode.Audio\"</code>",
    "PlayersYouTubeTitle": "YouTube",
    "PlayersYouTubeIntro": "Play <code>YouTube</code> videos by setting the <code>Mode=\"PlayerSources\"</code> parameter <b>Provider=\"youtube\"</b>",
    "PlayersVimeoTitle": "Vimeo",
    "PlayersVimeoIntro": "Play <code>Vimei</code> videos by setting <code>Mode=\"PlayerSources\"</code> parameter <b>Provider=\"vimeo\"</b>"
  },
  "BootstrapBlazor.Server.Data.CustomValidataModel": {
    "Name": "Name",
    "Telephone1": "Telephone 1",
    "Telephone2": "Telephone 2",
    "CanNotBeTheSame": "Telephone 1 and Telephone 2 can not be the same"
  },
  "BootstrapBlazor.Server.Data.CustomValidateCollectionModel": {
    "Telephone1": "Telephone 1",
    "Telephone2": "Telephone 2"
  },
  "BootstrapBlazor.Server.Components.Samples.IFrames": {
    "IFrameTitle": "IFrame",
    "IFrameDescription": "Allows embedding documents, videos and interactive media in a page. By doing so, a secondary page can be displayed on the main page. The iFrame element allows including content from other sources, it can integrate content anywhere on the page.",
    "IFrameNormalTitle": "Basic usage",
    "IFrameNormalIntro": "Use the <code>Src</code> parameter to set the URL of other website pages and inline their content into this page",
    "AttributeSrc": "Frame load url",
    "AttributeData": "Data passed",
    "AttributeOnPostDataAsync": "Passed back data"
  },
  "BootstrapBlazor.Server.Components.Samples.RDKits": {
    "RDKitTitle": "RDKit",
    "RDKitDescription": "A powerful cheminformatics and molecule rendering toolbelt for Blazor, Powered by RDKit",
    "RDKitNormalTitle": "Basic usage",
    "RDKitNormalIntro": "Set the molecular formula through <code>Smiles</code> and draw the component",
    "RDKitSmartsTitle": "Smarts",
    "RDKitSmartsIntro": "By setting the <code>Smarts</code> value, parts of the molecular formula can be highlighted",
    "RDKitSmartsLabel": "Show Smarts",
    "RDKitSizeTitle": "Size",
    "RDKitSizeIntro": "Set the width and height of the molecular formula by setting the <code>Width</code> and <code>Height</code> values"
  },
  "BootstrapBlazor.Server.Components.Samples.SmilesDrawers": {
    "SmilesDrawerTitle": "SmilesDrawer",
    "SmilesDrawerDescription": "A small, highly performant JavaScript component for parsing and drawing SMILES strings",
    "SmilesDrawerNormalTitle": "Basic usage",
    "SmilesDrawerNormalIntro": "Set the molecular formula through <code>Smiles</code> and draw the component",
    "SmilesDrawerSizeTitle": "Size",
    "SmilesDrawerSizeIntro": "Set the width and height of the molecular formula by setting the <code>Width</code> and <code>Height</code> values"
  },
  "BootstrapBlazor.Server.Components.Samples.Affixs": {
    "AffixTitle": "Affix",
    "AffixIntro": "Fix the element to a specific visible area",
    "AffixNormalTitle": "Basic usage",
    "AffixNormalIntro": "Affix is fixed at the top of the page by default",
    "AffixPositionTitle": "Position",
    "AffixPositionIntro": "The parameter <code>Position</code> controls whether the top or bottom is fixed, and the <code>Offset</code> value sets the offset to the top or bottom"
  },
  "BootstrapBlazor.Server.Components.Samples.Watermarks": {
    "WatermarkTitle": "Watermark",
    "WatermarkIntro": "Add specific text or patterns to the page",
    "WatermarkNormalTitle": "Basic usage",
    "WatermarkNormalIntro": "Use the <code>Text</code> property to set a string to specify the watermark text",
    "WatermarkDescription": "<p>How to add a watermark globally</p><p>You can add a watermark component to the template page <code>MainLayout</code> and set <code>IsPage=\"true\"</code></p>"
  },
  "BootstrapBlazor.Server.Data.AttributeItem": {
    "Name": "Name",
    "Description": "Description",
    "Type": "Type",
    "ValueList": "ValueList",
    "DefaultValue": "DefaultValue"
  },
  "BootstrapBlazor.Server.Data.EventItem": {
    "Name": "Name",
    "Description": "Description",
    "Type": "Type"
  },
  "BootstrapBlazor.Server.Components.Pages.CacheList": {
    "CacheListTitle": "CacheManager",
    "CacheListIntro": "Manage the component library internal cache through the <code>ICacheManager</code> interface method",
    "CacheListKey": "Key",
    "CacheListValue": "Value",
    "CacheListExpiration": "Expiration",
    "CacheListAction": "Action",
    "CacheListRefresh": "Refresh",
    "CacheListDelete": "Delete",
    "CacheListDeleteAll": "Clear",
    "CacheListCount": "Total {0} Entry"
  },
  "BootstrapBlazor.Server.Components.Samples.Typeds": {
    "TypedTitle": "Typed",
    "TypedIntro": "Enter in any string, and watch it type at the speed you've set, backspace what it's typed, and begin a new sentence for however many strings you've set.",
    "NormalTitle": "Text",
    "NormalIntro": "Set the text to be displayed by setting the <code>Text</code> parameter",
    "TypedOptionsTitle": "TypedOptions",
    "TypedOptionsIntro": "Customize typing speed, delay, and other settings by setting the properties of the <code>TypedOptions</code> parameter"
  },
  "BootstrapBlazor.Server.Components.Samples.Html2Images": {
    "Html2ImageTitle": "Html to Image",
    "Html2ImageIntro": "Convert any area web page into an image service",
    "Html2ImageElementTitle": "ToPng",
    "Html2ImageElementIntro": "Get the <b>base64-encoded</b> image by calling the <code>GetDataAsync</code> method",
    "Html2ImageButtonText": "Image",
    "Html2ImageDesc": "Since the underlying library is <a href=\"https://github.com/bubkoo/html-to-image?wt.mc_id=DT-MVP-5004174\" target=\"_blank\">html-to-image</a>, if you encounter any problems during actual use, please refer to the project <a href=\"https://github.com/bubkoo/html-to-image/issues?wt.mc_id=DT-MVP-5004174\" target=\"_blank\">Issue</a>"
  },
  "BootstrapBlazor.Server.Components.Samples.UniverSheets": {
    "UniverSheetTitle": "UniverSheet",
    "UniverSheetIntro": "Encapsulates the core spreadsheet component of the open source office suite ​Univer​, providing a high-performance, scalable online spreadsheet solution",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Set your own plugins by setting the <code>Plugins</code> parameter",
    "NormalDesc1": "Push data to the spreadsheet by calling the instance method <code>PushDataAsync</code>. Click the <b>Save Data</b> button to get the serialized data of the table data",
    "NormalDesc2": "Click the <b>Push Data</b> button to push data to the table, and click the first icon on the <b>Toolbar</b> to get data from the server.",
    "PushButtonText": "Push",
    "SaveButtonText": "Save",
    "ToastOnReadyTitle": "Notification",
    "ToastOnReadyContent": "The sheet is ready for push data.",
    "PluginTitle": "Plugins",
    "PluginIntro": "Set custom plugins by setting the <code>Plugins</code> parameter"
  },
  "BootstrapBlazor.Server.Components.Samples.Tutorials.OnlineSheet": {
    "ToastOnReadyTitle": "Collaboration Notification",
    "ToastOnReadyContent": "After 4 seconds the table is updated by other writers to change the content"
  },
  "BootstrapBlazor.Server.Components.Samples.OtpInputs": {
    "OtpInputsTitle": "OtpInput",
    "OtpInputsDescription": "A secure verification password box based on OTP (One-Time Password) that is limited to one-time use and has a time limit",
    "OtpInputsTips": "OTP (One Time Password, abbreviated as OTP): This is a security measure used to generate a unique password for each login or transaction. This component is used in conjunction with <code>ITotpService</code> <code>IHotpService</code> to greatly improve security.",
    "OtpInputsNormalTitle": "Basic usage",
    "OtpInputsNormalIntro": "Control the password type or length by setting parameters such as <code>Type</code>",
    "OtpInputsValidateFormTitle": "ValidateForm",
    "OtpInputsValidateFormIntro": "When the password is not provided, click the Submit button, the password box will be displayed in red and it will be prompted that it cannot be empty."
  },
  "BootstrapBlazor.Server.Components.Samples.OtpServices": {
    "Title": "ITotpService",
    "SubTitle": "An implementation TOTP RFC 6238 and HOTP RFC 4226 Authenticator service.",
    "BaseUsageTitle": "Basic usage",
    "BaseUsageIntro": "By calling the <code>Compute</code> method of the <code>ITotpService</code> service instance, you can get the password in the current time window. By calling the <code>Instance.GetRemainingSeconds</code> method, you can display the remaining validity time of the current password. In this example, the progress bar is used for dynamic display."
  },
  "BootstrapBlazor.Server.Components.Samples.Tutorials.BarCodeGenerator": {
    "SelectType": "Select content type",
    "Preview": "Preview",
    "TextDesc": "Use your iPhone's camera or the QR code scanning function to scan the QR code below, then open the <code>Safari</code> browser and search for the current text using the default search engine.",
    "UrlDesc": "Use your iPhone's camera or the QR code scanning function to scan the QR code below, then open the <code>Safari</code> browser and open the current address",
    "WiFiDesc": "Use your iPhone's camera or the QR code scanner to scan the QR code below to automatically join the <code>WiFi</code> network.",
    "EmailDesc": "Use your iPhone's camera or the QR code scanner to scan the QR code below, then open the <code>Email</code> app to send an email."
  },
  "BootstrapBlazor.Server.Components.Samples.VideoDevices": {
    "VideoDeviceTitle": "IVideoDevice",
    "VideoDeviceIntro": "Get video equipment operation capabilities through this service",
    "BaseUsageTitle": "Basic usage",
    "BaseUsageIntro": "Perform different operations by calling different API methods",
    "VideoDeviceRequestText": "List",
    "VideoDeviceOpenText": "Open",
    "VideoDeviceCloseText": "Close",
    "VideoDeviceCaptureText": "Capture",
    "VideoDeviceDownloadText": "Download"
  },
  "BootstrapBlazor.Server.Components.Samples.AudioDevices": {
    "AudioDeviceTitle": "IAudioDevice",
    "AudioDeviceIntro": "Get audio equipment operation capabilities through this service",
    "BaseUsageTitle": "Basic usage",
    "BaseUsageIntro": "Perform different operations by calling different API methods",
    "AudioDeviceRequestText": "List",
    "AudioDeviceOpenText": "Record",
    "AudioDeviceCloseText": "Stop",
    "AudioDevicePauseText": "Pause",
    "AudioDeviceResumeText": "Resume",
    "AudioDeviceDownloadText": "Download"
  },
  "BootstrapBlazor.Server.Components.Samples.Vditors": {
    "VditorTitle": "Vditor Markdown",
    "VditorSubTitle": "Vditor is a browser-based Markdown editor that supports WYSIWYG, instant rendering (similar to Typora), and split-screen preview mode.",
    "BaseUsageTitle": "Basic usage",
    "BaseUsageIntro": "Set the content displayed by the component by setting the <code>Value</code> value, and set the component configuration information by setting the <code>Options</code> parameter"
  },
  "BootstrapBlazor.Server.Components.Samples.OfficeViewers": {
    "OfficeViewerTitle": "Office Document Viewer",
    "OfficeViewerDescription": "This component previews Office documents using Microsoft's online document preview feature",
    "OfficeViewerNormalTitle": "Basic Usage",
    "OfficeViewerNormalIntro": "Set the document URL for preview by configuring the <code>Url</code> value",
    "OfficeViewerToastSuccessfulContent": "Office document loaded successfully"
  },
  "BootstrapBlazor.Server.Components.Samples.Sockets.ManualReceives": {
    "ReceivesTitle": "Manual Receive",
    "ReceivesDescription": "Receive data through call ReceiveAsync and display it",
    "NormalTitle": "Basic usage",
    "NormalIntro": "After the connection is established, the data sent by the server is received through the <code>ReceiveAsync</code> callback method. The data problems of sticking and splitting packets need to be handled by the client."
  },
  "BootstrapBlazor.Server.Components.Samples.Sockets.AutoReceives": {
    "ReceivesTitle": "Socket Receive",
    "ReceivesDescription": "Receive data through ReceivedCallBack and display it",
    "NormalTitle": "Basic usage",
    "NormalIntro": "After connecting, the timestamp data sent by the server is automatically received through the <code>ReceivedCallBack</code> callback method"
  },
  "BootstrapBlazor.Server.Components.Samples.Sockets.Adapters": {
    "AdaptersTitle": "DataPackageAdapter",
    "AdaptersDescription": "Receive data through the data adapter and display",
    "NormalTitle": "Basic usage",
    "NormalIntro": "After the connection is established, the timestamp data sent by the server is received through the <code>ReceivedCallBack</code> callback method of the <code>DataPackageAdapter</code> data adapter."
  },
  "BootstrapBlazor.Server.Components.Samples.Sockets.AutoReconnects": {
    "AutoReconnectsTitle": "DataPackageAdapter",
    "AutoReconnectsDescription": "Receive data through the data adapter and display",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Enable automatic reconnection by setting <code>IsAutoReconnect</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.Sockets.DataEntities": {
    "DataEntityTitle": "Socket Auto Entity",
    "DataEntityDescription": "After receiving the communication data, it is automatically converted into the entity class required by the business",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Enable automatic data conversion through the <code>DataPropertyConverterAttribute</code> attribute",
    "ConfigTitle": "DataType Converter",
    "ConfigIntro": "Use the <code>ConfigureDataConverters</code> method to map the entity class and automatically convert the received data"
  },
  "BootstrapBlazor.Server.Components.Samples.NetworkMonitors": {
    "NetworkMonitorTitle": "NetworkMonitor",
    "NetworkMonitorDescription": "Use the browser native API <code>navigator.connection</code> to display the current network status in real time",
    "NormalTitle": "Basic usage",
    "NormalIntro": "Use the component <code>NetworkMonitorIndicator</code> to display indicator lights of different colors when the network status changes, and display the network status details when the mouse moves over it",
    "IndicatorLi1": "Green: Very good network (4G)",
    "IndicatorLi2": "Yellow: Average network (3G)",
    "IndicatorLi3": "Red: Poor network (2G)",
    "IndicatorLi4": "Gray: Offline"
  },
  "BootstrapBlazor.Server.Components.Samples.Toolbars": {
    "ToolbarsTitle": "Toolbar",
    "ToolbarSubTitle": "ToolBar component is a container for buttons or other application-specific tools",
    "NormalTitle": "Normal",
    "NormalIntro": ""
  },
  "BootstrapBlazor.Server.Components.Samples.OpcDa": {
    "OpcDaTitle": "OpcDa Server",
    "OpcDaDescription": "Connect to OpcDa Server to obtain PLC real-time data",
    "OpcDaNormalTitle": "Basic usage",
    "OpcDaNormalIntro": "Get an instance by injecting the service <code>IOpcDaServer</code> and call the <code>Read</code> method to get the PLC Tag value."
  },
  "BootstrapBlazor.Server.Components.Samples.Navbars": {
    "NavbarTitle": "Navbar",
    "NavbarDescription": "A powerful, responsive navigation header, the navbar. Includes support for branding, navigation, and more",
    "NormalTitle": "Basic usage",
    "NormalIntro": "By setting <code>NavbarBrand</code> <code>NavbarToggleButton</code> <code>NavbarCollapse</code> <code>NavbarGroup</code> <code>NavbarItem</code> to layout its internal elements"
  },
  "BootstrapBlazor.Server.Components.Samples.TaskBoard": {
    "TaskBoardTitle": "Task DashBoard",
    "TaskBoardIntro": "Background task dashboard",
    "TaskBoardNormalTitle": "Basic usage",
    "TaskBoardNormalIntro": "This component provides detailed information about background task schedule trigger."
  },
  "BootstrapBlazor.Server.Components.Samples.Dom2Images": {
    "Dom2ImageTitle": "Dom2Image",
    "Dom2ImageIntro": "Export HTML snippets as images",
    "Dom2ImageNormalTitle": "Basic usage",
    "Dom2ImageNormalIntro": "Convert the node to an image by specifying a <code>Selector</code>",
    "Dom2ImageDesc": "Since the underlying framework uses <a href=\"https://github.com/zumerlab/snapdom?wt.mc_id=DT-MVP-5004174\" target=\"_blank\">SnapDOM</a> , if you encounter any problems during actual use, please refer to the project <a href=\"https://github.com/zumerlab/snapdom/issues?wt.mc_id=DT-MVP-5004174\" target=\"_blank\">Issue</a>",
    "Dom2ImageButtonText": "Convert",
    "Dom2ImageDownloadText": "Download",
    "Dom2ImageFullText": "Capture"
  },
  "BootstrapBlazor.Server.Components.Samples.SelectRegions": {
    "RegionTitle": "Region",
    "RegionDescription": "A simple region cascade selector, provide 4 levels Chinese administrative division data",
    "RegionNormalTitle": "Basic usage",
    "RegionNormalIntro": "Use grouping to switch the selection mode for displaying administrative areas"
  },
  "BootstrapBlazor.Server.Components.Samples.SelectCities": {
    "CityTitle": "City Selector",
    "CityDescription": "Provides a city selector classified by province",
    "CityNormalTitle": "Basic usage",
    "CityNormalIntro": "Select a city from the drop-down box"
  },
  "BootstrapBlazor.Server.Components.Samples.SelectProvinces": {
    "ProvinceTitle": "Province Selector",
    "ProvinceDescription": "Provide a drop-down box to select the province",
    "ProvinceNormalTitle": "Basic usage",
    "ProvinceNormalIntro": "Select the province from the drop-down box",
    "ProvinceMultipleTitle": "Multiple",
    "ProvinceMultipleIntro": "Enable multiple selection mode by setting <code>IsMultiple</code>"
  },
  "BootstrapBlazor.Server.Components.Samples.HikVisions": {
    "Title": "HikVision",
    "SubTitle": "",
    "BasicUsageTitle": "Basic usage",
    "BasicUsageIntro": "Operations are performed by calling the <code>HikVision</code> component instance method."
  }
}
