diff --git a/common/changes/@itwin/imodel-browser-react/omar-update-storybook_2025-07-10-23-30.json b/common/changes/@itwin/imodel-browser-react/omar-update-storybook_2025-07-10-23-30.json new file mode 100644 index 00000000..2fe3fa0e --- /dev/null +++ b/common/changes/@itwin/imodel-browser-react/omar-update-storybook_2025-07-10-23-30.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@itwin/imodel-browser-react", + "comment": "", + "type": "none" + } + ], + "packageName": "@itwin/imodel-browser-react" +} \ No newline at end of file diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 913707fd..d3b408b6 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -20,7 +20,7 @@ importers: '@itwin/delete-imodel-react': workspace:* '@itwin/delete-itwin-react': workspace:* '@itwin/imodel-browser-react': workspace:* - '@itwin/itwinui-react': ^2.12.18 + '@itwin/itwinui-react': 3.18.0 '@itwin/manage-versions-react': workspace:* '@itwin/storybook-auth-addon': workspace:* '@storybook/addon-actions': ^6.5.16 @@ -64,7 +64,7 @@ importers: '@itwin/delete-imodel-react': link:../../modules/delete-imodel '@itwin/delete-itwin-react': link:../../modules/delete-itwin '@itwin/imodel-browser-react': link:../../modules/imodel-browser - '@itwin/itwinui-react': 2.12.26_nnrd3gsncyragczmpvfhocinkq + '@itwin/itwinui-react': 3.18.0_nnrd3gsncyragczmpvfhocinkq '@itwin/manage-versions-react': link:../../modules/manage-versions '@itwin/storybook-auth-addon': link:../../modules/storybook-auth-addon '@storybook/addon-actions': 6.5.16_nnrd3gsncyragczmpvfhocinkq @@ -2832,6 +2832,7 @@ packages: react-table: 7.8.0_react@18.3.1 react-transition-group: 4.4.5_nnrd3gsncyragczmpvfhocinkq tippy.js: 6.3.7 + dev: false /@itwin/itwinui-react/3.17.4_27kzlijtntas6645qwojwuhdba: resolution: {integrity: sha512-ATvraTzbnJXR+c7x/U6LsBt0SaQYarNlxdMXOQkHVxxN1hUmffzNDAmxbSovXpYyQxUPi7uZ37nD0CEJcvjr4Q==} @@ -2866,7 +2867,6 @@ packages: react: 18.3.1 react-dom: 18.3.1_react@18.3.1 react-table: 7.8.0_react@18.3.1 - dev: false /@jest/console/27.5.1: resolution: {integrity: sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==} @@ -3507,6 +3507,7 @@ packages: /@popperjs/core/2.11.8: resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} + dev: false /@rollup/plugin-babel/5.3.1_yrafsoqvjmeaq53szcffw6zvfe: resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==} @@ -5439,6 +5440,7 @@ packages: react: 18.3.1 react-dom: 18.3.1_react@18.3.1 tippy.js: 6.3.7 + dev: false /@tootallnate/once/1.1.2: resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==} @@ -9352,6 +9354,7 @@ packages: dependencies: '@babel/runtime': 7.27.0 csstype: 3.1.3 + dev: false /dom-serializer/0.2.2: resolution: {integrity: sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==} @@ -17084,6 +17087,7 @@ packages: prop-types: 15.8.1 react: 18.3.1 react-dom: 18.3.1_react@18.3.1 + dev: false /react/18.3.1: resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} @@ -19419,6 +19423,7 @@ packages: resolution: {integrity: sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==} dependencies: '@popperjs/core': 2.11.8 + dev: false /tmp/0.0.33: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} diff --git a/packages/apps/storybook/.storybook/preview.js b/packages/apps/storybook/.storybook/preview.js index 0d8d338e..55c082a4 100644 --- a/packages/apps/storybook/.storybook/preview.js +++ b/packages/apps/storybook/.storybook/preview.js @@ -8,6 +8,7 @@ import addons from "@storybook/addons"; import { themes } from "@storybook/theming"; import { darkTheme, lightTheme } from "./itwinTheme"; +import '@itwin/itwinui-react/styles.css'; // get an instance to the communication channel for the manager and preview const channel = addons.getChannel(); diff --git a/packages/apps/storybook/package.json b/packages/apps/storybook/package.json index e10f67b8..5dcf9c6d 100644 --- a/packages/apps/storybook/package.json +++ b/packages/apps/storybook/package.json @@ -13,7 +13,7 @@ "@itwin/delete-imodel-react": "workspace:*", "@itwin/delete-itwin-react": "workspace:*", "@itwin/imodel-browser-react": "workspace:*", - "@itwin/itwinui-react": "^2.12.18", + "@itwin/itwinui-react": "3.18.0", "@itwin/manage-versions-react": "workspace:*", "@itwin/storybook-auth-addon": "workspace:*", "@storybook/addon-actions": "^6.5.16", diff --git a/packages/apps/storybook/src/imodel-browser/IModelTile.stories.tsx b/packages/apps/storybook/src/imodel-browser/IModelTile.stories.tsx index 1ec94496..7d26d841 100644 --- a/packages/apps/storybook/src/imodel-browser/IModelTile.stories.tsx +++ b/packages/apps/storybook/src/imodel-browser/IModelTile.stories.tsx @@ -3,6 +3,7 @@ * See LICENSE.md in the project root for license terms and full copyright notice. *--------------------------------------------------------------------------------------------*/ import { IModelTile as C, IModelTileProps } from "@itwin/imodel-browser-react"; +import { MiddleTextTruncation } from "@itwin/itwinui-react"; import { Meta, Story } from "@storybook/react/types-6-0"; import React from "react"; @@ -17,4 +18,8 @@ export default { const Template: Story = (args) => ; export const Primary = Template.bind({}); -Primary.args = {}; +Primary.args = { + iModel: { + id: "1", + }, +}; diff --git a/packages/apps/storybook/src/imodel-browser/ITwinTile.stories.tsx b/packages/apps/storybook/src/imodel-browser/ITwinTile.stories.tsx index 8d20d7e5..678259db 100644 --- a/packages/apps/storybook/src/imodel-browser/ITwinTile.stories.tsx +++ b/packages/apps/storybook/src/imodel-browser/ITwinTile.stories.tsx @@ -17,4 +17,8 @@ export default { const Template: Story = (args) => ; export const Primary = Template.bind({}); -Primary.args = {}; +Primary.args = { + iTwin: { + id: "1", + }, +}; diff --git a/packages/modules/imodel-browser/src/containers/ITwinGrid/ITwinTile.tsx b/packages/modules/imodel-browser/src/containers/ITwinGrid/ITwinTile.tsx index a711e17e..7cf3b605 100644 --- a/packages/modules/imodel-browser/src/containers/ITwinGrid/ITwinTile.tsx +++ b/packages/modules/imodel-browser/src/containers/ITwinGrid/ITwinTile.tsx @@ -102,7 +102,7 @@ export const ITwinTile = ({ return ( - {name ?? iTwin?.displayName} + {name ?? iTwin.displayName} @@ -134,8 +134,8 @@ export const ITwinTile = ({ } onClick={async () => { isFavorite - ? await removeFromFavorites?.(iTwin?.id) - : await addToFavorites?.(iTwin?.id); + ? await removeFromFavorites?.(iTwin.id) + : await addToFavorites?.(iTwin.id); }} styleType="borderless" > @@ -144,7 +144,7 @@ export const ITwinTile = ({ {badge ?? - (iTwin?.status && + (iTwin.status && iTwin.status.toLocaleLowerCase() !== "active" && ( - {description ?? iTwin?.number ?? ""} + {description ?? iTwin.number ?? ""} {metadata && {metadata}} {children} diff --git a/packages/modules/imodel-browser/src/containers/iModelTiles/IModelTile.tsx b/packages/modules/imodel-browser/src/containers/iModelTiles/IModelTile.tsx index 2eaa8b90..2307e9e0 100644 --- a/packages/modules/imodel-browser/src/containers/iModelTiles/IModelTile.tsx +++ b/packages/modules/imodel-browser/src/containers/iModelTiles/IModelTile.tsx @@ -74,10 +74,10 @@ export const IModelTile = ({ [iModelOptions, iModel, refetchIModels] ); const thumbnailApiOverride = - apiOverrides || iModel?.thumbnail + apiOverrides || iModel.thumbnail ? { ...(apiOverrides ?? {}), - data: iModel?.thumbnail, + data: iModel.thumbnail, } : undefined;