@nyaruka/temba-components 0.167.0 → 0.168.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/CHANGELOG.md +21 -0
- package/dist/locales/es.js +3 -1
- package/dist/locales/es.js.map +1 -1
- package/dist/locales/fr.js +3 -1
- package/dist/locales/fr.js.map +1 -1
- package/dist/locales/pt.js +3 -1
- package/dist/locales/pt.js.map +1 -1
- package/dist/temba-components.js +2791 -1668
- package/dist/temba-components.js.map +1 -1
- package/package.json +1 -1
- package/src/Icons.ts +2 -0
- package/src/display/Button.ts +8 -6
- package/src/display/Chat.ts +541 -191
- package/src/display/Dropdown.ts +40 -17
- package/src/display/Label.ts +25 -4
- package/src/display/TembaDate.ts +11 -2
- package/src/display/Tip.ts +157 -18
- package/src/events/eventRenderers.ts +678 -268
- package/src/events.ts +16 -1
- package/src/flow/NodeEditor.ts +82 -9
- package/src/flow/actions/add_contact_urn.ts +1 -0
- package/src/flow/actions/play_audio.ts +1 -0
- package/src/flow/actions/send_broadcast.ts +17 -1
- package/src/flow/actions/send_msg.ts +12 -1
- package/src/flow/actions/set_run_result.ts +1 -0
- package/src/flow/actions/start_session.ts +10 -1
- package/src/flow/nodes/shared-rules.ts +2 -0
- package/src/flow/nodes/split_by_airtime.ts +6 -0
- package/src/flow/nodes/split_by_expression.ts +1 -0
- package/src/flow/nodes/split_by_llm.ts +2 -0
- package/src/flow/nodes/split_by_llm_categorize.ts +3 -1
- package/src/flow/nodes/split_by_random.ts +2 -1
- package/src/flow/nodes/split_by_resthook.ts +4 -1
- package/src/flow/nodes/split_by_webhook.ts +9 -1
- package/src/flow/types.ts +3 -0
- package/src/flow/utils.ts +49 -0
- package/src/form/DatePicker.ts +2 -1
- package/src/layout/Card.ts +9 -0
- package/src/layout/CardLayout.ts +426 -21
- package/src/layout/CardStack.ts +4 -1
- package/src/list/ContactList.ts +22 -17
- package/src/list/ContentList.ts +632 -29
- package/src/list/MsgList.ts +4 -2
- package/src/list/SortableList.ts +5 -1
- package/src/list/TembaMenu.ts +67 -6
- package/src/live/ContactChat.ts +655 -336
- package/src/live/ContactDetails.ts +961 -88
- package/src/live/ContactFieldEditor.ts +46 -11
- package/src/live/ContactFields.ts +57 -16
- package/src/live/ContactStoreElement.ts +15 -8
- package/src/locales/es.ts +3 -2
- package/src/locales/fr.ts +3 -2
- package/src/locales/pt.ts +3 -2
- package/src/simulator/Simulator.ts +28 -0
- package/src/styles/pillVariants.ts +13 -1
- package/web-test-runner.config.mjs +2 -0
- package/xliff/es.xlf +6 -3
- package/xliff/fr.xlf +6 -3
- package/xliff/pt.xlf +6 -3
package/CHANGELOG.md
CHANGED
|
@@ -4,8 +4,29 @@ All notable changes to this project will be documented in this file. Dates are d
|
|
|
4
4
|
|
|
5
5
|
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
|
|
6
6
|
|
|
7
|
+
#### [v0.168.0](https://github.com/nyaruka/temba-components/compare/v0.167.0...v0.168.0)
|
|
8
|
+
|
|
9
|
+
- Allow resizing the chat in the card layout [`#1080`](https://github.com/nyaruka/temba-components/pull/1080)
|
|
10
|
+
- Add link popup menu items and improve dropdown popups [`#1077`](https://github.com/nyaruka/temba-components/pull/1077)
|
|
11
|
+
- Add inline editing to contact details [`#1075`](https://github.com/nyaruka/temba-components/pull/1075)
|
|
12
|
+
- Draw chat popup arrow with CSS clip-path instead of a glyph [`#1078`](https://github.com/nyaruka/temba-components/pull/1078)
|
|
13
|
+
- Fill full width with timezone box when datepicker wraps [`#1079`](https://github.com/nyaruka/temba-components/pull/1079)
|
|
14
|
+
- Enforce engine limits on flow definition fields in the editor [`#1062`](https://github.com/nyaruka/temba-components/pull/1062)
|
|
15
|
+
- Use default() in webhook router operand so null webhook routes cleanly [`#1069`](https://github.com/nyaruka/temba-components/pull/1069)
|
|
16
|
+
- Restyle contact history search to match list page design language [`#1072`](https://github.com/nyaruka/temba-components/pull/1072)
|
|
17
|
+
- Add resizable columns to content lists [`#1076`](https://github.com/nyaruka/temba-components/pull/1076)
|
|
18
|
+
- Add flow status area with flow-tinted treatment to contact chat [`#1073`](https://github.com/nyaruka/temba-components/pull/1073)
|
|
19
|
+
- Condense chat events into pills with day markers and event tooltips [`#1074`](https://github.com/nyaruka/temba-components/pull/1074)
|
|
20
|
+
- Re-enable contact chat screenshot test for active contacts [`#1067`](https://github.com/nyaruka/temba-components/pull/1067)
|
|
21
|
+
- Speed up and de-flake contact chat tests [`#1066`](https://github.com/nyaruka/temba-components/pull/1066)
|
|
22
|
+
- Fix flaky simulator tests by waiting for chat messages to render [`#1065`](https://github.com/nyaruka/temba-components/pull/1065)
|
|
23
|
+
- Use Opus 4.8 for PR reviews [`e22f7b3`](https://github.com/nyaruka/temba-components/commit/e22f7b3c5bfa52307959d089161093f424a12343)
|
|
24
|
+
- Name the build job Test so the required status check name matches other repos [`76190bd`](https://github.com/nyaruka/temba-components/commit/76190bd42b87d906ebba7aa7b551011270c64cda)
|
|
25
|
+
|
|
7
26
|
#### [v0.167.0](https://github.com/nyaruka/temba-components/compare/v0.166.0...v0.167.0)
|
|
8
27
|
|
|
28
|
+
> 22 July 2026
|
|
29
|
+
|
|
9
30
|
- Add urn-label attribute to contact list [`#1068`](https://github.com/nyaruka/temba-components/pull/1068)
|
|
10
31
|
|
|
11
32
|
#### [v0.166.0](https://github.com/nyaruka/temba-components/compare/v0.165.0...v0.166.0)
|
package/dist/locales/es.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
// Do not modify this file by hand!
|
|
2
2
|
// Re-generate this file by running lit-localize
|
|
3
|
+
import { str } from '@lit/localize';
|
|
3
4
|
/* eslint-disable no-irregular-whitespace */
|
|
4
5
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
5
6
|
export const templates = {
|
|
6
7
|
'scf1453991c986b25': `Tab para completar, enter para seleccionar`,
|
|
7
8
|
's73b4d70c02f4b4e0': `No options`,
|
|
8
9
|
'sbc913d7dc0f33877': `to add`,
|
|
9
|
-
'
|
|
10
|
+
's7722a91d3a512442': str `Last seen ${0}`,
|
|
11
|
+
's22965bb9808befb0': `Interrupt`,
|
|
10
12
|
's122d4de68bcfcdf4': `It's okay to restart`,
|
|
11
13
|
's3eb2567092b4d7c1': `from the beginning`,
|
|
12
14
|
's28f37776b3901438': `It's okay to interrupt`,
|
package/dist/locales/es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"es.js","sourceRoot":"","sources":["../../../src/locales/es.ts"],"names":[],"mappings":"AACI,mCAAmC;AACnC,gDAAgD;
|
|
1
|
+
{"version":3,"file":"es.js","sourceRoot":"","sources":["../../../src/locales/es.ts"],"names":[],"mappings":"AACI,mCAAmC;AACnC,gDAAgD;AAGhD,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,4CAA4C;AAC5C,uDAAuD;AAEvD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,mBAAmB,EAAE,4CAA4C;IACvE,mBAAmB,EAAE,YAAY;IACjC,mBAAmB,EAAE,QAAQ;IAC7B,mBAAmB,EAAE,GAAG,CAAA,aAAa,CAAC,EAAE;IACxC,mBAAmB,EAAE,WAAW;IAChC,mBAAmB,EAAE,sBAAsB;IAC3C,mBAAmB,EAAE,oBAAoB;IACzC,mBAAmB,EAAE,wBAAwB;IAC7C,mBAAmB,EAAE,oBAAoB;IACzC,mBAAmB,EAAE,6BAA6B;IAClD,mBAAmB,EAAE,iCAAiC;IACtD,mBAAmB,EAAE,gDAAgD;IACrE,mBAAmB,EAAE,QAAQ;CACxB,CAAC","sourcesContent":["\n // Do not modify this file by hand!\n // Re-generate this file by running lit-localize\n\n \n import {str} from '@lit/localize';\n\n /* eslint-disable no-irregular-whitespace */\n /* eslint-disable @typescript-eslint/no-explicit-any */\n\n export const templates = {\n 'scf1453991c986b25': `Tab para completar, enter para seleccionar`,\n's73b4d70c02f4b4e0': `No options`,\n'sbc913d7dc0f33877': `to add`,\n's7722a91d3a512442': str`Last seen ${0}`,\n's22965bb9808befb0': `Interrupt`,\n's122d4de68bcfcdf4': `It's okay to restart`,\n's3eb2567092b4d7c1': `from the beginning`,\n's28f37776b3901438': `It's okay to interrupt`,\n's6838d20b10f7512a': `and start this one`,\n's8f02e3a18ffc083a': `Are not currently in a flow`,\n's638236250662c6b3': `Have sent a message in the last`,\n's4788ee206c4570c7': `Have not started this flow in the last 90 days`,\n'sea4f08110bb8f15d': `Remove`,\n };\n "]}
|
package/dist/locales/fr.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
// Do not modify this file by hand!
|
|
2
2
|
// Re-generate this file by running lit-localize
|
|
3
|
+
import { str } from '@lit/localize';
|
|
3
4
|
/* eslint-disable no-irregular-whitespace */
|
|
4
5
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
5
6
|
export const templates = {
|
|
6
7
|
's73b4d70c02f4b4e0': `No options`,
|
|
7
8
|
'scf1453991c986b25': `Tab to complete, enter to select`,
|
|
8
9
|
'sbc913d7dc0f33877': `to add`,
|
|
9
|
-
'
|
|
10
|
+
's7722a91d3a512442': str `Last seen ${0}`,
|
|
11
|
+
's22965bb9808befb0': `Interrupt`,
|
|
10
12
|
's122d4de68bcfcdf4': `It's okay to restart`,
|
|
11
13
|
's3eb2567092b4d7c1': `from the beginning`,
|
|
12
14
|
's28f37776b3901438': `It's okay to interrupt`,
|
package/dist/locales/fr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fr.js","sourceRoot":"","sources":["../../../src/locales/fr.ts"],"names":[],"mappings":"AACI,mCAAmC;AACnC,gDAAgD;
|
|
1
|
+
{"version":3,"file":"fr.js","sourceRoot":"","sources":["../../../src/locales/fr.ts"],"names":[],"mappings":"AACI,mCAAmC;AACnC,gDAAgD;AAGhD,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,4CAA4C;AAC5C,uDAAuD;AAEvD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,mBAAmB,EAAE,YAAY;IACvC,mBAAmB,EAAE,kCAAkC;IACvD,mBAAmB,EAAE,QAAQ;IAC7B,mBAAmB,EAAE,GAAG,CAAA,aAAa,CAAC,EAAE;IACxC,mBAAmB,EAAE,WAAW;IAChC,mBAAmB,EAAE,sBAAsB;IAC3C,mBAAmB,EAAE,oBAAoB;IACzC,mBAAmB,EAAE,wBAAwB;IAC7C,mBAAmB,EAAE,oBAAoB;IACzC,mBAAmB,EAAE,6BAA6B;IAClD,mBAAmB,EAAE,iCAAiC;IACtD,mBAAmB,EAAE,gDAAgD;IACrE,mBAAmB,EAAE,QAAQ;CACxB,CAAC","sourcesContent":["\n // Do not modify this file by hand!\n // Re-generate this file by running lit-localize\n\n \n import {str} from '@lit/localize';\n\n /* eslint-disable no-irregular-whitespace */\n /* eslint-disable @typescript-eslint/no-explicit-any */\n\n export const templates = {\n 's73b4d70c02f4b4e0': `No options`,\n'scf1453991c986b25': `Tab to complete, enter to select`,\n'sbc913d7dc0f33877': `to add`,\n's7722a91d3a512442': str`Last seen ${0}`,\n's22965bb9808befb0': `Interrupt`,\n's122d4de68bcfcdf4': `It's okay to restart`,\n's3eb2567092b4d7c1': `from the beginning`,\n's28f37776b3901438': `It's okay to interrupt`,\n's6838d20b10f7512a': `and start this one`,\n's8f02e3a18ffc083a': `Are not currently in a flow`,\n's638236250662c6b3': `Have sent a message in the last`,\n's4788ee206c4570c7': `Have not started this flow in the last 90 days`,\n'sea4f08110bb8f15d': `Remove`,\n };\n "]}
|
package/dist/locales/pt.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
// Do not modify this file by hand!
|
|
2
2
|
// Re-generate this file by running lit-localize
|
|
3
|
+
import { str } from '@lit/localize';
|
|
3
4
|
/* eslint-disable no-irregular-whitespace */
|
|
4
5
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
5
6
|
export const templates = {
|
|
6
7
|
's73b4d70c02f4b4e0': `No options`,
|
|
7
8
|
'scf1453991c986b25': `Tab to complete, enter to select`,
|
|
8
9
|
'sbc913d7dc0f33877': `to add`,
|
|
9
|
-
'
|
|
10
|
+
's7722a91d3a512442': str `Last seen ${0}`,
|
|
11
|
+
's22965bb9808befb0': `Interrupt`,
|
|
10
12
|
's122d4de68bcfcdf4': `It's okay to restart`,
|
|
11
13
|
's3eb2567092b4d7c1': `from the beginning`,
|
|
12
14
|
's28f37776b3901438': `It's okay to interrupt`,
|
package/dist/locales/pt.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pt.js","sourceRoot":"","sources":["../../../src/locales/pt.ts"],"names":[],"mappings":"AACI,mCAAmC;AACnC,gDAAgD;
|
|
1
|
+
{"version":3,"file":"pt.js","sourceRoot":"","sources":["../../../src/locales/pt.ts"],"names":[],"mappings":"AACI,mCAAmC;AACnC,gDAAgD;AAGhD,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,4CAA4C;AAC5C,uDAAuD;AAEvD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,mBAAmB,EAAE,YAAY;IACvC,mBAAmB,EAAE,kCAAkC;IACvD,mBAAmB,EAAE,QAAQ;IAC7B,mBAAmB,EAAE,GAAG,CAAA,aAAa,CAAC,EAAE;IACxC,mBAAmB,EAAE,WAAW;IAChC,mBAAmB,EAAE,sBAAsB;IAC3C,mBAAmB,EAAE,oBAAoB;IACzC,mBAAmB,EAAE,wBAAwB;IAC7C,mBAAmB,EAAE,oBAAoB;IACzC,mBAAmB,EAAE,6BAA6B;IAClD,mBAAmB,EAAE,iCAAiC;IACtD,mBAAmB,EAAE,gDAAgD;IACrE,mBAAmB,EAAE,QAAQ;CACxB,CAAC","sourcesContent":["\n // Do not modify this file by hand!\n // Re-generate this file by running lit-localize\n\n \n import {str} from '@lit/localize';\n\n /* eslint-disable no-irregular-whitespace */\n /* eslint-disable @typescript-eslint/no-explicit-any */\n\n export const templates = {\n 's73b4d70c02f4b4e0': `No options`,\n'scf1453991c986b25': `Tab to complete, enter to select`,\n'sbc913d7dc0f33877': `to add`,\n's7722a91d3a512442': str`Last seen ${0}`,\n's22965bb9808befb0': `Interrupt`,\n's122d4de68bcfcdf4': `It's okay to restart`,\n's3eb2567092b4d7c1': `from the beginning`,\n's28f37776b3901438': `It's okay to interrupt`,\n's6838d20b10f7512a': `and start this one`,\n's8f02e3a18ffc083a': `Are not currently in a flow`,\n's638236250662c6b3': `Have sent a message in the last`,\n's4788ee206c4570c7': `Have not started this flow in the last 90 days`,\n'sea4f08110bb8f15d': `Remove`,\n };\n "]}
|