Benchmarks
Overview
CEM provides two types of benchmarks for comprehensive performance analysis:
Generate Tool Benchmarks
Performance comparison of custom element manifest generation tools.
Number of runs per tool: 100
Number of files analyzed per run: 45
@lit-labs/cli
Avg Time
Avg Output Size
Runs
Validation
Command
npx --yes @lit-labs/cli labs gen --manifest --out data/litValidation Results
📄 Global
schema
- schema-version-old: validation for manifests with schemaVersion < 2.1.0 may not produce accurate results (version: 1.0.0)
📄 benchmark/components/alert-toast.js
lifecycle
- lifecycle-web-components: lifecycle method should not be documented in public API
class AlertToast → method connectedCallback - lifecycle-lit-render: render method in Lit element should not be documented in public API
class AlertToast → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class AlertToast → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class AlertToast → field styles
📄 benchmark/components/avatar-image.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class AvatarImage → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class AvatarImage → method #onError
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class AvatarImage → static field styles
📄 benchmark/components/button-element.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ButtonElement → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ButtonElement → static field styles
📄 benchmark/components/clipboard-copy.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ClipboardCopy → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ClipboardCopy → static field styles
📄 benchmark/components/color-picker.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ColorPicker → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class ColorPicker → method #onInput
📄 benchmark/components/complex-component.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ComplexComponent → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ComplexComponent → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class ComplexComponent → field styles
📄 benchmark/components/complex-types.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ComplexTypes → method render
📄 benchmark/components/dark-mode-toggle.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class DarkModeToggle → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class DarkModeToggle → method #toggle
📄 benchmark/components/dismiss-button.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class DismissButton → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class DismissButton → method #dismiss
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class DismissButton → static field styles
📄 benchmark/components/emoji-picker.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class EmojiPicker → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class EmojiPicker → static field styles
📄 benchmark/components/expand-toggle.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ExpandToggle → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ExpandToggle → static field styles
📄 benchmark/components/expandable-panel.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ExpandablePanel → method render
📄 benchmark/components/field-label.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class FieldLabel → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class FieldLabel → static field styles
📄 benchmark/components/file-uploader.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class FileUploader → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class FileUploader → method #onChange
📄 benchmark/components/icon-badge.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class IconBadge → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class IconBadge → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class IconBadge → field styles
📄 benchmark/components/image-gallery.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ImageGallery → method render
📄 benchmark/components/inline-edit.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class InlineEdit → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class InlineEdit → method #startEdit - private-hash-methods: ECMAScript private method should never be documented in public API
class InlineEdit → method #onInput - private-hash-methods: ECMAScript private method should never be documented in public API
class InlineEdit → method #onBlur
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class InlineEdit → static field styles
📄 benchmark/components/keyboard-shortcut.js
lifecycle
- lifecycle-web-components: lifecycle method should not be documented in public API
class KeyboardShortcut → method connectedCallback - lifecycle-web-components: lifecycle method should not be documented in public API
class KeyboardShortcut → method disconnectedCallback - lifecycle-lit-render: render method in Lit element should not be documented in public API
class KeyboardShortcut → method render
📄 benchmark/components/load-spinner.js
lifecycle
- lifecycle-web-components: lifecycle method should not be documented in public API
class LoadSpinner → method connectedCallback - lifecycle-web-components: lifecycle method should not be documented in public API
class LoadSpinner → method disconnectedCallback - lifecycle-lit-render: render method in Lit element should not be documented in public API
class LoadSpinner → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class LoadSpinner → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class LoadSpinner → field styles
📄 benchmark/components/markdown-viewer.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class MarkdownViewer → method render
📄 benchmark/components/message-bubble.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class MessageBubble → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class MessageBubble → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class MessageBubble → field styles
📄 benchmark/components/multi-slot.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class MultiSlot → method render
📄 benchmark/components/no-decorator.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class NoDecoratorElement → method render
📄 benchmark/components/notification-banner.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class NotificationBanner → method render
📄 benchmark/components/privacy-test.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class PrivacyTest → method render
private
- private-underscore-methods: underscore-prefixed method should be marked as private or protected, or should not be documented in public API
class PrivacyTest → method _handleClick - private-underscore-methods: underscore-prefixed method should be marked as private or protected, or should not be documented in public API
class PrivacyTest → method _updateState
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class PrivacyTest → static field styles
📄 benchmark/components/progress-circle.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ProgressCircle → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class ProgressCircle → method #color
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ProgressCircle → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class ProgressCircle → field styles
📄 benchmark/components/range-slider.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class RangeSlider → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class RangeSlider → method #onInput
📄 benchmark/components/resize-handle.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ResizeHandle → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ResizeHandle → static field styles
📄 benchmark/components/search-bar.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class SearchBar → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class SearchBar → method #onInput
📄 benchmark/components/section-header.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class SectionHeader → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class SectionHeader → static field styles
📄 benchmark/components/skeleton-block.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class SkeletonBlock → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class SkeletonBlock → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class SkeletonBlock → field styles
📄 benchmark/components/split-pane.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class SplitPane → method render
📄 benchmark/components/star-rating.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class StarRating → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class StarRating → method #setRating
📄 benchmark/components/step-progress.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class StepProgress → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class StepProgress → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class StepProgress → field styles
📄 benchmark/components/tab-navigation.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class TabNavigation → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class TabNavigation → method #select
📄 benchmark/components/tag-list.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class TagList → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class TagList → static field styles
📄 benchmark/components/text-ticker.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class TextTicker → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class TextTicker → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class TextTicker → field styles
📄 benchmark/components/theme-toggle.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ThemeToggle → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ThemeToggle → static field styles
📄 benchmark/components/toast-stack.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ToastStack → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ToastStack → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class ToastStack → field styles
📄 benchmark/components/toggle-switch.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ToggleSwitch → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class ToggleSwitch → method #onToggle
📄 benchmark/components/user-avatar.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class UserAvatar → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class UserAvatar → static field styles
📄 benchmark/components/user-list.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class UserList → method render
📄 benchmark/components/visually-hidden.js
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class VisuallyHidden → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class VisuallyHidden → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class VisuallyHidden → field styles
@custom-elements-manifest/analyzer
Avg Time
Avg Output Size
Runs
Validation
Command
npx --yes @custom-elements-manifest/analyzer analyze --outdir data/cea --globs benchmark/components/*.tsValidation Results
📄 Global
schema
- schema-version-old: validation for manifests with schemaVersion < 2.1.0 may not produce accurate results (version: 1.0.0)
📄 benchmark/components/alert-toast.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class AlertToast → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class AlertToast → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class AlertToast → field styles
📄 benchmark/components/avatar-image.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class AvatarImage → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class AvatarImage → method #onError
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class AvatarImage → static field styles
📄 benchmark/components/button-element.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ButtonElement → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ButtonElement → static field styles
📄 benchmark/components/clipboard-copy.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ClipboardCopy → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ClipboardCopy → static field styles
📄 benchmark/components/color-picker.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ColorPicker → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class ColorPicker → method #onInput
📄 benchmark/components/complex-component.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ComplexComponent → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ComplexComponent → static field styles
📄 benchmark/components/complex-types.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ComplexTypes → method render
📄 benchmark/components/dark-mode-toggle.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class DarkModeToggle → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class DarkModeToggle → method #toggle
📄 benchmark/components/dismiss-button.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class DismissButton → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class DismissButton → method #dismiss
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class DismissButton → static field styles
📄 benchmark/components/emoji-picker.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class EmojiPicker → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class EmojiPicker → static field styles
📄 benchmark/components/expand-toggle.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ExpandToggle → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ExpandToggle → static field styles
📄 benchmark/components/expandable-panel.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ExpandablePanel → method render
📄 benchmark/components/field-label.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class FieldLabel → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class FieldLabel → static field styles
📄 benchmark/components/file-uploader.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class FileUploader → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class FileUploader → method #onChange
📄 benchmark/components/icon-badge.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class IconBadge → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class IconBadge → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class IconBadge → field styles
📄 benchmark/components/image-gallery.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ImageGallery → method render
📄 benchmark/components/inline-edit.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class InlineEdit → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class InlineEdit → method #startEdit - private-hash-methods: ECMAScript private method should never be documented in public API
class InlineEdit → method #onInput - private-hash-methods: ECMAScript private method should never be documented in public API
class InlineEdit → method #onBlur
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class InlineEdit → static field styles
📄 benchmark/components/keyboard-shortcut.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class KeyboardShortcut → method render
📄 benchmark/components/load-spinner.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class LoadSpinner → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class LoadSpinner → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class LoadSpinner → field styles
📄 benchmark/components/markdown-viewer.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class MarkdownViewer → method render
📄 benchmark/components/message-bubble.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class MessageBubble → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class MessageBubble → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class MessageBubble → field styles
📄 benchmark/components/multi-slot.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class MultiSlot → method render
📄 benchmark/components/no-decorator.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class NoDecoratorElement → method render
📄 benchmark/components/notification-banner.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class NotificationBanner → method render
📄 benchmark/components/privacy-test.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class PrivacyTest → method render
private
- private-underscore-methods: underscore-prefixed method should be marked as private or protected, or should not be documented in public API
class PrivacyTest → method _handleClick - private-underscore-methods: underscore-prefixed method should be marked as private or protected, or should not be documented in public API
class PrivacyTest → method _updateState
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class PrivacyTest → static field styles
📄 benchmark/components/progress-circle.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ProgressCircle → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class ProgressCircle → method #color
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ProgressCircle → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class ProgressCircle → field styles
📄 benchmark/components/range-slider.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class RangeSlider → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class RangeSlider → method #onInput
📄 benchmark/components/resize-handle.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ResizeHandle → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ResizeHandle → static field styles
📄 benchmark/components/search-bar.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class SearchBar → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class SearchBar → method #onInput
📄 benchmark/components/section-header.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class SectionHeader → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class SectionHeader → static field styles
📄 benchmark/components/skeleton-block.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class SkeletonBlock → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class SkeletonBlock → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class SkeletonBlock → field styles
📄 benchmark/components/split-pane.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class SplitPane → method render
📄 benchmark/components/star-rating.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class StarRating → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class StarRating → method #setRating
📄 benchmark/components/step-progress.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class StepProgress → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class StepProgress → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class StepProgress → field styles
📄 benchmark/components/tab-navigation.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class TabNavigation → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class TabNavigation → method #select
📄 benchmark/components/tag-list.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class TagList → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class TagList → static field styles
📄 benchmark/components/text-ticker.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class TextTicker → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class TextTicker → static field styles
📄 benchmark/components/theme-toggle.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ThemeToggle → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ThemeToggle → static field styles
📄 benchmark/components/toast-stack.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ToastStack → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class ToastStack → static field styles
verbose
- verbose-defaults: default value is very long, consider simplifying or moving to external configuration
class ToastStack → field styles
📄 benchmark/components/toggle-switch.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class ToggleSwitch → method render
private
- private-hash-methods: ECMAScript private method should never be documented in public API
class ToggleSwitch → method #onToggle
📄 benchmark/components/user-avatar.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class UserAvatar → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class UserAvatar → static field styles
📄 benchmark/components/user-list.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class UserList → method render
📄 benchmark/components/visually-hidden.ts
lifecycle
- lifecycle-lit-render: render method in Lit element should not be documented in public API
class VisuallyHidden → method render
implementation
- implementation-static-styles: static styles field is implementation detail, should not be documented in public API
class VisuallyHidden → static field styles
cem generate
Avg Time
Avg Output Size
Runs
Validation
Command
cem generate -o data/cem/custom-elements.json benchmark/components/*.tsValidation Results
- schema-additional-properties: property 'attribute' not allowed (/modules/44/declarations/0/members/0)
- schema-additional-properties: property 'type', 'default', 'attribute' not allowed (/modules/44/declarations/0/members/0)
- schema-invalid-enum: invalid value, must be one of: method
📄 benchmark/components/privacy-test.js
private
- private-underscore-methods: underscore-prefixed method should be marked as private or protected, or should not be documented in public API
class PrivacyTest → method _handleClick - private-underscore-methods: underscore-prefixed method should be marked as private or protected, or should not be documented in public API
class PrivacyTest → method _updateState - private-underscore-methods: underscore-prefixed method should be marked as private or protected, or should not be documented in public API
class PrivacyTest → method _privateMethod
LSP Server Benchmarks
Last benchmark run:HTML File Operations
Pure LSP protocol timing in .html files. Each benchmark measures the time from LSP request to response completion, using multiple iterations to calculate statistical distributions (mean, median, P95, P99).