6010 Commits
Author SHA1 Message Date
Ivan Starkov f6d859c245 experimental: Add animation ranges (#5133)
## 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
0.215.0
2025-04-17 23:17:04 +02:00
Bogdan Chadkin bd77a252c2 refactor: detect empty tags and components (#5132)
Here replaced "embed" and "control" components with content model. Many
components now detect no content based on html content model like with
img or input tags. In other cases component meta can explicitly specify
empty array to not accept anything.

```
meta = {
  contentModel: {
    category: 'instance',
    children: []
  }
}
```
2025-04-17 23:23:20 +07:00
Bogdan Chadkin 5287e960a8 fix: remove scrub icon from gap input (#5130)
We no longer support scrub on input icons like in gap.
2025-04-17 10:27:40 +07:00
Oleg Isonen d17fe3951e experimental: fix typo (#5131)
## 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
2025-04-16 23:58:49 +02:00
Bogdan Chadkin 23e4318990 experimental: add keyframe transforms (#5128)
Here added UI for transform and opacity properties to keyframe
configuration.

<img width="330" alt="Screenshot 2025-04-16 at 19 42 29"
src="https://github.com/user-attachments/assets/9a122d26-c203-4a9b-8e13-44d2eb8b7a23"
/>
2025-04-16 22:37:49 +07:00
Bogdan Chadkin 0daf6bfbc1 experimental: split keyframe styles into popover (#5126)
We want to add a few predefined fields in every keyframe. Here we split
each keyframe into separate popover to avoid overloading the ui.

<img width="404" alt="Screenshot 2025-04-16 at 01 53 41"
src="https://github.com/user-attachments/assets/21dd7f14-9f51-4624-b190-f57055a6c55c"
/>
2025-04-16 18:38:49 +07:00
victor immanuelandOleg Isonen 1c254ed9f9 fix: modify ui to prevent social image name overflow in page settings. (#5088)
## Description
fixes: #4953 

aligned the name and other contents properly preventing long image names
from overflowing out of view.

![Screenshot from 2025-04-04
09-25-03](https://github.com/user-attachments/assets/68cf34b4-74f7-4468-b132-e5fb1c6f2358)

![Screenshot from 2025-04-04
09-24-57](https://github.com/user-attachments/assets/885807e1-dae8-49e0-b1f0-144ad96a29f5)


## 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

- [x] 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

---------

Co-authored-by: Oleg Isonen <oleg008@gmail.com>
2025-04-15 19:24:44 +02:00
Bogdan Chadkin 925ea10391 feat: avoid generating unused preset styles (#5121)
Now we have first-class support for html tags and able to figure out
which tags are rendered so unused preset styles can be removed from
websites.

For example

```
<Box ws:tag="div">
  <Box ws:tag="span">
  </Box>
</Box>
```

will render only div.w-box and span.w-box though there are more presets
for for other tags like main, section etc.

Before all tags were generated
2025-04-15 22:26:58 +07:00
Bogdan Chadkin 61511385f9 fix: show token name when convert local styles to token (#5123)
Ref
https://discord.com/channels/955905230107738152/1360809139810599063/1360809139810599063

There were two problems here

1. empty token name collapsed and was not editable; fixed it with nbsp
2. the label set with dom didn't have proper timing; fixed it by
rendering label by react
2025-04-15 14:29:37 +07:00
Ivan Starkov acbb03827c experimental: Various Animation fixes (#5122)
## 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
2025-04-14 16:45:52 +03:00
Bogdan Chadkin f167b3e6d7 experimental: move advanced animation config to popover (#5124)
<img width="407" alt="Screenshot 2025-04-14 at 17 03 02"
src="https://github.com/user-attachments/assets/5142dc93-5bc1-44a5-868c-a088cac8745d"
/>
2025-04-14 20:18:57 +07:00
Bogdan Chadkin 9e392f4b9c feat: autocomplete remote css variables (#5119)
When user search to add css variable in advanced style section we show
now added css variables as well. Can be handy to update value defined
remotely.

<img width="565" alt="Screenshot 2025-04-12 at 00 25 20"
src="https://github.com/user-attachments/assets/fc69f417-6b04-4ca0-b876-2a1eab6d67a2"
/>
2025-04-12 09:53:16 +07:00
Bogdan Chadkin 8fbda555e5 fix: autocomplete properties with invalid values (#5118)
The logic assumed invalid values should become custom properties. Here
replaced that heuristic with property name check.

<img width="294" alt="Screenshot 2025-04-11 at 19 11 54"
src="https://github.com/user-attachments/assets/d2f08fbf-93ab-47c6-a075-3f4d311cc718"
/>
2025-04-12 00:00:12 +07:00
Ivan Starkov 2366abe39e experimental: Animation polyfill, fix parsing of wrong unit values, fix position sticky (#5116)
## 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
2025-04-10 20:11:38 +03:00
Bogdan Chadkin 88e5119b02 feat: add project and date to published websites (#5114)
Added following attributes to html element

- data-ws-project
- data-ws-last-published

This should help debugging issues and webstudio discoverability

<img width="851" alt="image"
src="https://github.com/user-attachments/assets/a4572070-a6da-40ec-88cd-308ab7f7d22f"
/>
2025-04-10 17:23:13 +07:00
Ivan Starkov 10a6118660 fix: Youtube mute and other options (#5115)
## 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
2025-04-10 13:15:46 +03:00
Bogdan Chadkin 3b8c58b435 refactor: use content model to detect rich text (#5109)
Ref https://github.com/webstudio-is/webstudio/issues/3632

Here I finally got rid from "rich-text-child" necessity. With html
elements in the tree it will no longer work so we need a new way to work
with rich text.

Added a few new utilities to content model which detect rich text by
text inside or any textual tags. Span and links can still be detected as
containers rather than children when not surrounded by text and other
textual elements.
2025-04-10 14:16:34 +07:00
Ivan Starkov 81a5eff925 build: Fix firefox vitest tests timeout (#5113)
## Description

Based on comments here

https://github.com/vitest-dev/vitest/issues/7377

## 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
2025-04-10 10:11:13 +03:00
Ivan Starkov b0e7bfda56 experimental: Animations, disable BFCache in Chrome 134 and FF (#5111)
## 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
2025-04-09 20:28:05 +03:00
Ivan Starkov 34f92fc64e experimental: Fix animation drag custom properties resolver (#5110)
## 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
2025-04-09 19:43:45 +03:00
Ivan Starkov 25336d81c0 experimental: Fix animation is not working when page opens in background tab (#5108)
## 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
2025-04-09 19:49:41 +05:00
Ivan Starkov 88126f6208 experimental: Reload animations on custom properties change (#5107)
## 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
2025-04-09 18:03:44 +05:00
Bogdan Chadkin b1e373975d build: upgrade react-router and remix (#5106)
- security fixes
https://github.com/remix-run/remix/blob/main/CHANGELOG.md#v2164
- cloudflare support fixes
https://github.com/remix-run/react-router/blob/main/CHANGELOG.md#v750
2025-04-08 21:35:50 +07:00
Bogdan Chadkin 4b52aaa3dc refactor: add component content model (#5101)
Extended content model to support categories defined in component meta.
Most components has transparent children categories to pass through
constraints from parent, this way we allow descendants with non
category.

Here migrated only core and base components.
Will extend more for animations in another PR.
2025-04-08 13:09:54 +07:00
Ivan Starkov 9cc131adaf experimental: Fix inset reset (onAbort is called on blur) (#5105)
## 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
2025-04-08 09:43:34 +05:00
Ivan Starkov 09f19b5aeb experimental: Animations. Entry animations support (#5102)
## 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
2025-04-08 01:39:47 +05:00
Ivan Starkov e5369ef930 experimental: Youtube animations (#5072)
## Description

### Not finished, should be merged as has small issues fixed

https://video-viking.wstd.work/
https://video-viking.wstd.work/entry

## 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
2025-04-06 14:47:16 +03:00
Bogdan Chadkin c5ce5f6313 refactor: move index property to sdk (#5097)
Slowly moving stuff out of react-sdk
2025-04-05 22:50:06 +07:00
Ivan Starkov a80c062d08 fix: Update Build updatedAt on patch (#5098)
## Description

tested 


```
select "createdAt", "updatedAt" from "Build" where "projectId" = '2d1d1e10-c20b-4061-a02a-ee570179c60c';
```

Result
```
2025-03-10 18:06:45.848+00 | 2025-04-05 10:55:58.263+00
```

## 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
2025-04-05 16:03:00 +05:00
Bogdan Chadkin 42a49563d6 feat: show toast when builder is offline (#5096)
We need to make lack of connection more visible and will show toast
along with offline status.

<img width="1236" alt="Screenshot 2025-04-05 at 14 21 30"
src="https://github.com/user-attachments/assets/cc8e7033-9702-4f62-8c9f-e9797fda1f65"
/>
2025-04-05 17:59:31 +07:00
Oleg Isonen c26dbdc80c feat: add ctrl+enter shortcut for windows (#5095)
## Description

We added cmd+enter but we forgot to add ctrl+enter for windows

## 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
2025-04-05 11:53:56 +02:00
Bogdan Chadkin 31212266c7 refactor: paste new tag with webflow and markdown (#5092)
Ref https://github.com/webstudio-is/webstudio/issues/3632

Here migrated webflow and markdown paste plugins to instance.tag to
avoid adding more legacy "tag" prop.

Also fixed content model for instance.tag and rewrote its tests with
ws:element.
2025-04-05 13:52:25 +07:00
Bogdan Chadkin 8d129e0c6f feat: limit html embed (#5094)
Closes https://github.com/webstudio-is/webstudio/issues/5093

<img width="330" alt="Screenshot 2025-04-05 at 02 48 15"
src="https://github.com/user-attachments/assets/8b74a727-80b9-461c-9bf2-cae09e8fbc45"
/>
2025-04-05 10:51:32 +07:00
Bogdan Chadkin 749f372786 docs: fix discord link in readme (#5091)
Fixes https://github.com/webstudio-is/webstudio/issues/5090
2025-04-04 21:43:51 +07:00
Bogdan Chadkin 1506d96241 fix: show advanced properties in global root from other breakpoints (#5089)
The logic hid advanced properties from any remote source even other
breakpoints. Here added a check to hide only when inherited from global
root.
2025-04-04 20:35:41 +07:00
Bogdan Chadkin bb80555bc4 fix: allow placing labelable elements inside of labels (#5085)
Fixes the issue reported in discord
(https://discord.com/channels/955905230107738152/1356788803624501370/1357299346558816306)

Found the spec actually allows to place button and input inside a label.
So now we can generalize this logic.

Also content model validation no longer prevents inserting invalid
structure and only warns user is something went wrong. This will let us
to never block the user with false positives and maybe even figure out
the issue on their own.

<img width="993" alt="Screenshot 2025-04-04 at 01 28 53"
src="https://github.com/user-attachments/assets/46eb041f-2431-4140-b34e-8bc9ad757c47"
/>
2025-04-04 14:32:23 +07:00
Bogdan ChadkinandOleg Isonen e9ba7a0289 fix: increase expand folder time (#5086)
Co-authored-by: Oleg Isonen <oleg008@gmail.com>
2025-04-04 01:21:58 +02:00
Bogdan ChadkinandOleg Isonen 9032a109ca experimental: support ws:element component in CLI (#5071)
Ref https://github.com/webstudio-is/webstudio/issues/3632

Added `ws:element` component to represent any html and svg elements
within webstudio.

It is rendered as `<div>` by default which can be customized with "tag"
system property (instance.tag in data).

Here added only CLI generator support with converting html attribute
names to react compatible. Will add builder support separately.

---------

Co-authored-by: Oleg Isonen <oleg008@gmail.com>
2025-04-03 14:06:50 +07:00
Bogdan Chadkin 1dc7af7621 refactor: add tag property control (#5080)
https://github.com/webstudio-is/webstudio/issues/3632

Here added dedicated tag property control which will automatically
migrate Box, Text and Heading components to instance.tag internally and
will be used for ws:element component.

Later will extend tag control with tag descriptions and auto inferring
matching tags.

<img width="428" alt="Screenshot 2025-04-02 at 15 56 46"
src="https://github.com/user-attachments/assets/fa8d24ba-b9e8-4221-b47a-a9e923475bb6"
/>
2025-04-03 11:07:43 +07:00
Michael 38678a442e fix: render delete icon only in design mode for folder settings and duplicate icon for page settings #5038 (#5083)
fixes: #5038 

## Description
delete button shows on folder settings in content mode and duplicate
button shows for page setting. this fix removes these buttons in content
mode.

1. What is this PR about (link the issue and add a short description)

## Steps for reproduction

1. switch to content mode on your project
2. got to page/folder settings
3. expect that duplicate icon/delete icon should not be visible
4. 
## 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

- [x] made a self-review
- [x] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [x] 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
2025-04-03 09:54:28 +07:00
victor immanuel 3944cbb9cd fix: show proper validation error message when user inputs old path in redirect section (#5082)
## Description

fixes: #5050 

fixes the validation error message when user enters old path in
redirects section.


![image](https://github.com/user-attachments/assets/e4f2793d-5179-467d-9655-95247b9e8439)


## Steps for reproduction

1. go to project settings.
2. redirects tab
3. enter a url like https://website.org in old path input field.
4. the validation error will we shown in the tooltip.

## 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

- [x] made a self-review
- [x] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [x] 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
2025-04-03 09:40:55 +07:00
Bogdan Chadkin 4b65a09375 fix: show proper shadow labels (#5081)
Ref
https://discord.com/channels/955905230107738152/1356952800621494363/1356952800621494363

Forgot about labels while migrating to shadow value

<img width="250" alt="Screenshot 2025-04-02 at 20 24 35"
src="https://github.com/user-attachments/assets/9e2995e9-5f43-4408-b573-52d6b11e4b94"
/>
2025-04-03 02:32:25 +07:00
Bogdan Chadkin a9ec11b90e fix: add more insert edge cases (#5078)
We introduced html content model which restricts how html elements can
be nested into each other. Here fixed two edge cases

- allow to put div into buttons, headings or any other phrasing content
- allow put images into interactive elements like a > img
2025-04-02 18:19:23 +07:00
Oleg Isonen 71cafd2178 experimental: Animation descriptions (#5075)
## 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
2025-04-02 00:36:31 +02:00
Bogdan Chadkin d5bc0f9760 feat: enforce html content model (#5074)
Ref https://github.com/webstudio-is/webstudio/issues/3632

This is a big step into native html elements support. I scraped content
model from html spec and now enforcing all html tags structure so we no
longer need to write custom restrictions.

Now paragraph cannot be nested into heading. Box cannot be nested into
span Text though still can in div Text. Any interactive elements cannot
be nested automatically. List item should have a list as direct parent
(collection and slot are exception because they don't have elements
inside).

Most rules are defined in this table
https://html.spec.whatwg.org/multipage/indices.html#elements-3
2025-04-01 22:07:56 +07:00
Bogdan Chadkin a7eff393bb refactor: manually namespace meta (#5073)
Here got rid from auto namespacing meta.constraints and
meta.indexWithinAncestor to unlock using components from other sdk
packages.

Now package prefixes should be explicitly specified in meta though with
the help of proxy.

Though exports are still need to prefix automatically when install
package.
2025-03-31 18:06:38 +07:00
Ivan StarkovandOleg Isonen 3f5041a974 experimental: Stagger Animation (#5066)
## Description


https://p-1ada14ed-beb3-4910-8af1-dacaa550310b-dot-stager.staging.webstudio.is/?pageId=5bx4prWBtn925kuZPcetS&authToken=1e621fc4-dfb0-4189-a9b0-4fe2e189ec93&mode=preview


https://animations.wstd.work/intermediate-staggering

## 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

---------

Co-authored-by: Oleg Isonen <oleg008@gmail.com>
2025-03-30 15:44:20 +05:00
Bogdan Chadkin 0a6e282a82 fix: prevent dragging folder inside of itself (#5070)
User reported the case which probably bugged us a few times but we could
not figure out why.

Here added guard to prevent reparanting page folder inside of itself or
child folders.
2025-03-29 00:44:30 +07:00
Bogdan Chadkin 7a73f40889 refactor: upgrade react-router and remix (#5067)
Ref
https://github.com/remix-run/react-router/blob/main/CHANGELOG.md#v740
2025-03-28 18:16:31 +07:00
Oleg Isonen 07fbc3b155 refactor: Use consistent naming of the meta key (#5069)
## Description

We are using "meta" in commands, but "cmd" in Kbd, now this is
consistently called "meta" everywhere.

## 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
2025-03-28 12:07:42 +01:00