From d42d32ee095cd6c70ea3f73d8fc95290d418e129 Mon Sep 17 00:00:00 2001 From: bender Date: Fri, 17 Apr 2026 21:18:00 +0000 Subject: [PATCH] Switch to version 2: added registry/components/ButtonElasticEffect.json --- registry/components/ButtonElasticEffect.json | 35 ++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 registry/components/ButtonElasticEffect.json diff --git a/registry/components/ButtonElasticEffect.json b/registry/components/ButtonElasticEffect.json new file mode 100644 index 0000000..1b6711e --- /dev/null +++ b/registry/components/ButtonElasticEffect.json @@ -0,0 +1,35 @@ +{ + "name": "ButtonElasticEffect", + "description": "CTA button with elastic scale animation on hover.", + "details": "Use for CTAs where a springy, elastic feel adds playfulness. On hover, the button scales with an elastic easing that overshoots and settles, creating a bouncy tactile response.", + "constraints": { + "textRules": { + "text": { + "required": true, + "example": "Get Started", + "minChars": 2, + "maxChars": 25 + } + } + }, + "propsSchema": { + "text": "string", + "onClick?": "() => void", + "href?": "string - External URLs open in new tab, internal values scroll to section", + "className?": "string", + "textClassName?": "string", + "disabled?": "boolean (default: false)", + "ariaLabel?": "string", + "type?": "'button' | 'submit' | 'reset' (default: 'button')" + }, + "usageExample": "", + "do": [ + "Use for general use" + ], + "dont": [], + "editRules": { + "textOnly": true, + "layoutLocked": true, + "styleLocked": true + } +}