@empathyco/x-components 6.0.0-alpha.40 → 6.0.0-alpha.42

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.
@@ -650,6 +650,7 @@ X-Components is a library usable everywhere not only for search experiences.
650
650
  | [trackResultClickedWire](./x-components.trackresultclickedwire.md) | Tracks the tagging of the result. |
651
651
  | [trackToolingAdd2CartWire](./x-components.tracktoolingadd2cartwire.md) | Performs a track of a display result being clicked. |
652
652
  | [trackToolingDisplayClickedWire](./x-components.tracktoolingdisplayclickedwire.md) | Performs a track of a display result being clicked. |
653
+ | [typing](./x-components.typing.md) | Typing directive. |
653
654
  | [updateHistoryQueriesWithSearchResponse](./x-components.updatehistoryquerieswithsearchresponse.md) | Updates the history queries with the relevant info included in a search response. |
654
655
  | [UrlHandler](./x-components.urlhandler.md) | This component manages the browser URL parameters to preserve them through reloads and browser history navigation. It allow to configure the default url parameter names using its attributes. This component doesn't render elements to the DOM. |
655
656
  | [urlXModule](./x-components.urlxmodule.md) | URL [XModule](./x-components.xmodule.md) implementation. This module is auto-registered as soon as you import any component from the <code>url</code> entry point. |
@@ -34,9 +34,14 @@ _default: import("vue").DefineComponent<{
34
34
  visibleRelatedPrompts: import("vue").ComputedRef<{
35
35
  index: number;
36
36
  relatedPromptNextQueries: import("@empathyco/x-types").RelatedPromptNextQuery[];
37
+ nextQueries: string[];
37
38
  suggestionText: string;
38
39
  type: string;
39
- toolingDisplayTagging: import("@empathyco/x-types").TaggingRequest;
40
+ toolingDisplayTagging?: import("@empathyco/x-types").TaggingRequest | undefined;
41
+ tagging?: {
42
+ toolingDisplayTagging?: import("@empathyco/x-types").TaggingRequest | undefined;
43
+ nextQueriesTagging?: import("@empathyco/x-types").RelatedPromptNextQuery[] | undefined;
44
+ } | undefined;
40
45
  modelName: "RelatedPrompt";
41
46
  }[]>;
42
47
  listItems: import("vue").Ref<HTMLElement[]>;
@@ -0,0 +1,13 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@empathyco/x-components](./x-components.md) &gt; [typing](./x-components.typing.md)
4
+
5
+ ## typing variable
6
+
7
+ Typing directive.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ typing: Directive<TypingHTMLElement, TypingOptions>
13
+ ```
@@ -17,8 +17,10 @@ export interface RelatedPrompt extends NamedModel<'RelatedPrompt'>
17
17
 
18
18
  | Property | Modifiers | Type | Description |
19
19
  | --- | --- | --- | --- |
20
+ | [nextQueries](./x-types.relatedprompt.nextqueries.md) | | string\[\] | The queries of the next queries related to the prompt. |
20
21
  | [relatedPromptNextQueries](./x-types.relatedprompt.relatedpromptnextqueries.md) | | [RelatedPromptNextQuery](./x-types.relatedpromptnextquery.md)<!-- -->\[\] | The next queries related to the prompt. |
21
22
  | [suggestionText](./x-types.relatedprompt.suggestiontext.md) | | string | The prompt. |
22
- | [toolingDisplayTagging](./x-types.relatedprompt.toolingdisplaytagging.md) | | [TaggingRequest](./x-types.taggingrequest.md) | The tooling display tagging of the prompt. |
23
+ | [tagging?](./x-types.relatedprompt.tagging.md) | | { toolingDisplayTagging?: [TaggingRequest](./x-types.taggingrequest.md)<!-- -->; nextQueriesTagging?: [RelatedPromptNextQuery](./x-types.relatedpromptnextquery.md)<!-- -->\[\]; } | _(Optional)_ Related prompt tagging. |
24
+ | [toolingDisplayTagging?](./x-types.relatedprompt.toolingdisplaytagging.md) | | [TaggingRequest](./x-types.taggingrequest.md) | _(Optional)_ The tooling display tagging of the prompt. |
23
25
  | [type](./x-types.relatedprompt.type.md) | | string | The type of the prompt. |
24
26
 
@@ -0,0 +1,13 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@empathyco/x-types](./x-types.md) &gt; [RelatedPrompt](./x-types.relatedprompt.md) &gt; [nextQueries](./x-types.relatedprompt.nextqueries.md)
4
+
5
+ ## RelatedPrompt.nextQueries property
6
+
7
+ The queries of the next queries related to the prompt.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ nextQueries: string[];
13
+ ```
@@ -0,0 +1,16 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@empathyco/x-types](./x-types.md) &gt; [RelatedPrompt](./x-types.relatedprompt.md) &gt; [tagging](./x-types.relatedprompt.tagging.md)
4
+
5
+ ## RelatedPrompt.tagging property
6
+
7
+ Related prompt tagging.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ tagging?: {
13
+ toolingDisplayTagging?: TaggingRequest;
14
+ nextQueriesTagging?: RelatedPromptNextQuery[];
15
+ };
16
+ ```
@@ -9,5 +9,5 @@ The tooling display tagging of the prompt.
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- toolingDisplayTagging: TaggingRequest;
12
+ toolingDisplayTagging?: TaggingRequest;
13
13
  ```
@@ -1,4 +1,9 @@
1
- const typingDirective = {
1
+ /**
2
+ * Typing directive.
3
+ *
4
+ * @public
5
+ */
6
+ const typing = {
2
7
  mounted(el, binding) {
3
8
  execute(el, binding.value);
4
9
  },
@@ -21,6 +26,7 @@ const typingDirective = {
21
26
  function execute(el, options) {
22
27
  const { text, speed = 1, targetAttr = '' } = options;
23
28
  if (!text) {
29
+ // eslint-disable-next-line no-console
24
30
  console.error('v-typing: "text" is required.');
25
31
  return;
26
32
  }
@@ -48,5 +54,5 @@ function execute(el, options) {
48
54
  type();
49
55
  }
50
56
 
51
- export { typingDirective as default };
57
+ export { typing };
52
58
  //# sourceMappingURL=typing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"typing.js","sources":["../../../src/directives/typing.ts"],"sourcesContent":["import type { Directive } from 'vue';\n\n/**\n * TypingOptions interface.\n *\n * @public\n */\nexport interface TypingOptions {\n /**\n * The text (plain or html) that will be typed into the target element.\n */\n text: string;\n /**\n * The typing speed in milliseconds per character.\n *\n */\n speed?: number;\n /**\n * The attribute of the HTML element where the typed text will be placed.\n * If not specified, the text will be set as content (innerHTML).\n *\n * @example 'placeholder'\n */\n targetAttr?: string;\n}\n\ninterface TypingHTMLElement extends HTMLElement {\n __timeoutId?: number;\n}\n\nconst typingDirective: Directive<TypingHTMLElement, TypingOptions> = {\n mounted(el, binding) {\n execute(el, binding.value);\n },\n\n updated(el, binding) {\n if (binding.value.text !== binding.oldValue?.text) {\n clearTimeout(el.__timeoutId);\n execute(el, binding.value);\n }\n },\n\n unmounted(el) {\n clearTimeout(el.__timeoutId);\n }\n};\n\n/**\n * Execute a typing animation in an HTML element.\n *\n * @param el - The HTML element where the typing animation will be displayed.\n * @param options - Options for the behavior of the animation.\n */\nfunction execute(el: TypingHTMLElement, options: TypingOptions) {\n const { text, speed = 1, targetAttr = '' } = options;\n\n if (!text) {\n console.error('v-typing: \"text\" is required.');\n return;\n }\n\n let index = 0;\n\n const updateContent = (value: string) => {\n if (targetAttr) {\n el.setAttribute(targetAttr, value);\n } else {\n el.innerHTML = value;\n }\n };\n\n const type = () => {\n if (index < text.length) {\n updateContent(text.slice(0, index + 1));\n index++;\n el.__timeoutId = setTimeout(type, speed) as unknown as number;\n } else {\n updateContent(text);\n clearTimeout(el.__timeoutId);\n el.__timeoutId = undefined;\n }\n };\n\n type();\n}\n\nexport default typingDirective;\n"],"names":[],"mappings":"AA8BA,MAAM,eAAe,GAAgD;IACnE,OAAO,CAAC,EAAE,EAAE,OAAO,EAAA;AACjB,QAAA,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;KAC5B;IAED,OAAO,CAAC,EAAE,EAAE,OAAO,EAAA;QACjB,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE;AACjD,YAAA,YAAY,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;AAC7B,YAAA,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;AAC5B,SAAA;KACF;AAED,IAAA,SAAS,CAAC,EAAE,EAAA;AACV,QAAA,YAAY,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;KAC9B;EACD;AAEF;;;;;AAKG;AACH,SAAS,OAAO,CAAC,EAAqB,EAAE,OAAsB,EAAA;AAC5D,IAAA,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAErD,IAAI,CAAC,IAAI,EAAE;AACT,QAAA,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC/C,OAAO;AACR,KAAA;IAED,IAAI,KAAK,GAAG,CAAC,CAAC;AAEd,IAAA,MAAM,aAAa,GAAG,CAAC,KAAa,KAAI;AACtC,QAAA,IAAI,UAAU,EAAE;AACd,YAAA,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AACpC,SAAA;AAAM,aAAA;AACL,YAAA,EAAE,CAAC,SAAS,GAAG,KAAK,CAAC;AACtB,SAAA;AACH,KAAC,CAAC;IAEF,MAAM,IAAI,GAAG,MAAK;AAChB,QAAA,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE;AACvB,YAAA,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;AACxC,YAAA,KAAK,EAAE,CAAC;YACR,EAAE,CAAC,WAAW,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAsB,CAAC;AAC/D,SAAA;AAAM,aAAA;YACL,aAAa,CAAC,IAAI,CAAC,CAAC;AACpB,YAAA,YAAY,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;AAC7B,YAAA,EAAE,CAAC,WAAW,GAAG,SAAS,CAAC;AAC5B,SAAA;AACH,KAAC,CAAC;AAEF,IAAA,IAAI,EAAE,CAAC;AACT;;;;"}
1
+ {"version":3,"file":"typing.js","sources":["../../../src/directives/typing.ts"],"sourcesContent":["import type { Directive } from 'vue';\n\n/**\n * TypingOptions interface.\n *\n * @public\n */\nexport interface TypingOptions {\n /**\n * The text (plain or html) that will be typed into the target element.\n */\n text: string;\n /**\n * The typing speed in milliseconds per character.\n *\n */\n speed?: number;\n /**\n * The attribute of the HTML element where the typed text will be placed.\n * If not specified, the text will be set as content (innerHTML).\n *\n * @example 'placeholder'\n */\n targetAttr?: string;\n}\n\ninterface TypingHTMLElement extends HTMLElement {\n __timeoutId?: number;\n}\n\n/**\n * Typing directive.\n *\n * @public\n */\nexport const typing: Directive<TypingHTMLElement, TypingOptions> = {\n mounted(el, binding) {\n execute(el, binding.value);\n },\n\n updated(el, binding) {\n if (binding.value.text !== binding.oldValue?.text) {\n clearTimeout(el.__timeoutId);\n execute(el, binding.value);\n }\n },\n\n unmounted(el) {\n clearTimeout(el.__timeoutId);\n }\n};\n\n/**\n * Execute a typing animation in an HTML element.\n *\n * @param el - The HTML element where the typing animation will be displayed.\n * @param options - Options for the behavior of the animation.\n */\nfunction execute(el: TypingHTMLElement, options: TypingOptions) {\n const { text, speed = 1, targetAttr = '' } = options;\n\n if (!text) {\n // eslint-disable-next-line no-console\n console.error('v-typing: \"text\" is required.');\n return;\n }\n\n let index = 0;\n\n const updateContent = (value: string) => {\n if (targetAttr) {\n el.setAttribute(targetAttr, value);\n } else {\n el.innerHTML = value;\n }\n };\n\n const type = () => {\n if (index < text.length) {\n updateContent(text.slice(0, index + 1));\n index++;\n el.__timeoutId = setTimeout(type, speed) as unknown as number;\n } else {\n updateContent(text);\n clearTimeout(el.__timeoutId);\n el.__timeoutId = undefined;\n }\n };\n\n type();\n}\n"],"names":[],"mappings":"AA8BA;;;;AAIG;AACU,MAAA,MAAM,GAAgD;IACjE,OAAO,CAAC,EAAE,EAAE,OAAO,EAAA;AACjB,QAAA,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;KAC5B;IAED,OAAO,CAAC,EAAE,EAAE,OAAO,EAAA;QACjB,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE;AACjD,YAAA,YAAY,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;AAC7B,YAAA,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;AAC5B,SAAA;KACF;AAED,IAAA,SAAS,CAAC,EAAE,EAAA;AACV,QAAA,YAAY,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;KAC9B;EACD;AAEF;;;;;AAKG;AACH,SAAS,OAAO,CAAC,EAAqB,EAAE,OAAsB,EAAA;AAC5D,IAAA,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAErD,IAAI,CAAC,IAAI,EAAE;;AAET,QAAA,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC/C,OAAO;AACR,KAAA;IAED,IAAI,KAAK,GAAG,CAAC,CAAC;AAEd,IAAA,MAAM,aAAa,GAAG,CAAC,KAAa,KAAI;AACtC,QAAA,IAAI,UAAU,EAAE;AACd,YAAA,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AACpC,SAAA;AAAM,aAAA;AACL,YAAA,EAAE,CAAC,SAAS,GAAG,KAAK,CAAC;AACtB,SAAA;AACH,KAAC,CAAC;IAEF,MAAM,IAAI,GAAG,MAAK;AAChB,QAAA,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE;AACvB,YAAA,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;AACxC,YAAA,KAAK,EAAE,CAAC;YACR,EAAE,CAAC,WAAW,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAsB,CAAC;AAC/D,SAAA;AAAM,aAAA;YACL,aAAa,CAAC,IAAI,CAAC,CAAC;AACpB,YAAA,YAAY,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;AAC7B,YAAA,EAAE,CAAC,WAAW,GAAG,SAAS,CAAC;AAC5B,SAAA;AACH,KAAC,CAAC;AAEF,IAAA,IAAI,EAAE,CAAC;AACT;;;;"}
package/js/index.js CHANGED
@@ -153,6 +153,7 @@ export { useState } from './composables/use-state.js';
153
153
  export { useStore } from 'vuex';
154
154
  export { useXBus } from './composables/use-x-bus.js';
155
155
  export { infiniteScroll } from './directives/infinite-scroll.js';
156
+ export { typing } from './directives/typing.js';
156
157
  export { setupDevtools } from './plugins/devtools/devtools.plugin.js';
157
158
  export { bus } from './plugins/x-bus.js';
158
159
  export { isSimpleSelector, registerStoreEmitters } from './plugins/x-emitters.js';
package/js/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"related-prompt.vue.js","sources":["../../../../../src/x-modules/related-prompts/components/related-prompt.vue"],"sourcesContent":["<template>\n <button class=\"x-related-prompt\">\n <span v-typing=\"{ text: relatedPrompt.suggestionText, speed: 50 }\" />\n <component\n :is=\"selected ? 'CrossTinyIcon' : 'PlusIcon'\"\n class=\"x-icon-lg x-related-prompt-icon\"\n />\n </button>\n</template>\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import { RelatedPrompt } from '@empathyco/x-types';\n import CrossTinyIcon from '../../../components/icons/cross-tiny.vue';\n import PlusIcon from '../../../components/icons/plus.vue';\n import vTyping from '../../../directives/typing';\n\n /**\n * This component shows a suggested related prompt.\n */\n export default defineComponent({\n name: 'RelatedPrompt',\n directives: {\n typing: vTyping\n },\n components: {\n CrossTinyIcon,\n PlusIcon\n },\n props: {\n relatedPrompt: {\n type: Object as PropType<RelatedPrompt>,\n required: true\n },\n selected: {\n type: Boolean,\n default: false\n }\n }\n });\n</script>\n<style lang=\"css\">\n .x-related-prompt {\n display: flex;\n align-items: center;\n justify-content: space-between;\n text-align: start;\n padding: 8px;\n height: 100%;\n width: 100%;\n }\n .x-related-prompt-icon {\n align-self: start;\n }\n</style>\n"],"names":["_resolveDirective","relatedPrompt","_withDirectives","_createElementVNode","selected"],"mappings":";;;;;;;AACE,EAAA,MAAA,iBAAA,GAAAA,gBAAA,CAMS,QANT,CAAA,CAAA;yCAC0BC,QAAc,EAAA,UAAA,EAAA;AAAA,IAAAC,cAAA,CAAAC,kBAAA;;;;;;;AACtC,MAAA,CAAA,iBAAA,EAAA,EAAA,IAAA,EAHJ,mCAIWC,KAAQ,EAAA,EAAA,EAAA,CAAA;AAAA,KAAA,CAAA;;;;;;;;"}
1
+ {"version":3,"file":"related-prompt.vue.js","sources":["../../../../../src/x-modules/related-prompts/components/related-prompt.vue"],"sourcesContent":["<template>\n <button class=\"x-related-prompt\">\n <span v-typing=\"{ text: relatedPrompt.suggestionText, speed: 50 }\" />\n <component\n :is=\"selected ? 'CrossTinyIcon' : 'PlusIcon'\"\n class=\"x-icon-lg x-related-prompt-icon\"\n />\n </button>\n</template>\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import { RelatedPrompt } from '@empathyco/x-types';\n import CrossTinyIcon from '../../../components/icons/cross-tiny.vue';\n import PlusIcon from '../../../components/icons/plus.vue';\n import { typing } from '../../../directives/typing';\n\n /**\n * This component shows a suggested related prompt.\n */\n export default defineComponent({\n name: 'RelatedPrompt',\n directives: {\n typing\n },\n components: {\n CrossTinyIcon,\n PlusIcon\n },\n props: {\n relatedPrompt: {\n type: Object as PropType<RelatedPrompt>,\n required: true\n },\n selected: {\n type: Boolean,\n default: false\n }\n }\n });\n</script>\n<style lang=\"css\">\n .x-related-prompt {\n display: flex;\n align-items: center;\n justify-content: space-between;\n text-align: start;\n padding: 8px;\n height: 100%;\n width: 100%;\n }\n .x-related-prompt-icon {\n align-self: start;\n }\n</style>\n"],"names":["_resolveDirective","relatedPrompt","_withDirectives","_createElementVNode","selected"],"mappings":";;;;;;;AACE,EAAA,MAAA,iBAAA,GAAAA,gBAAA,CAMS,QANT,CAAA,CAAA;yCAC0BC,QAAc,EAAA,UAAA,EAAA;AAAA,IAAAC,cAAA,CAAAC,kBAAA;;;;;;;AACtC,MAAA,CAAA,iBAAA,EAAA,EAAA,IAAA,EAHJ,mCAIWC,KAAQ,EAAA,EAAA,EAAA,CAAA;AAAA,KAAA,CAAA;;;;;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { defineComponent } from 'vue';
2
2
  import CrossTinyIcon from '../../../components/icons/cross-tiny.vue.js';
3
3
  import PlusIcon from '../../../components/icons/plus.vue.js';
4
- import typingDirective from '../../../directives/typing.js';
4
+ import { typing } from '../../../directives/typing.js';
5
5
 
6
6
  /**
7
7
  * This component shows a suggested related prompt.
@@ -9,7 +9,7 @@ import typingDirective from '../../../directives/typing.js';
9
9
  var _sfc_main = defineComponent({
10
10
  name: 'RelatedPrompt',
11
11
  directives: {
12
- typing: typingDirective
12
+ typing
13
13
  },
14
14
  components: {
15
15
  CrossTinyIcon,
@@ -1 +1 @@
1
- {"version":3,"file":"related-prompt.vue2.js","sources":["../../../../../src/x-modules/related-prompts/components/related-prompt.vue"],"sourcesContent":["<template>\n <button class=\"x-related-prompt\">\n <span v-typing=\"{ text: relatedPrompt.suggestionText, speed: 50 }\" />\n <component\n :is=\"selected ? 'CrossTinyIcon' : 'PlusIcon'\"\n class=\"x-icon-lg x-related-prompt-icon\"\n />\n </button>\n</template>\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import { RelatedPrompt } from '@empathyco/x-types';\n import CrossTinyIcon from '../../../components/icons/cross-tiny.vue';\n import PlusIcon from '../../../components/icons/plus.vue';\n import vTyping from '../../../directives/typing';\n\n /**\n * This component shows a suggested related prompt.\n */\n export default defineComponent({\n name: 'RelatedPrompt',\n directives: {\n typing: vTyping\n },\n components: {\n CrossTinyIcon,\n PlusIcon\n },\n props: {\n relatedPrompt: {\n type: Object as PropType<RelatedPrompt>,\n required: true\n },\n selected: {\n type: Boolean,\n default: false\n }\n }\n });\n</script>\n<style lang=\"css\">\n .x-related-prompt {\n display: flex;\n align-items: center;\n justify-content: space-between;\n text-align: start;\n padding: 8px;\n height: 100%;\n width: 100%;\n }\n .x-related-prompt-icon {\n align-self: start;\n }\n</style>\n"],"names":["vTyping"],"mappings":";;;;;AAgBE;;AAEE;AACF,gBAAe,eAAe,CAAC;AAC7B,IAAA,IAAI,EAAE,eAAe;AACrB,IAAA,UAAU,EAAE;AACV,QAAA,MAAM,EAAEA,eAAM;AACf,KAAA;AACD,IAAA,UAAU,EAAE;QACV,aAAa;QACb,QAAO;AACR,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,aAAa,EAAE;AACb,YAAA,IAAI,EAAE,MAAiC;AACvC,YAAA,QAAQ,EAAE,IAAG;AACd,SAAA;AACD,QAAA,QAAQ,EAAE;AACR,YAAA,IAAI,EAAE,OAAO;AACb,YAAA,OAAO,EAAE,KAAI;AACf,SAAA;AACF,KAAA;AACD,CAAA,CAAC;;;;"}
1
+ {"version":3,"file":"related-prompt.vue2.js","sources":["../../../../../src/x-modules/related-prompts/components/related-prompt.vue"],"sourcesContent":["<template>\n <button class=\"x-related-prompt\">\n <span v-typing=\"{ text: relatedPrompt.suggestionText, speed: 50 }\" />\n <component\n :is=\"selected ? 'CrossTinyIcon' : 'PlusIcon'\"\n class=\"x-icon-lg x-related-prompt-icon\"\n />\n </button>\n</template>\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import { RelatedPrompt } from '@empathyco/x-types';\n import CrossTinyIcon from '../../../components/icons/cross-tiny.vue';\n import PlusIcon from '../../../components/icons/plus.vue';\n import { typing } from '../../../directives/typing';\n\n /**\n * This component shows a suggested related prompt.\n */\n export default defineComponent({\n name: 'RelatedPrompt',\n directives: {\n typing\n },\n components: {\n CrossTinyIcon,\n PlusIcon\n },\n props: {\n relatedPrompt: {\n type: Object as PropType<RelatedPrompt>,\n required: true\n },\n selected: {\n type: Boolean,\n default: false\n }\n }\n });\n</script>\n<style lang=\"css\">\n .x-related-prompt {\n display: flex;\n align-items: center;\n justify-content: space-between;\n text-align: start;\n padding: 8px;\n height: 100%;\n width: 100%;\n }\n .x-related-prompt-icon {\n align-self: start;\n }\n</style>\n"],"names":[],"mappings":";;;;;AAgBE;;AAEE;AACF,gBAAe,eAAe,CAAC;AAC7B,IAAA,IAAI,EAAE,eAAe;AACrB,IAAA,UAAU,EAAE;QACV,MAAK;AACN,KAAA;AACD,IAAA,UAAU,EAAE;QACV,aAAa;QACb,QAAO;AACR,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,aAAa,EAAE;AACb,YAAA,IAAI,EAAE,MAAiC;AACvC,YAAA,QAAQ,EAAE,IAAG;AACd,SAAA;AACD,QAAA,QAAQ,EAAE;AACR,YAAA,IAAI,EAAE,OAAO;AACb,YAAA,OAAO,EAAE,KAAI;AACf,SAAA;AACF,KAAA;AACD,CAAA,CAAC;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@empathyco/x-components",
3
- "version": "6.0.0-alpha.40",
3
+ "version": "6.0.0-alpha.42",
4
4
  "description": "Empathy X Components",
5
5
  "author": "Empathy Systems Corporation S.L.",
6
6
  "license": "Apache-2.0",
@@ -70,12 +70,12 @@
70
70
  },
71
71
  "dependencies": {
72
72
  "@empathyco/x-adapter": "^8.1.0-alpha.1",
73
- "@empathyco/x-adapter-platform": "^1.1.0-alpha.11",
73
+ "@empathyco/x-adapter-platform": "^1.1.0-alpha.12",
74
74
  "@empathyco/x-bus": "^1.0.3-alpha.2",
75
75
  "@empathyco/x-deep-merge": "^2.0.3-alpha.2",
76
76
  "@empathyco/x-logger": "^1.2.0-alpha.11",
77
77
  "@empathyco/x-storage-service": "^2.0.3-alpha.1",
78
- "@empathyco/x-types": "^10.1.0-alpha.8",
78
+ "@empathyco/x-types": "^10.1.0-alpha.9",
79
79
  "@empathyco/x-utils": "^1.0.3-alpha.2",
80
80
  "@vue/devtools-api": "~6.5.0",
81
81
  "@vueuse/core": "~10.7.1",
@@ -138,5 +138,5 @@
138
138
  "access": "public",
139
139
  "directory": "dist"
140
140
  },
141
- "gitHead": "5ee84f6196ab56a35974343899b2616d7b8a9a86"
141
+ "gitHead": "2658b6fbe2ccc7fb2a18c9ee4a0e1b3e092676ec"
142
142
  }
@@ -53571,7 +53571,7 @@
53571
53571
  },
53572
53572
  {
53573
53573
  "kind": "Content",
53574
- "text": "[];\n suggestionText: string;\n type: string;\n toolingDisplayTagging: import(\"@empathyco/x-types\")."
53574
+ "text": "[];\n nextQueries: string[];\n suggestionText: string;\n type: string;\n toolingDisplayTagging?: import(\"@empathyco/x-types\")."
53575
53575
  },
53576
53576
  {
53577
53577
  "kind": "Reference",
@@ -53580,7 +53580,25 @@
53580
53580
  },
53581
53581
  {
53582
53582
  "kind": "Content",
53583
- "text": ";\n modelName: \"RelatedPrompt\";\n }[]>;\n listItems: import(\"vue\")."
53583
+ "text": " | undefined;\n tagging?: {\n toolingDisplayTagging?: import(\"@empathyco/x-types\")."
53584
+ },
53585
+ {
53586
+ "kind": "Reference",
53587
+ "text": "TaggingRequest",
53588
+ "canonicalReference": "@empathyco/x-components!TaggingRequest:interface"
53589
+ },
53590
+ {
53591
+ "kind": "Content",
53592
+ "text": " | undefined;\n nextQueriesTagging?: import(\"@empathyco/x-types\")."
53593
+ },
53594
+ {
53595
+ "kind": "Reference",
53596
+ "text": "RelatedPromptNextQuery",
53597
+ "canonicalReference": "@empathyco/x-components!RelatedPromptNextQuery:interface"
53598
+ },
53599
+ {
53600
+ "kind": "Content",
53601
+ "text": "[] | undefined;\n } | undefined;\n modelName: \"RelatedPrompt\";\n }[]>;\n listItems: import(\"vue\")."
53584
53602
  },
53585
53603
  {
53586
53604
  "kind": "Reference",
@@ -53859,7 +53877,7 @@
53859
53877
  "name": "RelatedPromptsTagList",
53860
53878
  "variableTypeTokenRange": {
53861
53879
  "startIndex": 1,
53862
- "endIndex": 90
53880
+ "endIndex": 94
53863
53881
  }
53864
53882
  },
53865
53883
  {
@@ -76674,6 +76692,52 @@
76674
76692
  "endIndex": 5
76675
76693
  }
76676
76694
  },
76695
+ {
76696
+ "kind": "Variable",
76697
+ "canonicalReference": "@empathyco/x-components!typing:var",
76698
+ "docComment": "/**\n * Typing directive.\n *\n * @public\n */\n",
76699
+ "excerptTokens": [
76700
+ {
76701
+ "kind": "Content",
76702
+ "text": "typing: "
76703
+ },
76704
+ {
76705
+ "kind": "Reference",
76706
+ "text": "Directive",
76707
+ "canonicalReference": "@vue/runtime-core!Directive:type"
76708
+ },
76709
+ {
76710
+ "kind": "Content",
76711
+ "text": "<"
76712
+ },
76713
+ {
76714
+ "kind": "Reference",
76715
+ "text": "TypingHTMLElement",
76716
+ "canonicalReference": "@empathyco/x-components!~TypingHTMLElement:interface"
76717
+ },
76718
+ {
76719
+ "kind": "Content",
76720
+ "text": ", "
76721
+ },
76722
+ {
76723
+ "kind": "Reference",
76724
+ "text": "TypingOptions",
76725
+ "canonicalReference": "@empathyco/x-components!TypingOptions:interface"
76726
+ },
76727
+ {
76728
+ "kind": "Content",
76729
+ "text": ">"
76730
+ }
76731
+ ],
76732
+ "fileUrlPath": "src/directives/typing.ts",
76733
+ "isReadonly": true,
76734
+ "releaseTag": "Public",
76735
+ "name": "typing",
76736
+ "variableTypeTokenRange": {
76737
+ "startIndex": 1,
76738
+ "endIndex": 7
76739
+ }
76740
+ },
76677
76741
  {
76678
76742
  "kind": "Interface",
76679
76743
  "canonicalReference": "@empathyco/x-components!TypingOptions:interface",
@@ -5889,9 +5889,14 @@ selectedPromptIndex: ComputedRef<any>;
5889
5889
  visibleRelatedPrompts: ComputedRef< {
5890
5890
  index: number;
5891
5891
  relatedPromptNextQueries: RelatedPromptNextQuery[];
5892
+ nextQueries: string[];
5892
5893
  suggestionText: string;
5893
5894
  type: string;
5894
- toolingDisplayTagging: TaggingRequest;
5895
+ toolingDisplayTagging?: TaggingRequest | undefined;
5896
+ tagging?: {
5897
+ toolingDisplayTagging?: TaggingRequest | undefined;
5898
+ nextQueriesTagging?: RelatedPromptNextQuery[] | undefined;
5899
+ } | undefined;
5895
5900
  modelName: "RelatedPrompt";
5896
5901
  }[]>;
5897
5902
  listItems: Ref<HTMLElement[]>;
@@ -8392,6 +8397,11 @@ export { TrendingIcon }
8392
8397
 
8393
8398
  export { TrendingTinyIcon }
8394
8399
 
8400
+ // Warning: (ae-forgotten-export) The symbol "TypingHTMLElement" needs to be exported by the entry point index.d.ts
8401
+ //
8402
+ // @public
8403
+ export const typing: Directive<TypingHTMLElement, TypingOptions>;
8404
+
8395
8405
  // @public
8396
8406
  export interface TypingOptions {
8397
8407
  speed?: number;
@@ -4608,6 +4608,33 @@
4608
4608
  "name": "RelatedPrompt",
4609
4609
  "preserveMemberOrder": false,
4610
4610
  "members": [
4611
+ {
4612
+ "kind": "PropertySignature",
4613
+ "canonicalReference": "@empathyco/x-types!RelatedPrompt#nextQueries:member",
4614
+ "docComment": "/**\n * The queries of the next queries related to the prompt.\n */\n",
4615
+ "excerptTokens": [
4616
+ {
4617
+ "kind": "Content",
4618
+ "text": "nextQueries: "
4619
+ },
4620
+ {
4621
+ "kind": "Content",
4622
+ "text": "string[]"
4623
+ },
4624
+ {
4625
+ "kind": "Content",
4626
+ "text": ";"
4627
+ }
4628
+ ],
4629
+ "isReadonly": false,
4630
+ "isOptional": false,
4631
+ "releaseTag": "Public",
4632
+ "name": "nextQueries",
4633
+ "propertyTypeTokenRange": {
4634
+ "startIndex": 1,
4635
+ "endIndex": 2
4636
+ }
4637
+ },
4611
4638
  {
4612
4639
  "kind": "PropertySignature",
4613
4640
  "canonicalReference": "@empathyco/x-types!RelatedPrompt#relatedPromptNextQueries:member",
@@ -4667,6 +4694,51 @@
4667
4694
  "endIndex": 2
4668
4695
  }
4669
4696
  },
4697
+ {
4698
+ "kind": "PropertySignature",
4699
+ "canonicalReference": "@empathyco/x-types!RelatedPrompt#tagging:member",
4700
+ "docComment": "/**\n * Related prompt tagging.\n */\n",
4701
+ "excerptTokens": [
4702
+ {
4703
+ "kind": "Content",
4704
+ "text": "tagging?: "
4705
+ },
4706
+ {
4707
+ "kind": "Content",
4708
+ "text": "{\n toolingDisplayTagging?: "
4709
+ },
4710
+ {
4711
+ "kind": "Reference",
4712
+ "text": "TaggingRequest",
4713
+ "canonicalReference": "@empathyco/x-types!TaggingRequest:interface"
4714
+ },
4715
+ {
4716
+ "kind": "Content",
4717
+ "text": ";\n nextQueriesTagging?: "
4718
+ },
4719
+ {
4720
+ "kind": "Reference",
4721
+ "text": "RelatedPromptNextQuery",
4722
+ "canonicalReference": "@empathyco/x-types!RelatedPromptNextQuery:interface"
4723
+ },
4724
+ {
4725
+ "kind": "Content",
4726
+ "text": "[];\n }"
4727
+ },
4728
+ {
4729
+ "kind": "Content",
4730
+ "text": ";"
4731
+ }
4732
+ ],
4733
+ "isReadonly": false,
4734
+ "isOptional": true,
4735
+ "releaseTag": "Public",
4736
+ "name": "tagging",
4737
+ "propertyTypeTokenRange": {
4738
+ "startIndex": 1,
4739
+ "endIndex": 6
4740
+ }
4741
+ },
4670
4742
  {
4671
4743
  "kind": "PropertySignature",
4672
4744
  "canonicalReference": "@empathyco/x-types!RelatedPrompt#toolingDisplayTagging:member",
@@ -4674,7 +4746,7 @@
4674
4746
  "excerptTokens": [
4675
4747
  {
4676
4748
  "kind": "Content",
4677
- "text": "toolingDisplayTagging: "
4749
+ "text": "toolingDisplayTagging?: "
4678
4750
  },
4679
4751
  {
4680
4752
  "kind": "Reference",
@@ -4687,7 +4759,7 @@
4687
4759
  }
4688
4760
  ],
4689
4761
  "isReadonly": false,
4690
- "isOptional": false,
4762
+ "isOptional": true,
4691
4763
  "releaseTag": "Public",
4692
4764
  "name": "toolingDisplayTagging",
4693
4765
  "propertyTypeTokenRange": {
@@ -25,6 +25,11 @@ export interface TypingOptions {
25
25
  interface TypingHTMLElement extends HTMLElement {
26
26
  __timeoutId?: number;
27
27
  }
28
- declare const typingDirective: Directive<TypingHTMLElement, TypingOptions>;
29
- export default typingDirective;
28
+ /**
29
+ * Typing directive.
30
+ *
31
+ * @public
32
+ */
33
+ export declare const typing: Directive<TypingHTMLElement, TypingOptions>;
34
+ export {};
30
35
  //# sourceMappingURL=typing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typing.d.ts","sourceRoot":"","sources":["../../../src/directives/typing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAErC;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,iBAAkB,SAAQ,WAAW;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,QAAA,MAAM,eAAe,EAAE,SAAS,CAAC,iBAAiB,EAAE,aAAa,CAehE,CAAC;AAyCF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"typing.d.ts","sourceRoot":"","sources":["../../../src/directives/typing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAErC;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,iBAAkB,SAAQ,WAAW;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,eAAO,MAAM,MAAM,EAAE,SAAS,CAAC,iBAAiB,EAAE,aAAa,CAe9D,CAAC"}
@@ -61,9 +61,14 @@ declare const _default: import("vue").DefineComponent<{
61
61
  visibleRelatedPrompts: import("vue").ComputedRef<{
62
62
  index: number;
63
63
  relatedPromptNextQueries: import("@empathyco/x-types").RelatedPromptNextQuery[];
64
+ nextQueries: string[];
64
65
  suggestionText: string;
65
66
  type: string;
66
- toolingDisplayTagging: import("@empathyco/x-types").TaggingRequest;
67
+ toolingDisplayTagging?: import("@empathyco/x-types").TaggingRequest | undefined;
68
+ tagging?: {
69
+ toolingDisplayTagging?: import("@empathyco/x-types").TaggingRequest | undefined;
70
+ nextQueriesTagging?: import("@empathyco/x-types").RelatedPromptNextQuery[] | undefined;
71
+ } | undefined;
67
72
  modelName: "RelatedPrompt";
68
73
  }[]>;
69
74
  listItems: import("vue").Ref<HTMLElement[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"related-prompts-tag-list.vue?vue&type=script&lang.d.ts","sourceRoot":"","sources":["../../../../../src/x-modules/related-prompts/components/related-prompts-tag-list.vue?vue&type=script&lang.ts"],"names":[],"mappings":"AAEE,OAAO,EAA6B,QAAQ,EAAc,MAAM,KAAK,CAAC;AAOtE;;;;;;;GAOG;;IAMC;;;;OAIG;;IAEH;;;;OAIG;;;;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;;IAEH;;;;OAIG;;;;;;wBAwLwB,MAAM,KAAG,OAAO;8BA5GV,MAAM,KAAG,IAAI;wBA8DnB,OAAO;kBAeb,OAAO,QAAQ,MAAM,IAAI;kBAkBzB,OAAO,QAAQ,MAAM,IAAI;;;;;;;;;;;;;;;;;;;IA9M9C;;;;OAIG;;IAEH;;;;OAIG;;;;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;;IAEH;;;;OAIG;;;;;;;;;AAxCP,wBAmPG"}
1
+ {"version":3,"file":"related-prompts-tag-list.vue?vue&type=script&lang.d.ts","sourceRoot":"","sources":["../../../../../src/x-modules/related-prompts/components/related-prompts-tag-list.vue?vue&type=script&lang.ts"],"names":[],"mappings":"AAEE,OAAO,EAA6B,QAAQ,EAAc,MAAM,KAAK,CAAC;AAOtE;;;;;;;GAOG;;IAMC;;;;OAIG;;IAEH;;;;OAIG;;;;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;;IAEH;;;;OAIG;;;;;;wBAwLwB,MAAM,KAAG,OAAO;8BA5GV,MAAM,KAAG,IAAI;wBA8DnB,OAAO;kBAeb,OAAO,QAAQ,MAAM,IAAI;kBAkBzB,OAAO,QAAQ,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;IA9M9C;;;;OAIG;;IAEH;;;;OAIG;;;;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;;IAEH;;;;OAIG;;;;;;;;;AAxCP,wBAmPG"}