Example #1
0
 internal void RemoveAttributeLower(string nameLower)
 {
     if (!_values.ContainsKey(nameLower))
     {
         return;
     }
     _values.Remove(nameLower);
     if (nameLower == "checked")
     {
         SetCheckedDelta.Enqueue(_element, false);
     }
     else
     {
         AttributeRemovedDelta.Enqueue(_element, nameLower);
     }
     _element.AttributeChanged(nameLower, null);
 }
Example #2
0
 internal void SetAttributeLower(string nameLower, string?value)
 {
     if (nameLower == "slot" && _element.ParentElement != null)
     {
         throw new InvalidOperationException(Resources.SlotOnlyParent);
     }
     if (_values.TryGetValue(nameLower, out var previous))
     {
         if (previous == value)
         {
             return;
         }
         _values.Remove(nameLower);
     }
     _values.Add(nameLower, value);
     if (nameLower == "value")
     {
         SetValueDelta.Enqueue(_element, value);
     }
     else if (nameLower == "checked")
     {
         SetCheckedDelta.Enqueue(_element, true);
     }
     else if (nameLower == "id")
     {
         SetIdDelta.Enqueue(_element, value ?? "");
     }
     else
     {
         AttributeEditedDelta.Enqueue(_element, nameLower, value);
     }
     _element.AttributeChanged(nameLower, value);
     if (nameLower == "slot")
     {
         _element.UpdateSlotted();
     }
 }