## Description
1. What is this PR about (link the issue and add a short description)
## Steps for reproduction
1. click button
2. expect xyz
## Code Review
- [ ] hi @kof, I need you to do
- conceptual review (architecture, feature-correctness)
- detailed review (read every line)
- test it on preview
## Before requesting a review
- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")
## Before merging
- [ ] tested locally and on preview environment (preview dev login:
0000)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env` file
Ref https://github.com/webstudio-is/webstudio/issues/4768
Forgot to handle the case with rebinding with parent variables after
variable on child is deleted.
Also fixed the case with rebinding variables outside of slot scope.
We want to migrate more templates to react-router
so here I split docker template into react-router and
react-router-docker. Image processing, dockerfile and node environment
are left as docker specifics.
Closes https://github.com/webstudio-is/webstudio/issues/4753
Variable validation especially resources shouldn't be too destructive.
User may configure complex resource and get it all wiped out because url
is invalid or header has empty value.
Here I tweaked the logic to require only not duplicated "name" and
everything else is saved even when invalid.
This will not break anything in generation process and will still show
user an error.
<img width="649" alt="Screenshot 2025-01-28 at 14 18 11"
src="https://github.com/user-attachments/assets/0916d250-a864-4362-bf1f-67b6c15024ef"
/>
Ref https://github.com/webstudio-is/webstudio/issues/4768
We don't want to allow data variables on one instance with the same
name. Though we will allow child variables to mask parent ones in
another PR.
To test:
- create variable var1 on box
- try to create another variable with var1
- create variable var2
- try to rename it to var1
- create variable on body with var1
Fixes https://github.com/webstudio-is/webstudio/issues/4661
- support -G to enforce get method and treat data as search params
- post data has application/x-www-form-urlencoded content type by
default
- -u flag allows basic http authentication
- support more data flags like --data-ascii, --data-raw,
--data-urlencode
See https://github.com/nkzw-tech/use-relative-time
We use only single function from date-fns while the package is like
22MB. Here's small alternative for react based on intl.
Added jsx support to ours toasts inside of builder and RelativeTime
component to use it inside of callbacks.
Markdown embed now can convert tables like this into html
```
| Month | Savings |
| -------- | ------- |
| January | $250 |
| February | $80 |
| March | $420 |
```
Both markdown embed and content embed have descendants to style tables.
Added table, row, header and cell.
## Description
ref #4595
Search is working
<img width="246" alt="image"
src="https://github.com/user-attachments/assets/5dc850e4-6a36-4996-9aaa-f051ac7e977f"
/>
Arrow keys, enter, mouse click is working.
https://p-15889dd9-ed47-46db-9411-fa18c1efb2fe-dot-edit.development.webstudio.is/
- [x] - Enter and click
- [ ] - Repeat > N then close menu (later)
- [x] - In case of select item clear cmd `/blabla`
- [x] - Put cursor inside 1st editable block of the new instance
- [x] - Should work only inside editable content
## Steps for reproduction
1. click button
2. expect xyz
## Code Review
- [ ] hi @kof, I need you to do
- conceptual review (architecture, feature-correctness)
- detailed review (read every line)
- test it on preview
## Before requesting a review
- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")
## Before merging
- [ ] tested locally and on preview environment (preview dev login:
0000)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env` file
Here removed remix sdk from builder and moved all extra props and meta
to react sdk. This completely decouples components from remix
implementation so we can map other frameworks to these props.
We can start using testing utilities for components meta. It will
drastically simplify maintenance of components, already works pretty
well for tests.
Here just replaced @webstudio-is/sdk/testing with
@webstudio-is/template.
Here added support for syncing nanostores atoms
as sync objects. Had to add some tracking of update source though it
seems like a more solid solution than previous variant.
Need to test performance caz stores updates are now synchronous and not
debounced anymore.
Here added SyncClient class which will be base for our new sync engine.
For now it can synchronize one immerhin store.
Event emitter is shared with canvas directly to avoid indirection of
iframe postMessage api.
This also partially fixes the issue with messages pollution and conflict
with react devtools.