Commit Graph
5224 Commits
Author SHA1 Message Date
Bogdan Chadkin 0ac4050d7e Upgrade to pnpm 8.4 (#1578)
Ref https://github.com/pnpm/pnpm/releases/tag/v8.4.0
https://github.com/pnpm/pnpm/releases/tag/v8.3.0

- pnpm install && pnpm install no longer needed
- pnpm dedupe simplifies upgrading deps, didn't enable check in CI caz
taking too long
2023-05-05 18:07:14 +07:00
Bogdan Chadkin 536622b2bf Add cache control (#1574)
Ref https://github.com/webstudio-is/webstudio-builder/issues/1572
2023-05-05 14:35:36 +07:00
Bogdan Chadkin a167d702f7 Fix copy paste of style sources (#1570)
Ref
https://discord.com/channels/955905230107738152/955907841070346300/1103260031048241182

Here style sources were pasted without copying. Here I renamed the
utility to clarify a little and provided proper list of instance ids.
2023-05-05 14:34:51 +07:00
Bogdan Chadkin d952c1bf0a Simplify asset data (#1561)
Removed all no longer used fields. Stopped passing id with form data.
2023-05-05 11:14:45 +07:00
Bogdan Chadkin fda33bb9b1 Rename loadByProject to loadAssetsByProject (#1560)
Found the name super confusing when started to work on builder. Here
renamed and dropped unused loadByIds utility.
2023-05-03 22:33:00 +08:00
Ivan Starkov fee87685db Fix scrub control (#1559)
## Description

Fixes scrub control can set invalid unitless value 

## 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-05-03 15:02:17 +04:00
Roman Pominov bcdfc9f83d Fix floating point math issue in scrub (#1562)
## Description

Fix of the bug reported in
https://discord.com/channels/955905230107738152/1102991527254446182:

1. Set value of any input that you can scrub to 1.3
2. Scrub to decrease it by 1 to 0.3
3. The value gets set 0.30000000000000004
2023-05-03 13:36:01 +03:00
Oleg Isonen d16a340c5c Icons update (#1558)
## Description

Updated all icons in this list
https://github.com/webstudio-is/webstudio-builder/issues/1362

## Code Review

- [ ] hi @rpominov, I need you to do
  - conceptual review (architecture, feature-correctness)

## 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-05-03 00:00:16 +02:00
Bogdan Chadkin 7f0e1bb2f3 Upload files by url (#1547)
Here splitted asset upload into 2 phases

1. initial upload creates asset in db with uploading state and generates
unique name (POST /rest/assets endpoint)

2. use unique name to upload file, extract meta and mark asset as
uploaded (POST /rest/assets/$name endpoint)

This give us more straightforward data flow without creating temporary
asssets with fake id which are changed later.

And also unlock splitting files into separate table to allow securely
copy paste assets between projects (still wip).

Fixed persistent fetcher to support sequential submits.
2023-05-03 01:08:07 +08:00
Bogdan Chadkin 403edf6523 Parse tuple in css-data (#1548)
We support tuple type in styles and can now parse initial values
properly which is important since we no longer use computed browser
style.
2023-05-03 01:00:37 +08:00
Bogdan Chadkin f82bd6f22e Fix preset styles (#1556)
Preset styles were skipped because of early return.
2023-05-03 00:50:27 +08:00
Roman Pominov 15a307f6dd Fix lostpixel (#1553)
https://discord.com/channels/955905230107738152/1102879882960175164

## 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-05-02 16:24:17 +03:00
Oleg Isonen abb4c2f639 Forms (#1525)
https://github.com/webstudio-is/webstudio-builder/issues/84#issuecomment-1522834976

## Description

1. Added new components:
   - textarea
   - radio-button and radio-button-field
   - checkbox and checkbox-field
   - success-message
   - error-message
 2. Added `states` like `:disabled`, `:valid`, etc. to `input`
3. Added `custom-components/form` that renders success-message and
error-message conditionally
 4. Added `success` and `error` style states to `custom-components/form`
5. Style panel now shows "Select an instance on the canvas" if the
selected component is not rendered on canvas (e.g. error-message may not
be rendered)
 
Not in this PR:

- The mailer package
- Backend handler for forms (will be in a PR in SAAS)
- Logic in Form that actually submits to backend and shows success/error
messages

## Steps for reproduction

1. Add a "Form" to canvas
2. Add "Checkbox Field", "Radio Button Field", "Text Area" to the form
3. Try changing `initialState` property of the form
2023-05-02 14:14:06 +03:00
Roman Pominov 5399b206f3 Fixed label's cursor & couple TS fixes (#1549)
## Description

1. Fixed label's cursor:
https://discord.com/channels/955905230107738152/1102616619219439676
2. Improved TS to make sure all prop types are always handled in props
panel
2023-05-02 13:55:27 +03:00
Bogdan Chadkin 4e31256b2a Restrict allowed parents with config in meta (#1542)
Added `allowedParentComponents: string[]` option to meta which prevents
dropping, inserting or pasting components into wrong parents. For
example ListItem now can be placed only inside of List component.

This will unlock better experience with compound radix components.
2023-05-02 15:20:22 +08:00
Oleg Isonen 1962ba89b9 Breakpoints editor (#1543)
https://user-images.githubusercontent.com/52824/235469260-2a212e73-0815-4a4b-a02d-d98cf56c7a88.mp4



## Description

Closes https://github.com/webstudio-is/webstudio-builder/issues/1407

## Steps for reproduction

1. click edit breakpoints
2. test all possible inputs

## Code Review

- [ ] hi @rpominov , I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview
- [ ] @TrySound please check if you have any concerns regarding removing
breakpoints and styles

## 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-05-01 20:13:57 +02:00
Roman Pominov 86ee37a7ad Some fixes in props panel (#1546)
## Description

1. Removed a sanity check that started to give false positives (wasn't
needed really in the first place)
2. Cmd+enter in textarea control now saves the value
3. Fixed layout of props panel in the case when there're no initial
props
2023-05-01 16:38:45 +03:00
Bogdan Chadkin b8b9978068 Use remix memory upload handler (#1514)
We had own uuid-handler utility to buffer streamed values for formData.
Remix has own memory upload handler to do the same. A little less custom
code for us.
2023-05-01 19:06:02 +08:00
Bogdan Chadkin c2ac8ed354 Allow to reset drop target (#1541)
Here I allows to return undefined in swapDropTarget. This enables us to
reset drop target when move cursor out of droppable elements.

For example before Body was always selected as drop target. Though this
behavior prevent us from restricting parents for cases like Tabs>Tab and
List>ListItem.

Also got rid from emulatePointerAlwaysInRootBounds which was used to
workaround that fallback to Body. So now no longer necessary too.

https://user-images.githubusercontent.com/5635476/235142653-48b95ebe-9714-44c4-90d9-b69b930f2379.mov
2023-04-29 13:22:18 +07:00
Oleg Isonen 35b01e5e68 Implement breakpoints popover design (#1534)
Part of https://github.com/webstudio-is/webstudio-builder/issues/1407

## Description

Implements design changes from
https://www.figma.com/file/xCBegXEWxROLqA1Y31z2Xo/%F0%9F%93%96-Webstudio-Design-Docs?node-id=3719-47947&t=IyN7o4sC7xAxaPNG-4

- new List and ListItem primitive components just for keyboard
accessibility
- deprecated List and ListItem we had before because they are only
useful in asset manager and we already learned how we want to treat
keyboard differently

## Code Review

- [ ] hi @rpominov, 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-04-28 20:36:02 +02:00
Roman Pominov 3ebf8fe9c3 Update Flex-child icons (#1540)
## Description

Updated icons in the Flex-child section:
https://github.com/webstudio-is/webstudio-builder/issues/1411#issuecomment-1527085455

Closes #1411
2023-04-28 15:52:18 +03:00
Ivan Starkov 70746774bf Release 0.61.0 (#1539)
## Description

Release 0.61.0
Npm packages update

## 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
0.61.0
2023-04-28 09:36:56 +04:00
Bogdan Chadkin 5595742f75 Insert styles from embed template (#1538)
Now embed templates can define simplified version of our styles which is
useful for radix components and as AI output.

```
styles: [
  {
    property: 'backgroundColor',
    value: { type: 'keyword', value: 'red' }
  }
]
```
2023-04-28 12:07:10 +07:00
Roman Pominov ee17f1416a Fix: can't delete a form element from canvas (#1537)
## Description

Fixes bug:

- select an Input instance by clicking on it on canvas
- press backspace to delete it
- nothing happens
2023-04-27 15:58:03 +03:00
Bogdan Chadkin bb9db13c9f Run dts as additional checks in actions (#1523)
This fixes the bug introduced in my previous PRs and reproducable only
by running dts generation. Here added it to checks so we could avoid
broken publishes while releasing.
2023-04-27 17:37:59 +07:00
Bogdan Chadkin c60ee0af07 Show initial and html style in style panel (#1533)
Ref https://github.com/webstudio-is/webstudio-builder/issues/1067

We need to move away from getComputedStyle for not local styles in style
panel.

Here added default html style from browser sources. Now we can render it
and properties initial styles instead of computed styles.

Also fixed in properties data generation currentcolor -> currentColor
and removed same from border presets.
2023-04-27 17:06:38 +07:00
Ivan StarkovandOleg Isonen 5ba6c25565 Units menu in css value input (#1524)
## Description

closes #1464


- [ ] rename "UnitMenu" to just "Menu" because we are going to bring in
some keywords _I think it's still mostly unit menu, and having that for
keywords only values we have keywordButtonElement I would prefer to keep
current name_
- [x] 1. put in the menu the most popular units/keywords to keep it
short and usable in this order:
    "-",
    "px",
    "%",
    "em",
    "rem",
    "dvw",
    "dvh",
    "auto",
    "normal",
    "none"
- [x] 2. add "auto" , "normal" , "none" to properties that support these
keywords into the menu
- [x] 3. use "-" when value is unit-less (detect unitless value from
mdn-data)
- [x] 4. use "-" when keyword value is selected
- [x] 5. allow any unit to be typed even if its not in a menu, when its
typed and user hits enter - we show it as a unit, just not part of the
menu
- [x] adjust margin for keywords menu to 2px from the bottom edge of the
input

## Steps for reproduction

Open width style. Set value 0, see menu
<img width="166" alt="image"
src="https://user-images.githubusercontent.com/5077042/234040113-1780a843-b773-44c3-9e90-56c77b9ecc7f.png">

Set value 10px, see menu 
<img width="141" alt="image"
src="https://user-images.githubusercontent.com/5077042/234040280-c7690bf0-00d5-44a4-b8a9-a07bf31f5625.png">


Set value `10vw`
see menu
<img width="150" alt="image"
src="https://user-images.githubusercontent.com/5077042/234040386-a7ed6f40-a0c7-433f-a500-df5c5ac1938f.png">


Set value `Auto` see menu

<img width="140" alt="image"
src="https://user-images.githubusercontent.com/5077042/234051716-a76a3cce-e56e-4842-bad9-ca7905ce2382.png">

When menu is closed see

<img width="120" alt="image"
src="https://user-images.githubusercontent.com/5077042/234052911-23306652-0cf1-4a54-9c2b-2b33c4d20f15.png">

Set "Inherit"

see menu

<img width="165" alt="image"
src="https://user-images.githubusercontent.com/5077042/234052792-304b1de6-8d5c-4e23-92aa-42a34da47631.png">

see Position its still a keyword

<img width="232" alt="image"
src="https://user-images.githubusercontent.com/5077042/234053175-68c892f2-332a-4938-a4b5-928d7a30fe32.png">








## Code Review

- [x] 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [x] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory

---------

Co-authored-by: Oleg Isonen <oleg008@gmail.com>
2023-04-27 14:00:29 +04:00
Bogdan Chadkin 6db60b7e7d Drop baseUrl from tsconfig in packages (#1530)
This should fix auto import from parent folders
which is very annoying right because tries to import from 'src'.
2023-04-26 18:59:43 +07:00
Bogdan Chadkin 2017153253 Migrate preset styles to array of declarations (#1531)
Before preset styles used `{ tag: { property: value } }` format. Now we
are switching to `{ tag: [{ state,property,value }] }` to support
specifying states in preset styles.

Same format will be used for embed template styles.

Here switched only format. States in preset styles not supported in
builder yet.
2023-04-26 18:59:31 +07:00
Roman Pominov 776ed3bedb Flex section fixes (#1506)
## Description

Ref. #1411 (Not everything is fixed yet, only what is checked. Will fix
the rest in a separate PR.)

1. Updated Icons
2. Fixed geometry of the grid control
3. (!) Removed ability to set certain values as specified in the issue
and in Figma:
   - `display: inline-flex`
   - `flex-direction: normal, *-reverse`
   - `justify-content: normal`
   - `align-items: normal`
   - `align-content: normal`
   - `flex-wrap: normal, wrap-reverse`
4. Replaced dropdown with a toggle button for `direction` and `wrap`
5. Used toggle button for the gap link control
6. Fixed layout of controls

## Steps for reproduction

1. Choose `display: flex` on the Layout section in style panel
3. See the changes from the list above
2023-04-24 20:13:59 +03:00
Taylor NowotnyandBot d14cad59e2 mono font-weight changed from 400 to 500 (#1520)
Co-authored-by: Bot (build-figma-tokens.yml) <bot@localhost>
2023-04-22 22:05:16 +03:00
Bogdan Chadkin 0f615afd01 Add props support in embed template instances (#1519)
Ref https://github.com/webstudio-is/webstudio-builder/pull/1516

This will allow further customization of react components through meta
2023-04-23 00:47:44 +07:00
Bogdan Chadkin 30be97deef Allow to specify tree template in component meta (#1517)
Ref https://github.com/webstudio-is/webstudio-builder/pull/1516

Here added new utility "tree template" to describe children in component
meta and generate instances from it while inserting.

Added simple template to form component as example.
2023-04-22 23:20:39 +07:00
Bogdan Chadkin e1fa2075a5 Enforce server constraints for packages (#1507)
Ref
https://remix.run/docs/en/1.15.0/guides/constraints#server-code-pruning

Remix use NAME.server.ts extension to enforce omitting module from
client bundles. Though we heavily used `/server` in packages which had
no affect and blocked us in using a few node apis which were not
polifilled with empty modules while bundling for client.

Here I replaced `/server` with `/index.server` and removed all legacy
server entry points which are not longer necessary with new typescript
resolution.
2023-04-22 09:14:14 +07:00
Ivan StarkovandBogdan Chadkin 99e0648dd4 npm release 0.60.0 (#1513)
## Description

Npm update 0.60.0

## 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory

Co-authored-by: Bogdan Chadkin <opensource@trysound.io>
0.60.0
2023-04-21 22:26:30 +04:00
Bogdan Chadkin ceefbe8f34 Remove unnecessary prop 2 2023-04-22 01:17:55 +07:00
Bogdan Chadkin ad3271a3d0 Remove unnecessary prop 2023-04-22 01:06:29 +07:00
Ivan Starkov 05ba5fe877 Fix style source input (#1511)
## Description
remove white spaces to check diff
<img width="276" alt="image"
src="https://user-images.githubusercontent.com/5077042/233678799-1e57e74b-5aa9-4c9a-9a9c-bf210c5ba27a.png">

## Steps for reproduction

Select link component, add style source, select current page. 
Should be Current Page and not the "Aria Current Page"

## Code Review

- [ ] hi @TrySound , 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-04-21 21:23:10 +04:00
Ivan Starkov 2f8b0fe150 Fix new element outline issue (#1512)
## Description

Outline calculated incorrectly for new elements in case if new element
has size and added into collapsed item

<img width="361" alt="image"
src="https://user-images.githubusercontent.com/5077042/233684755-27be5da9-9c6a-4fbf-b81a-481ec2abab60.png">

## Steps for reproduction

Create Box
Add Image inside
See outline now is on Image


## 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-04-21 21:22:23 +04:00
Roman Pominov a74dbe06d3 Fix bugs with creating component by DnD to canvas (#1510)
## Description

https://discord.com/channels/955905230107738152/1098959267396059228

There were two bugs:

1. Same as in
https://github.com/webstudio-is/webstudio-builder/pull/1483 setState
didn't work correctly after React update
2. Scrub used to call `onStatusChange("idle")` at unmount (now fixed).
We use scrub for canvas resize, and restore pointer events when status
changes to "idle". But we also unmount scrub on DnD start. So on DnD
start we ended up with pointer events turned on.

## Steps for reproduction

1. DnD of components to canvas should work well now
2023-04-21 18:03:58 +03:00
Ivan Starkov 885fa38885 Fix data not synchronized if you reopen the projects from the dashboard (#1508)
Fix data not synchronized if you reopen the projects from the dashboard
2023-04-21 21:29:02 +07:00
Oleg Isonen 472c536003 NavLink with current page state (#1505)
## Description

This is using NavLink instead of Link by default to allow styling
Current Page state so we can use it for navigations.

## Steps for reproduction

Can't be tested because works only on a published site and we need to
fix publishing on staging and locally

## Code Review

- [ ] hi @istarkov , 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-04-21 14:29:53 +02:00
Oleg Isonen 119d8410c3 Fix switching to base breakpoint on a small screen (#1504)
when base breakpoint selected, always use a width between max and min
breakpoints at the lowest value

## Code Review

- [ ] hi @istarkov , 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:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-04-21 14:12:21 +02:00
Bogdan Chadkin 6c787558fc Fix body preset styles (#1500)
Ref https://github.com/webstudio-is/webstudio-builder/issues/1243

Changed body styles to black on transparent defaults.
Added white background to iframe to make canvas visible on workspace.
2023-04-21 11:58:49 +07:00
Roman Pominov cacdbddb14 Paddings to make space for scroll bar (#1502)
## Description

Closes #1458

1. Fixed paddings
2. Fixed color of scrollbar
3. Fixed color of the options button of the selected page item
2023-04-20 16:54:44 +03:00
Roman Pominov 037d35162c Fix a bug when link to Home doesn't work on a published site (#1503)
## Description

Context:
https://discord.com/channels/955905230107738152/1098457250235957258

Fix of the bug: on a published site, when you point a link to Page=Home,
the rendered `href` contains path of the current page.

This is most likely due to `homePage.path === ""` and when we pass
`to=""` to RemixLink it behaves like this.

So I made sure we pass `to="/"` for the home page.
2023-04-20 16:36:38 +03:00
Bogdan Chadkin 723d9e2f20 Remove handleRequest from react-sdk (#1499)
We should not have any server specific functions in react-sdk. Any small
change can break client environment.

And moving to /server entry point still problematic because this entry
point is node specific while we want to support as many environments as
possible.

Recently remix added defaults for different environments so user do not
need to add any entry.client.tsx or entry.server.ts at all.

Defaults do not work for us in builder though doing great in size test
setup.
2023-04-20 18:10:53 +07:00
Bogdan Chadkin b67ec9aa9d Compute remote style source (#1497)
Ref https://github.com/webstudio-is/webstudio-builder/issues/1338
https://github.com/webstudio-is/webstudio-builder/issues/807

Used remote color for previous style sources and added messages to
property name popup.

<img width="313" alt="Screenshot 2023-04-20 at 11 54 01"
src="https://user-images.githubusercontent.com/5635476/233264852-739a3f7f-8542-482f-b41c-9c81d8a3d142.png">
<img width="298" alt="Screenshot 2023-04-20 at 11 54 50"
src="https://user-images.githubusercontent.com/5635476/233264866-c1f8f00a-e428-46ca-b890-53aa27ce20f7.png">
<img width="254" alt="Screenshot 2023-04-20 at 11 58 04"
src="https://user-images.githubusercontent.com/5635476/233264871-4228b48f-902f-44e4-beae-9cc8ab22045b.png">
<img width="283" alt="Screenshot 2023-04-20 at 11 58 15"
src="https://user-images.githubusercontent.com/5635476/233264876-af1ebeb7-920b-4085-a6ef-86184d40d020.png">
2023-04-20 17:57:30 +07:00
Bogdan Chadkin 197a03ede3 Add handshaken store (#1498)
Here replaced canvasReady and canvasReadyAck events with handshaken
store which reuses the logic from stores synchronization.
2023-04-20 17:40:43 +07:00
Bogdan Chadkin 972bbf174d Prevent cyclic slot reparent (#1496)
Here consider this scenario when reparenting

- Create a slot
- Put a Box in it
- Copy the Slot
- Drag copy of the slot inside Box in the original slot
2023-04-20 15:40:34 +07:00