@nyaruka/temba-components 0.86.1 → 0.88.0
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/.eslintrc.js +3 -3
- package/.prettierrc +6 -0
- package/.storybook/main.js +3 -3
- package/.storybook/preview.js +2 -2
- package/CHANGELOG.md +24 -24
- package/CreateIncludesPlugin.js +2 -2
- package/demo/index.html +1 -0
- package/dist/locales/es.js +1 -1
- package/dist/locales/es.js.map +1 -1
- package/dist/locales/fr.js +1 -1
- package/dist/locales/fr.js.map +1 -1
- package/dist/locales/pt.js +1 -1
- package/dist/locales/pt.js.map +1 -1
- package/dist/temba-components.js +647 -535
- package/dist/temba-components.js.map +1 -1
- package/out-tsc/src/RapidElement.js +3 -3
- package/out-tsc/src/RapidElement.js.map +1 -1
- package/out-tsc/src/ResizeElement.js +2 -2
- package/out-tsc/src/ResizeElement.js.map +1 -1
- package/out-tsc/src/aliaseditor/AliasEditor.js +1 -1
- package/out-tsc/src/aliaseditor/AliasEditor.js.map +1 -1
- package/out-tsc/src/button/Button.js +1 -1
- package/out-tsc/src/button/Button.js.map +1 -1
- package/out-tsc/src/charcount/helpers.js +1 -1
- package/out-tsc/src/charcount/helpers.js.map +1 -1
- package/out-tsc/src/colorpicker/ColorPicker.js +4 -4
- package/out-tsc/src/colorpicker/ColorPicker.js.map +1 -1
- package/out-tsc/src/completion/Completion.js +2 -2
- package/out-tsc/src/completion/Completion.js.map +1 -1
- package/out-tsc/src/completion/ExcellentParser.js +1 -1
- package/out-tsc/src/completion/ExcellentParser.js.map +1 -1
- package/out-tsc/src/completion/helpers.js +8 -8
- package/out-tsc/src/completion/helpers.js.map +1 -1
- package/out-tsc/src/compose/Compose.js +14 -14
- package/out-tsc/src/compose/Compose.js.map +1 -1
- package/out-tsc/src/contacts/ContactBadges.js +2 -2
- package/out-tsc/src/contacts/ContactBadges.js.map +1 -1
- package/out-tsc/src/contacts/ContactChat.js +4 -4
- package/out-tsc/src/contacts/ContactChat.js.map +1 -1
- package/out-tsc/src/contacts/ContactDetails.js +4 -4
- package/out-tsc/src/contacts/ContactDetails.js.map +1 -1
- package/out-tsc/src/contacts/ContactFieldEditor.js +3 -3
- package/out-tsc/src/contacts/ContactFieldEditor.js.map +1 -1
- package/out-tsc/src/contacts/ContactFields.js +2 -2
- package/out-tsc/src/contacts/ContactFields.js.map +1 -1
- package/out-tsc/src/contacts/ContactHistory.js +21 -19
- package/out-tsc/src/contacts/ContactHistory.js.map +1 -1
- package/out-tsc/src/contacts/ContactPending.js +4 -4
- package/out-tsc/src/contacts/ContactPending.js.map +1 -1
- package/out-tsc/src/contacts/ContactTickets.js +8 -8
- package/out-tsc/src/contacts/ContactTickets.js.map +1 -1
- package/out-tsc/src/contacts/events.js +2 -2
- package/out-tsc/src/contacts/events.js.map +1 -1
- package/out-tsc/src/contacts/helpers.js +2 -2
- package/out-tsc/src/contacts/helpers.js.map +1 -1
- package/out-tsc/src/contactsearch/ContactSearch.js +7 -7
- package/out-tsc/src/contactsearch/ContactSearch.js.map +1 -1
- package/out-tsc/src/date/TembaDate.js +1 -1
- package/out-tsc/src/date/TembaDate.js.map +1 -1
- package/out-tsc/src/datepicker/DatePicker.js +1 -1
- package/out-tsc/src/datepicker/DatePicker.js.map +1 -1
- package/out-tsc/src/dialog/Dialog.js +5 -5
- package/out-tsc/src/dialog/Dialog.js.map +1 -1
- package/out-tsc/src/dialog/Modax.js +8 -8
- package/out-tsc/src/dialog/Modax.js.map +1 -1
- package/out-tsc/src/dropdown/Dropdown.js +1 -1
- package/out-tsc/src/dropdown/Dropdown.js.map +1 -1
- package/out-tsc/src/fields/FieldManager.js +6 -6
- package/out-tsc/src/fields/FieldManager.js.map +1 -1
- package/out-tsc/src/imagepicker/ImagePicker.js +4 -4
- package/out-tsc/src/imagepicker/ImagePicker.js.map +1 -1
- package/out-tsc/src/interfaces.js.map +1 -1
- package/out-tsc/src/label/Label.js +1 -1
- package/out-tsc/src/label/Label.js.map +1 -1
- package/out-tsc/src/leafletmap/LeafletMap.js +6 -6
- package/out-tsc/src/leafletmap/LeafletMap.js.map +1 -1
- package/out-tsc/src/leafletmap/helpers.js +2 -2
- package/out-tsc/src/leafletmap/helpers.js.map +1 -1
- package/out-tsc/src/lightbox/Lightbox.js +2 -2
- package/out-tsc/src/lightbox/Lightbox.js.map +1 -1
- package/out-tsc/src/list/ContentMenu.js +8 -8
- package/out-tsc/src/list/ContentMenu.js.map +1 -1
- package/out-tsc/src/list/RunList.js +1 -1
- package/out-tsc/src/list/RunList.js.map +1 -1
- package/out-tsc/src/list/SortableList.js +6 -6
- package/out-tsc/src/list/SortableList.js.map +1 -1
- package/out-tsc/src/list/TembaList.js +9 -7
- package/out-tsc/src/list/TembaList.js.map +1 -1
- package/out-tsc/src/list/TembaMenu.js +22 -22
- package/out-tsc/src/list/TembaMenu.js.map +1 -1
- package/out-tsc/src/loading/Loading.js +1 -1
- package/out-tsc/src/loading/Loading.js.map +1 -1
- package/out-tsc/src/locales/es.js +1 -1
- package/out-tsc/src/locales/es.js.map +1 -1
- package/out-tsc/src/locales/fr.js +1 -1
- package/out-tsc/src/locales/fr.js.map +1 -1
- package/out-tsc/src/locales/pt.js +1 -1
- package/out-tsc/src/locales/pt.js.map +1 -1
- package/out-tsc/src/omnibox/Omnibox.js +1 -1
- package/out-tsc/src/omnibox/Omnibox.js.map +1 -1
- package/out-tsc/src/options/Options.js +9 -9
- package/out-tsc/src/options/Options.js.map +1 -1
- package/out-tsc/src/remote/Remote.js +1 -1
- package/out-tsc/src/remote/Remote.js.map +1 -1
- package/out-tsc/src/select/Select.js +18 -18
- package/out-tsc/src/select/Select.js.map +1 -1
- package/out-tsc/src/sms/gsmsplitter.js +8 -8
- package/out-tsc/src/sms/gsmsplitter.js.map +1 -1
- package/out-tsc/src/sms/gsmvalidator.js +1 -1
- package/out-tsc/src/sms/gsmvalidator.js.map +1 -1
- package/out-tsc/src/sms/index.js +2 -2
- package/out-tsc/src/sms/index.js.map +1 -1
- package/out-tsc/src/sms/unicodesplitter.js +8 -8
- package/out-tsc/src/sms/unicodesplitter.js.map +1 -1
- package/out-tsc/src/store/Store.js +10 -10
- package/out-tsc/src/store/Store.js.map +1 -1
- package/out-tsc/src/store/StoreElement.js +2 -2
- package/out-tsc/src/store/StoreElement.js.map +1 -1
- package/out-tsc/src/tabpane/TabPane.js +4 -4
- package/out-tsc/src/tabpane/TabPane.js.map +1 -1
- package/out-tsc/src/templates/TemplateEditor.js +9 -9
- package/out-tsc/src/templates/TemplateEditor.js.map +1 -1
- package/out-tsc/src/textinput/TextInput.js +1 -1
- package/out-tsc/src/textinput/TextInput.js.map +1 -1
- package/out-tsc/src/thumbnail/Thumbnail.js +5 -5
- package/out-tsc/src/thumbnail/Thumbnail.js.map +1 -1
- package/out-tsc/src/tip/Tip.js +3 -3
- package/out-tsc/src/tip/Tip.js.map +1 -1
- package/out-tsc/src/toast/Toast.js +199 -0
- package/out-tsc/src/toast/Toast.js.map +1 -0
- package/out-tsc/src/utils/index.js +28 -21
- package/out-tsc/src/utils/index.js.map +1 -1
- package/out-tsc/src/vectoricon/VectorIcon.js +2 -2
- package/out-tsc/src/vectoricon/VectorIcon.js.map +1 -1
- package/out-tsc/src/vectoricon/index.js +1 -0
- package/out-tsc/src/vectoricon/index.js.map +1 -1
- package/out-tsc/src/webchat/WebChat.js +234 -81
- package/out-tsc/src/webchat/WebChat.js.map +1 -1
- package/out-tsc/src/webchat/assets.js +2 -0
- package/out-tsc/src/webchat/assets.js.map +1 -0
- package/out-tsc/src/webchat/index.js.map +1 -1
- package/out-tsc/temba-modules.js +2 -0
- package/out-tsc/temba-modules.js.map +1 -1
- package/out-tsc/test/temba-alert.test.js +1 -1
- package/out-tsc/test/temba-alert.test.js.map +1 -1
- package/out-tsc/test/temba-checkbox.test.js.map +1 -1
- package/out-tsc/test/temba-color-picker.test.js +4 -4
- package/out-tsc/test/temba-color-picker.test.js.map +1 -1
- package/out-tsc/test/temba-compose.test.js +50 -54
- package/out-tsc/test/temba-compose.test.js.map +1 -1
- package/out-tsc/test/temba-contact-badges.test.js +2 -2
- package/out-tsc/test/temba-contact-badges.test.js.map +1 -1
- package/out-tsc/test/temba-contact-chat.test.js +25 -38
- package/out-tsc/test/temba-contact-chat.test.js.map +1 -1
- package/out-tsc/test/temba-contact-details.test.js +2 -2
- package/out-tsc/test/temba-contact-details.test.js.map +1 -1
- package/out-tsc/test/temba-contact-fields.test.js +4 -4
- package/out-tsc/test/temba-contact-fields.test.js.map +1 -1
- package/out-tsc/test/temba-contact-history.test.js +3 -3
- package/out-tsc/test/temba-contact-history.test.js.map +1 -1
- package/out-tsc/test/temba-contact-search.test.js +7 -7
- package/out-tsc/test/temba-contact-search.test.js.map +1 -1
- package/out-tsc/test/temba-contact-tickets.test.js +3 -3
- package/out-tsc/test/temba-contact-tickets.test.js.map +1 -1
- package/out-tsc/test/temba-content-menu.test.js +7 -7
- package/out-tsc/test/temba-content-menu.test.js.map +1 -1
- package/out-tsc/test/temba-date.test.js +3 -3
- package/out-tsc/test/temba-date.test.js.map +1 -1
- package/out-tsc/test/temba-datepicker.test.js +1 -1
- package/out-tsc/test/temba-datepicker.test.js.map +1 -1
- package/out-tsc/test/temba-field-manager.test.js +1 -3
- package/out-tsc/test/temba-field-manager.test.js.map +1 -1
- package/out-tsc/test/temba-label.test.js +6 -6
- package/out-tsc/test/temba-label.test.js.map +1 -1
- package/out-tsc/test/temba-lightbox.test.js +2 -2
- package/out-tsc/test/temba-lightbox.test.js.map +1 -1
- package/out-tsc/test/temba-list.test.js +6 -6
- package/out-tsc/test/temba-list.test.js.map +1 -1
- package/out-tsc/test/temba-menu.test.js +4 -5
- package/out-tsc/test/temba-menu.test.js.map +1 -1
- package/out-tsc/test/temba-modax.test.js +3 -3
- package/out-tsc/test/temba-modax.test.js.map +1 -1
- package/out-tsc/test/temba-options.test.js +1 -1
- package/out-tsc/test/temba-options.test.js.map +1 -1
- package/out-tsc/test/temba-select.test.js +17 -17
- package/out-tsc/test/temba-select.test.js.map +1 -1
- package/out-tsc/test/temba-sortable-list.test.js +1 -1
- package/out-tsc/test/temba-sortable-list.test.js.map +1 -1
- package/out-tsc/test/temba-textinput.test.js +2 -2
- package/out-tsc/test/temba-textinput.test.js.map +1 -1
- package/out-tsc/test/temba-tip.test.js +4 -4
- package/out-tsc/test/temba-tip.test.js.map +1 -1
- package/out-tsc/test/utils.test.js +8 -8
- package/out-tsc/test/utils.test.js.map +1 -1
- package/package.json +6 -15
- package/src/RapidElement.ts +3 -3
- package/src/ResizeElement.ts +2 -2
- package/src/aliaseditor/AliasEditor.ts +1 -2
- package/src/button/Button.ts +1 -1
- package/src/charcount/helpers.ts +1 -1
- package/src/colorpicker/ColorPicker.ts +4 -4
- package/src/completion/Completion.ts +2 -2
- package/src/completion/ExcellentParser.ts +1 -1
- package/src/completion/helpers.ts +9 -9
- package/src/compose/Compose.ts +18 -16
- package/src/contacts/ContactBadges.ts +2 -2
- package/src/contacts/ContactChat.ts +4 -4
- package/src/contacts/ContactDetails.ts +4 -4
- package/src/contacts/ContactFieldEditor.ts +4 -4
- package/src/contacts/ContactFields.ts +2 -2
- package/src/contacts/ContactHistory.ts +25 -22
- package/src/contacts/ContactPending.ts +4 -4
- package/src/contacts/ContactTickets.ts +9 -9
- package/src/contacts/events.ts +3 -3
- package/src/contacts/helpers.ts +2 -2
- package/src/contactsearch/ContactSearch.ts +9 -9
- package/src/date/TembaDate.ts +1 -1
- package/src/datepicker/DatePicker.ts +1 -1
- package/src/dialog/Dialog.ts +6 -6
- package/src/dialog/Modax.ts +8 -8
- package/src/dropdown/Dropdown.ts +1 -2
- package/src/emojis.json +1882 -1
- package/src/fields/FieldManager.ts +6 -7
- package/src/imagepicker/ImagePicker.ts +4 -4
- package/src/interfaces.ts +4 -4
- package/src/label/Label.ts +1 -1
- package/src/leafletmap/LeafletMap.ts +6 -6
- package/src/leafletmap/helpers.ts +2 -2
- package/src/lightbox/Lightbox.ts +2 -2
- package/src/list/ContentMenu.ts +9 -9
- package/src/list/RunList.ts +1 -1
- package/src/list/SortableList.ts +6 -6
- package/src/list/TembaList.ts +9 -7
- package/src/list/TembaMenu.ts +23 -23
- package/src/loading/Loading.ts +1 -1
- package/src/locales/es.ts +1 -1
- package/src/locales/fr.ts +1 -1
- package/src/locales/pt.ts +1 -1
- package/src/omnibox/Omnibox.ts +2 -2
- package/src/options/Options.ts +9 -9
- package/src/remote/Remote.ts +1 -1
- package/src/select/Select.ts +19 -19
- package/src/sms/gsmsplitter.ts +8 -8
- package/src/sms/gsmvalidator.ts +1 -1
- package/src/sms/index.ts +2 -2
- package/src/sms/unicodesplitter.ts +8 -8
- package/src/store/Store.ts +10 -10
- package/src/store/StoreElement.ts +2 -2
- package/src/tabpane/TabPane.ts +4 -4
- package/src/templates/TemplateEditor.ts +9 -9
- package/src/textinput/TextInput.ts +2 -2
- package/src/thumbnail/Thumbnail.ts +5 -5
- package/src/tip/Tip.ts +3 -3
- package/src/toast/Toast.ts +224 -0
- package/src/utils/index.ts +33 -24
- package/src/vectoricon/VectorIcon.ts +2 -2
- package/src/vectoricon/index.ts +2 -1
- package/src/webchat/WebChat.ts +272 -87
- package/src/webchat/assets.ts +2 -0
- package/src/webchat/index.ts +1 -1
- package/svg.js +28 -29
- package/temba-modules.ts +2 -0
- package/test/temba-alert.test.ts +1 -1
- package/test/temba-checkbox.test.ts +1 -1
- package/test/temba-color-picker.test.ts +4 -4
- package/test/temba-compose.test.ts +50 -55
- package/test/temba-contact-badges.test.ts +2 -2
- package/test/temba-contact-chat.test.ts +26 -46
- package/test/temba-contact-details.test.ts +2 -8
- package/test/temba-contact-fields.test.ts +4 -11
- package/test/temba-contact-history.test.ts +3 -3
- package/test/temba-contact-search.test.ts +7 -13
- package/test/temba-contact-tickets.test.ts +3 -3
- package/test/temba-content-menu.test.ts +7 -7
- package/test/temba-date.test.ts +3 -3
- package/test/temba-datepicker.test.ts +1 -1
- package/test/temba-field-manager.test.ts +1 -4
- package/test/temba-label.test.ts +6 -6
- package/test/temba-lightbox.test.ts +2 -2
- package/test/temba-list.test.ts +6 -6
- package/test/temba-menu.test.ts +4 -5
- package/test/temba-modax.test.ts +3 -3
- package/test/temba-options.test.ts +1 -1
- package/test/temba-select.test.ts +17 -17
- package/test/temba-sortable-list.test.ts +1 -1
- package/test/temba-textinput.test.ts +2 -2
- package/test/temba-tip.test.ts +5 -5
- package/test/utils.test.ts +8 -9
package/test/temba-menu.test.ts
CHANGED
|
@@ -21,7 +21,6 @@ const getMenu = async (attrs: any = {}, width = 0) => {
|
|
|
21
21
|
return menu;
|
|
22
22
|
};
|
|
23
23
|
|
|
24
|
-
const IDX_CHOOSER = 0;
|
|
25
24
|
const IDX_TASKS = 1;
|
|
26
25
|
const IDX_SCHEDULE = 2;
|
|
27
26
|
|
|
@@ -34,7 +33,7 @@ describe('temba-menu', () => {
|
|
|
34
33
|
|
|
35
34
|
it('renders with endpoint', async () => {
|
|
36
35
|
const menu: TembaMenu = await getMenu({
|
|
37
|
-
endpoint: '/test-assets/menu/menu-root.json'
|
|
36
|
+
endpoint: '/test-assets/menu/menu-root.json'
|
|
38
37
|
});
|
|
39
38
|
|
|
40
39
|
expect(menu.root.items.length).to.equal(3);
|
|
@@ -43,7 +42,7 @@ describe('temba-menu', () => {
|
|
|
43
42
|
|
|
44
43
|
it('supports submenu', async () => {
|
|
45
44
|
const menu: TembaMenu = await getMenu({
|
|
46
|
-
endpoint: '/test-assets/menu/menu-root.json'
|
|
45
|
+
endpoint: '/test-assets/menu/menu-root.json'
|
|
47
46
|
});
|
|
48
47
|
|
|
49
48
|
// click our tasks
|
|
@@ -61,7 +60,7 @@ describe('temba-menu', () => {
|
|
|
61
60
|
// not trigger events such as loading or dispatching
|
|
62
61
|
|
|
63
62
|
const menu: TembaMenu = await getMenu({
|
|
64
|
-
endpoint: '/test-assets/menu/menu-root.json'
|
|
63
|
+
endpoint: '/test-assets/menu/menu-root.json'
|
|
65
64
|
});
|
|
66
65
|
|
|
67
66
|
// click our tasks
|
|
@@ -91,7 +90,7 @@ describe('temba-menu', () => {
|
|
|
91
90
|
it('refreshes', async () => {
|
|
92
91
|
// the menu should refresh along the selection path without destroying state
|
|
93
92
|
const menu: TembaMenu = await getMenu({
|
|
94
|
-
endpoint: '/test-assets/menu/menu-root.json'
|
|
93
|
+
endpoint: '/test-assets/menu/menu-root.json'
|
|
95
94
|
});
|
|
96
95
|
|
|
97
96
|
// click our tasks
|
package/test/temba-modax.test.ts
CHANGED
|
@@ -24,7 +24,7 @@ const getButtons = (modax: Modax, type: string = null) => {
|
|
|
24
24
|
};
|
|
25
25
|
|
|
26
26
|
const open = async (modax: Modax) => {
|
|
27
|
-
return new Promise((resolve: any
|
|
27
|
+
return new Promise((resolve: any) => {
|
|
28
28
|
modax.addEventListener(
|
|
29
29
|
CustomEventType.Loaded,
|
|
30
30
|
async (event: CustomEvent) => {
|
|
@@ -159,10 +159,10 @@ describe('temba-modax', () => {
|
|
|
159
159
|
|
|
160
160
|
// click the submit button
|
|
161
161
|
mockPOST(/\/test-assets\/modax\/form\.html/, 'arst', {
|
|
162
|
-
'Temba-Success': 'hide'
|
|
162
|
+
'Temba-Success': 'hide'
|
|
163
163
|
});
|
|
164
164
|
|
|
165
|
-
const hideTest = new Promise<void>(resolve => {
|
|
165
|
+
const hideTest = new Promise<void>((resolve) => {
|
|
166
166
|
modax.addEventListener(CustomEventType.Submitted, () => {
|
|
167
167
|
expect(modax.open).equals(false, 'Modal still visible');
|
|
168
168
|
resolve();
|
|
@@ -5,7 +5,7 @@ import { assertScreenshot, getClip, getHTML } from './utils.test';
|
|
|
5
5
|
const colors = [
|
|
6
6
|
{ name: 'Red', value: '0' },
|
|
7
7
|
{ name: 'Green', value: '1' },
|
|
8
|
-
{ name: 'Blue', value: '2' }
|
|
8
|
+
{ name: 'Blue', value: '2' }
|
|
9
9
|
];
|
|
10
10
|
|
|
11
11
|
export const getOptionsHTML = (attrs: any = {}): string => {
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
assertScreenshot,
|
|
7
7
|
checkTimers,
|
|
8
8
|
getClip,
|
|
9
|
-
loadStore
|
|
9
|
+
loadStore
|
|
10
10
|
} from './utils.test';
|
|
11
11
|
import { CustomEventType } from '../src/interfaces';
|
|
12
12
|
|
|
@@ -15,7 +15,7 @@ let clock: any;
|
|
|
15
15
|
const colors = [
|
|
16
16
|
{ name: 'Red', value: '0' },
|
|
17
17
|
{ name: 'Green', value: '1' },
|
|
18
|
-
{ name: 'Blue', value: '2' }
|
|
18
|
+
{ name: 'Blue', value: '2' }
|
|
19
19
|
];
|
|
20
20
|
|
|
21
21
|
export const createSelect = async (def: string) => {
|
|
@@ -36,7 +36,7 @@ export const open = async (select: Select) => {
|
|
|
36
36
|
return select;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
const promise = new Promise<Select>(resolve => {
|
|
39
|
+
const promise = new Promise<Select>((resolve) => {
|
|
40
40
|
select.addEventListener(
|
|
41
41
|
CustomEventType.FetchComplete,
|
|
42
42
|
async () => {
|
|
@@ -89,7 +89,7 @@ export const getSelectHTML = (
|
|
|
89
89
|
.join(' ')}>
|
|
90
90
|
${options
|
|
91
91
|
.map(
|
|
92
|
-
option =>
|
|
92
|
+
(option) =>
|
|
93
93
|
`<temba-option name="${option.name}" value="${option.value}"></temba-option>`
|
|
94
94
|
)
|
|
95
95
|
.join('')}
|
|
@@ -111,7 +111,7 @@ const getClipWithOptions = (select: Select) => {
|
|
|
111
111
|
y,
|
|
112
112
|
x,
|
|
113
113
|
width: Math.max(selectClip.right, optionsClip.right) - x,
|
|
114
|
-
height: Math.max(selectClip.bottom, optionsClip.bottom) - y
|
|
114
|
+
height: Math.max(selectClip.bottom, optionsClip.bottom) - y
|
|
115
115
|
};
|
|
116
116
|
return combinedClip;
|
|
117
117
|
}
|
|
@@ -284,7 +284,7 @@ describe('temba-select', () => {
|
|
|
284
284
|
const select = await createSelect(
|
|
285
285
|
getSelectHTML([], {
|
|
286
286
|
placeholder: 'Select a color',
|
|
287
|
-
endpoint: '/test-assets/select/colors.json'
|
|
287
|
+
endpoint: '/test-assets/select/colors.json'
|
|
288
288
|
})
|
|
289
289
|
);
|
|
290
290
|
|
|
@@ -301,7 +301,7 @@ describe('temba-select', () => {
|
|
|
301
301
|
getSelectHTML([], {
|
|
302
302
|
placeholder: 'Select a color',
|
|
303
303
|
endpoint: '/test-assets/select/colors.json',
|
|
304
|
-
searchable: true
|
|
304
|
+
searchable: true
|
|
305
305
|
})
|
|
306
306
|
);
|
|
307
307
|
|
|
@@ -317,7 +317,7 @@ describe('temba-select', () => {
|
|
|
317
317
|
getSelectHTML([], {
|
|
318
318
|
placeholder: 'Select a group',
|
|
319
319
|
endpoint: '/test-assets/select/groups.json',
|
|
320
|
-
valueKey: 'uuid'
|
|
320
|
+
valueKey: 'uuid'
|
|
321
321
|
})
|
|
322
322
|
);
|
|
323
323
|
|
|
@@ -333,7 +333,7 @@ describe('temba-select', () => {
|
|
|
333
333
|
placeholder: 'Select a group',
|
|
334
334
|
endpoint: '/test-assets/select/groups.json',
|
|
335
335
|
valueKey: 'uuid',
|
|
336
|
-
searchable: true
|
|
336
|
+
searchable: true
|
|
337
337
|
})
|
|
338
338
|
);
|
|
339
339
|
|
|
@@ -360,7 +360,7 @@ describe('temba-select', () => {
|
|
|
360
360
|
getSelectHTML([], {
|
|
361
361
|
endpoint: '/colors.json',
|
|
362
362
|
searchable: true,
|
|
363
|
-
expressions: 'session'
|
|
363
|
+
expressions: 'session'
|
|
364
364
|
})
|
|
365
365
|
);
|
|
366
366
|
|
|
@@ -390,7 +390,7 @@ describe('temba-select', () => {
|
|
|
390
390
|
const select = await createSelect(
|
|
391
391
|
getSelectHTML(colors, {
|
|
392
392
|
placeholder: 'Select a color',
|
|
393
|
-
searchable: true
|
|
393
|
+
searchable: true
|
|
394
394
|
})
|
|
395
395
|
);
|
|
396
396
|
await assertScreenshot(
|
|
@@ -433,7 +433,7 @@ describe('temba-select', () => {
|
|
|
433
433
|
getSelectHTML(colors, {
|
|
434
434
|
placeholder: 'Select a color',
|
|
435
435
|
searchable: true,
|
|
436
|
-
multi: true
|
|
436
|
+
multi: true
|
|
437
437
|
})
|
|
438
438
|
);
|
|
439
439
|
|
|
@@ -460,7 +460,7 @@ describe('temba-select', () => {
|
|
|
460
460
|
getSelectHTML(colors, {
|
|
461
461
|
placeholder: 'Select a color',
|
|
462
462
|
searchable: true,
|
|
463
|
-
expressions: 'session'
|
|
463
|
+
expressions: 'session'
|
|
464
464
|
})
|
|
465
465
|
);
|
|
466
466
|
|
|
@@ -474,13 +474,13 @@ describe('temba-select', () => {
|
|
|
474
474
|
const options = [
|
|
475
475
|
{
|
|
476
476
|
name: 'this_is_a_long_selection_to_make_sure_it_truncates',
|
|
477
|
-
value: '0'
|
|
478
|
-
}
|
|
477
|
+
value: '0'
|
|
478
|
+
}
|
|
479
479
|
];
|
|
480
480
|
|
|
481
481
|
const select = await createSelect(
|
|
482
482
|
getSelectHTML(options, {
|
|
483
|
-
value: '0'
|
|
483
|
+
value: '0'
|
|
484
484
|
})
|
|
485
485
|
);
|
|
486
486
|
|
|
@@ -498,7 +498,7 @@ describe('temba-select', () => {
|
|
|
498
498
|
multi: true,
|
|
499
499
|
placeholder: 'Select a color',
|
|
500
500
|
searchable: true,
|
|
501
|
-
expressions: 'session'
|
|
501
|
+
expressions: 'session'
|
|
502
502
|
})
|
|
503
503
|
);
|
|
504
504
|
|
|
@@ -176,7 +176,7 @@ describe('temba-textinput', () => {
|
|
|
176
176
|
name: 'message',
|
|
177
177
|
value: 'hello world',
|
|
178
178
|
label: 'Your Message',
|
|
179
|
-
help_text: 'Enter your message here'
|
|
179
|
+
help_text: 'Enter your message here'
|
|
180
180
|
})
|
|
181
181
|
);
|
|
182
182
|
await assertScreenshot('textinput/input-form', getClip(input));
|
|
@@ -185,7 +185,7 @@ describe('temba-textinput', () => {
|
|
|
185
185
|
it('updates input value', async () => {
|
|
186
186
|
const input: TextInput = await createInput(
|
|
187
187
|
getInputHTML({
|
|
188
|
-
value: 'hello world'
|
|
188
|
+
value: 'hello world'
|
|
189
189
|
})
|
|
190
190
|
);
|
|
191
191
|
|
package/test/temba-tip.test.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { assert } from '@open-wc/testing';
|
|
2
2
|
import { Tip } from '../src/tip/Tip';
|
|
3
|
-
import { assertScreenshot,
|
|
3
|
+
import { assertScreenshot, getClip, getComponent } from './utils.test';
|
|
4
4
|
|
|
5
5
|
const TAG = 'temba-tip';
|
|
6
6
|
|
|
@@ -68,7 +68,7 @@ describe(TAG, () => {
|
|
|
68
68
|
const tip = await getTip({
|
|
69
69
|
text: 'Hello!',
|
|
70
70
|
visible: true,
|
|
71
|
-
position: 'left'
|
|
71
|
+
position: 'left'
|
|
72
72
|
});
|
|
73
73
|
await assertScreenshot('tip/left', getLeftClip(tip));
|
|
74
74
|
});
|
|
@@ -77,7 +77,7 @@ describe(TAG, () => {
|
|
|
77
77
|
const tip = await getTip({
|
|
78
78
|
text: 'Hello!',
|
|
79
79
|
visible: true,
|
|
80
|
-
position: 'right'
|
|
80
|
+
position: 'right'
|
|
81
81
|
});
|
|
82
82
|
await assertScreenshot('tip/right', getRightClip(tip));
|
|
83
83
|
});
|
|
@@ -86,7 +86,7 @@ describe(TAG, () => {
|
|
|
86
86
|
const tip = await getTip({
|
|
87
87
|
text: 'Hello!',
|
|
88
88
|
visible: true,
|
|
89
|
-
position: 'top'
|
|
89
|
+
position: 'top'
|
|
90
90
|
});
|
|
91
91
|
await assertScreenshot('tip/top', getTopClip(tip));
|
|
92
92
|
});
|
|
@@ -95,7 +95,7 @@ describe(TAG, () => {
|
|
|
95
95
|
const tip = await getTip({
|
|
96
96
|
text: 'Hello!',
|
|
97
97
|
visible: true,
|
|
98
|
-
position: 'bottom'
|
|
98
|
+
position: 'bottom'
|
|
99
99
|
});
|
|
100
100
|
await assertScreenshot('tip/bottom', getBottomClip(tip));
|
|
101
101
|
});
|
package/test/utils.test.ts
CHANGED
|
@@ -11,7 +11,6 @@ import { expect, fixture, html, assert, waitUntil } from '@open-wc/testing';
|
|
|
11
11
|
import MouseHelper from './MouseHelper';
|
|
12
12
|
import { Store } from '../src/store/Store';
|
|
13
13
|
import { replace, stub } from 'sinon';
|
|
14
|
-
import { CustomEventType } from '../src/interfaces';
|
|
15
14
|
|
|
16
15
|
export interface CodeMock {
|
|
17
16
|
endpoint: RegExp;
|
|
@@ -59,25 +58,25 @@ export const getComponent = async (
|
|
|
59
58
|
return await fixture(spec, { parentNode });
|
|
60
59
|
};
|
|
61
60
|
|
|
62
|
-
const createResponse = mocked => {
|
|
61
|
+
const createResponse = (mocked) => {
|
|
63
62
|
const mockResponse = new window.Response(mocked.body, {
|
|
64
63
|
status: mocked.status,
|
|
65
64
|
headers: {
|
|
66
65
|
'Content-type': 'text/html',
|
|
67
|
-
...mocked.headers
|
|
68
|
-
}
|
|
66
|
+
...mocked.headers
|
|
67
|
+
}
|
|
69
68
|
});
|
|
70
69
|
|
|
71
70
|
return Promise.resolve(mockResponse);
|
|
72
71
|
};
|
|
73
72
|
|
|
74
|
-
const createJSONResponse = mocked => {
|
|
73
|
+
const createJSONResponse = (mocked) => {
|
|
75
74
|
const mockResponse = new window.Response(JSON.stringify(mocked.body), {
|
|
76
75
|
status: mocked.status,
|
|
77
76
|
headers: {
|
|
78
77
|
'Content-type': 'application/json',
|
|
79
|
-
...mocked.headers
|
|
80
|
-
}
|
|
78
|
+
...mocked.headers
|
|
79
|
+
}
|
|
81
80
|
});
|
|
82
81
|
|
|
83
82
|
return Promise.resolve(mockResponse);
|
|
@@ -86,7 +85,7 @@ const createJSONResponse = mocked => {
|
|
|
86
85
|
const getResponse = (endpoint: string, options) => {
|
|
87
86
|
// check if our path has been mocked in code
|
|
88
87
|
const mocks = options.method === 'GET' ? gets : posts;
|
|
89
|
-
const codeMock = mocks.find(mock => mock.endpoint.test(endpoint));
|
|
88
|
+
const codeMock = mocks.find((mock) => mock.endpoint.test(endpoint));
|
|
90
89
|
|
|
91
90
|
if (codeMock) {
|
|
92
91
|
if (typeof codeMock.body === 'string') {
|
|
@@ -207,7 +206,7 @@ export const getClip = (ele: HTMLElement) => {
|
|
|
207
206
|
bottom: y + height,
|
|
208
207
|
right: x + width,
|
|
209
208
|
top: y,
|
|
210
|
-
left: x
|
|
209
|
+
left: x
|
|
211
210
|
};
|
|
212
211
|
|
|
213
212
|
return newClip;
|