@cloud-ru/ds-uikit-product-modal-predefined

中文文档
1.1.4发布于 2026/11/11Apache-2.0TypeScriptESM + CJS近 30 天下载 7653

产品预设-QQ删除, 提醒 {发布注释}}}\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\.

中文使用文档
文档目录13 节
  1. Установка
  2. 图片
  3. 删除模式
  4. Примеры
  5. 道具
  6. 召回莫达尔
  7. Примеры
  8. 道具
  9. 发布注释
  10. Примеры
  11. 道具
  12. {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF…
  13. Адаптивность

预定义

@cloud-ru/ds-uikit-product-modal-predefined ——产品预设-QQ删除,召回##发布注释#####Modal #BottomSheet.

Пакет @cloud-ru/ds-uikit-product-modal-predefined 产品 @cloud-ru/ds-modal и @cloud-ru/ds-bottom-sheet。 。 。 .

  • 删除模式 {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢.
  • 召回莫达尔 {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢.
  • 发布注释 ——qq发布注释:qqq桌面,下表qq手机;qq data, (中文(简体) ), noData, (中文(简体) ), error。 。 。 .

Установка

pnpm add @cloud-ru/ds-uikit-product-modal-predefined
import { DeleteModal, RecallModal, ReleaseNotes } from '@cloud-ru/ds-uikit-product-modal-predefined'

图片

Источник: Product UI Kit (variables),根节点 3179:1987。 。 。 .

Figma-First API : 互联网电影数据库(IMDb)上"Figma-first API"的资料(英文) contentState - визуальная, поле, включается confirmText. 遗产 @cloud-ru/uikit-product-modal-predefined {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得怎样.

删除模式

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢.

DeleteModal - готовый удаления объекта объекта объекта {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 deleteModalConfirmable включается confirmText{\fn黑体\fs20\shad2\2ah82\3ah20\4ah33\fscx95\3ch592001\be1}你觉得怎样.

Примеры

Базовое

import { Button } from '@cloud-ru/ds-button';
import { DeleteModal } from '@cloud-ru/ds-uikit-product-modal-predefined';
import { useState } from 'react';

export function DeleteBasic() {
  const [open, setOpen] = useState(false);

  return (
    <>
      <Button label='Open delete modal' view='filled' appearance='primary' onClick={() => setOpen(true)} />
      <DeleteModal
        open={open}
        onClose={() => setOpen(false)}
        objectType='виртуальную машину'
        onDelete={close => close()}
      />
    </>
  );
}

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢

import { Button } from '@cloud-ru/ds-button';
import { DeleteModal } from '@cloud-ru/ds-uikit-product-modal-predefined';
import { useState } from 'react';

export function DeleteConfirmable() {
  const [open, setOpen] = useState(false);

  return (
    <>
      <Button label='Open confirmable delete modal' view='filled' appearance='primary' onClick={() => setOpen(true)} />
      <DeleteModal
        open={open}
        onClose={() => setOpen(false)}
        objectType='виртуальную машину'
        confirmText='vm-production-01'
        onDelete={close => close()}
      />
    </>
  );
}

道具

删除模式

Prop类型默认说明
closeOnPopstateboolean—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
confirmTextstring—— 说Текст,который也. - Если модалка показывает подтверждения
confirmTextVariant"name" | "text"name{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
contentReactNode—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
data-test-idstring—— 说
deletingboolean—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
hideConfirmCopyButtonboolean—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
mode"aggressive" | "forced" | "regular"MODE.Regular .
objectTypestring—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
onClose() => void—— 说Колбэк
onDelete(onClose: () => void) => void—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
openboolean—— 说Управление/не
subtitleReactNode—— 说Подзаголовок
titleTooltipReactNode—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
  • ConfirmTextVariant =: "name" | "text"

召回莫达尔

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢.

RecallModal - готовый отзыва действия действия действия {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 recallModalConfirmable включается confirmText{\fn黑体\fs20\shad2\2ah82\3ah20\4ah33\fscx95\3ch592001\be1}你觉得怎样.

Примеры

Базовый

import { Button } from '@cloud-ru/ds-button';
import { RecallModal } from '@cloud-ru/ds-uikit-product-modal-predefined';
import { useState } from 'react';

export function RecallBasic() {
  const [open, setOpen] = useState(false);

  return (
    <>
      <Button label='Open recall modal' view='filled' appearance='primary' onClick={() => setOpen(true)} />
      <RecallModal open={open} onClose={() => setOpen(false)} onRecall={close => close()} />
    </>
  );
}

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢

import { Button } from '@cloud-ru/ds-button';
import { RecallModal } from '@cloud-ru/ds-uikit-product-modal-predefined';
import { useState } from 'react';

export function RecallConfirmable() {
  const [open, setOpen] = useState(false);

  return (
    <>
      <Button label='Open confirmable recall modal' view='filled' appearance='primary' onClick={() => setOpen(true)} />
      <RecallModal
        open={open}
        onClose={() => setOpen(false)}
        confirmText='recall-operation-01'
        onRecall={close => close()}
      />
    </>
  );
}

道具

回顾 Modal 程序

Prop类型默认说明
closeOnPopstateboolean—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
confirmTextstring—— 说Текст,который也. - Если модалка показывает подтверждения
contentReactNode—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
data-test-idstring—— 说
hideConfirmCopyButtonboolean—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
loadingboolean—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
mode"aggressive" | "forced" | "regular"MODE.Regular .
onClose() => void—— 说Колбэк
onRecall(onClose: () => void) => void—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
openboolean—— 说Управление/не
subtitleReactNode—— 说Подзаголовок
titleTooltipReactNode—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢

发布注释

QQ发布注释预设——QQQ桌面,底页QQ手机.

ReleaseNotes -=YTET -伊甸园字幕组=- 翻译: QQ桌面 QQQQ, QQ移动-下页; QQ: QQ. {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 contentState принимает data, (中文(简体) ), noData, (中文(简体) ), error。 。 。 .

Примеры

Данные

import { Button } from '@cloud-ru/ds-button';
import { ReleaseNotes } from '@cloud-ru/ds-uikit-product-modal-predefined';
import { useState } from 'react';

import { releaseNotesItems } from './releaseNotesItems';

export function ReleaseNotesData() {
  const [open, setOpen] = useState(false);

  return (
    <>
      <Button label='Open release notes' view='filled' appearance='primary' onClick={() => setOpen(true)} />
      <ReleaseNotes open={open} onClose={() => setOpen(false)} items={releaseNotesItems} />
    </>
  );
}

Нет

import { Button } from '@cloud-ru/ds-button';
import { ReleaseNotes } from '@cloud-ru/ds-uikit-product-modal-predefined';
import { useState } from 'react';

import { releaseNotesItems } from './releaseNotesItems';

export function ReleaseNotesNoData() {
  const [open, setOpen] = useState(false);

  return (
    <>
      <Button label='Open no-data release notes' view='filled' appearance='primary' onClick={() => setOpen(true)} />
      <ReleaseNotes open={open} onClose={() => setOpen(false)} contentState='noData' items={releaseNotesItems} />
    </>
  );
}

Ошибка

import { Button } from '@cloud-ru/ds-button';
import { ReleaseNotes } from '@cloud-ru/ds-uikit-product-modal-predefined';
import { useState } from 'react';

import { releaseNotesItems } from './releaseNotesItems';

export function ReleaseNotesError() {
  const [open, setOpen] = useState(false);

  return (
    <>
      <Button label='Open error release notes' view='filled' appearance='primary' onClick={() => setOpen(true)} />
      <ReleaseNotes
        open={open}
        onClose={() => setOpen(false)}
        contentState='error'
        items={releaseNotesItems}
        onDataErrorRetryClick={() => undefined}
      />
    </>
  );
}

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢

import { Button } from '@cloud-ru/ds-button';
import { ReleaseNotes } from '@cloud-ru/ds-uikit-product-modal-predefined';
import { useState } from 'react';

import { releaseNotesItems } from './releaseNotesItems';

export function ReleaseNotesVideo() {
  const [open, setOpen] = useState(false);

  return (
    <>
      <Button label='Open video release notes' view='filled' appearance='primary' onClick={() => setOpen(true)} />
      <ReleaseNotes
        open={open}
        onClose={() => setOpen(false)}
        items={[
          {
            ...releaseNotesItems[0],
            video: 'https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.mp4',
          },
        ]}
      />
    </>
  );
}

道具

释放注释

Prop类型默认说明
closeOnPopstateboolean—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
contentState"data" | "error" | "noData"—— 说图片
data-test-idstring—— 说
itemsNoteItemProps—— 说Массив
loadingboolean—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
onClose() => void—— 说Колбэк
onDataErrorRetryClick(() => void)—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
onReadLaterClick(() => void)—— 说Действие"Ознакомиться"
onSlideChange((slide: number) => void)—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
openboolean—— 说Управление/не
readLaterButtonPropsButtonProps—— 说QQ手机:QQ动作-"QQ"(QQ桌面QQ).
snapPointSnapPoint0.85QQ手机:QQ底页QQ (QQ桌面QQ).
(原始内容存档于2017-09-29). QQ, QQ取景口--. SnapPoint из @cloud-ru/ds-bottom-sheet。 。 。 .

说明 项目方案

Prop类型默认说明
descriptionstring—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}我..
image{ src: string; alt: string; }—— 说Иллюстрация
titlestring—— 说Заголовок
videostring | undefined—— 说{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
  • ReleaseNotesContentState =: "data" | "error" | "noData"

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢

(原始内容存档于2018-09-26). 腾讯网. 腾讯. 唵(引一)фиксирован(二合引一)во(二合引一)贺. 腾讯动漫. {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 snapPoint . . . . . 1, весь.

腾讯网 腾讯网 腾讯网 腾讯网 腾讯网 腾讯网 腾讯网 腾讯网 腾讯网 腾讯网. {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得怎样? {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 object-fit: cover: всё,相去相去.

Адаптивность

ReleaseNotes ——"с"("地上"-"花"). {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 AdaptiveProvider 页:1 @cloud-ru/ds-adaptiveAPI :

  • 桌面 (по)- (модальноеModalCustom из @cloud-ru/ds-modal{\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢.
  • 移动 - контент рендерится рендерится BottomSheet из @cloud-ru/ds-bottom-sheet (панель也.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ************************ <AdaptiveProvider> [永久失效連結] (中文(简体) ). Пропа layoutType у:источник也.

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢

- Форс,не:

  • Поддерево:
    import { AdaptiveProvider } from '@cloud-ru/ds-adaptive'
    
    <AdaptiveProvider layoutType='mobile'>
      <ReleaseNotes open={open} onClose={close} items={items} />
    </AdaptiveProvider>
    
  • – Отдельный – withLayoutType (模块-镜, сахар:
    import { withLayoutType } from '@cloud-ru/ds-adaptive'
    import { ReleaseNotes } from '@cloud-ru/ds-uikit-product-modal-predefined'
    
    const MobileReleaseNotes = withLayoutType(ReleaseNotes, 'mobile')
    

Платформенные

========================================================================================================================================================= ReleaseNotesProps。 。 。 .

Пропы桌面移动
readLaterButtonProps, (中文(简体) ), snapPointигнорируютсяиспользуются
open, (中文(简体) ), onClose, (中文(简体) ), container, (中文(简体) ), closeOnPopstate, (中文(简体) ), contentState, (中文(简体) ), items, (中文(简体) ), loading, (中文(简体) ), onReadLaterClick, (中文(简体) ), onDataErrorRetryClick, (中文(简体) ), onSlideChangeиспользуетсяиспользуется

Подробнее модели- 适应性。 。 。 .

版本与发布记录

@cloud-ru/ds-uikit-product-modal-predefined 共发布 212 个版本,首次发布于 2026/08/18;过去 12 个月发布了 212 个版本。

版本发布日期距今
1.1.4latest2026/11/11今天
1.1.4-preview-e8fe6b56.0preview2026/11/11今天
1.1.4-preview-c0e895ed.02026/11/11今天
1.1.4-preview-90b10112.02026/11/11今天
1.1.4-preview-fd7dd437.02026/11/101 天前
1.1.4-preview-9a75a2a9.02026/11/101 天前

关于 @cloud-ru/ds-uikit-product-modal-predefined 的常见问题

@cloud-ru/ds-uikit-product-modal-predefined 是什么?

产品预设-QQ删除, 提醒 {发布注释}}}\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\.

如何安装 @cloud-ru/ds-uikit-product-modal-predefined?

在项目目录运行 npm install @cloud-ru/ds-uikit-product-modal-predefined,或使用 pnpm add / yarn add / bun add。

@cloud-ru/ds-uikit-product-modal-predefined 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cloud-ru/ds-uikit-product-modal-predefined 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@cloud-ru/ds-uikit-product-modal-predefined 可以商用吗?

@cloud-ru/ds-uikit-product-modal-predefined 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@cloud-ru/ds-uikit-product-modal-predefined 的下载量有多少?

根据 npm 官方下载统计,@cloud-ru/ds-uikit-product-modal-predefined 在 2026/10/10 – 2026/11/08 这 30 天内被下载 7,653 次,日均约 255 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cloud-ru/ds-uikit-product-modal-predefined 还在维护吗?

最新版本 1.1.4 发布于 2026/11/11(今天);至今共发布 212 个版本,其中过去 12 个月发布了 212 个;首次发布于 2026/08/18。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。