From 98926042d248bdacdfd7a84e4d1dc933479b71f8 Mon Sep 17 00:00:00 2001 From: Toke Stuart Jepsen Date: Tue, 16 Jan 2024 10:16:33 +0000 Subject: [PATCH 1/2] Add build instructions --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index b238cd35..e6e2dfe6 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,14 @@ If you spot something incorrect or just think a page could do with some improvem 1. Make the changes to the relevant markdown file. 2. Make a PR documenting the changes. +## Build + +- Install Node.js https://nodejs.org/en/download +- `npm install -g yarn` +- `yarn add docusaurus --dev` +- `cd {ayon-doc-repo}/website` +- `yarn start` + ## Addons Every addon is resembled by a typescript or JSON file in `src/data/addons/data`. From f0ece51482ab5756bf783f82d698f8b0379a7464 Mon Sep 17 00:00:00 2001 From: Martin Wacker Date: Tue, 16 Jan 2024 12:44:46 +0100 Subject: [PATCH 2/2] ts and jsx files now respect .prettierrc --- website/.eslintrc.js | 100 ++++++++-------- website/.stylelintrc.js | 8 +- website/babel.config.js | 2 +- website/sidebars.js | 6 +- website/src/components/YnputNavbar/index.tsx | 4 +- website/src/data/addons/addons.ts | 6 +- website/src/data/addons/data/blender.ts | 2 +- website/src/data/addons/data/celaction.ts | 7 +- website/src/data/addons/data/core.ts | 3 +- website/src/data/addons/data/deadline.ts | 11 +- website/src/data/addons/data/flame.ts | 2 +- website/src/data/addons/data/ftrack.ts | 15 +-- website/src/data/addons/data/harmony.ts | 2 +- website/src/data/addons/data/hiero.ts | 13 +-- website/src/data/addons/data/houdini.ts | 2 +- website/src/data/addons/data/kitsu.ts | 6 +- website/src/data/addons/data/maya.ts | 4 +- website/src/data/addons/data/nuke.ts | 2 +- website/src/data/addons/data/slack.ts | 3 +- .../src/data/addons/data/substancepainter.ts | 5 +- website/src/data/addons/data/unreal.ts | 8 +- website/src/data/addons/data/wrap.ts | 7 +- website/src/data/addons/types.ts | 2 +- website/src/data/features/data.ts | 9 +- website/src/data/products/data.ts | 66 +++++------ .../features/_components/HeaderCard/index.tsx | 4 +- .../ShowcaseFilterToggle/index.tsx | 107 +++++++++--------- website/src/pages/features/index.tsx | 5 +- website/src/pages/index.js | 16 +-- 29 files changed, 204 insertions(+), 223 deletions(-) diff --git a/website/.eslintrc.js b/website/.eslintrc.js index 8ccf3b17..b9dc203c 100644 --- a/website/.eslintrc.js +++ b/website/.eslintrc.js @@ -12,55 +12,55 @@ const WARNING = 1; const ERROR = 2; module.exports = { - root: true, - env: { - browser: true, - commonjs: true, - jest: true, - node: true, - }, - parser: '@babel/eslint-parser', - parserOptions: { - allowImportExportEverywhere: true, - }, - extends: ['airbnb', 'prettier'], - plugins: ['react-hooks', 'header'], - rules: { - // Ignore certain webpack alias because it can't be resolved - 'import/no-unresolved': [ - ERROR, - {ignore: ['^@theme', '^@docusaurus', '^@generated']}, - ], - 'import/extensions': OFF, - 'header/header': [ - ERROR, - 'block', + root: true, + env: { + browser: true, + commonjs: true, + jest: true, + node: true, + }, + parser: "@babel/eslint-parser", + parserOptions: { + allowImportExportEverywhere: true, + }, + extends: ["airbnb", "prettier"], + plugins: ["react-hooks", "header"], + rules: { + // Ignore certain webpack alias because it can't be resolved + "import/no-unresolved": [ + ERROR, + { ignore: ["^@theme", "^@docusaurus", "^@generated"] }, + ], + "import/extensions": OFF, + "header/header": [ + ERROR, + "block", - [ - '*', - ' * Copyright (c) Meta Platforms, Inc. and affiliates.', - ' *', - ' * This source code is licensed under the MIT license found in the', - ' * LICENSE file in the root directory of this source tree.', - ' *', - // Unfortunately eslint-plugin-header doesn't support optional lines. - // If you want to enforce your website JS files to have @flow or @format, - // modify these lines accordingly. - { - pattern: '.* @format', - }, - ' ', - ], - ], - 'react/jsx-filename-extension': OFF, - 'react-hooks/rules-of-hooks': ERROR, - 'react/prop-types': OFF, // PropTypes aren't used much these days. - 'react/function-component-definition': [ - WARNING, - { - namedComponents: 'function-declaration', - unnamedComponents: 'arrow-function', - }, - ], - }, + [ + "*", + " * Copyright (c) Meta Platforms, Inc. and affiliates.", + " *", + " * This source code is licensed under the MIT license found in the", + " * LICENSE file in the root directory of this source tree.", + " *", + // Unfortunately eslint-plugin-header doesn't support optional lines. + // If you want to enforce your website JS files to have @flow or @format, + // modify these lines accordingly. + { + pattern: ".* @format", + }, + " ", + ], + ], + "react/jsx-filename-extension": OFF, + "react-hooks/rules-of-hooks": ERROR, + "react/prop-types": OFF, // PropTypes aren't used much these days. + "react/function-component-definition": [ + WARNING, + { + namedComponents: "function-declaration", + unnamedComponents: "arrow-function", + }, + ], + }, }; diff --git a/website/.stylelintrc.js b/website/.stylelintrc.js index 11b6ffb3..202e5f8d 100644 --- a/website/.stylelintrc.js +++ b/website/.stylelintrc.js @@ -6,8 +6,8 @@ */ module.exports = { - plugins: ['stylelint-copyright'], - rules: { - 'docusaurus/copyright-header': true, - }, + plugins: ["stylelint-copyright"], + rules: { + "docusaurus/copyright-header": true, + }, }; diff --git a/website/babel.config.js b/website/babel.config.js index e00595da..dd249ac1 100644 --- a/website/babel.config.js +++ b/website/babel.config.js @@ -1,3 +1,3 @@ module.exports = { - presets: [require.resolve('@docusaurus/core/lib/babel/preset')], + presets: [require.resolve("@docusaurus/core/lib/babel/preset")], }; diff --git a/website/sidebars.js b/website/sidebars.js index ad01c78d..d2ccb922 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -128,11 +128,11 @@ module.exports = { "addon_substancepainter_admin", "addon_tvpaint_admin", "addon_unreal_admin", - "addon_wrap_admin" + "addon_wrap_admin", ], }, "admin_releases", - "admin_import_openpype_project" + "admin_import_openpype_project", ], Dev: [ "dev_introduction", @@ -144,7 +144,7 @@ module.exports = { "dev_launcher", "dev_launcher_build_windows", "dev_launcher_build_macos", - "dev_launcher_build_linux" + "dev_launcher_build_linux", ], }, "dev_dev_mode", diff --git a/website/src/components/YnputNavbar/index.tsx b/website/src/components/YnputNavbar/index.tsx index c9fb8ad6..73face4d 100644 --- a/website/src/components/YnputNavbar/index.tsx +++ b/website/src/components/YnputNavbar/index.tsx @@ -40,7 +40,9 @@ const YnputNavbar = () => { Services
  • - Community + + Community +
  • Company diff --git a/website/src/data/addons/addons.ts b/website/src/data/addons/addons.ts index a1e43eb6..ee7c093b 100644 --- a/website/src/data/addons/addons.ts +++ b/website/src/data/addons/addons.ts @@ -47,13 +47,11 @@ export const officialAddons = [ "slack", "tvpaint", "unreal", - "wrap" + "wrap", ] as const; // COMMUNITY ADDONS -export const communityAddons = [ - "kitsu" -] as const; +export const communityAddons = ["kitsu"] as const; // featured addons // pick addons from community or official to be featured on the homepage diff --git a/website/src/data/addons/data/blender.ts b/website/src/data/addons/data/blender.ts index 5be6a138..2a8c7d30 100644 --- a/website/src/data/addons/data/blender.ts +++ b/website/src/data/addons/data/blender.ts @@ -18,7 +18,7 @@ const addon: Addon = { "libraryLoader", "reviewables", "slates", - "colorManaged" + "colorManaged", ], products: [ "model", diff --git a/website/src/data/addons/data/celaction.ts b/website/src/data/addons/data/celaction.ts index 32034d61..fc40966b 100644 --- a/website/src/data/addons/data/celaction.ts +++ b/website/src/data/addons/data/celaction.ts @@ -7,12 +7,7 @@ const addon: Addon = { "CelAction2D is a 2D animation software that helps studios create high-quality, high-volume productions by using vectors and/or bitmaps.", icon: "celaction-icon.png", badge: versions.Celaction_Badge, - features: [ - "publisher", - "farmRendering", - "workfiles", - "reviewables", - ], + features: ["publisher", "farmRendering", "workfiles", "reviewables"], products: ["workfile", "render", "review", "audio"], github: "https://github.com/ynput/OpenPype/tree/develop/openpype/hosts/celaction", }; diff --git a/website/src/data/addons/data/core.ts b/website/src/data/addons/data/core.ts index 8efa8c19..c3ef7134 100644 --- a/website/src/data/addons/data/core.ts +++ b/website/src/data/addons/data/core.ts @@ -3,7 +3,8 @@ import versions from "@site/docs/assets/json/Ayon_addons_version.json"; const addon: Addon = { title: "Core", - description: "A set of core pipeline tools and features available in all addons.", + description: + "A set of core pipeline tools and features available in all addons.", icon: "core-icon.png", badge: versions.Core_Badge, features: [ diff --git a/website/src/data/addons/data/deadline.ts b/website/src/data/addons/data/deadline.ts index fa53e1d7..9865c5bc 100644 --- a/website/src/data/addons/data/deadline.ts +++ b/website/src/data/addons/data/deadline.ts @@ -12,11 +12,12 @@ const addon: Addon = { admin: "addon_deadline_admin", }, features: [ - "publisher", - "colorManaged", - "farmRendering", - "reviewables", - "slates"], + "publisher", + "colorManaged", + "farmRendering", + "reviewables", + "slates", + ], products: ["render", "plate", "image", "review", "pointcache", "prerender"], addons: ["nuke", "harmony", "maya", "afterEffects"], }; diff --git a/website/src/data/addons/data/flame.ts b/website/src/data/addons/data/flame.ts index da6a2ba5..f4866d92 100644 --- a/website/src/data/addons/data/flame.ts +++ b/website/src/data/addons/data/flame.ts @@ -18,7 +18,7 @@ const addon: Addon = { "slates", "colorManaged", "localRendering", - "nodePresets" + "nodePresets", ], products: [ "render", diff --git a/website/src/data/addons/data/ftrack.ts b/website/src/data/addons/data/ftrack.ts index 6d1e9b46..6c00d87c 100644 --- a/website/src/data/addons/data/ftrack.ts +++ b/website/src/data/addons/data/ftrack.ts @@ -11,13 +11,14 @@ const addon: Addon = { }, preview: "ftrack.png", github: "https://github.com/ynput/ayon-ftrack", - features: ["appLauncher", - "reviewables", - "trayPublisher", - "projectManager", - "timersManager", - "appLauncher", -], + features: [ + "appLauncher", + "reviewables", + "trayPublisher", + "projectManager", + "timersManager", + "appLauncher", + ], }; export default addon; diff --git a/website/src/data/addons/data/harmony.ts b/website/src/data/addons/data/harmony.ts index 970f81ab..717a3cbe 100644 --- a/website/src/data/addons/data/harmony.ts +++ b/website/src/data/addons/data/harmony.ts @@ -32,7 +32,7 @@ const addon: Addon = { "render", "prerender", "review", - "image" + "image", ], docs: { user: "addon_harmony_artist", diff --git a/website/src/data/addons/data/hiero.ts b/website/src/data/addons/data/hiero.ts index 432ffd91..c53332bd 100644 --- a/website/src/data/addons/data/hiero.ts +++ b/website/src/data/addons/data/hiero.ts @@ -3,7 +3,7 @@ import versions from "@site/docs/assets/json/Ayon_addons_version.json"; const addon: Addon = { title: "Hiero", - description :` + description: ` Professional-grade video editing and compositing software designed for film, TV, and commercial post-production, offering seamless collaboration, streamlined workflows, and efficient management of complex projects. @@ -22,16 +22,9 @@ and efficient management of complex projects. "libraryLoader", "reviewables", "burnins", - "colorManaged" - ], - products: [ - "audio", - "plate", - "review", - "frame", - "effect", - "workfile", + "colorManaged", ], + products: ["audio", "plate", "review", "frame", "effect", "workfile"], docs: { user: "addon_hiero_artist", admin: "addon_hiero_admin", diff --git a/website/src/data/addons/data/houdini.ts b/website/src/data/addons/data/houdini.ts index 1b4352e7..0b4b6fe1 100644 --- a/website/src/data/addons/data/houdini.ts +++ b/website/src/data/addons/data/houdini.ts @@ -32,7 +32,7 @@ const addon: Addon = { "vrayRender", "workfile", "usd", - "usdRender" + "usdRender", ], docs: { user: "addon_houdini_artist", diff --git a/website/src/data/addons/data/kitsu.ts b/website/src/data/addons/data/kitsu.ts index 9db270e1..97e2ee91 100644 --- a/website/src/data/addons/data/kitsu.ts +++ b/website/src/data/addons/data/kitsu.ts @@ -11,11 +11,7 @@ const addon: Addon = { user: "addon_kitsu_artist", admin: "addon_kitsu_admin", }, - features: ["appLauncher", - "reviewables", - "trayPublisher", - "projectManager", -], + features: ["appLauncher", "reviewables", "trayPublisher", "projectManager"], github: "https://github.com/ynput/OpenPype/tree/develop/openpype/hosts/kitsu", }; diff --git a/website/src/data/addons/data/maya.ts b/website/src/data/addons/data/maya.ts index 629a4453..70c7144f 100644 --- a/website/src/data/addons/data/maya.ts +++ b/website/src/data/addons/data/maya.ts @@ -4,7 +4,7 @@ import versions from "@site/docs/assets/json/Ayon_addons_version.json"; const addon: Addon = { title: "Maya", description: "Robust Maya implementation that can handle full CG workflow", - descriptionLong:` + descriptionLong: ` AYON includes very robust Maya implementation that can handle full CG workflow from model, through animation till final renders and scene settings. Your artists won't need to touch file browser at all and AYON will take care of all the file management. @@ -24,7 +24,7 @@ Most of maya workflows are supported including gpucaches, automatic shader, nest "loader", "slates", "publisher", - "sceneManager" + "sceneManager", ], products: [ "model", diff --git a/website/src/data/addons/data/nuke.ts b/website/src/data/addons/data/nuke.ts index 6f41a3ff..bf060401 100644 --- a/website/src/data/addons/data/nuke.ts +++ b/website/src/data/addons/data/nuke.ts @@ -3,7 +3,7 @@ import versions from "@site/docs/assets/json/Ayon_addons_version.json"; const addon: Addon = { title: "Nuke", - description:` + description: ` Nuke is a powerful node-based compositing software used extensively in the film and television industry for creating high-quality visual effects, offering a range of advanced tools and features for efficient and flexible workflows. **Variants**: _NukeX_, _NukeAssist_ diff --git a/website/src/data/addons/data/slack.ts b/website/src/data/addons/data/slack.ts index 83e0b93d..42f1a9eb 100644 --- a/website/src/data/addons/data/slack.ts +++ b/website/src/data/addons/data/slack.ts @@ -3,8 +3,7 @@ import versions from "@site/docs/assets/json/Ayon_addons_version.json"; const addon: Addon = { title: "Slack", - description: - "Send publishing comments and previews to slack channels.", + description: "Send publishing comments and previews to slack channels.", icon: "slack-icon.png", badge: versions.Slack_Badge, github: "https://github.com/ynput/ayon-slack", diff --git a/website/src/data/addons/data/substancepainter.ts b/website/src/data/addons/data/substancepainter.ts index 3421dec8..0838046a 100644 --- a/website/src/data/addons/data/substancepainter.ts +++ b/website/src/data/addons/data/substancepainter.ts @@ -15,10 +15,7 @@ const addon: Addon = { "libraryLoader", "colorManaged", ], - products: [ - "workfile", - "textureSet", - ], + products: ["workfile", "textureSet"], docs: { user: "addon_substancepainter_artist", admin: "addon_substancepainter_admin", diff --git a/website/src/data/addons/data/unreal.ts b/website/src/data/addons/data/unreal.ts index 71e9058a..78b2e1bd 100644 --- a/website/src/data/addons/data/unreal.ts +++ b/website/src/data/addons/data/unreal.ts @@ -5,18 +5,14 @@ const addon: Addon = { title: "Unreal Engine", description: "Unreal Engine is a powerful real-time 3D creation tool used by game developers, architects, filmmakers, and others.", - descriptionLong:` + descriptionLong: ` Unreal Engine is a powerful real-time 3D creation tool used by game developers, architects, filmmakers, and others. **Versions**: \`5.0\`, \`5.1\` `, preview: "unreal.png", badge: versions.Unreal_Badge, - features: [ - "loader", - "publisher", - "sceneManager", - ], + features: ["loader", "publisher", "sceneManager"], products: [ "model", "pointcache", diff --git a/website/src/data/addons/data/wrap.ts b/website/src/data/addons/data/wrap.ts index 74bf6c99..0f8a4d63 100644 --- a/website/src/data/addons/data/wrap.ts +++ b/website/src/data/addons/data/wrap.ts @@ -14,14 +14,11 @@ const addon: Addon = { "sceneManager", "libraryLoader", ], - products: [ - "wrap", - "workfile", - ], + products: ["wrap", "workfile"], docs: { user: "addon_wrap_artist", admin: "addon_wrap_admin", - } + }, }; export default addon; diff --git a/website/src/data/addons/types.ts b/website/src/data/addons/types.ts index 92915048..540cd81b 100644 --- a/website/src/data/addons/types.ts +++ b/website/src/data/addons/types.ts @@ -10,7 +10,7 @@ export type Addon = { descriptionLong?: string; preview?: string; icon?: string; - badge?:string; + badge?: string; features?: FeatureType[]; products?: ProductType[]; addons?: AddonType[]; diff --git a/website/src/data/features/data.ts b/website/src/data/features/data.ts index 3af1c3d5..57fb65ad 100644 --- a/website/src/data/features/data.ts +++ b/website/src/data/features/data.ts @@ -146,20 +146,17 @@ const features: { [type in FeatureType]: Feature } = { }, localRendering: { title: "Local Rendering", - description: - "Support for local renders and their publishing.", + description: "Support for local renders and their publishing.", preview: "rendering.png", }, burnins: { title: "Burnins", - description: - "Support for image metadata burnins.", + description: "Support for image metadata burnins.", preview: "burnins.png", }, bakingColorspacePresets: { title: "Baking Colorspace Presets", - description: - "Support for baking colorspace presets.", + description: "Support for baking colorspace presets.", preview: "baking_colorspace_presets.png", }, }; diff --git a/website/src/data/products/data.ts b/website/src/data/products/data.ts index 35321d43..3f5ba933 100644 --- a/website/src/data/products/data.ts +++ b/website/src/data/products/data.ts @@ -152,68 +152,68 @@ const products: { [type in ProductType]: Product } = { }, maxScene: { title: "Max Scene", - icon: "home_repair_service" + icon: "home_repair_service", }, blenderScene: { title: "Blender Scene", - icon: "home_repair_service" + icon: "home_repair_service", }, - arnoldAss:{ + arnoldAss: { title: "Arnold Scene Source", - icon: "grain" + icon: "grain", }, - arnoldRender:{ + arnoldRender: { title: "Arnold Render", - icon: "photo_library" + icon: "photo_library", }, - imagesequence:{ - title: "Composite (Image Sequence)" , - icon: "photo_library" + imagesequence: { + title: "Composite (Image Sequence)", + icon: "photo_library", }, - hda:{ + hda: { title: "Houdini Digital Asset (Hda)", - icon: "home_repair_service" + icon: "home_repair_service", }, - karmaRender:{ + karmaRender: { title: "Karma Render", - icon: "photo_library" + icon: "photo_library", }, - mantraRender:{ + mantraRender: { title: "Mantra Render", - icon: "photo_library" + icon: "photo_library", }, - redshiftProxy:{ + redshiftProxy: { title: "Redshift Proxy", - icon: "grain" + icon: "grain", }, - redshiftRender:{ - title:"Redshift Render", - icon: "photo_library" + redshiftRender: { + title: "Redshift Render", + icon: "photo_library", }, - staticmesh:{ + staticmesh: { title: "Static Mesh", - icon: "grain" + icon: "grain", }, - vrayRender:{ + vrayRender: { title: "VRay Render", - icon: "photo_library" + icon: "photo_library", }, - usd:{ + usd: { title: "USD (experimental)", - icon: "home_repair_service" + icon: "home_repair_service", }, - usdRender:{ + usdRender: { title: "USD Render (experimental)", - icon: "photo_library" + icon: "photo_library", }, - textureSet:{ + textureSet: { title: "Texture Set", - icon: "photo_library" + icon: "photo_library", }, - wrap:{ + wrap: { title: "Wrap", - icon: "language" - } + icon: "language", + }, }; export default products; diff --git a/website/src/pages/features/_components/HeaderCard/index.tsx b/website/src/pages/features/_components/HeaderCard/index.tsx index 14d970e4..bc09a83b 100644 --- a/website/src/pages/features/_components/HeaderCard/index.tsx +++ b/website/src/pages/features/_components/HeaderCard/index.tsx @@ -66,12 +66,12 @@ function HeaderCard({

    - {addon.badge && showSupport ? ( + {addon.badge && showSupport ? ( {addon.badge} ) : ( )} - + {addon.descriptionLong && showSupport ? ( {addon.descriptionLong} ) : ( diff --git a/website/src/pages/features/_components/ShowcaseFilterToggle/index.tsx b/website/src/pages/features/_components/ShowcaseFilterToggle/index.tsx index aaada5d7..e8fd7b06 100644 --- a/website/src/pages/features/_components/ShowcaseFilterToggle/index.tsx +++ b/website/src/pages/features/_components/ShowcaseFilterToggle/index.tsx @@ -5,66 +5,69 @@ * LICENSE file in the root directory of this source tree. */ -import React, {useState, useEffect, useCallback} from 'react'; -import clsx from 'clsx'; -import {useHistory, useLocation} from '@docusaurus/router'; +import React, { useState, useEffect, useCallback } from "react"; +import clsx from "clsx"; +import { useHistory, useLocation } from "@docusaurus/router"; -import {prepareUserState} from '../../index'; +import { prepareUserState } from "../../index"; -import styles from './styles.module.css'; +import styles from "./styles.module.css"; -export type Operator = 'OR' | 'AND'; +export type Operator = "OR" | "AND"; -export const OperatorQueryKey = 'operator'; +export const OperatorQueryKey = "operator"; export function readOperator(search: string): Operator { - return (new URLSearchParams(search).get(OperatorQueryKey) ?? - 'OR') as Operator; + return (new URLSearchParams(search).get(OperatorQueryKey) ?? + "OR") as Operator; } export default function ShowcaseFilterToggle(): JSX.Element { - const id = 'showcase_filter_toggle'; - const location = useLocation(); - const history = useHistory(); - const [operator, setOperator] = useState(false); - useEffect(() => { - setOperator(readOperator(location.search) === 'AND'); - }, [location]); - const toggleOperator = useCallback(() => { - setOperator((o) => !o); - const searchParams = new URLSearchParams(location.search); - searchParams.delete(OperatorQueryKey); - if (!operator) { - searchParams.append(OperatorQueryKey, 'AND'); - } - history.push({ - ...location, - search: searchParams.toString(), - state: prepareUserState(), - }); - }, [operator, location, history]); + const id = "showcase_filter_toggle"; + const location = useLocation(); + const history = useHistory(); + const [operator, setOperator] = useState(false); + useEffect(() => { + setOperator(readOperator(location.search) === "AND"); + }, [location]); + const toggleOperator = useCallback(() => { + setOperator((o) => !o); + const searchParams = new URLSearchParams(location.search); + searchParams.delete(OperatorQueryKey); + if (!operator) { + searchParams.append(OperatorQueryKey, "AND"); + } + history.push({ + ...location, + search: searchParams.toString(), + state: prepareUserState(), + }); + }, [operator, location, history]); - return ( -

    - { - if (e.key === 'Enter') { - toggleOperator(); - } - }} - checked={operator} - /> - -
    - ); + return ( +
    + { + if (e.key === "Enter") { + toggleOperator(); + } + }} + checked={operator} + /> + +
    + ); } diff --git a/website/src/pages/features/index.tsx b/website/src/pages/features/index.tsx index d5097e0b..6bc45908 100644 --- a/website/src/pages/features/index.tsx +++ b/website/src/pages/features/index.tsx @@ -413,7 +413,10 @@ function FeaturesCards() {
      {productsFiltered.map((product) => ( - + ))}
    diff --git a/website/src/pages/index.js b/website/src/pages/index.js index 45463b83..98ab200f 100644 --- a/website/src/pages/index.js +++ b/website/src/pages/index.js @@ -90,9 +90,11 @@ export default function Home() {
    - While we're transitioning from OpenPype documentation, there are - some details that might be factually incorrect and images that show the old OpenPype interface. We're working on - resolving all of them. We'll appreciate if you notify us of any such discrepancies. + While we're transitioning from OpenPype documentation, + there are some details that might be factually incorrect + and images that show the old OpenPype interface. We're + working on resolving all of them. We'll appreciate if + you notify us of any such discrepancies.
    @@ -212,10 +214,10 @@ export default function Home() {

    - Streamline your data management with our customizable product - categorization system. Efficiently organize data instances - and join the industry standard for efficient data handling - today! + Streamline your data management with our customizable + product categorization system. Efficiently organize data + instances and join the industry standard for efficient data + handling today!