Exemplo n.º 1
0
 public static void Enqueue(Element element, EventSettings settings)
 {
     if (!element.TryGetEvents(out var document))
     {
         return;
     }
     document.NotifyHasEvent();
     document.Enqueue(CreateDelta(element.Id, settings));
 }
Exemplo n.º 2
0
 private static SubscribeDelta CreateDelta(string id, EventSettings settings)
 {
     return(new SubscribeDelta
     {
         ElementId = id,
         Settings = ClientEventSettings.CreateFrom(settings),
         DebounceInterval = settings.DebounceInterval,
         EvalFilter = settings.EvalFilter
     });
 }
Exemplo n.º 3
0
 public PlugOptions(EventSettings settings)
 {
     Block = settings.Block;
     if (settings.BlockOptions != null)
     {
         BlockElementId = settings.BlockOptions.BlockedElementId;
         BlockHTML      = settings.BlockOptions.ShowHtmlMessage;
         BlockShownId   = settings.BlockOptions.ShowElementId;
     }
     LongRunning = settings.LongRunning;
     UploadFiles = settings.UploadFiles;
 }
Exemplo n.º 4
0
        public static ClientEventSettings CreateFrom(EventSettings settings)
        {
            var client = new ClientEventSettings
            {
                Block       = settings.Block,
                EventName   = settings.EventName,
                LongRunning = settings.LongRunning,
                Propagation = settings.Propagation,
                UploadFiles = settings.UploadFiles
            };

            if (settings.BlockOptions == null)
            {
                return(client);
            }
            client.BlockElementId = settings.BlockOptions.BlockedElementId;
            client.BlockHTML      = settings.BlockOptions.ShowHtmlMessage;
            client.BlockShownId   = settings.BlockOptions.ShowElementId;
            return(client);
        }
Exemplo n.º 5
0
 public static void Enqueue(Document document, EventSettings settings)
 {
     document.NotifyHasEvent();
     document.Enqueue(CreateDelta(string.Empty, settings));
 }
Exemplo n.º 6
0
 /// <summary>
 /// Registers an event and associates code to execute
 /// </summary>
 /// <typeparam name="T">Element type</typeparam>
 /// <param name="element">Element</param>
 /// <param name="options">Event options</param>
 /// <returns>Element instance</returns>
 public static T Event <T>(this T element, EventSettings options)
     where T : Element
 {
     element.On(options);
     return(element);
 }
Exemplo n.º 7
0
 /// <summary>
 /// Associates an event handler with the current element.
 /// </summary>
 /// <param name="settings">The settings.</param>
 /// <returns>This instance</returns>
 public LaraBuilder On(EventSettings settings)
 {
     _stack.Peek().On(settings);
     return(this);
 }