diff --git a/COMPONENT_INDEX.md b/COMPONENT_INDEX.md
index c042d60d..052c625c 100644
--- a/COMPONENT_INDEX.md
+++ b/COMPONENT_INDEX.md
@@ -921,6 +921,8 @@ None.
| Prop name | Kind | Reactive | Type | Default value | Description |
| :-------------- | :--------------- | :------- | :---------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
+| feedback | let
| No | string
| "Copied!"
| Set the feedback text shown after clicking the button |
+| feedbackTimeout | let
| No | number
| 2000
| Set the timeout duration (ms) to display feedback text |
| iconDescription | let
| No | string
| "Copy to clipboard"
| Set the title and ARIA label for the copy button |
| text | let
| No | string
| undefined
| Specify the text to copy |
| copy | let
| No | (text: string) => void
| async (text) => { try { await navigator.clipboard.writeText(text); } catch (e) { console.log(e); } }
| Override the default copy behavior of using the navigator.clipboard.writeText API to copy text |
diff --git a/docs/src/COMPONENT_API.json b/docs/src/COMPONENT_API.json
index 40cc4d90..f7698d84 100644
--- a/docs/src/COMPONENT_API.json
+++ b/docs/src/COMPONENT_API.json
@@ -2180,6 +2180,28 @@
"moduleName": "CopyButton",
"filePath": "src/CopyButton/CopyButton.svelte",
"props": [
+ {
+ "name": "feedback",
+ "kind": "let",
+ "description": "Set the feedback text shown after clicking the button",
+ "type": "string",
+ "value": "\"Copied!\"",
+ "isFunction": false,
+ "isFunctionDeclaration": false,
+ "constant": false,
+ "reactive": false
+ },
+ {
+ "name": "feedbackTimeout",
+ "kind": "let",
+ "description": "Set the timeout duration (ms) to display feedback text",
+ "type": "number",
+ "value": "2000",
+ "isFunction": false,
+ "isFunctionDeclaration": false,
+ "constant": false,
+ "reactive": false
+ },
{
"name": "iconDescription",
"kind": "let",
@@ -2216,16 +2238,12 @@
"moduleExports": [],
"slots": [],
"events": [
- { "type": "forwarded", "name": "click", "element": "Copy" },
- { "type": "forwarded", "name": "animationend", "element": "Copy" },
+ { "type": "forwarded", "name": "click", "element": "button" },
+ { "type": "forwarded", "name": "animationend", "element": "button" },
{ "type": "dispatched", "name": "copy" }
],
"typedefs": [],
- "rest_props": { "type": "InlineComponent", "name": "Copy" },
- "extends": {
- "interface": "CopyProps",
- "import": "\"../Copy/Copy.svelte\""
- }
+ "rest_props": { "type": "Element", "name": "button" }
},
{
"moduleName": "DataTable",
diff --git a/types/CopyButton/CopyButton.svelte.d.ts b/types/CopyButton/CopyButton.svelte.d.ts
index 8af33ec5..68e357eb 100644
--- a/types/CopyButton/CopyButton.svelte.d.ts
+++ b/types/CopyButton/CopyButton.svelte.d.ts
@@ -1,8 +1,20 @@
///
import { SvelteComponentTyped } from "svelte";
-import { CopyProps } from "../Copy/Copy.svelte";
-export interface CopyButtonProps extends CopyProps {
+export interface CopyButtonProps
+ extends svelte.JSX.HTMLAttributes {
+ /**
+ * Set the feedback text shown after clicking the button
+ * @default "Copied!"
+ */
+ feedback?: string;
+
+ /**
+ * Set the timeout duration (ms) to display feedback text
+ * @default 2000
+ */
+ feedbackTimeout?: number;
+
/**
* Set the title and ARIA label for the copy button
* @default "Copy to clipboard"