Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs for wait command include invalid syntax #517

Open
CharlesTaylor7 opened this issue Feb 9, 2024 · 1 comment
Open

docs for wait command include invalid syntax #517

CharlesTaylor7 opened this issue Feb 9, 2024 · 1 comment

Comments

@CharlesTaylor7
Copy link
Contributor

Problem

The documentation for the wait command advertises syntax that doesn't actually parse.

On this page of the docs:
https://hyperscript.org/commands/wait/#description

This snippet:

wait for load or 1s
if the result is not an Event
  throw 'Took too long to load.'
end

Workaround

The comparison the result is not an Event, fails to parse, but replacing the an with an a makes it hunky dory.

Potential Fix

Either we can (1) update the docs, or (2) update the parser to allow the construct of is not an Event.
I personally favor extending the parser to make this work.

Error

Screen Shot 2024-02-09 at 6 45 14 PM

Stacktrace:

    at a.raiseParseError (http://unpkg.com/hyperscript.org@0.9.12:1:12649)
    at i.raiseError (http://unpkg.com/hyperscript.org@0.9.12:1:6620)
    at i.requireToken (http://unpkg.com/hyperscript.org@0.9.12:1:7520)
    at http://unpkg.com/hyperscript.org@0.9.12:1:71097
@SennaSanzo
Copy link

SennaSanzo commented May 30, 2024

Apart from the parser problem mentioned above, I tried implementing a wait with an event or a duration like in the example (the only difference is that I'm doing it from a function in a ".hs" file and not directly on the HTML element), but the script results in a deadlock, waiting forever for the event to occur. The duration is never considered. If I use the duration alone, there is no problem. Is anyone else having the same issue?

EDIT: To add a nuance to what I'm saying, the code above is working except if we start to use the trigger and the from clause of the wait command like this:

<button _="on click put 'Started...' into the next <output/>
	set continuer to the next <button/>
	wait for a continue from continuer or 3s   -- wait for a continue event...
	if the result's type is 'continue'
		put 'Finished...' into the next <output/>
	otherwise
		put 'Timed Out...' into the next <output/>
	end
	wait 2s
	put '--' into the next <output/>">
Start
</button>
<button _="on click trigger continue">
      Continue
</button>
<output>--</output>

Maybe I misunderstood the way it works. If someone can help on this I will be very grateful. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants