Webiny-js webiny-admin-cms-catalog
install
source · Clone the upstream repo
git clone https://github.com/webiny/webiny-js
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/webiny/webiny-js "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/user-skills/generated/admin/cms" ~/.claude/skills/webiny-webiny-js-webiny-admin-cms-catalog && rm -rf "$T"
manifest:
skills/user-skills/generated/admin/cms/SKILL.mdsource content
admin/cms
How to Use
- Find the abstraction you need below
- You MUST read the source file to get the exact interface and types!
- Import:
import { Name } from "<importPath>";
Abstractions
Name:
CmsContentEntry
Kind: type
Import: import type { CmsContentEntry } from "webiny/admin/cms"
Source: @webiny/app-headless-cms-common/types/index.ts
Name:
CmsContentFormRenderer
Import: import { CmsContentFormRenderer } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/legacyPluginAdapters/CmsContentFormRenderer.tsx
Name:
CmsGraphQLClient
Import: import { CmsGraphQLClient } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/features/graphQLClient/index.ts
Name:
CmsIdentity
Kind: type
Import: import type { CmsIdentity } from "webiny/admin/cms"
Source: @webiny/app-headless-cms-common/types/index.ts
Name:
CmsModel
Kind: type
Import: import type { CmsModel } from "webiny/admin/cms"
Source: @webiny/app-headless-cms-common/types/index.ts
Name:
CmsModelField
Kind: type
Import: import type { CmsModelField } from "webiny/admin/cms"
Source: @webiny/app-headless-cms-common/types/index.ts
Name:
CmsModelFieldRenderer
Import: import { CmsModelFieldRenderer } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/legacyPluginAdapters/CmsModelFieldRenderer.tsx
Name:
CmsModelFieldType
Import: import { CmsModelFieldType } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/legacyPluginAdapters/CmsModelFieldType.tsx
Name:
CmsModelFieldValidator
Import: import { CmsModelFieldValidator } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/legacyPluginAdapters/CmsModelFieldValidator.tsx
Name:
CmsModelLayoutField
Kind: type
Import: import type { CmsModelLayoutField } from "webiny/admin/cms"
Source: @webiny/app-headless-cms-common/types/index.ts
Name:
CmsModelLayoutFieldRenderer
Import: import { CmsModelLayoutFieldRenderer } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/legacyPluginAdapters/CmsModelLayoutFieldRenderer.tsx
Name:
CmsModelLayoutFieldType
Import: import { CmsModelLayoutFieldType } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/legacyPluginAdapters/CmsModelLayoutFieldType.tsx
Name:
ContentEntry
Import: import { ContentEntry } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/views/contentEntries/ContentEntry.tsx
Name:
ContentEntryEditorConfig
Import: import { ContentEntryEditorConfig } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/config/contentEntries/index.ts
Name:
ContentEntryForm
Import: import { ContentEntryForm } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/components/ContentEntryForm/ContentEntryForm.tsx
Name:
ContentEntryFormMeta
Import: import { ContentEntryFormMeta } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntryHeaderLeft.tsx
Name:
ContentEntryFormPreview
Import: import { ContentEntryFormPreview } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/components/ContentEntryForm/ContentEntryFormPreview.tsx
Name:
ContentEntryFormTitle
Import: import { ContentEntryFormTitle } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntryHeaderLeft.tsx
Name:
ContentEntryListConfig
Import: import { ContentEntryListConfig } from "webiny/admin/cms/entry/list"
Source: @webiny/app-headless-cms/admin/config/contentEntries/index.ts
Name:
DefaultLayout
Import: import { DefaultLayout } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/components/ContentEntryForm/DefaultLayout.tsx
Name:
Divider
Import: import { Divider } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
DropDown
Import: import { DropDown } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
DropDownItem
Import: import { DropDownItem } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
DynamicZoneContainer
Import: import { DynamicZoneContainer } from "webiny/admin/cms/field-renderers/dynamic-zone"
Source: @webiny/app-headless-cms/admin/plugins/fieldRenderers/dynamicZone/index.tsx
Name:
getNodeFromSelection
Import: import { getNodeFromSelection } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
Header
Import: import { Header } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/components/ContentEntryForm/Header/index.tsx
Name:
IsModelPublishable
Import: import { IsModelPublishable } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/admin/components/IsModelPublishable.tsx
Name:
Klass
Kind: type
Import: import type { Klass } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
LexicalEditorConfig
Import: import { LexicalEditorConfig } from "webiny/admin/cms/lexical"
Source: @webiny/app-headless-cms/admin/lexicalConfig/LexicalEditorConfig.tsx
Name:
LexicalHtmlRenderer
Import: import { LexicalHtmlRenderer } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
LexicalNode
Kind: type
Import: import type { LexicalNode } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
MultiValueContainer
Import: import { MultiValueContainer } from "webiny/admin/cms/field-renderers/dynamic-zone"
Source: @webiny/app-headless-cms/admin/plugins/fieldRenderers/dynamicZone/index.tsx
Name:
MultiValueItem
Import: import { MultiValueItem } from "webiny/admin/cms/field-renderers/dynamic-zone"
Source: @webiny/app-headless-cms/admin/plugins/fieldRenderers/dynamicZone/index.tsx
Name:
MultiValueItemContainer
Import: import { MultiValueItemContainer } from "webiny/admin/cms/field-renderers/dynamic-zone"
Source: @webiny/app-headless-cms/admin/plugins/fieldRenderers/dynamicZone/index.tsx
Name:
MultiValueItemContainer
Import: import { MultiValueItemContainer } from "webiny/admin/cms/field-renderers/object"
Source: @webiny/app-headless-cms/admin/plugins/fieldRenderers/object/MultiValueItemContainer.tsx
Name:
PermissionsEditor
Import: import { PermissionsEditor } from "webiny/admin/cms/model"
Source: @webiny/app-headless-cms/admin/components/FieldEditor/EditFieldDialog/PermissionsEditor/PermissionsEditor.tsx
Name:
Routes
Import: import { Routes } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/routes.ts
Name:
RulesEditor
Import: import { RulesEditor } from "webiny/admin/cms/model"
Source: @webiny/app-headless-cms/admin/components/FieldEditor/EditFieldDialog/RulesEditor/index.ts
Name:
SingletonContentEntry
Import: import { SingletonContentEntry } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/views/contentEntries/ContentEntry/SingletonContentEntry.tsx
Name:
SingleValueItemContainer
Import: import { SingleValueItemContainer } from "webiny/admin/cms/field-renderers/dynamic-zone"
Source: @webiny/app-headless-cms/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.tsx
Name:
TemplateGallery
Import: import { TemplateGallery } from "webiny/admin/cms/field-renderers/dynamic-zone"
Source: @webiny/app-headless-cms/admin/plugins/fieldRenderers/dynamicZone/index.tsx
Description: We're wrapping each component with withShouldRender, because they're all decoratable, and withShouldRender attaches a
conditional decorator, which optionally takes a modelIds prop, so you can control on which models that component will be decorated.
Name:
useCms
Import: import { useCms } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/admin/hooks/useCms.ts
Name:
useContentEntriesList
Import: import { useContentEntriesList } from "webiny/admin/cms/entry/list"
Source: @webiny/app-headless-cms/admin/hooks/index.ts
Name:
useContentEntry
Import: import { useContentEntry } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/views/contentEntries/hooks/index.ts
Name:
useContentEntryForm
Import: import { useContentEntryForm } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/components/ContentEntryForm/useContentEntryForm.ts
Name:
useCurrentElement
Import: import { useCurrentElement } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
useCurrentSelection
Import: import { useCurrentSelection } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
useDeriveValueFromSelection
Import: import { useDeriveValueFromSelection } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
useFieldAccessControlRules
Import: import { useFieldAccessControlRules } from "webiny/admin/cms/model"
Source: @webiny/app-headless-cms-common/Fields/index.ts
Description: Hook that evaluates access control rules for the current identity.
Does not require bindParentName — only identity-based permissions.
Name:
useFieldEffectiveRules
Import: import { useFieldEffectiveRules } from "webiny/admin/cms/model"
Source: @webiny/app-headless-cms-common/Fields/index.ts
Description: Composes useParentRules and useFieldRules into a single hook
that returns the effective (intersected) rules.
Name:
useFontColorPicker
Import: import { useFontColorPicker } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
useIsMounted
Import: import { useIsMounted } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
useLazyQuery
Import: import { useLazyQuery } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/admin/hooks/useLazyQuery.ts
Name:
useLexicalEditorConfig
Import: import { useLexicalEditorConfig } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
useModel
Import: import { useModel } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/admin/components/ModelProvider/index.ts
Description: Get model from the current context.
Name:
useMutation
Import: import { useMutation } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/admin/hooks/useMutation.ts
Name:
usePermission
Import: import { usePermission } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/admin/hooks/usePermission.ts
Name:
useQuery
Import: import { useQuery } from "webiny/admin/cms"
Source: @webiny/app-headless-cms/admin/hooks/useQuery.ts
Name:
useRichTextEditor
Import: import { useRichTextEditor } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
useSingletonContentEntry
Import: import { useSingletonContentEntry } from "webiny/admin/cms/entry/editor"
Source: @webiny/app-headless-cms/admin/views/contentEntries/hooks/useSingletonContentEntry.ts
Name:
useTemplate
Import: import { useTemplate } from "webiny/admin/cms/field-renderers/dynamic-zone"
Source: @webiny/app-headless-cms/admin/plugins/fieldRenderers/dynamicZone/index.tsx
Name:
useTextAlignmentAction
Import: import { useTextAlignmentAction } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts
Name:
useTypographyAction
Import: import { useTypographyAction } from "webiny/admin/cms/lexical"
Source: @webiny/lexical-editor/exports/admin/lexical.ts