@cmssy/types

中文文档
0.74.0发布于 2026/11/10MITTypeScriptES Module零依赖近 30 天下载 1.1万

Shared type definitions for Cmssy platform

原始使用文档
文档目录5 节
  1. Installation
  2. Usage
  3. Exports
  4. Development
  5. Publishing

@cmssy/types

Shared TypeScript type definitions for the Cmssy platform.

Installation

npm install @cmssy/types

Usage

import {
  FieldType,
  LayoutRegionId,
  BlockConfig,
  TemplateConfig
} from "@cmssy/types";

// Use in block.config.ts
const config: BlockConfig = {
  name: "My Block",
  category: "content",
  schema: {
    title: {
      type: FieldType.SINGLE_LINE,
      label: "Title",
    },
  },
};

Exports

  • Field Types: FieldType, FieldConfig, FieldValidation, ShowWhenCondition
  • Media values: MediaReference (assetId, transform?, altText? - empty marks the use decorative), MEDIA_ALT_TEXT_MAX, ResolvedMedia (alt is the text to render, altText the reference's own)
  • Layout: LayoutRegionId (string), LayoutRegion, DEFAULT_LAYOUT_REGIONS, LAYOUT_REGION_ID_PATTERN, LAYOUT_REGIONS_MAX, LAYOUT_REGION_LABEL_MAX
  • Modules: WorkspaceModule, FeatureFlag, BlockRequires
  • Block Config: BlockConfig, BlockSource, PackageType
  • Template Config: TemplateConfig, TemplatePageBlueprint, TemplateLayoutRegion
  • Media transform: MediaTransform, MediaTrim, MediaFit, MediaBox, FocalPoint, MEDIA_FIT_MODES, MEDIA_TRANSFORM_WIDTHS, MEDIA_TRANSFORM_MAX_SIDE, MEDIA_TRIM_MAX_SIDE, MEDIA_QUALITY_MIN, MEDIA_QUALITY_MAX, MEDIA_QUALITY_DEFAULT, parseMediaTransform, parseMediaTrim, snapWidth, snapWidthDown, renderedBox, effectiveMediaFit, transformForTrim, trimmedFocalPoint, mediaTransformUrl

Development

npm install
npm run build
npm run typecheck

Publishing

Releases are tag-driven and authenticated by OIDC trusted publishing - there is no token, and npm publish from a working copy is not the path. It would also ship whatever a previous build left in dist/, which npm run build does not clean.

npm version patch|minor|major   # bumps package.json and creates the tag
git push origin main
git push origin v<version>      # one tag, never --tags

.github/workflows/release.yml checks the tag against package.json, builds from a fresh checkout and publishes. It skips a version already on npm, so a re-run is safe - and so a tag that repeats a published version goes green having published nothing.

版本与发布记录

@cmssy/types 共发布 95 个版本,首次发布于 2026/02/01;过去 12 个月发布了 95 个版本。

版本发布日期距今
0.74.0latest2026/11/10今天
0.73.02026/11/063 天前
0.72.02026/10/2614 天前
0.71.02026/10/2317 天前
0.70.02026/10/2318 天前
0.69.02026/10/2318 天前

关于 @cmssy/types 的常见问题

@cmssy/types 是什么?

Shared type definitions for Cmssy platform

如何安装 @cmssy/types?

在项目目录运行 npm install @cmssy/types,或使用 pnpm add / yarn add / bun add。

@cmssy/types 支持 TypeScript 吗?

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

@cmssy/types 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@cmssy/types 可以商用吗?

@cmssy/types 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@cmssy/types 的下载量有多少?

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

@cmssy/types 还在维护吗?

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