protected override async Task OnAfterRenderAsync(bool firstRender) { if (!firstRender) { return; } Task.Run(() => { Thread.Sleep(1000); _vendorSelector = new FlareSelector <string>( OUIModel.Options, multiple: true, minFilterValueLength: 3, emptyPlaceholder: "Add an OUI to whitelist (ex: Apple, Cisco Systems Inc.)", isDisabled: () => _processing || !AllowCreateRuleForOthers() ); _vendorSelector.OnSelect += selected => { UpdateVendorList(selected.Select(v => v.ID).ToList()); }; _doPostLoad = true; _onPostLoad.Trigger(); _onRowChange.Trigger(); }); await _whitelistTable !.LoadSessionValues(); }
protected override void OnInitialized() { _fs1 = new FlareSelector <int>(() => Contact.PreGeneratedOptions, false, clearOnSelect: false, minFilterValueLength: 2, minFilterValueNotice: "Type 2+ characters", emptyPlaceholder: "Click to select a person", monospace: false, isDisabled: () => { return(false); }); _fs2 = new FlareSelector <int>(() => Contact.PreGeneratedOptions, true, clearOnSelect: false, emptyPlaceholder: "Click to select a person"); }
public void Run() { IEnumerable <IOption <int> > data = Generate.Contacts(15000).Select(v => v.NameOption); Console.WriteLine("Data generated"); _fs1 = new FlareSelector <int>(() => data, true); // while (true) // { // Bench1(); // Bench2(); // // Bench3(); // // Console.WriteLine(); // } }
protected override void OnInitialized() { LoadUsers(); _user = ((ContraWebAuthStateProvider)ContraWebAuthStateProvider).User; if (_user == null) { throw new Exception("User is not authenticated; access to this page should not have been permitted."); } _userTable = new FlareTable <User>( () => _users ?? new List <User>()); _userTable.RegisterColumn(nameof(User.Username)); _userTable.RegisterColumn(nameof(User.Role)); _userTable.RegisterColumn("_Edit", sortable: false, filterable: false, displayName: "", width: "56px"); _userTable.RegisterColumn("_Remove", sortable: false, filterable: false, displayName: "", width: "82px"); // _newUsernameDebouncer = new Debouncer <string>(value => { Console.WriteLine("--"); _newUsername = value; _newUserValidator.Validate(); InvokeAsync(StateHasChanged); }, _newUsername); _newPasswordDebouncer = new Debouncer <string>(value => { _newPassword = value; _newUserValidator.Validate(); InvokeAsync(StateHasChanged); }, _newPassword); // _newRoleSelector = new FlareSelector <string>( () => UserRole.Options(), false ); _newRoleSelector.OnSelect += selected => { _newRole = UserRole.NameToUserRole(selected.FirstOrDefault()?.ID); _newUserValidator.Validate(); InvokeAsync(StateHasChanged); }; _editedRoleSelector = new FlareSelector <string>( () => UserRole.Options(_editing?.Role), false, isDisabled: () => _editing?.Username == _user.Username); _editedRoleSelector.OnSelect += selected => { _editedRole = UserRole.NameToUserRole(selected.FirstOrDefault()?.ID); _editUserValidator.Validate(); InvokeAsync(StateHasChanged); }; // _newMACsSelector = new EditableList( validator: ValidateMAC, placeholder: "Add a MAC", transformer: Utility.FormatMAC ); _newMACsSelector.OnUpdate += macs => _user !.MACs = macs.Select(v => PhysicalAddress.Parse(Utility.CleanMAC(v))).ToList(); _editMACsSelector = new EditableList( validator: ValidateMAC, placeholder: "Add a MAC", transformer: Utility.FormatMAC ); _editMACsSelector.OnUpdate += macs => _editing !.MACs = macs.Select(v => PhysicalAddress.Parse(Utility.CleanMAC(v))).ToList(); // _newUserValidator = new Validator <ValidationResult>(() => { if (string.IsNullOrEmpty(_newUsername)) { return new[] { new Validation <ValidationResult>(ValidationResult.Invalid, "Username is required") } } ; User?found = UserModel.Find(_newUsername).Result; if (found != null) { return new[] { new Validation <ValidationResult>(ValidationResult.Invalid, "Username is already registered") } } ; if (string.IsNullOrEmpty(_newPassword)) { return new[] { new Validation <ValidationResult>(ValidationResult.Invalid, "Password is required") } } ; if (_newRole == UserRole.Roles.Undefined || _newRole == UserRole.Roles.Restricted) { return new[] { new Validation <ValidationResult>(ValidationResult.Invalid, "Role is invalid") } } ; return(new[] { new Validation <ValidationResult>(ValidationResult.Valid, "User is valid") }); }); _editUserValidator = new Validator <ValidationResult>(() => { // if (string.IsNullOrEmpty(_editedPassword)) // return new Validation(ValidationResult.Invalid, "Password is required"); if (_editedRole == UserRole.Roles.Undefined || _editedRole == UserRole.Roles.Restricted) { return new[] { new Validation <ValidationResult>(ValidationResult.Invalid, "Role is invalid") } } ; return(new[] { new Validation <ValidationResult>(ValidationResult.Valid, "Edits are valid") }); }); _newUserValidator.Validate(); // BuildHeaders(); }
protected override void OnInitialized() { var altUser = new User(); // _testUser = new User { Boolean = true, UserID = 12345, Name = "A.J.", PhoneNumber = "111.222.3344", Email = "[email protected]!99999999999999999999999999999999999999999999999999999999999999999! spaced out words n stuff", StartDate = DateTime.Now, StartTime = DateTime.Now, DepartmentID = 2, DepartmentType2 = 2, }; // _structure = Common.Structure.Instantiate(JSRuntime); // _structure.GetMemberInstance <string>("Name").OnValueUpdateUntyped += (v, m, mv) => Console.WriteLine($"Structure<User>." + m.ID + " -> " + v); _structure.GetMemberInstance <string>("Email").OnValueUpdateUntyped += (v, m, mv) => Console.WriteLine($"Structure<User>." + m.ID + " -> " + v); _structure.OnMemberValueUpdate += (s, v, m) => { Console.WriteLine($"Structure<User>." + v.ID + " -> " + m); InvokeAsync(StateHasChanged); }; // // _structure.OnMemberValueUpdate += (s, m, v) => InvokeAsync(StateHasChanged); _tagsSelector = new FlareSelector <string> (() => new List <IOption <string> > { new FlareSelect.Option <string> { ID = "A", OptionText = "A", }, new FlareSelect.Option <string> { ID = "B", OptionText = "B", }, new FlareSelect.Option <string> { ID = "C", OptionText = "C", }, }, true ); _tagsSelector.OnSelect += selected => _structure.GetMemberInstance <List <string> >(nameof(User.Tags)) .UpdateValue(_testUser, selected.Select(v => v.ID).ToList()); _structure.OnResetAllMemberInputs += () => _tagsSelector.Deselect(); _structure.ValidationState.OnFinishValidating += () => InvokeAsync(StateHasChanged); Task.Run(() => { Thread.Sleep(500); Console.WriteLine("Updating"); _testUser.Boolean = false; _structure.GetMemberInstance <bool>(nameof(User.Boolean)).ResetInputs(); _structure.Revalidate(_testUser); InvokeAsync(StateHasChanged); }); // _submitButton = new Button(() => "Submit", _ => Submit(), () => Button.Color.Green, isDisabled: () => !_structure.ValidationState.Valid()); _header2 = new Header ( new List <IBit> { new Title(() => "Header #1!"), new Filler(), new Link(() => "Link 1!", () => "/url1"), new Space(), new Link(() => "Link 2!", () => "/url2", isHighlighted: () => true), new Space(), new Link(() => "Link 3!", () => "/url3"), }, Header.HeaderType.Secondary ); // Task.Run(async () => // { // while (true) // { // await InvokeAsync(StateHasChanged); // Thread.Sleep(200); // } // }); }