"
},
- { "type": "string", "name": "RowId", "ts": "type RowId = string" },
{
- "type": "{ key: Key; value: Value; }",
- "name": "Cell",
- "ts": "interface Cell { key: Key; value: Value; }"
+ "type": "string",
+ "name": "DataTableRowId",
+ "ts": "type DataTableRowId = string"
+ },
+ {
+ "type": "{ key: DataTableKey; value: DataTableValue; }",
+ "name": "DataTableCell",
+ "ts": "interface DataTableCell { key: DataTableKey; value: DataTableValue; }"
}
],
"rest_props": { "type": "InlineComponent", "name": "TableContainer" }
diff --git a/package.json b/package.json
index 5302fe6f..85e55028 100644
--- a/package.json
+++ b/package.json
@@ -39,7 +39,7 @@
"rollup": "^2.33.3",
"rollup-plugin-svelte": "^6.1.1",
"rollup-plugin-terser": "^7.0.2",
- "sveld": "^0.2.1",
+ "sveld": "^0.3.0",
"svelte": "^3.29.7",
"svelte-check": "^1.1.15",
"svelte-loader": "^2.13.6",
diff --git a/src/DataTable/DataTable.svelte b/src/DataTable/DataTable.svelte
index 17a4bf5e..5efe3212 100644
--- a/src/DataTable/DataTable.svelte
+++ b/src/DataTable/DataTable.svelte
@@ -1,24 +1,24 @@
import { ComboBox } from "../types";
+ import type { ComboBoxItem } from "../types/ComboBox/ComboBox";
+
+ const items: ComboBoxItem[] = [
+ { id: "0", text: "Slack" },
+ { id: "1", text: "Email" },
+ { id: "2", text: "Fax" },
+ ];
diff --git a/types/ComboBox/ComboBox.d.ts b/types/ComboBox/ComboBox.d.ts
index 78d7a886..c553fea2 100644
--- a/types/ComboBox/ComboBox.d.ts
+++ b/types/ComboBox/ComboBox.d.ts
@@ -1,6 +1,6 @@
///
-interface ComboBoxItem {
+export interface ComboBoxItem {
id: string;
text: string;
}
diff --git a/types/DataTable/DataTable.d.ts b/types/DataTable/DataTable.d.ts
index 2dea6293..530ff61c 100644
--- a/types/DataTable/DataTable.d.ts
+++ b/types/DataTable/DataTable.d.ts
@@ -1,34 +1,34 @@
///
-type Key = string;
+export type DataTableKey = string;
-type Value = any;
+export type DataTableValue = any;
-interface EmptyHeader {
- key: Key;
+export interface DataTableEmptyHeader {
+ key: DataTableKey;
empty: boolean;
- display?: (item: Value) => Value;
- sort?: (a: Value, b: Value) => 0 | -1 | 1;
+ display?: (item: Value) => DataTableValue;
+ sort?: (a: DataTableValue, b: DataTableValue) => 0 | -1 | 1;
columnMenu?: boolean;
}
-interface NonEmptyHeader {
- key: Key;
- value: Value;
- display?: (item: Value) => Value;
- sort?: (a: Value, b: Value) => 0 | -1 | 1;
+export interface DataTableNonEmptyHeader {
+ key: DataTableKey;
+ value: DataTableValue;
+ display?: (item: Value) => DataTableValue;
+ sort?: (a: DataTableValue, b: DataTableValue) => 0 | -1 | 1;
columnMenu?: boolean;
}
-type DataTableHeader = NonEmptyHeader | EmptyHeader;
+export type DataTableHeader = DataTableNonEmptyHeader | DataTableEmptyHeader;
-type Row = Record;
+export type DataTableRow = Record;
-type RowId = string;
+export type DataTableRowId = string;
-interface Cell {
- key: Key;
- value: Value;
+export interface DataTableCell {
+ key: DataTableKey;
+ value: DataTableValue;
}
export interface DataTableProps {
@@ -43,7 +43,7 @@ export interface DataTableProps {
* keys defined in `headers` are used for the row ids
* @default []
*/
- rows?: Row[];
+ rows?: DataTableRow[];
/**
* Set the size of the data table
@@ -91,7 +91,7 @@ export interface DataTableProps {
* Specify the row ids to be expanded
* @default []
*/
- expandedRowIds?: RowId[];
+ expandedRowIds?: DataTableRowId[];
/**
* Set to `true` for the radio selection variant
@@ -116,7 +116,7 @@ export interface DataTableProps {
* Specify the row ids to be selected
* @default []
*/
- selectedRowIds?: RowId[];
+ selectedRowIds?: DataTableRowId[];
/**
* Set to `true` to enable a sticky header
@@ -129,24 +129,27 @@ export default class DataTable {
$$prop_def: DataTableProps;
$$slot_def: {
default: {};
- cell: { row: Row; cell: Cell };
- ["cell-header"]: { header: NonEmptyHeader };
- ["expanded-row"]: { row: Row };
+ cell: { row: DataTableRow; cell: DataTableCell };
+ ["cell-header"]: { header: DataTableNonEmptyHeader };
+ ["expanded-row"]: { row: DataTableRow };
};
$on(
eventname: "click",
- cb: (event: CustomEvent<{ header?: DataTableHeader; row?: Row; cell?: Cell }>) => void
+ cb: (event: CustomEvent<{ header?: DataTableHeader; row?: DataTableRow; cell?: DataTableCell }>) => void
): () => void;
$on(eventname: "click:header--expand", cb: (event: CustomEvent<{ expanded: boolean }>) => void): () => void;
$on(
eventname: "click:header",
cb: (event: CustomEvent<{ header: DataTableHeader; sortDirection: "ascending" | "descending" | "none" }>) => void
): () => void;
- $on(eventname: "click:row", cb: (event: CustomEvent) => void): () => void;
- $on(eventname: "mouseenter:row", cb: (event: CustomEvent) => void): () => void;
- $on(eventname: "mouseleave:row", cb: (event: CustomEvent) => void): () => void;
- $on(eventname: "click:row--expand", cb: (event: CustomEvent<{ expanded: boolean; row: Row }>) => void): () => void;
- $on(eventname: "click:cell", cb: (event: CustomEvent) => void): () => void;
+ $on(eventname: "click:row", cb: (event: CustomEvent) => void): () => void;
+ $on(eventname: "mouseenter:row", cb: (event: CustomEvent) => void): () => void;
+ $on(eventname: "mouseleave:row", cb: (event: CustomEvent) => void): () => void;
+ $on(
+ eventname: "click:row--expand",
+ cb: (event: CustomEvent<{ expanded: boolean; row: DataTableRow }>) => void
+ ): () => void;
+ $on(eventname: "click:cell", cb: (event: CustomEvent) => void): () => void;
$on(eventname: string, cb: (event: Event) => void): () => void;
}
diff --git a/types/Dropdown/Dropdown.d.ts b/types/Dropdown/Dropdown.d.ts
index 44adc8ba..b4961bc0 100644
--- a/types/Dropdown/Dropdown.d.ts
+++ b/types/Dropdown/Dropdown.d.ts
@@ -1,10 +1,10 @@
///
-type DropdownItemId = string;
+export type DropdownItemId = string;
-type DropdownItemText = string;
+export type DropdownItemText = string;
-interface DropdownItem {
+export interface DropdownItem {
id: DropdownItemId;
text: DropdownItemText;
}
diff --git a/types/FileUploader/FileUploader.d.ts b/types/FileUploader/FileUploader.d.ts
index aadde0a5..364bdc73 100644
--- a/types/FileUploader/FileUploader.d.ts
+++ b/types/FileUploader/FileUploader.d.ts
@@ -1,6 +1,6 @@
///
-type Files = string[];
+export type Files = string[];
export interface FileUploaderProps extends svelte.JSX.HTMLAttributes {
/**
diff --git a/types/FileUploader/FileUploaderButton.d.ts b/types/FileUploader/FileUploaderButton.d.ts
index 03e1f992..e9952b6a 100644
--- a/types/FileUploader/FileUploaderButton.d.ts
+++ b/types/FileUploader/FileUploaderButton.d.ts
@@ -1,6 +1,6 @@
///
-type Files = string[];
+export type Files = string[];
export interface FileUploaderButtonProps extends svelte.JSX.HTMLAttributes {
/**
diff --git a/types/FileUploader/FileUploaderDropContainer.d.ts b/types/FileUploader/FileUploaderDropContainer.d.ts
index 86917250..3a16f9c9 100644
--- a/types/FileUploader/FileUploaderDropContainer.d.ts
+++ b/types/FileUploader/FileUploaderDropContainer.d.ts
@@ -1,6 +1,6 @@
///
-type Files = string[];
+export type Files = string[];
export interface FileUploaderDropContainerProps extends svelte.JSX.HTMLAttributes {
/**
diff --git a/types/Grid/Column.d.ts b/types/Grid/Column.d.ts
index 032786a6..3704cef5 100644
--- a/types/Grid/Column.d.ts
+++ b/types/Grid/Column.d.ts
@@ -1,13 +1,13 @@
///
-type ColumnSize = boolean | number;
+export type ColumnSize = boolean | number;
-interface ColumnSizeDescriptor {
+export interface ColumnSizeDescriptor {
span?: ColumnSize;
offset: number;
}
-type ColumnBreakpoint = ColumnSize | ColumnSizeDescriptor;
+export type ColumnBreakpoint = ColumnSize | ColumnSizeDescriptor;
export interface ColumnProps extends svelte.JSX.HTMLAttributes {
/**
diff --git a/types/ListBox/ListBoxField.d.ts b/types/ListBox/ListBoxField.d.ts
index 2a147651..613f2bd5 100644
--- a/types/ListBox/ListBoxField.d.ts
+++ b/types/ListBox/ListBoxField.d.ts
@@ -1,6 +1,6 @@
///
-type ListBoxFieldTranslationId = "close" | "open";
+export type ListBoxFieldTranslationId = "close" | "open";
export interface ListBoxFieldProps extends svelte.JSX.HTMLAttributes {
/**
diff --git a/types/ListBox/ListBoxMenuIcon.d.ts b/types/ListBox/ListBoxMenuIcon.d.ts
index 29203c07..d76da5bd 100644
--- a/types/ListBox/ListBoxMenuIcon.d.ts
+++ b/types/ListBox/ListBoxMenuIcon.d.ts
@@ -1,6 +1,6 @@
///
-type ListBoxMenuIconTranslationId = "close" | "open";
+export type ListBoxMenuIconTranslationId = "close" | "open";
export interface ListBoxMenuIconProps extends svelte.JSX.HTMLAttributes {
/**
diff --git a/types/ListBox/ListBoxSelection.d.ts b/types/ListBox/ListBoxSelection.d.ts
index a9b0d3e8..80167139 100644
--- a/types/ListBox/ListBoxSelection.d.ts
+++ b/types/ListBox/ListBoxSelection.d.ts
@@ -1,6 +1,6 @@
///
-type ListBoxSelectionTranslationId = "clearAll" | "clearSelection";
+export type ListBoxSelectionTranslationId = "clearAll" | "clearSelection";
export interface ListBoxSelectionProps extends svelte.JSX.HTMLAttributes {
/**
diff --git a/types/MultiSelect/MultiSelect.d.ts b/types/MultiSelect/MultiSelect.d.ts
index 2e9458a1..f9d9bcd8 100644
--- a/types/MultiSelect/MultiSelect.d.ts
+++ b/types/MultiSelect/MultiSelect.d.ts
@@ -1,10 +1,10 @@
///
-type MultiSelectItemId = string;
+export type MultiSelectItemId = string;
-type MultiSelectItemText = string;
+export type MultiSelectItemText = string;
-interface MultiSelectItem {
+export interface MultiSelectItem {
id: MultiSelectItemId;
text: MultiSelectItemText;
}
diff --git a/types/NumberInput/NumberInput.d.ts b/types/NumberInput/NumberInput.d.ts
index fdfa765f..5b0c5c91 100644
--- a/types/NumberInput/NumberInput.d.ts
+++ b/types/NumberInput/NumberInput.d.ts
@@ -1,6 +1,6 @@
///
-type NumberInputTranslationId = "increment" | "decrement";
+export type NumberInputTranslationId = "increment" | "decrement";
export interface NumberInputProps extends svelte.JSX.HTMLAttributes {
/**
diff --git a/yarn.lock b/yarn.lock
index 8f2fbd40..f25d9996 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2105,11 +2105,6 @@ prettier-plugin-svelte@^1.4.1:
resolved "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-1.4.1.tgz#2f0f7a149190f476dc9b4ba9da8d482bd196f1e2"
integrity sha512-6y0m37Xw01GRf/WIHau+Kp3uXj2JB1agtEmNVKb9opMy34A6OMOYhfneVpNIlrghQSw/jIV+t3e5Ngt4up2CMA==
-prettier@^2.1.2:
- version "2.1.2"
- resolved "https://registry.npmjs.org/prettier/-/prettier-2.1.2.tgz#3050700dae2e4c8b67c4c3f666cdb8af405e1ce5"
- integrity sha512-16c7K+x4qVlJg9rEbXl7HEGmQyZlG4R9AgP+oHKRMsMsuk8s+ATStlf1NpDqyBI1HpVyfjLOeMhH2LvuNvV5Vg==
-
prettier@^2.2.0:
version "2.2.0"
resolved "https://registry.npmjs.org/prettier/-/prettier-2.2.0.tgz#8a03c7777883b29b37fb2c4348c66a78e980418b"
@@ -2733,18 +2728,18 @@ supports-color@^7.0.0, supports-color@^7.1.0:
dependencies:
has-flag "^4.0.0"
-sveld@^0.2.1:
- version "0.2.1"
- resolved "https://registry.npmjs.org/sveld/-/sveld-0.2.1.tgz#3294ba51d18905e260546d6ca088ceda015dcbb2"
- integrity sha512-NEEXxKaOWt0JBXrxnpG/TNVzCUadW65YEyD3l/49IV9xo7/5Jkrm7At8wGPNFSYGlC6564tmP8NBhFQH/0mzBg==
+sveld@^0.3.0:
+ version "0.3.0"
+ resolved "https://registry.npmjs.org/sveld/-/sveld-0.3.0.tgz#a1a8c188511a8d5674c72fd8b2987278fae0d062"
+ integrity sha512-aEuxRaeN11P+k0DvQ+32lEzRQNzv+dFO5qRC4wSM0p5MW9i6sxgPmnYV3xy5TSzaYXVmSI9JJRSMDd3C1ayw0w==
dependencies:
"@rollup/plugin-node-resolve" "^10.0.0"
comment-parser "^0.7.6"
fs-extra "^9.0.1"
- prettier "^2.1.2"
+ prettier "^2.2.0"
rollup "^2.33.3"
rollup-plugin-svelte "^6.1.1"
- svelte "^3.29.7"
+ svelte "^3.30.0"
svelte-check@^1.1.15:
version "1.1.15"
@@ -2788,6 +2783,11 @@ svelte@^3.29.7:
resolved "https://registry.npmjs.org/svelte/-/svelte-3.29.7.tgz#e254eb2d0d609ce0fd60f052d444ac4a66d90f7d"
integrity sha512-rx0g311kBODvEWUU01DFBUl3MJuJven04bvTVFUG/w0On/wuj0PajQY/QlXcJndFxG+W1s8iXKaB418tdHWc3A==
+svelte@^3.30.0:
+ version "3.30.0"
+ resolved "https://registry.npmjs.org/svelte/-/svelte-3.30.0.tgz#cbde341e96bf34f4ac73c8f14f8a014e03bfb7d6"
+ integrity sha512-z+hdIACb9TROGvJBQWcItMtlr4s0DBUgJss6qWrtFkOoIInkG+iAMo/FJZQFyDBQZc+dul2+TzYSi/tpTT5/Ag==
+
tar@^2.0.0:
version "2.2.2"
resolved "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz#0ca8848562c7299b8b446ff6a4d60cdbb23edc40"
|