@budibase/bbui 3.41.0 → 3.41.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bbui.mjs +1327 -549
- package/package.json +2 -2
- package/src/FancyForm/FancyField.svelte +1 -1
- package/src/FancyForm/FancyInput.svelte +1 -1
- package/src/FancyForm/FancySelect.svelte +4 -4
- package/src/Form/Combobox.svelte +1 -1
- package/src/Form/Core/Dropzone.svelte +4 -5
- package/src/Form/Core/File.svelte +1 -1
- package/src/Form/Core/Picker.svelte +6 -12
- package/src/Form/Core/Select.svelte +1 -1
- package/src/Form/Dropzone.svelte +5 -6
- package/src/Form/File.svelte +1 -1
- package/src/Form/Select.svelte +2 -2
- package/src/Markdown/MarkdownEditor.svelte +1 -1
- package/src/Modal/ModalContent.svelte +1 -1
- package/src/Notification/Notification.svelte +1 -1
- package/src/Table/SelectEditRenderer.svelte +1 -1
- package/src/Tabs/Tabs.svelte +1 -1
- package/src/Modal/Content.svelte +0 -7
- package/src/Modal/CustomContent.svelte +0 -39
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@budibase/bbui",
|
|
3
3
|
"description": "A UI solution used in the different Budibase projects.",
|
|
4
|
-
"version": "3.41.
|
|
4
|
+
"version": "3.41.2",
|
|
5
5
|
"license": "MPL-2.0",
|
|
6
6
|
"module": "dist/bbui.mjs",
|
|
7
7
|
"exports": {
|
|
@@ -108,5 +108,5 @@
|
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
110
|
},
|
|
111
|
-
"gitHead": "
|
|
111
|
+
"gitHead": "556bd76bac5c556b307b1022fce8e1fe51d928d7"
|
|
112
112
|
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
export let error: string | null = null
|
|
8
8
|
export let focused: boolean = false
|
|
9
9
|
export let clickable: boolean = false
|
|
10
|
-
export let validate: ((
|
|
10
|
+
export let validate: ((value: V | undefined) => string | null) | null
|
|
11
11
|
export let value: V | undefined
|
|
12
12
|
export let ref: HTMLDivElement | undefined = undefined
|
|
13
13
|
export let autoHeight: boolean | undefined = undefined
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
export let type: string = "text"
|
|
11
11
|
export let disabled: boolean = false
|
|
12
12
|
export let error: string | null = null
|
|
13
|
-
export let validate: ((
|
|
13
|
+
export let validate: ((value: string | undefined) => string | null) | null =
|
|
14
14
|
null
|
|
15
15
|
export let suffix: string | null = null
|
|
16
16
|
export let validateOn: "change" | "blur" = "change"
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
export let value: string | undefined
|
|
11
11
|
export let disabled: boolean = false
|
|
12
12
|
export let error: string | null = null
|
|
13
|
-
export let validate: ((
|
|
13
|
+
export let validate: ((value: string | undefined) => string) | null = null
|
|
14
14
|
export let options: O[] = []
|
|
15
15
|
export let footer: string | undefined = undefined
|
|
16
16
|
export let isOptionEnabled = (_option: O) => true
|
|
@@ -21,8 +21,8 @@
|
|
|
21
21
|
export let getOptionSubtitle = (option: O) =>
|
|
22
22
|
extractProperty(option, "subtitle")
|
|
23
23
|
export let getOptionColour: (
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
option: O,
|
|
25
|
+
index?: number
|
|
26
26
|
) => string | null = () => null
|
|
27
27
|
|
|
28
28
|
const dispatch = createEventDispatcher<{ change: string | undefined }>()
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
$: fieldColour = getFieldAttribute(getOptionColour, value, options)
|
|
36
36
|
|
|
37
37
|
const getFieldAttribute = (
|
|
38
|
-
getAttribute: (
|
|
38
|
+
getAttribute: (option: O, index?: number) => string | null,
|
|
39
39
|
value: string | undefined,
|
|
40
40
|
options: O[]
|
|
41
41
|
) => {
|
package/src/Form/Combobox.svelte
CHANGED
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
const defaultGetOptionLabel = (item: O) => extractProperty(item, "label")
|
|
42
42
|
const defaultGetOptionValue = (item: O) => extractProperty(item, "value")
|
|
43
43
|
|
|
44
|
-
type OptionFormatter = (
|
|
44
|
+
type OptionFormatter = (option: O) => string
|
|
45
45
|
|
|
46
46
|
export let getOptionLabel: OptionFormatter = defaultGetOptionLabel
|
|
47
47
|
export let getOptionValue: OptionFormatter = defaultGetOptionValue
|
|
@@ -19,14 +19,13 @@
|
|
|
19
19
|
export let disabled: boolean = false
|
|
20
20
|
export let compact: boolean = false
|
|
21
21
|
export let fileSizeLimit: number = BYTES_IN_MB * 20
|
|
22
|
-
export let processFiles: ((
|
|
23
|
-
|
|
24
|
-
export let deleteAttachments: ((_keys: string[]) => Promise<void>) | null =
|
|
22
|
+
export let processFiles: ((files: FileList) => Promise<Value[]>) | null = null
|
|
23
|
+
export let deleteAttachments: ((keys: string[]) => Promise<void>) | null =
|
|
25
24
|
null
|
|
26
25
|
export let handleFileTooLarge:
|
|
27
|
-
| ((
|
|
26
|
+
| ((limit: number, currentFiles: Value[]) => void)
|
|
28
27
|
| null = null
|
|
29
|
-
export let handleTooManyFiles: ((
|
|
28
|
+
export let handleTooManyFiles: ((maximum: number) => void) | null = null
|
|
30
29
|
export let gallery: boolean = true
|
|
31
30
|
export let fileTags: string[] = []
|
|
32
31
|
export let maximum: number | undefined = undefined
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
export let hideButtonWhenSet: boolean = false
|
|
16
16
|
export let allowClear: boolean | undefined = undefined
|
|
17
17
|
export let extensions: string[] | undefined = undefined
|
|
18
|
-
export let handleFileTooLarge: ((
|
|
18
|
+
export let handleFileTooLarge: ((file: File) => void) | undefined = undefined
|
|
19
19
|
export let fileSizeLimit: number = BYTES_IN_MB * 20
|
|
20
20
|
export let id: string | undefined = undefined
|
|
21
21
|
export let previewUrl: string | undefined = undefined
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
export let isOptionEnabled = (option: O, _index?: number) =>
|
|
37
37
|
option as unknown as boolean
|
|
38
38
|
export let tooltipMessage:
|
|
39
|
-
| ((
|
|
39
|
+
| ((option: O, index?: number) => string)
|
|
40
40
|
| undefined = undefined
|
|
41
|
-
export let onSelectOption: (
|
|
41
|
+
export let onSelectOption: (value: V) => void = () => {}
|
|
42
42
|
export let getOptionLabel = (option: O, _index?: number) => `${option}`
|
|
43
43
|
export let getOptionValue = (option: O, _index?: number) =>
|
|
44
44
|
option as unknown as V
|
|
@@ -65,14 +65,8 @@
|
|
|
65
65
|
export let footer: string | undefined = undefined
|
|
66
66
|
export let customAnchor: HTMLElement | undefined = undefined
|
|
67
67
|
export let loading: boolean = false
|
|
68
|
-
export let onOptionMouseenter: (
|
|
69
|
-
|
|
70
|
-
_option: any
|
|
71
|
-
) => void = () => {}
|
|
72
|
-
export let onOptionMouseleave: (
|
|
73
|
-
_e: MouseEvent,
|
|
74
|
-
_option: any
|
|
75
|
-
) => void = () => {}
|
|
68
|
+
export let onOptionMouseenter: (e: MouseEvent, option: any) => void = () => {}
|
|
69
|
+
export let onOptionMouseleave: (e: MouseEvent, option: any) => void = () => {}
|
|
76
70
|
export let showSelectAll: boolean = false
|
|
77
71
|
export let selectAllText: string = "Select all"
|
|
78
72
|
export let indeterminate: boolean = false
|
|
@@ -151,7 +145,7 @@
|
|
|
151
145
|
|
|
152
146
|
const getSortedOptions = (
|
|
153
147
|
options: any[],
|
|
154
|
-
getLabel: (
|
|
148
|
+
getLabel: (option: any) => string,
|
|
155
149
|
sort: boolean
|
|
156
150
|
) => {
|
|
157
151
|
if (!options?.length || !Array.isArray(options)) {
|
|
@@ -170,7 +164,7 @@
|
|
|
170
164
|
const getFilteredOptions = (
|
|
171
165
|
options: any[],
|
|
172
166
|
term: string | null,
|
|
173
|
-
getLabel: (
|
|
167
|
+
getLabel: (option: any) => string
|
|
174
168
|
) => {
|
|
175
169
|
if (autocomplete && term) {
|
|
176
170
|
const lowerCaseTerm = term.toLowerCase()
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
export let isOptionEnabled = (option: O, _index?: number) =>
|
|
31
31
|
option as unknown as boolean
|
|
32
32
|
export let tooltipMessage:
|
|
33
|
-
| ((
|
|
33
|
+
| ((option: O, index?: number) => string)
|
|
34
34
|
| undefined = undefined
|
|
35
35
|
export let readonly: boolean = false
|
|
36
36
|
export let size: "S" | "M" | "L" = "M"
|
package/src/Form/Dropzone.svelte
CHANGED
|
@@ -10,16 +10,15 @@
|
|
|
10
10
|
export let disabled: boolean = false
|
|
11
11
|
export let error: string | undefined | false = undefined
|
|
12
12
|
export let fileSizeLimit: number | undefined = undefined
|
|
13
|
-
export let processFiles:
|
|
14
|
-
|
|
15
|
-
| undefined = undefined
|
|
13
|
+
export let processFiles: ((files: FileList) => Promise<Value[]>) | undefined =
|
|
14
|
+
undefined
|
|
16
15
|
export let deleteAttachments:
|
|
17
|
-
| ((
|
|
16
|
+
| ((keys: string[]) => Promise<void>)
|
|
18
17
|
| undefined = undefined
|
|
19
18
|
export let handleFileTooLarge:
|
|
20
|
-
| ((
|
|
19
|
+
| ((limit: number, currentFiles: Value[]) => void)
|
|
21
20
|
| undefined = undefined
|
|
22
|
-
export let handleTooManyFiles: ((
|
|
21
|
+
export let handleTooManyFiles: ((maximum: number) => void) | undefined =
|
|
23
22
|
undefined
|
|
24
23
|
export let gallery: boolean = true
|
|
25
24
|
export let fileTags: string[] = []
|
package/src/Form/File.svelte
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
export let loading: boolean = false
|
|
11
11
|
export let hideButtonWhenSet: boolean = false
|
|
12
12
|
export let allowClear: boolean | undefined = undefined
|
|
13
|
-
export let handleFileTooLarge: (
|
|
13
|
+
export let handleFileTooLarge: (file: File) => void = () => {}
|
|
14
14
|
export let previewUrl: string | undefined = undefined
|
|
15
15
|
export let extensions: string[] | undefined = undefined
|
|
16
16
|
export let error: string | undefined = undefined
|
package/src/Form/Select.svelte
CHANGED
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
(option as any)?.colour
|
|
32
32
|
export let useOptionIconImage = false
|
|
33
33
|
export let isOptionEnabled:
|
|
34
|
-
| ((
|
|
34
|
+
| ((option: O, index?: number) => boolean)
|
|
35
35
|
| undefined = undefined
|
|
36
36
|
export let quiet: boolean = false
|
|
37
37
|
export let size: "S" | "M" | "L" = "M"
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
export let sort: boolean = false
|
|
42
42
|
export let tooltip: string | undefined = undefined
|
|
43
43
|
export let tooltipMessage:
|
|
44
|
-
| ((
|
|
44
|
+
| ((option: O, index?: number) => string)
|
|
45
45
|
| undefined = undefined
|
|
46
46
|
export let autocomplete: boolean = false
|
|
47
47
|
export let customPopoverHeight: string | undefined = undefined
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
let latestValue: string | null
|
|
19
19
|
interface EditorInstance extends EasyMDE {
|
|
20
20
|
togglePreview: () => void
|
|
21
|
-
value: (
|
|
21
|
+
value: (value?: string) => string
|
|
22
22
|
}
|
|
23
23
|
let mde: EditorInstance | null = null
|
|
24
24
|
let blurBoundTo: EditorInstance | null = null
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
|
|
27
27
|
export let showSecondaryButton: boolean = false
|
|
28
28
|
export let secondaryButtonText: string | undefined = undefined
|
|
29
|
-
export let secondaryAction: ((
|
|
29
|
+
export let secondaryAction: ((e: Event) => Promise<any> | any) | undefined =
|
|
30
30
|
undefined
|
|
31
31
|
export let secondaryButtonWarning: boolean = false
|
|
32
32
|
export let custom: boolean = false
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
export let message: string = ""
|
|
10
10
|
export let dismissable: boolean = false
|
|
11
11
|
export let actionMessage: string | null = null
|
|
12
|
-
export let action: ((
|
|
12
|
+
export let action: ((dismiss: () => void) => void) | null = null
|
|
13
13
|
export let wide: boolean = false
|
|
14
14
|
|
|
15
15
|
const dispatch = createEventDispatcher<{ dismiss: void }>()
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import Checkbox from "../Form/Checkbox.svelte"
|
|
4
4
|
|
|
5
5
|
export let selected: boolean | undefined
|
|
6
|
-
export let onEdit: (
|
|
6
|
+
export let onEdit: (e: Event) => void
|
|
7
7
|
export let allowSelectRows: boolean = false
|
|
8
8
|
export let allowEditRows: boolean = false
|
|
9
9
|
export let data: Record<string, any>
|
package/src/Tabs/Tabs.svelte
CHANGED
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
export let onTop: boolean = false
|
|
28
28
|
export let size: "S" | "M" | "L" = "M"
|
|
29
29
|
export let disabled: boolean = false
|
|
30
|
-
export let beforeSwitch: ((
|
|
30
|
+
export let beforeSwitch: ((title: string) => boolean) | null = null
|
|
31
31
|
export let hideTabsList: boolean = false
|
|
32
32
|
|
|
33
33
|
let thisSelected: string | undefined = undefined
|
package/src/Modal/Content.svelte
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import { getContext } from "svelte"
|
|
3
|
-
import Context from "../context"
|
|
4
|
-
|
|
5
|
-
const { hide } = getContext(Context.Modal)
|
|
6
|
-
|
|
7
|
-
let count: number = 0
|
|
8
|
-
const clicks: number = 5
|
|
9
|
-
$: if (count === clicks) hide()
|
|
10
|
-
$: remaining = clicks - count
|
|
11
|
-
|
|
12
|
-
function increment() {
|
|
13
|
-
count++
|
|
14
|
-
}
|
|
15
|
-
</script>
|
|
16
|
-
|
|
17
|
-
<!-- svelte-ignore a11y-click-events-have-key-events -->
|
|
18
|
-
<!-- svelte-ignore a11y-no-static-element-interactions -->
|
|
19
|
-
<div on:click={increment}>
|
|
20
|
-
Click me
|
|
21
|
-
{remaining}
|
|
22
|
-
more time{remaining === 1 ? "" : "s"}
|
|
23
|
-
to close this modal!
|
|
24
|
-
</div>
|
|
25
|
-
|
|
26
|
-
<style>
|
|
27
|
-
div {
|
|
28
|
-
padding: 40px;
|
|
29
|
-
background-color: var(--purple);
|
|
30
|
-
color: white;
|
|
31
|
-
font-weight: bold;
|
|
32
|
-
text-align: center;
|
|
33
|
-
user-select: none;
|
|
34
|
-
font-size: 20px;
|
|
35
|
-
}
|
|
36
|
-
div:hover {
|
|
37
|
-
cursor: pointer;
|
|
38
|
-
}
|
|
39
|
-
</style>
|