diff --git a/app/canvas/canvas.tsx b/app/canvas/canvas.tsx index 8e92dd5bb8..c00d27054b 100644 --- a/app/canvas/canvas.tsx +++ b/app/canvas/canvas.tsx @@ -11,21 +11,23 @@ import { WrapperComponent, globalStyles, } from "@webstudio-is/sdk"; -import { publish, useSubscribe } from "./pubsub"; +import { publish, useSubscribe } from "./shared/pubsub"; import { createElementsTree, setInstanceChildren } from "~/shared/tree-utils"; +import { useDragDropHandlers } from "./shared/use-drag-drop-handlers"; +import { useShortcuts } from "./shared/use-shortcuts"; import { - useDragDropHandlers, - useShortcuts, usePopulateRootInstance, - useUpdateInstanceStyle, - usePublishSelectedInstance, useInsertInstance, useDeleteInstance, - usePublishRootInstance, - useActiveElementTracking, useReparentInstance, -} from "./hooks"; -import { WrapperComponentDev } from "./wrapper-component"; +} from "./shared/tree"; +import { useUpdateInstanceStyle } from "./shared/style"; +import { + usePublishSelectedInstance, + usePublishRootInstance, +} from "./shared/publish"; +import { useActiveElementTracking } from "./shared/active-element"; +import { WrapperComponentDev } from "./features/wrapper-component"; const useElementsTree = ( rootInstance: Instance, diff --git a/app/canvas/wrapper-component/editable/index.ts b/app/canvas/features/wrapper-component/editable/index.ts similarity index 100% rename from app/canvas/wrapper-component/editable/index.ts rename to app/canvas/features/wrapper-component/editable/index.ts diff --git a/app/canvas/wrapper-component/editable/use-content-editable.tsx b/app/canvas/features/wrapper-component/editable/use-content-editable.tsx similarity index 99% rename from app/canvas/wrapper-component/editable/use-content-editable.tsx rename to app/canvas/features/wrapper-component/editable/use-content-editable.tsx index 8bcd707b11..48bdec6dde 100644 --- a/app/canvas/wrapper-component/editable/use-content-editable.tsx +++ b/app/canvas/features/wrapper-component/editable/use-content-editable.tsx @@ -5,7 +5,7 @@ import ObjectId from "bson-objectid"; import { type ChildrenUpdates, type Instance } from "@webstudio-is/sdk"; import { type OnChangeChildren } from "~/shared/tree-utils"; import { primitives } from "~/shared/component"; -import { useSelectedInstance } from "~/canvas/nano-values"; +import { useSelectedInstance } from "~/canvas/shared/nano-values"; import { useEditable, type Content } from "./use-editable"; import { useToolbar } from "./use-toolbar"; diff --git a/app/canvas/wrapper-component/editable/use-editable.tsx b/app/canvas/features/wrapper-component/editable/use-editable.tsx similarity index 100% rename from app/canvas/wrapper-component/editable/use-editable.tsx rename to app/canvas/features/wrapper-component/editable/use-editable.tsx diff --git a/app/canvas/wrapper-component/editable/use-toolbar.tsx b/app/canvas/features/wrapper-component/editable/use-toolbar.tsx similarity index 100% rename from app/canvas/wrapper-component/editable/use-toolbar.tsx rename to app/canvas/features/wrapper-component/editable/use-toolbar.tsx diff --git a/app/canvas/wrapper-component/index.ts b/app/canvas/features/wrapper-component/index.ts similarity index 100% rename from app/canvas/wrapper-component/index.ts rename to app/canvas/features/wrapper-component/index.ts diff --git a/app/canvas/wrapper-component/use-css.tsx b/app/canvas/features/wrapper-component/use-css.tsx similarity index 95% rename from app/canvas/wrapper-component/use-css.tsx rename to app/canvas/features/wrapper-component/use-css.tsx index 0e8bdebc1b..d4089f5a5d 100644 --- a/app/canvas/wrapper-component/use-css.tsx +++ b/app/canvas/features/wrapper-component/use-css.tsx @@ -1,6 +1,6 @@ import { useMemo } from "react"; import { type Instance, css as createCss, type CSS } from "@webstudio-is/sdk"; -import { useDragData, useSelectedInstance } from "~/canvas/nano-values"; +import { useDragData, useSelectedInstance } from "~/canvas/shared/nano-values"; import { primitives } from "~/shared/component"; // @todo this doesn't work with the node at the top edge of the iframe, tag gets hidden. diff --git a/app/canvas/wrapper-component/use-draggable.ts b/app/canvas/features/wrapper-component/use-draggable.ts similarity index 97% rename from app/canvas/wrapper-component/use-draggable.ts rename to app/canvas/features/wrapper-component/use-draggable.ts index 6393a2def6..07867f48a9 100644 --- a/app/canvas/wrapper-component/use-draggable.ts +++ b/app/canvas/features/wrapper-component/use-draggable.ts @@ -2,7 +2,7 @@ import { useCallback, useEffect } from "react"; import { useDrag } from "react-dnd"; import { type Instance } from "@webstudio-is/sdk"; import { type InitialDragData } from "~/shared/component"; -import { publish } from "../pubsub"; +import { publish } from "../../shared/pubsub"; //import { usePointerOutline } from "~/canvas/hooks"; type UseDraggable = { diff --git a/app/canvas/wrapper-component/wrapper-component.tsx b/app/canvas/features/wrapper-component/wrapper-component.tsx similarity index 100% rename from app/canvas/wrapper-component/wrapper-component.tsx rename to app/canvas/features/wrapper-component/wrapper-component.tsx diff --git a/app/canvas/hooks/index.ts b/app/canvas/hooks/index.ts deleted file mode 100644 index 136f68540a..0000000000 --- a/app/canvas/hooks/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -export * from "./publish"; -export * from "./style"; -export * from "./tree"; -export * from "./use-drag-drop-handlers"; -export * from "./use-shortcuts"; -export * from "./active-element"; -export * from "./use-pointer-outline"; diff --git a/app/canvas/hooks/active-element.ts b/app/canvas/shared/active-element.ts similarity index 94% rename from app/canvas/hooks/active-element.ts rename to app/canvas/shared/active-element.ts index b274fa5dfd..515451e76a 100644 --- a/app/canvas/hooks/active-element.ts +++ b/app/canvas/shared/active-element.ts @@ -1,8 +1,8 @@ import { useCallback, useEffect } from "react"; -import { findInstanceById } from "~/shared/tree-utils"; import { type Instance } from "@webstudio-is/sdk"; -import { useSelectedInstance, useSelectedElement } from "../nano-values"; -import { publish, useSubscribe } from "../pubsub"; +import { findInstanceById } from "~/shared/tree-utils"; +import { useSelectedInstance, useSelectedElement } from "./nano-values"; +import { publish, useSubscribe } from "./pubsub"; const eventOptions = { passive: true, diff --git a/app/canvas/nano-values/index.ts b/app/canvas/shared/nano-values.ts similarity index 100% rename from app/canvas/nano-values/index.ts rename to app/canvas/shared/nano-values.ts diff --git a/app/canvas/hooks/publish.ts b/app/canvas/shared/publish.ts similarity index 92% rename from app/canvas/hooks/publish.ts rename to app/canvas/shared/publish.ts index f79512faf8..4caeaa439c 100644 --- a/app/canvas/hooks/publish.ts +++ b/app/canvas/shared/publish.ts @@ -1,14 +1,14 @@ import { useEffect } from "react"; -import { type SelectedInstanceData } from "~/shared/component"; +import ObjectId from "bson-objectid"; import { getBrowserStyle, useAllUserProps, type Instance, type Tree, } from "@webstudio-is/sdk"; -import { useSelectedInstance, useSelectedElement } from "../nano-values"; -import { publish } from "../pubsub"; -import ObjectId from "bson-objectid"; +import { type SelectedInstanceData } from "~/shared/component"; +import { useSelectedInstance, useSelectedElement } from "./nano-values"; +import { publish } from "./pubsub"; export const usePublishSelectedInstance = ({ treeId, diff --git a/app/canvas/pubsub.ts b/app/canvas/shared/pubsub.ts similarity index 100% rename from app/canvas/pubsub.ts rename to app/canvas/shared/pubsub.ts diff --git a/app/canvas/hooks/style.ts b/app/canvas/shared/style.ts similarity index 87% rename from app/canvas/hooks/style.ts rename to app/canvas/shared/style.ts index 3a6b3560ae..e057610575 100644 --- a/app/canvas/hooks/style.ts +++ b/app/canvas/shared/style.ts @@ -1,8 +1,8 @@ -import { type StyleUpdates } from "~/shared/component"; import { type Instance } from "@webstudio-is/sdk"; +import { type StyleUpdates } from "~/shared/component"; import { setInstanceStyle } from "~/shared/tree-utils"; -import { useSelectedInstance } from "../nano-values"; -import { useSubscribe } from "../pubsub"; +import { useSelectedInstance } from "./nano-values"; +import { useSubscribe } from "./pubsub"; export const useUpdateInstanceStyle = ({ rootInstance, diff --git a/app/canvas/hooks/tree.ts b/app/canvas/shared/tree.ts similarity index 96% rename from app/canvas/hooks/tree.ts rename to app/canvas/shared/tree.ts index c728d946c3..13364fa0e9 100644 --- a/app/canvas/hooks/tree.ts +++ b/app/canvas/shared/tree.ts @@ -8,8 +8,8 @@ import { deleteInstance, reparentInstance, } from "~/shared/tree-utils"; -import { useSelectedInstance } from "../nano-values"; -import { useSubscribe } from "../pubsub"; +import { useSelectedInstance } from "./nano-values"; +import { useSubscribe } from "./pubsub"; export const usePopulateRootInstance = (tree: Tree) => { // Caches initial population of the instance, won't be updated after. diff --git a/app/canvas/hooks/use-drag-drop-handlers.ts b/app/canvas/shared/use-drag-drop-handlers.ts similarity index 97% rename from app/canvas/hooks/use-drag-drop-handlers.ts rename to app/canvas/shared/use-drag-drop-handlers.ts index 5968c75333..eeb92bb38f 100644 --- a/app/canvas/hooks/use-drag-drop-handlers.ts +++ b/app/canvas/shared/use-drag-drop-handlers.ts @@ -12,8 +12,8 @@ import { findInsertionIndex, getDragOverInfo, } from "~/shared/dom-utils"; -import { useDragData, useSelectedInstance } from "../nano-values"; -import { publish, useSubscribe } from "../pubsub"; +import { useDragData, useSelectedInstance } from "./nano-values"; +import { publish, useSubscribe } from "./pubsub"; //import {usePointerOutline} from './use-pointer-outline' // Avoid recalculating rects for each node during dragging. diff --git a/app/canvas/hooks/use-pointer-outline.ts b/app/canvas/shared/use-pointer-outline.ts similarity index 100% rename from app/canvas/hooks/use-pointer-outline.ts rename to app/canvas/shared/use-pointer-outline.ts diff --git a/app/canvas/hooks/use-shortcuts.ts b/app/canvas/shared/use-shortcuts.ts similarity index 90% rename from app/canvas/hooks/use-shortcuts.ts rename to app/canvas/shared/use-shortcuts.ts index fcb330855e..2c57d6e016 100644 --- a/app/canvas/hooks/use-shortcuts.ts +++ b/app/canvas/shared/use-shortcuts.ts @@ -1,7 +1,7 @@ import { useHotkeys } from "react-hotkeys-hook"; import { type Instance } from "@webstudio-is/sdk"; -import { useSelectedInstance } from "../nano-values"; -import { publish } from "../pubsub"; +import { useSelectedInstance } from "./nano-values"; +import { publish } from "./pubsub"; export const useShortcuts = ({ rootInstance }: { rootInstance: Instance }) => { const [instance, setSelectedInstance] = useSelectedInstance(); diff --git a/app/designer/designer.tsx b/app/designer/designer.tsx index 88813cb433..9c367baea4 100644 --- a/app/designer/designer.tsx +++ b/app/designer/designer.tsx @@ -6,18 +6,22 @@ import type { Config } from "~/config"; import type { SelectedInstanceData } from "~/shared/component"; import { Box, Flex, Grid, type CSS } from "~/shared/design-system"; import interStyles from "~/shared/font-faces/inter.css"; -import { SidebarLeft } from "./sidebar-left"; -import { SidebarRight } from "./inspector"; -import { CanvasIframe, useSubscribe, usePublish } from "./canvas-iframe"; +import { SidebarLeft } from "./features/sidebar-left"; +import { SidebarRight } from "./features/sidebar-right"; +import { + CanvasIframe, + useSubscribe, + usePublish, +} from "./features/canvas-iframe"; import { useIsPreviewMode, useRootInstance, useSelectedInstanceData, -} from "./nano-values"; -import { Topbar } from "./topbar"; +} from "./shared/nano-values"; +import { Topbar } from "./features/topbar"; import designerStyles from "./designer.css"; -import { useSync } from "./sync"; -import { Breadcrumbs } from "./breadcrumbs"; +import { useSync } from "./features/sync"; +import { Breadcrumbs } from "./features/breadcrumbs"; export const links = () => { return [ diff --git a/app/designer/breadcrumbs/Breadcrumbs.tsx b/app/designer/features/breadcrumbs/Breadcrumbs.tsx similarity index 94% rename from app/designer/breadcrumbs/Breadcrumbs.tsx rename to app/designer/features/breadcrumbs/Breadcrumbs.tsx index 27fe569e3c..b9eed76d05 100644 --- a/app/designer/breadcrumbs/Breadcrumbs.tsx +++ b/app/designer/features/breadcrumbs/Breadcrumbs.tsx @@ -1,6 +1,6 @@ import { ChevronRightIcon } from "~/shared/icons"; import { Button, Flex, Text } from "~/shared/design-system"; -import { useSelectedInstancePath } from "../instance/use-selected-instance-path"; +import { useSelectedInstancePath } from "../../shared/instance/use-selected-instance-path"; import { Instance } from "@webstudio-is/sdk"; import { Publish } from "../canvas-iframe"; diff --git a/app/designer/breadcrumbs/index.ts b/app/designer/features/breadcrumbs/index.ts similarity index 100% rename from app/designer/breadcrumbs/index.ts rename to app/designer/features/breadcrumbs/index.ts diff --git a/app/designer/canvas-iframe/canvas-iframe.tsx b/app/designer/features/canvas-iframe/canvas-iframe.tsx similarity index 100% rename from app/designer/canvas-iframe/canvas-iframe.tsx rename to app/designer/features/canvas-iframe/canvas-iframe.tsx diff --git a/app/designer/canvas-iframe/index.ts b/app/designer/features/canvas-iframe/index.ts similarity index 100% rename from app/designer/canvas-iframe/index.ts rename to app/designer/features/canvas-iframe/index.ts diff --git a/app/designer/canvas-iframe/pubsub.ts b/app/designer/features/canvas-iframe/pubsub.ts similarity index 100% rename from app/designer/canvas-iframe/pubsub.ts rename to app/designer/features/canvas-iframe/pubsub.ts diff --git a/app/designer/settings-panel/index.ts b/app/designer/features/settings-panel/index.ts similarity index 100% rename from app/designer/settings-panel/index.ts rename to app/designer/features/settings-panel/index.ts diff --git a/app/designer/settings-panel/settings-panel.tsx b/app/designer/features/settings-panel/settings-panel.tsx similarity index 94% rename from app/designer/settings-panel/settings-panel.tsx rename to app/designer/features/settings-panel/settings-panel.tsx index d9b36953df..d536f136e2 100644 --- a/app/designer/settings-panel/settings-panel.tsx +++ b/app/designer/features/settings-panel/settings-panel.tsx @@ -1,6 +1,6 @@ import { type UserProp } from "@webstudio-is/sdk"; -import { CollapsibleSection } from "~/designer/inspector"; -import type { Publish } from "~/designer/canvas-iframe"; +import { CollapsibleSection } from "~/designer/shared/inspector"; +import type { Publish } from "~/designer/features/canvas-iframe"; import { TextField, Flex, Button } from "~/shared/design-system"; import { PlusIcon, TrashIcon } from "~/shared/icons"; import type { SelectedInstanceData } from "~/shared/component"; diff --git a/app/designer/settings-panel/use-props-logic.ts b/app/designer/features/settings-panel/use-props-logic.ts similarity index 97% rename from app/designer/settings-panel/use-props-logic.ts rename to app/designer/features/settings-panel/use-props-logic.ts index 8b9d052f03..c37c103863 100644 --- a/app/designer/settings-panel/use-props-logic.ts +++ b/app/designer/features/settings-panel/use-props-logic.ts @@ -3,7 +3,7 @@ import { useState, useCallback, useEffect, useRef } from "react"; import debounce from "lodash.debounce"; import ObjectId from "bson-objectid"; import type { DeleteProp, UserProp, UserPropsUpdates } from "@webstudio-is/sdk"; -import type { Publish } from "~/designer/canvas-iframe"; +import type { Publish } from "~/designer/features/canvas-iframe"; import type { SelectedInstanceData } from "~/shared/component"; const getInitialProp = () => ({ diff --git a/app/designer/sidebar-left/custom-drag-layer.tsx b/app/designer/features/sidebar-left/custom-drag-layer.tsx similarity index 100% rename from app/designer/sidebar-left/custom-drag-layer.tsx rename to app/designer/features/sidebar-left/custom-drag-layer.tsx diff --git a/app/designer/sidebar-left/index.tsx b/app/designer/features/sidebar-left/index.tsx similarity index 100% rename from app/designer/sidebar-left/index.tsx rename to app/designer/features/sidebar-left/index.tsx diff --git a/app/designer/sidebar-left/panels/components.tsx b/app/designer/features/sidebar-left/panels/components.tsx similarity index 98% rename from app/designer/sidebar-left/panels/components.tsx rename to app/designer/features/sidebar-left/panels/components.tsx index c0fc72c820..ed59c6cea3 100644 --- a/app/designer/sidebar-left/panels/components.tsx +++ b/app/designer/features/sidebar-left/panels/components.tsx @@ -10,7 +10,7 @@ import { type Instance } from "@webstudio-is/sdk"; import { Flex, Text } from "~/shared/design-system"; import { Component1Icon } from "~/shared/icons"; import { primitives, type InitialDragData } from "~/shared/component"; -import { type Publish } from "~/designer/canvas-iframe"; +import { type Publish } from "~/designer/features/canvas-iframe"; import { CustomDragLayer } from "../custom-drag-layer"; import type { TabName } from "../types"; diff --git a/app/designer/sidebar-left/panels/index.ts b/app/designer/features/sidebar-left/panels/index.ts similarity index 100% rename from app/designer/sidebar-left/panels/index.ts rename to app/designer/features/sidebar-left/panels/index.ts diff --git a/app/designer/sidebar-left/panels/tree.tsx b/app/designer/features/sidebar-left/panels/tree.tsx similarity index 78% rename from app/designer/sidebar-left/panels/tree.tsx rename to app/designer/features/sidebar-left/panels/tree.tsx index ddcd0ef059..81cf0fbf87 100644 --- a/app/designer/sidebar-left/panels/tree.tsx +++ b/app/designer/features/sidebar-left/panels/tree.tsx @@ -2,10 +2,10 @@ import { type Instance } from "@webstudio-is/sdk"; import { ListNestedIcon } from "~/shared/icons"; import { Flex } from "~/shared/design-system"; import { type SelectedInstanceData } from "~/shared/component"; -import { type Publish } from "~/designer/canvas-iframe"; -import { useSelectedInstancePath } from "~/designer/instance/use-selected-instance-path"; -import { useRootInstance } from "~/designer/nano-values"; -import { Tree } from "~/designer/tree"; +import { type Publish } from "~/designer/features/canvas-iframe"; +import { useSelectedInstancePath } from "~/designer/shared/instance/use-selected-instance-path"; +import { useRootInstance } from "~/designer/shared/nano-values"; +import { Tree } from "~/designer/shared/tree"; type TabContentProps = { publish: Publish; diff --git a/app/designer/sidebar-left/sidebar-left.tsx b/app/designer/features/sidebar-left/sidebar-left.tsx similarity index 94% rename from app/designer/sidebar-left/sidebar-left.tsx rename to app/designer/features/sidebar-left/sidebar-left.tsx index 2c17e90b2c..0f45dea50d 100644 --- a/app/designer/sidebar-left/sidebar-left.tsx +++ b/app/designer/features/sidebar-left/sidebar-left.tsx @@ -6,8 +6,8 @@ import { SidebarTabsList, SidebarTabsTrigger, } from "~/shared/design-system"; -import { useSubscribe, type Publish } from "~/designer/canvas-iframe"; -import { useSelectedInstanceData } from "../nano-values"; +import { useSubscribe, type Publish } from "~/designer/features/canvas-iframe"; +import { useSelectedInstanceData } from "../../shared/nano-values"; import * as panels from "./panels"; import type { TabName } from "./types"; diff --git a/app/designer/sidebar-left/types.ts b/app/designer/features/sidebar-left/types.ts similarity index 100% rename from app/designer/sidebar-left/types.ts rename to app/designer/features/sidebar-left/types.ts diff --git a/app/designer/features/sidebar-right/index.ts b/app/designer/features/sidebar-right/index.ts new file mode 100644 index 0000000000..3ce791e7fe --- /dev/null +++ b/app/designer/features/sidebar-right/index.ts @@ -0,0 +1 @@ +export * from "./sidebar-right"; diff --git a/app/designer/inspector/sidebar-right.tsx b/app/designer/features/sidebar-right/sidebar-right.tsx similarity index 83% rename from app/designer/inspector/sidebar-right.tsx rename to app/designer/features/sidebar-right/sidebar-right.tsx index cda0f3eaf2..ddcbfd9123 100644 --- a/app/designer/inspector/sidebar-right.tsx +++ b/app/designer/features/sidebar-right/sidebar-right.tsx @@ -7,11 +7,11 @@ import { Paragraph, Box, } from "~/shared/design-system"; -import { StylePanel } from "~/designer/style-panel"; -import { SettingsPanel } from "~/designer/settings-panel"; -import type { Publish } from "~/designer/canvas-iframe"; +import { StylePanel } from "~/designer/features/style-panel"; +import { SettingsPanel } from "~/designer/features/settings-panel"; +import type { Publish } from "~/designer/features/canvas-iframe"; import { BrushIcon, GearIcon } from "~/shared/icons"; -import { useSelectedInstanceData } from "../nano-values"; +import { useSelectedInstanceData } from "~/designer/shared/nano-values"; type SidebarRightProps = { publish: Publish; diff --git a/app/designer/style-panel/component-info.tsx b/app/designer/features/style-panel/component-info.tsx similarity index 100% rename from app/designer/style-panel/component-info.tsx rename to app/designer/features/style-panel/component-info.tsx diff --git a/app/designer/style-panel/dependencies.ts b/app/designer/features/style-panel/dependencies.ts similarity index 100% rename from app/designer/style-panel/dependencies.ts rename to app/designer/features/style-panel/dependencies.ts diff --git a/app/designer/style-panel/get-inherited-style.ts b/app/designer/features/style-panel/get-inherited-style.ts similarity index 100% rename from app/designer/style-panel/get-inherited-style.ts rename to app/designer/features/style-panel/get-inherited-style.ts diff --git a/app/designer/style-panel/index.ts b/app/designer/features/style-panel/index.ts similarity index 100% rename from app/designer/style-panel/index.ts rename to app/designer/features/style-panel/index.ts diff --git a/app/designer/style-panel/lib/autocomplete.tsx b/app/designer/features/style-panel/lib/autocomplete.tsx similarity index 100% rename from app/designer/style-panel/lib/autocomplete.tsx rename to app/designer/features/style-panel/lib/autocomplete.tsx diff --git a/app/designer/style-panel/lib/color-picker.tsx b/app/designer/features/style-panel/lib/color-picker.tsx similarity index 100% rename from app/designer/style-panel/lib/color-picker.tsx rename to app/designer/features/style-panel/lib/color-picker.tsx diff --git a/app/designer/style-panel/lib/spacing-widget.tsx b/app/designer/features/style-panel/lib/spacing-widget.tsx similarity index 100% rename from app/designer/style-panel/lib/spacing-widget.tsx rename to app/designer/features/style-panel/lib/spacing-widget.tsx diff --git a/app/designer/style-panel/parse-value.ts b/app/designer/features/style-panel/parse-value.ts similarity index 100% rename from app/designer/style-panel/parse-value.ts rename to app/designer/features/style-panel/parse-value.ts diff --git a/app/designer/style-panel/render-property.tsx b/app/designer/features/style-panel/render-property.tsx similarity index 100% rename from app/designer/style-panel/render-property.tsx rename to app/designer/features/style-panel/render-property.tsx diff --git a/app/designer/style-panel/settings.tsx b/app/designer/features/style-panel/settings.tsx similarity index 98% rename from app/designer/style-panel/settings.tsx rename to app/designer/features/style-panel/settings.tsx index e80377bde9..1514739eab 100644 --- a/app/designer/style-panel/settings.tsx +++ b/app/designer/features/style-panel/settings.tsx @@ -3,7 +3,7 @@ import { Box, Flex, Collapsible, Button } from "~/shared/design-system"; import { TriangleRightIcon, TriangleDownIcon } from "~/shared/icons"; import { categories, type Category, type Style } from "@webstudio-is/sdk"; import { styleConfigs, type StyleConfig } from "~/shared/style-panel-configs"; -import { CollapsibleSection } from "~/designer/inspector"; +import { CollapsibleSection } from "~/designer/shared/inspector"; import type { SectionProps } from "./types"; import { renderProperty } from "./render-property"; import { dependencies } from "./dependencies"; diff --git a/app/designer/style-panel/style-panel.tsx b/app/designer/features/style-panel/style-panel.tsx similarity index 94% rename from app/designer/style-panel/style-panel.tsx rename to app/designer/features/style-panel/style-panel.tsx index 88f9967062..a66d105bf6 100644 --- a/app/designer/style-panel/style-panel.tsx +++ b/app/designer/features/style-panel/style-panel.tsx @@ -1,4 +1,4 @@ -import type { Publish } from "~/designer/canvas-iframe"; +import type { Publish } from "~/designer/features/canvas-iframe"; import { Box } from "~/shared/design-system"; import type { SelectedInstanceData } from "~/shared/component"; import { useStyleData } from "./use-style-data"; diff --git a/app/designer/style-panel/types.ts b/app/designer/features/style-panel/types.ts similarity index 100% rename from app/designer/style-panel/types.ts rename to app/designer/features/style-panel/types.ts diff --git a/app/designer/style-panel/use-style-data.ts b/app/designer/features/style-panel/use-style-data.ts similarity index 94% rename from app/designer/style-panel/use-style-data.ts rename to app/designer/features/style-panel/use-style-data.ts index 8dc63ab651..24e09d72f0 100644 --- a/app/designer/style-panel/use-style-data.ts +++ b/app/designer/features/style-panel/use-style-data.ts @@ -1,8 +1,8 @@ import { useState, useMemo, useEffect } from "react"; import type { SelectedInstanceData, StyleUpdates } from "~/shared/component"; import { type Style, type StyleProperty } from "@webstudio-is/sdk"; -import { type Publish } from "~/designer/canvas-iframe"; -import { useRootInstance } from "../nano-values"; +import { type Publish } from "~/designer/features/canvas-iframe"; +import { useRootInstance } from "../../shared/nano-values"; import { parseValue } from "./parse-value"; import { getInheritedStyle, type InheritedStyle } from "./get-inherited-style"; diff --git a/app/designer/sync/index.ts b/app/designer/features/sync/index.ts similarity index 100% rename from app/designer/sync/index.ts rename to app/designer/features/sync/index.ts diff --git a/app/designer/sync/queue.ts b/app/designer/features/sync/queue.ts similarity index 100% rename from app/designer/sync/queue.ts rename to app/designer/features/sync/queue.ts diff --git a/app/designer/sync/status.ts b/app/designer/features/sync/status.ts similarity index 100% rename from app/designer/sync/status.ts rename to app/designer/features/sync/status.ts diff --git a/app/designer/sync/use-sync.ts b/app/designer/features/sync/use-sync.ts similarity index 97% rename from app/designer/sync/use-sync.ts rename to app/designer/features/sync/use-sync.ts index d110ef994d..1049a8aceb 100644 --- a/app/designer/sync/use-sync.ts +++ b/app/designer/features/sync/use-sync.ts @@ -12,7 +12,7 @@ import type { InstanceReparentingSpec, } from "~/shared/tree-utils"; import type { StyleUpdates } from "~/shared/component"; -import { useSubscribe } from "~/designer/canvas-iframe"; +import { useSubscribe } from "~/designer/features/canvas-iframe"; import { enqueue } from "./queue"; // @todo this entire queueing logic needs to be gone, it's a workaround, diff --git a/app/designer/topbar/index.ts b/app/designer/features/topbar/index.ts similarity index 100% rename from app/designer/topbar/index.ts rename to app/designer/features/topbar/index.ts diff --git a/app/designer/topbar/menu.tsx b/app/designer/features/topbar/menu.tsx similarity index 98% rename from app/designer/topbar/menu.tsx rename to app/designer/features/topbar/menu.tsx index 9d3a1bd547..9fa36a2421 100644 --- a/app/designer/topbar/menu.tsx +++ b/app/designer/features/topbar/menu.tsx @@ -20,7 +20,7 @@ import { useIsPreviewMode, useIsShareDialogOpen, useIsPublishDialogOpen, -} from "../nano-values"; +} from "../../shared/nano-values"; type MenuProps = { config: Config; diff --git a/app/designer/topbar/preview.tsx b/app/designer/features/topbar/preview.tsx similarity index 82% rename from app/designer/topbar/preview.tsx rename to app/designer/features/topbar/preview.tsx index 60076a7d05..5b6533d8cd 100644 --- a/app/designer/topbar/preview.tsx +++ b/app/designer/features/topbar/preview.tsx @@ -1,7 +1,7 @@ import { EyeOpenIcon } from "~/shared/icons"; import { SimpleToggle } from "~/shared/design-system"; -import { type Publish } from "~/designer/canvas-iframe"; -import { useIsPreviewMode } from "../nano-values"; +import { type Publish } from "~/designer/features/canvas-iframe"; +import { useIsPreviewMode } from "../../shared/nano-values"; type PreviewProps = { publish: Publish; diff --git a/app/designer/topbar/publish.tsx b/app/designer/features/topbar/publish.tsx similarity index 97% rename from app/designer/topbar/publish.tsx rename to app/designer/features/topbar/publish.tsx index f4e58c9bd3..a4671e28ee 100644 --- a/app/designer/topbar/publish.tsx +++ b/app/designer/features/topbar/publish.tsx @@ -14,7 +14,7 @@ import { Label, Link, } from "~/shared/design-system"; -import { useIsPublishDialogOpen } from "../nano-values"; +import { useIsPublishDialogOpen } from "../../shared/nano-values"; type PublishProps = { project: Project }; diff --git a/app/designer/topbar/share.tsx b/app/designer/features/topbar/share.tsx similarity index 96% rename from app/designer/topbar/share.tsx rename to app/designer/features/topbar/share.tsx index 9d29bbb03e..10b26d35c8 100644 --- a/app/designer/topbar/share.tsx +++ b/app/designer/features/topbar/share.tsx @@ -9,7 +9,7 @@ import { } from "~/shared/design-system"; import { Share1Icon } from "~/shared/icons"; import { type Project } from "@webstudio-is/sdk"; -import { useIsShareDialogOpen } from "../nano-values"; +import { useIsShareDialogOpen } from "../../shared/nano-values"; type ShareProps = { path: string; project: Project }; diff --git a/app/designer/topbar/sync-status.tsx b/app/designer/features/topbar/sync-status.tsx similarity index 100% rename from app/designer/topbar/sync-status.tsx rename to app/designer/features/topbar/sync-status.tsx diff --git a/app/designer/topbar/topbar.tsx b/app/designer/features/topbar/topbar.tsx similarity index 92% rename from app/designer/topbar/topbar.tsx rename to app/designer/features/topbar/topbar.tsx index e3c8db69be..4adff53367 100644 --- a/app/designer/topbar/topbar.tsx +++ b/app/designer/features/topbar/topbar.tsx @@ -6,7 +6,7 @@ import { Share } from "./share"; import { Publish } from "./publish"; import { SyncStatus } from "./sync-status"; import { Menu } from "./menu"; -import { type Publish as PublishOnCanvas } from "~/designer/canvas-iframe"; +import { type Publish as PublishOnCanvas } from "~/designer/features/canvas-iframe"; type TopbarProps = { config: Config; diff --git a/app/designer/inspector/collapsible-section.tsx b/app/designer/shared/inspector/collapsible-section.tsx similarity index 100% rename from app/designer/inspector/collapsible-section.tsx rename to app/designer/shared/inspector/collapsible-section.tsx diff --git a/app/designer/inspector/index.tsx b/app/designer/shared/inspector/index.tsx similarity index 54% rename from app/designer/inspector/index.tsx rename to app/designer/shared/inspector/index.tsx index db47550ef4..72093cbf7e 100644 --- a/app/designer/inspector/index.tsx +++ b/app/designer/shared/inspector/index.tsx @@ -1,2 +1 @@ -export * from "./sidebar-right"; export * from "./collapsible-section"; diff --git a/app/designer/instance/use-selected-instance-path.ts b/app/designer/shared/instance/use-selected-instance-path.ts similarity index 100% rename from app/designer/instance/use-selected-instance-path.ts rename to app/designer/shared/instance/use-selected-instance-path.ts diff --git a/app/designer/nano-values/index.ts b/app/designer/shared/nano-values/index.ts similarity index 100% rename from app/designer/nano-values/index.ts rename to app/designer/shared/nano-values/index.ts diff --git a/app/designer/tree/Tree.tsx b/app/designer/shared/tree/Tree.tsx similarity index 100% rename from app/designer/tree/Tree.tsx rename to app/designer/shared/tree/Tree.tsx diff --git a/app/designer/tree/index.ts b/app/designer/shared/tree/index.ts similarity index 100% rename from app/designer/tree/index.ts rename to app/designer/shared/tree/index.ts