@budibase/bbui 1.4.1 → 1.4.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/LICENSE +375 -0
- package/README.md +19 -17
- package/dist/bbui.es.js +14 -0
- package/dist/bbui.es.js.map +1 -0
- package/package.json +71 -26
- package/src/ActionButton/ActionButton.svelte +102 -0
- package/src/ActionGroup/ActionGroup.svelte +26 -0
- package/src/ActionMenu/ActionMenu.svelte +44 -0
- package/src/Actions/ClickOutside.svench.svx +30 -0
- package/src/Actions/PositionDropdown.svench.svx +81 -0
- package/src/Actions/autoresize_textarea.js +14 -0
- package/src/Actions/click_outside.js +18 -0
- package/src/Actions/position_dropdown.js +75 -0
- package/src/Avatar/Avatar.svelte +62 -0
- package/src/Badge/Badge.svelte +29 -0
- package/src/Banner/Banner.svelte +72 -0
- package/src/Banner/BannerDisplay.svelte +41 -0
- package/src/Button/Button.svelte +114 -0
- package/src/Button/Button.svench +138 -0
- package/src/ButtonGroup/ButtonGroup.svelte +30 -0
- package/src/ClearButton/ClearButton.svelte +19 -0
- package/src/ColorPicker/ColorPicker.svelte +297 -0
- package/src/DetailSummary/DetailSummary.svelte +83 -0
- package/src/Divider/Divider.svelte +28 -0
- package/src/Drawer/Drawer.svelte +113 -0
- package/src/Drawer/Drawer.svench +42 -0
- package/src/Drawer/DrawerContent.svelte +46 -0
- package/src/Form/Checkbox.svelte +23 -0
- package/src/Form/Combobox.svelte +45 -0
- package/src/Form/Core/Checkbox.svelte +69 -0
- package/src/Form/Core/CheckboxGroup.svelte +68 -0
- package/src/Form/Core/Combobox.svelte +142 -0
- package/src/Form/Core/DatePicker.svelte +257 -0
- package/src/Form/Core/Dropzone.svelte +450 -0
- package/src/Form/Core/InputDropdown.svelte +228 -0
- package/src/Form/Core/Multiselect.svelte +90 -0
- package/src/Form/Core/Picker.svelte +259 -0
- package/src/Form/Core/PickerDropdown.svelte +436 -0
- package/src/Form/Core/RadioGroup.svelte +48 -0
- package/src/Form/Core/RichTextField.svelte +42 -0
- package/src/Form/Core/Search.svelte +105 -0
- package/src/Form/Core/Select.svelte +75 -0
- package/src/Form/Core/Slider.svelte +86 -0
- package/src/Form/Core/Stepper.svelte +172 -0
- package/src/Form/Core/Switch.svelte +37 -0
- package/src/Form/Core/TextArea.svelte +78 -0
- package/src/Form/Core/TextField.svelte +119 -0
- package/src/Form/Core/index.js +15 -0
- package/src/Form/DatePicker.svelte +39 -0
- package/src/Form/Dropzone.svelte +42 -0
- package/src/Form/Field.svelte +42 -0
- package/src/Form/FieldLabel.svelte +32 -0
- package/src/Form/Input.svelte +40 -45
- package/src/Form/InputDropdown.svelte +55 -0
- package/src/Form/Multiselect.svelte +40 -0
- package/src/Form/PickerDropdown.svelte +134 -0
- package/src/Form/RadioGroup.svelte +42 -0
- package/src/Form/RichTextField.svelte +36 -0
- package/src/Form/Search.svelte +36 -0
- package/src/Form/Select.svelte +48 -43
- package/src/Form/Slider.svelte +24 -0
- package/src/Form/Stepper.svelte +45 -0
- package/src/Form/TextArea.svelte +29 -44
- package/src/Form/Toggle.svelte +23 -0
- package/src/Icon/Icon.svelte +91 -0
- package/src/IconPicker/IconPicker.svelte +177 -0
- package/src/IconSideNav/IconSideNav.svelte +14 -0
- package/src/IconSideNav/IconSideNavItem.svelte +56 -0
- package/src/InlineAlert/InlineAlert.svelte +60 -0
- package/src/Label/Label.svelte +29 -0
- package/src/Layout/Layout.svelte +94 -0
- package/src/Layout/Page.svelte +32 -0
- package/src/Link/Link.svelte +24 -0
- package/src/List/List.svelte +28 -0
- package/src/List/ListItem.svelte +98 -0
- package/src/Markdown/MarkdownEditor.svelte +60 -0
- package/src/Markdown/MarkdownViewer.svelte +70 -0
- package/src/Markdown/SpectrumMDE.svelte +184 -0
- package/src/Menu/Item.svelte +96 -0
- package/src/Menu/Menu.svelte +7 -0
- package/src/Menu/Menu.svench +19 -0
- package/src/Menu/Section.svelte +10 -0
- package/src/Menu/Separator.svelte +1 -0
- package/src/Modal/Content.svelte +6 -0
- package/src/Modal/CustomContent.svelte +38 -0
- package/src/Modal/Modal.svelte +165 -0
- package/src/Modal/Modal.svench +117 -0
- package/src/Modal/ModalContent.svelte +190 -0
- package/src/Modal/QuizModal.svelte +54 -0
- package/src/Notification/Notification.svelte +70 -0
- package/src/Notification/NotificationDisplay.svelte +43 -0
- package/src/Pagination/Pagination.svelte +57 -0
- package/src/Popover/Popover.svelte +78 -0
- package/src/Popover/Popover.svench +121 -0
- package/src/ProgressBar/ProgressBar.svelte +67 -0
- package/src/ProgressCircle/ProgressCircle.svelte +62 -0
- package/src/SideNavigation/Item.svelte +61 -0
- package/src/SideNavigation/Navigation.svelte +12 -0
- package/src/StatusLight/StatusLight.svelte +80 -0
- package/src/Stores/Notifications.svench.svx +78 -0
- package/src/Stores/banner.js +65 -0
- package/src/Stores/notifications.js +84 -0
- package/src/Table/ArrayRenderer.svelte +17 -0
- package/src/Table/AttachmentRenderer.svelte +67 -0
- package/src/Table/BoldRenderer.svelte +15 -0
- package/src/Table/BooleanRenderer.svelte +42 -0
- package/src/Table/CellRenderer.svelte +69 -0
- package/src/Table/CodeRenderer.svelte +14 -0
- package/src/Table/DateTimeRenderer.svelte +29 -0
- package/src/Table/InternalRenderer.svelte +24 -0
- package/src/Table/RelationshipRenderer.svelte +40 -0
- package/src/Table/SelectEditRenderer.svelte +28 -0
- package/src/Table/StringRenderer.svelte +14 -0
- package/src/Table/Table.svelte +635 -0
- package/src/Table/index.js +1 -0
- package/src/Tabs/Tab.svelte +88 -0
- package/src/Tabs/Tabs.svelte +130 -0
- package/src/Tags/Tag.svelte +43 -0
- package/src/Tags/Tags.svelte +7 -0
- package/src/Tooltip/Tooltip.svelte +34 -0
- package/src/Tooltip/TooltipWrapper.svelte +60 -0
- package/src/TreeView/Item.svelte +41 -0
- package/src/TreeView/Tree.svelte +16 -0
- package/src/Typography/Body.svelte +21 -0
- package/src/Typography/Code.svelte +10 -0
- package/src/Typography/Detail.svelte +19 -0
- package/src/Typography/Heading.svelte +17 -0
- package/src/bbui.css +96 -0
- package/src/context.js +3 -0
- package/src/helpers.js +134 -0
- package/src/index.js +98 -12
- package/src/spectrum-icons-rollup.js +31 -0
- package/src/spectrum-icons-vite.js +31 -0
- package/dist/bundle.css +0 -8
- package/dist/bundle.css.map +0 -22
- package/dist/index.js +0 -1275
- package/dist/index.mjs +0 -1260
- package/src/Branding/Budibase-logo.svelte +0 -68
- package/src/Branding/Logo.svelte +0 -16
- package/src/Branding/Logo.svench +0 -8
- package/src/Form/Button.svelte +0 -131
- package/src/Form/Button.svench +0 -49
- package/src/Form/Input.svench +0 -8
- package/src/Form/Select.svench +0 -8
- package/src/Form/TextArea.svench +0 -8
- package/src/Links/Home.svelte +0 -49
- package/src/Links/Home.svench +0 -19
- package/src/List/Items/DetailSummary.svelte +0 -66
- package/src/List/Items/DetailSummary.svench +0 -15
- package/src/Switcher/Switcher.svelte +0 -39
- package/src/Switcher/Switcher.svench +0 -25
- package/src/actions/autoresize_textarea.js +0 -14
- package/src/icons/Contribution.svelte +0 -14
- package/src/index.svench.svx +0 -35
package/src/helpers.js
ADDED
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates a DOM safe UUID.
|
|
3
|
+
* Starting with a letter is important to make it DOM safe.
|
|
4
|
+
* @return {string} a random DOM safe UUID
|
|
5
|
+
*/
|
|
6
|
+
export function uuid() {
|
|
7
|
+
return "cxxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g, c => {
|
|
8
|
+
const r = (Math.random() * 16) | 0
|
|
9
|
+
const v = c === "x" ? r : (r & 0x3) | 0x8
|
|
10
|
+
return v.toString(16)
|
|
11
|
+
})
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Capitalises a string
|
|
16
|
+
* @param string the string to capitalise
|
|
17
|
+
* @return {string} the capitalised string
|
|
18
|
+
*/
|
|
19
|
+
export const capitalise = string => {
|
|
20
|
+
if (!string) {
|
|
21
|
+
return string
|
|
22
|
+
}
|
|
23
|
+
return string.substring(0, 1).toUpperCase() + string.substring(1)
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Computes a short hash of a string
|
|
28
|
+
* @param string the string to compute a hash of
|
|
29
|
+
* @return {string} the hash string
|
|
30
|
+
*/
|
|
31
|
+
export const hashString = string => {
|
|
32
|
+
if (!string) {
|
|
33
|
+
return "0"
|
|
34
|
+
}
|
|
35
|
+
let hash = 0
|
|
36
|
+
for (let i = 0; i < string.length; i++) {
|
|
37
|
+
let char = string.charCodeAt(i)
|
|
38
|
+
hash = (hash << 5) - hash + char
|
|
39
|
+
hash = hash & hash // Convert to 32bit integer
|
|
40
|
+
}
|
|
41
|
+
return hash.toString()
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Gets a key within an object. The key supports dot syntax for retrieving deep
|
|
46
|
+
* fields - e.g. "a.b.c".
|
|
47
|
+
* Exact matches of keys with dots in them take precedence over nested keys of
|
|
48
|
+
* the same path - e.g. getting "a.b" from { "a.b": "foo", a: { b: "bar" } }
|
|
49
|
+
* will return "foo" over "bar".
|
|
50
|
+
* @param obj the object
|
|
51
|
+
* @param key the key
|
|
52
|
+
* @return {*|null} the value or null if a value was not found for this key
|
|
53
|
+
*/
|
|
54
|
+
export const deepGet = (obj, key) => {
|
|
55
|
+
if (!obj || !key) {
|
|
56
|
+
return null
|
|
57
|
+
}
|
|
58
|
+
if (Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
59
|
+
return obj[key]
|
|
60
|
+
}
|
|
61
|
+
const split = key.split(".")
|
|
62
|
+
for (let i = 0; i < split.length; i++) {
|
|
63
|
+
obj = obj?.[split[i]]
|
|
64
|
+
}
|
|
65
|
+
return obj
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Sets a key within an object. The key supports dot syntax for retrieving deep
|
|
70
|
+
* fields - e.g. "a.b.c".
|
|
71
|
+
* Exact matches of keys with dots in them take precedence over nested keys of
|
|
72
|
+
* the same path - e.g. setting "a.b" of { "a.b": "foo", a: { b: "bar" } }
|
|
73
|
+
* will override the value "foo" rather than "bar".
|
|
74
|
+
* If a deep path is specified and the parent keys don't exist then these will
|
|
75
|
+
* be created.
|
|
76
|
+
* @param obj the object
|
|
77
|
+
* @param key the key
|
|
78
|
+
* @param value the value
|
|
79
|
+
*/
|
|
80
|
+
export const deepSet = (obj, key, value) => {
|
|
81
|
+
if (!obj || !key) {
|
|
82
|
+
return
|
|
83
|
+
}
|
|
84
|
+
if (Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
85
|
+
obj[key] = value
|
|
86
|
+
return
|
|
87
|
+
}
|
|
88
|
+
const split = key.split(".")
|
|
89
|
+
for (let i = 0; i < split.length - 1; i++) {
|
|
90
|
+
const nextKey = split[i]
|
|
91
|
+
if (obj && obj[nextKey] == null) {
|
|
92
|
+
obj[nextKey] = {}
|
|
93
|
+
}
|
|
94
|
+
obj = obj?.[nextKey]
|
|
95
|
+
}
|
|
96
|
+
if (!obj) {
|
|
97
|
+
return
|
|
98
|
+
}
|
|
99
|
+
obj[split[split.length - 1]] = value
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Deeply clones an object. Functions are not supported.
|
|
104
|
+
* @param obj the object to clone
|
|
105
|
+
*/
|
|
106
|
+
export const cloneDeep = obj => {
|
|
107
|
+
return JSON.parse(JSON.stringify(obj))
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Copies a value to the clipboard
|
|
112
|
+
* @param value the value to copy
|
|
113
|
+
*/
|
|
114
|
+
export const copyToClipboard = value => {
|
|
115
|
+
return new Promise(res => {
|
|
116
|
+
if (navigator.clipboard && window.isSecureContext) {
|
|
117
|
+
// Try using the clipboard API first
|
|
118
|
+
navigator.clipboard.writeText(value).then(res)
|
|
119
|
+
} else {
|
|
120
|
+
// Fall back to the textarea hack
|
|
121
|
+
let textArea = document.createElement("textarea")
|
|
122
|
+
textArea.value = value
|
|
123
|
+
textArea.style.position = "fixed"
|
|
124
|
+
textArea.style.left = "-9999px"
|
|
125
|
+
textArea.style.top = "-9999px"
|
|
126
|
+
document.body.appendChild(textArea)
|
|
127
|
+
textArea.focus()
|
|
128
|
+
textArea.select()
|
|
129
|
+
document.execCommand("copy")
|
|
130
|
+
textArea.remove()
|
|
131
|
+
res()
|
|
132
|
+
}
|
|
133
|
+
})
|
|
134
|
+
}
|
package/src/index.js
CHANGED
|
@@ -1,15 +1,101 @@
|
|
|
1
|
-
|
|
1
|
+
import "./bbui.css"
|
|
2
2
|
|
|
3
|
-
//
|
|
3
|
+
// Spectrum icons
|
|
4
|
+
import "@spectrum-css/icon/dist/index-vars.css"
|
|
4
5
|
|
|
5
|
-
//
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
// Components
|
|
7
|
+
export { default as Input } from "./Form/Input.svelte"
|
|
8
|
+
export { default as Stepper } from "./Form/Stepper.svelte"
|
|
9
|
+
export { default as TextArea } from "./Form/TextArea.svelte"
|
|
10
|
+
export { default as Select } from "./Form/Select.svelte"
|
|
11
|
+
export { default as Combobox } from "./Form/Combobox.svelte"
|
|
12
|
+
export { default as Dropzone } from "./Form/Dropzone.svelte"
|
|
13
|
+
export { default as Drawer } from "./Drawer/Drawer.svelte"
|
|
14
|
+
export { default as DrawerContent } from "./Drawer/DrawerContent.svelte"
|
|
15
|
+
export { default as Avatar } from "./Avatar/Avatar.svelte"
|
|
16
|
+
export { default as ActionButton } from "./ActionButton/ActionButton.svelte"
|
|
17
|
+
export { default as ActionGroup } from "./ActionGroup/ActionGroup.svelte"
|
|
18
|
+
export { default as ActionMenu } from "./ActionMenu/ActionMenu.svelte"
|
|
19
|
+
export { default as Button } from "./Button/Button.svelte"
|
|
20
|
+
export { default as ButtonGroup } from "./ButtonGroup/ButtonGroup.svelte"
|
|
21
|
+
export { default as ClearButton } from "./ClearButton/ClearButton.svelte"
|
|
22
|
+
export { default as Icon, directions } from "./Icon/Icon.svelte"
|
|
23
|
+
export { default as Toggle } from "./Form/Toggle.svelte"
|
|
24
|
+
export { default as RadioGroup } from "./Form/RadioGroup.svelte"
|
|
25
|
+
export { default as Checkbox } from "./Form/Checkbox.svelte"
|
|
26
|
+
export { default as InputDropdown } from "./Form/InputDropdown.svelte"
|
|
27
|
+
export { default as PickerDropdown } from "./Form/PickerDropdown.svelte"
|
|
28
|
+
export { default as DetailSummary } from "./DetailSummary/DetailSummary.svelte"
|
|
29
|
+
export { default as Popover } from "./Popover/Popover.svelte"
|
|
30
|
+
export { default as ProgressBar } from "./ProgressBar/ProgressBar.svelte"
|
|
31
|
+
export { default as ProgressCircle } from "./ProgressCircle/ProgressCircle.svelte"
|
|
32
|
+
export { default as Label } from "./Label/Label.svelte"
|
|
33
|
+
export { default as Layout } from "./Layout/Layout.svelte"
|
|
34
|
+
export { default as Page } from "./Layout/Page.svelte"
|
|
35
|
+
export { default as Link } from "./Link/Link.svelte"
|
|
36
|
+
export { default as Tooltip } from "./Tooltip/Tooltip.svelte"
|
|
37
|
+
export { default as TooltipWrapper } from "./Tooltip/TooltipWrapper.svelte"
|
|
38
|
+
export { default as Menu } from "./Menu/Menu.svelte"
|
|
39
|
+
export { default as MenuSection } from "./Menu/Section.svelte"
|
|
40
|
+
export { default as MenuSeparator } from "./Menu/Separator.svelte"
|
|
41
|
+
export { default as MenuItem } from "./Menu/Item.svelte"
|
|
42
|
+
export { default as Modal } from "./Modal/Modal.svelte"
|
|
43
|
+
export { default as ModalContent } from "./Modal/ModalContent.svelte"
|
|
44
|
+
export { default as NotificationDisplay } from "./Notification/NotificationDisplay.svelte"
|
|
45
|
+
export { default as Notification } from "./Notification/Notification.svelte"
|
|
46
|
+
export { default as SideNavigation } from "./SideNavigation/Navigation.svelte"
|
|
47
|
+
export { default as SideNavigationItem } from "./SideNavigation/Item.svelte"
|
|
48
|
+
export { default as DatePicker } from "./Form/DatePicker.svelte"
|
|
49
|
+
export { default as Multiselect } from "./Form/Multiselect.svelte"
|
|
50
|
+
export { default as Context } from "./context"
|
|
51
|
+
export { default as Table } from "./Table/Table.svelte"
|
|
52
|
+
export { default as Tabs } from "./Tabs/Tabs.svelte"
|
|
53
|
+
export { default as Tab } from "./Tabs/Tab.svelte"
|
|
54
|
+
export { default as Tags } from "./Tags/Tags.svelte"
|
|
55
|
+
export { default as Tag } from "./Tags/Tag.svelte"
|
|
56
|
+
export { default as TreeView } from "./TreeView/Tree.svelte"
|
|
57
|
+
export { default as TreeItem } from "./TreeView/Item.svelte"
|
|
58
|
+
export { default as Divider } from "./Divider/Divider.svelte"
|
|
59
|
+
export { default as Search } from "./Form/Search.svelte"
|
|
60
|
+
export { default as Pagination } from "./Pagination/Pagination.svelte"
|
|
61
|
+
export { default as Badge } from "./Badge/Badge.svelte"
|
|
62
|
+
export { default as StatusLight } from "./StatusLight/StatusLight.svelte"
|
|
63
|
+
export { default as ColorPicker } from "./ColorPicker/ColorPicker.svelte"
|
|
64
|
+
export { default as IconPicker } from "./IconPicker/IconPicker.svelte"
|
|
65
|
+
export { default as InlineAlert } from "./InlineAlert/InlineAlert.svelte"
|
|
66
|
+
export { default as Banner } from "./Banner/Banner.svelte"
|
|
67
|
+
export { default as BannerDisplay } from "./Banner/BannerDisplay.svelte"
|
|
68
|
+
export { default as MarkdownEditor } from "./Markdown/MarkdownEditor.svelte"
|
|
69
|
+
export { default as MarkdownViewer } from "./Markdown/MarkdownViewer.svelte"
|
|
70
|
+
export { default as RichTextField } from "./Form/RichTextField.svelte"
|
|
71
|
+
export { default as List } from "./List/List.svelte"
|
|
72
|
+
export { default as ListItem } from "./List/ListItem.svelte"
|
|
73
|
+
export { default as IconSideNav } from "./IconSideNav/IconSideNav.svelte"
|
|
74
|
+
export { default as IconSideNavItem } from "./IconSideNav/IconSideNavItem.svelte"
|
|
75
|
+
export { default as Slider } from "./Form/Slider.svelte"
|
|
9
76
|
|
|
10
|
-
|
|
11
|
-
export { default as
|
|
12
|
-
export { default as
|
|
13
|
-
export { default as
|
|
14
|
-
|
|
15
|
-
|
|
77
|
+
// Renderers
|
|
78
|
+
export { default as BoldRenderer } from "./Table/BoldRenderer.svelte"
|
|
79
|
+
export { default as CodeRenderer } from "./Table/CodeRenderer.svelte"
|
|
80
|
+
export { default as InternalRenderer } from "./Table/InternalRenderer.svelte"
|
|
81
|
+
|
|
82
|
+
// Typography
|
|
83
|
+
export { default as Body } from "./Typography/Body.svelte"
|
|
84
|
+
export { default as Heading } from "./Typography/Heading.svelte"
|
|
85
|
+
export { default as Detail } from "./Typography/Detail.svelte"
|
|
86
|
+
export { default as Code } from "./Typography/Code.svelte"
|
|
87
|
+
|
|
88
|
+
// Core form components to be used elsewhere (standard components)
|
|
89
|
+
export * from "./Form/Core"
|
|
90
|
+
|
|
91
|
+
// Actions
|
|
92
|
+
export { default as autoResizeTextArea } from "./Actions/autoresize_textarea"
|
|
93
|
+
export { default as positionDropdown } from "./Actions/position_dropdown"
|
|
94
|
+
export { default as clickOutside } from "./Actions/click_outside"
|
|
95
|
+
|
|
96
|
+
// Stores
|
|
97
|
+
export { notifications, createNotificationStore } from "./Stores/notifications"
|
|
98
|
+
export { banner, BANNER_TYPES } from "./Stores/banner"
|
|
99
|
+
|
|
100
|
+
// Helpers
|
|
101
|
+
export * as Helpers from "./helpers"
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import SpectrumUIIcons from "@spectrum-css/icon/dist/spectrum-css-icons.svg"
|
|
2
|
+
import SpectrumWorkflowIcons from "@adobe/spectrum-css-workflow-icons/dist/spectrum-icons.svg"
|
|
3
|
+
|
|
4
|
+
export default () => {
|
|
5
|
+
loadIconSet("Spectrum UI Icons", SpectrumUIIcons)
|
|
6
|
+
loadIconSet("Spectrum Workflow Icons", SpectrumWorkflowIcons)
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
const loadIconSet = (name, markup) => {
|
|
10
|
+
// Parse the SVG
|
|
11
|
+
const parser = new DOMParser()
|
|
12
|
+
try {
|
|
13
|
+
const doc = parser.parseFromString(markup, "image/svg+xml")
|
|
14
|
+
const svg = doc.firstChild
|
|
15
|
+
|
|
16
|
+
// Check a real SVG was parsed
|
|
17
|
+
if (svg && svg.tagName === "svg") {
|
|
18
|
+
// Hide the element
|
|
19
|
+
svg.style.display = "none"
|
|
20
|
+
|
|
21
|
+
// Insert it into the head
|
|
22
|
+
document.head.insertBefore(svg, null)
|
|
23
|
+
} else {
|
|
24
|
+
throw "Invalid tag type for SVG definition"
|
|
25
|
+
}
|
|
26
|
+
} catch (err) {
|
|
27
|
+
// Swallow error, but icons won't work
|
|
28
|
+
console.error(err)
|
|
29
|
+
console.error(`Failed to parse ${name}. Icons won't work.`)
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import SpectrumUIIcons from "@spectrum-css/icon/dist/spectrum-css-icons.svg?raw"
|
|
2
|
+
import SpectrumWorkflowIcons from "@adobe/spectrum-css-workflow-icons/dist/spectrum-icons.svg?raw"
|
|
3
|
+
|
|
4
|
+
export default () => {
|
|
5
|
+
loadIconSet("Spectrum UI Icons", SpectrumUIIcons)
|
|
6
|
+
loadIconSet("Spectrum Workflow Icons", SpectrumWorkflowIcons)
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
const loadIconSet = (name, markup) => {
|
|
10
|
+
// Parse the SVG
|
|
11
|
+
const parser = new DOMParser()
|
|
12
|
+
try {
|
|
13
|
+
const doc = parser.parseFromString(markup, "image/svg+xml")
|
|
14
|
+
const svg = doc.firstChild
|
|
15
|
+
|
|
16
|
+
// Check a real SVG was parsed
|
|
17
|
+
if (svg && svg.tagName === "svg") {
|
|
18
|
+
// Hide the element
|
|
19
|
+
svg.style.display = "none"
|
|
20
|
+
|
|
21
|
+
// Insert it into the head
|
|
22
|
+
document.head.insertBefore(svg, null)
|
|
23
|
+
} else {
|
|
24
|
+
throw "Invalid tag type for SVG definition"
|
|
25
|
+
}
|
|
26
|
+
} catch (err) {
|
|
27
|
+
// Swallow error, but icons won't work
|
|
28
|
+
console.error(err)
|
|
29
|
+
console.error(`Failed to parse ${name}. Icons won't work.`)
|
|
30
|
+
}
|
|
31
|
+
}
|
package/dist/bundle.css
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
button.svelte-1oez5n8{cursor:pointer;font-weight:500;font-size:14px;box-sizing:border-box;overflow:hidden;border-radius:3px;color:var(--white);padding:0px 24px;height:32px;transition:all 0.2s ease 0s;display:inline-block;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;min-width:auto;outline:none;font-feature-settings:"case" 1,"rlig" 1,"calt" 0;-webkit-box-align:center;user-select:none;flex-shrink:0}.primary.svelte-1oez5n8{border:solid 1px var(--ink);background-color:var(--ink)}button.primary.svelte-1oez5n8:hover:not([disabled]){border:solid 1px var(--grey);background-color:var(--white);color:var(--ink)}.secondary.svelte-1oez5n8{border:solid 1px var(--grey);background-color:white;color:var(--ink)}button.secondary.svelte-1oez5n8:hover:not([disabled]){border:solid 1px var(--ink);background-color:var(--ink);color:white}.attention.svelte-1oez5n8{background-color:var(--blue);border:solid 1px var(--blue)}button.attention.svelte-1oez5n8:hover:not([disabled]){border:solid 1px var(--blue);background-color:var(--white);color:var(--blue)}.error.svelte-1oez5n8{border:solid 1px var(--red);background-color:var(--red);color:white}button.error.svelte-1oez5n8:hover:not([disabled]){border:solid 1px var(--red);background-color:white;color:var(--red)}.warning.svelte-1oez5n8{border:solid 1px var(--yellow);background-color:var(--yellow);color:white}button.warning.svelte-1oez5n8:hover:not([disabled]){border:solid 1px var(--yellow);background-color:white;color:var(--yellow)}.small.svelte-1oez5n8{width:100px;height:24px;line-height:22px;padding:0px 10px;font-weight:500}.medium.svelte-1oez5n8{width:200px;height:40px}.large.svelte-1oez5n8{width:200px;height:50px;font-weight:500;font-size:18px}.wide.svelte-1oez5n8{width:100%;max-width:260px;height:32px;line-height:22px;padding:0px 10px;font-weight:500}button.svelte-1oez5n8:disabled{background-color:var(--grey-dark);cursor:not-allowed;border:solid 1px var(--grey-dark)}
|
|
2
|
-
.container.svelte-1ujfzyw{display:flex;flex-direction:column;font-size:14px;font-weight:500;line-height:1.17}label.svelte-1ujfzyw{color:var(--font);margin-bottom:12px}input.svelte-1ujfzyw{box-sizing:border-box;color:var(--font);font-size:18px;border-radius:3px;border:solid 1px var(--grey-medium);padding:20px;margin:0;background-color:white}input.svelte-1ujfzyw::placeholder{color:var(--grey-medium)}input.svelte-1ujfzyw:focus{box-shadow:0 4px 16px 0 rgba(57, 60, 68, 0.08)}input.svelte-1ujfzyw:disabled{background:var(--grey-medium)}
|
|
3
|
-
.container.svelte-b7rdfu{display:flex;flex-direction:column;font-size:18px;font-weight:500;line-height:1.17}label.svelte-b7rdfu{color:var(--font);margin-bottom:12px}textarea.svelte-b7rdfu{color:var(--font);font-size:18px;border-radius:3px;border:solid 1px var(--grey-medium);padding:20px;margin:0}textarea.svelte-b7rdfu::placeholder{color:var(--grey-dark)}textarea.svelte-b7rdfu:focus{box-shadow:0 4px 16px 0 rgba(57, 60, 68, 0.08)}textarea.svelte-b7rdfu:disabled{background:var(--grey-medium)}
|
|
4
|
-
.nav-item.svelte-dsza1v{cursor:pointer;padding:12px;height:40px;display:flex;flex-direction:row;align-items:center;box-sizing:border-box;border-radius:3px}.nav-item.svelte-dsza1v:hover{background-color:var(--grey-light)}.nav-item-title.svelte-dsza1v{font-size:14px;color:var(--ink);font-weight:400;margin-left:12px}.nav-item-icon.svelte-dsza1v{color:var(--ink-light)}.active.svelte-dsza1v{background-color:var(--blue-light)}
|
|
5
|
-
.property-group-container.svelte-1ds8322{display:flex;flex-direction:column;height:auto;background:var(--grey-light);margin:0px 0px 4px 0px;padding:8px 12px;justify-content:center;border-radius:4px}.property-group-name.svelte-1ds8322{cursor:pointer;display:flex;flex-flow:row nowrap}.name.svelte-1ds8322{flex:1;text-align:left;padding-top:2px;font-size:14px;font-weight:500;letter-spacing:0.14px;color:var(--ink)}.icon.svelte-1ds8322{flex:0 0 20px;text-align:center}.property-panel.svelte-1ds8322{display:none}.show.svelte-1ds8322{display:flex;flex-direction:column;flex:1}
|
|
6
|
-
header.svelte-1qsas4l{display:grid;grid-gap:20px;grid-auto-flow:column}span.svelte-1qsas4l{font-size:18px;font-weight:bold;color:var(--ink-lighter)}span.svelte-1qsas4l:hover{cursor:pointer}.selected.svelte-1qsas4l{color:var(--ink)}
|
|
7
|
-
|
|
8
|
-
/*# sourceMappingURL=bundle.css.map */
|
package/dist/bundle.css.map
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"file": "bundle.css",
|
|
4
|
-
"sources": [
|
|
5
|
-
"../Button.svelte",
|
|
6
|
-
"../Input.svelte",
|
|
7
|
-
"../TextArea.svelte",
|
|
8
|
-
"../Home.svelte",
|
|
9
|
-
"../DetailSummary.svelte",
|
|
10
|
-
"../Switcher.svelte"
|
|
11
|
-
],
|
|
12
|
-
"sourcesContent": [
|
|
13
|
-
"<script>\n export let \n primary = false,\n secondary = false,\n attention = false,\n disabled = false,\n error = false,\n warning = false,\n small = false,\n medium = false,\n wide = false,\n large = false;\n</script>\n\n<style>\n button {\n cursor: pointer;\n font-weight: 500;\n font-size: 14px;\n box-sizing: border-box;\n overflow: hidden;\n border-radius: 3px;\n color: var(--white);\n padding: 0px 24px;\n height: 32px;\n transition: all 0.2s ease 0s;\n display: inline-block;\n text-rendering: optimizeLegibility;\n -webkit-font-smoothing: antialiased;\n min-width: auto;\n outline: none;\n font-feature-settings: \"case\" 1,\"rlig\" 1,\"calt\" 0;\n -webkit-box-align: center;\n user-select: none;\n flex-shrink: 0;\n }\n\n .primary {\n border: solid 1px var(--ink);\n background-color: var(--ink);\n }\n button.primary:hover:not([disabled]) {\n border: solid 1px var(--grey);\n background-color: var(--white);\n color: var(--ink);\n }\n .secondary {\n border: solid 1px var(--grey);\n background-color: white;\n color: var(--ink);\n }\n button.secondary:hover:not([disabled]) {\n border: solid 1px var(--ink);\n background-color: var(--ink);\n color: white;\n }\n .attention {\n background-color: var(--blue);\n border: solid 1px var(--blue);\n }\n button.attention:hover:not([disabled]) {\n border: solid 1px var(--blue);\n background-color: var(--white);\n color: var(--blue);\n }\n .error {\n border: solid 1px var(--red);\n background-color: var(--red);\n color: white;\n }\n button.error:hover:not([disabled]) {\n border: solid 1px var(--red);\n background-color: white;\n color: var(--red);\n }\n .warning {\n border: solid 1px var(--yellow);\n background-color: var(--yellow);\n color: white;\n }\n button.warning:hover:not([disabled]) {\n border: solid 1px var(--yellow);\n background-color: white;\n color: var(--yellow);\n }\n .small {\n width: 100px;\n height: 24px;\n line-height: 22px;\n padding: 0px 10px;\n font-weight: 500;\n }\n .medium {\n width: 200px;\n height: 40px;\n }\n .large {\n width: 200px;\n height: 50px;\n font-weight: 500;\n font-size: 18px;\n }\n .wide {\n width: 100%;\n max-width: 260px;\n height: 32px;\n line-height: 22px;\n padding: 0px 10px;\n font-weight: 500;\n }\n button:disabled {\n background-color: var(--grey-dark);\n cursor: not-allowed;\n border: solid 1px var(--grey-dark);\n }\n</style>\n\n<button\n class:primary\n class:secondary\n class:attention\n class:error\n class:warning\n class:small\n class:medium\n class:wide\n class:large\n {disabled}\n on:click|preventDefault>\n <slot />\n</button>\n",
|
|
14
|
-
"<script>\n export let name,\n label,\n type,\n placeholder,\n validator = () => {};\n</script>\n\n<style>\n .container {\n display: flex;\n flex-direction: column;\n font-size: 14px;\n font-weight: 500;\n line-height: 1.17;\n }\n\n label {\n color: var(--font);\n margin-bottom: 12px;\n }\n\n input {\n box-sizing: border-box;\n color: var(--font);\n font-size: 18px;\n border-radius: 3px;\n border: solid 1px var(--grey-medium);\n padding: 20px;\n margin: 0;\n background-color: white;\n }\n\n input::placeholder {\n color: var(--grey-medium);\n }\n\n input:focus {\n box-shadow: 0 4px 16px 0 rgba(57, 60, 68, 0.08);\n }\n\n input:disabled {\n background: var(--grey-medium);\n }\n</style>\n\n<div class=\"container\">\n <label for={name}>{label}</label>\n <input on:change on:input use:validator {type} {name} {placeholder} />\n</div>\n",
|
|
15
|
-
"<script>\n import { text_area_resize } from \"../actions/autoresize_textarea.js\";\n export let name,\n label,\n value,\n placeholder,\n validator = () => {};\n</script>\n\n<style>\n .container {\n display: flex;\n flex-direction: column;\n font-size: 18px;\n font-weight: 500;\n line-height: 1.17;\n }\n\n label {\n color: var(--font);\n margin-bottom: 12px;\n }\n\n textarea {\n color: var(--font);\n font-size: 18px;\n border-radius: 3px;\n border: solid 1px var(--grey-medium);\n padding: 20px;\n margin: 0;\n }\n\n textarea::placeholder {\n color: var(--grey-dark);\n }\n\n textarea:focus {\n box-shadow: 0 4px 16px 0 rgba(57, 60, 68, 0.08);\n }\n\n textarea:disabled {\n background: var(--grey-medium);\n }\n</style>\n\n<div class=\"container\">\n <label for={name}>{label}</label>\n <textarea bind:value {placeholder} {name} use:text_area_resize />\n</div>\n",
|
|
16
|
-
"<script>\n export let href,\n icon,\n title,\n active = false;\n</script>\n\n<style>\n .nav-item {\n cursor: pointer;\n padding: 12px;\n height: 40px;\n display: flex;\n flex-direction: row;\n align-items: center;\n box-sizing: border-box;\n border-radius: 3px;\n }\n\n .nav-item:hover {\n background-color: var(--grey-light);\n }\n\n .nav-item-title {\n font-size: 14px;\n color: var(--ink);\n font-weight: 400;\n margin-left: 12px;\n }\n\n .nav-item-icon {\n color: var(--ink-light);\n }\n\n .active {\n background-color: var(--blue-light);\n }\n</style>\n\n<a {href} target=\"_blank\" class=\"nav-item\" class:active>\n {#if icon}\n <span class=\"nav-item-icon\">\n <svelte:component this={icon} />\n </span>\n {/if}\n {#if title}\n <div class=\"nav-item-title\">{title}</div>\n {/if}\n</a>\n",
|
|
17
|
-
"<script>\n export let name,\n show = false;\n\n const capitalize = name => name[0].toUpperCase() + name.slice(1);\n</script>\n\n<style>\n .property-group-container {\n display: flex;\n flex-direction: column;\n height: auto;\n background: var(--grey-light);\n margin: 0px 0px 4px 0px;\n padding: 8px 12px;\n justify-content: center;\n border-radius: 4px;\n }\n\n .property-group-name {\n cursor: pointer;\n display: flex;\n flex-flow: row nowrap;\n }\n\n .name {\n flex: 1;\n text-align: left;\n padding-top: 2px;\n font-size: 14px;\n font-weight: 500;\n letter-spacing: 0.14px;\n color: var(--ink);\n }\n\n .icon {\n flex: 0 0 20px;\n text-align: center;\n }\n\n .property-panel {\n /* height: 0px;\n overflow: hidden; */\n display: none;\n }\n\n .show {\n /* overflow: auto;\n height: auto; */\n display: flex;\n flex-direction: column;\n flex: 1;\n }\n</style>\n\n<div class=\"property-group-container\">\n <div class=\"property-group-name\" on:click={() => (show = !show)}>\n <div class=\"icon\">\n <i class={show ? 'ri-arrow-down-s-fill' : 'ri-arrow-right-s-fill'} />\n </div>\n <div class=\"name\">{capitalize(name)}</div>\n </div>\n <div class=\"property-panel\" class:show>\n <slot />\n </div>\n</div>\n",
|
|
18
|
-
"<script>\n export let headings;\n export let value;\n</script>\n\n<style>\n header {\n display: grid;\n grid-gap: 20px;\n grid-auto-flow: column;\n }\n\n span {\n font-size: 18px;\n font-weight: bold;\n color: var(--ink-lighter);\n }\n\n span:hover {\n cursor: pointer;\n }\n\n .selected {\n color: var(--ink);\n }\n</style>\n\n<section>\n <header>\n {#each headings as heading}\n <span\n class:selected={value === heading.key}\n on:click={() => (value = heading.key)}>\n {heading.title}\n </span>\n {/each}\n </header>\n <slot />\n</section>\n"
|
|
19
|
-
],
|
|
20
|
-
"names": [],
|
|
21
|
-
"mappings": "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"
|
|
22
|
-
}
|