@bikdotai/bik-component-library 0.0.6-chips-beta → 0.0.7-analytics-chips-beta

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.
Files changed (187) hide show
  1. package/dist/cjs/assets/icons/desktop_custom.svg.js +1 -0
  2. package/dist/cjs/assets/icons/document_pdf.svg.js +1 -0
  3. package/dist/cjs/assets/icons/edit.svg.js +1 -0
  4. package/dist/cjs/assets/icons/info.svg.js +1 -0
  5. package/dist/cjs/assets/icons/mobile_custom.svg.js +1 -0
  6. package/dist/cjs/assets/icons/refresh.svg.js +1 -0
  7. package/dist/cjs/assets/icons/video_camcorder.svg.js +1 -0
  8. package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsChip.d.ts +4 -0
  9. package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsChip.js +1 -1
  10. package/dist/cjs/components/analytics-chips-and-dropdowns/CommonStyles.js +1 -1
  11. package/dist/cjs/components/avatar/Avatar.d.ts +1 -1
  12. package/dist/cjs/components/avatar/Avatar.js +1 -1
  13. package/dist/cjs/components/avatar/Avatar.styled.js +5 -5
  14. package/dist/cjs/components/curtain/Curtain.d.ts +1 -1
  15. package/dist/cjs/components/curtain/Curtain.js +1 -1
  16. package/dist/cjs/components/curtain/Curtain.styled.js +12 -12
  17. package/dist/cjs/components/datePicker/DatePicker.styled.d.ts +6 -2
  18. package/dist/cjs/components/datePicker/DatePicker.styled.js +1 -156
  19. package/dist/cjs/components/dropdown/Dropdown.js +1 -1
  20. package/dist/cjs/components/helpers/FileUploaderHelper.d.ts +12 -0
  21. package/dist/cjs/components/helpers/FileUploaderHelper.js +1 -0
  22. package/dist/cjs/components/input/Input.d.ts +4 -2
  23. package/dist/cjs/components/input/Input.js +1 -1
  24. package/dist/cjs/components/stepper/WorkingStepper.d.ts +0 -1
  25. package/dist/cjs/components/template-context-mapper/Badge/index.d.ts +6 -0
  26. package/dist/cjs/components/template-context-mapper/Badge/index.js +10 -0
  27. package/dist/cjs/components/template-context-mapper/TemplateContextMapper.d.ts +21 -0
  28. package/dist/cjs/components/template-context-mapper/TemplateContextMapper.js +1 -0
  29. package/dist/cjs/components/template-context-mapper/context/templateModalContext.d.ts +37 -0
  30. package/dist/cjs/components/template-context-mapper/context/templateModalContext.js +1 -0
  31. package/dist/cjs/components/template-context-mapper/index.d.ts +3 -0
  32. package/dist/cjs/components/template-context-mapper/modalElements/Body.d.ts +9 -0
  33. package/dist/cjs/components/template-context-mapper/modalElements/Body.js +18 -0
  34. package/dist/cjs/components/template-context-mapper/modalElements/DesktopPreview.d.ts +7 -0
  35. package/dist/cjs/components/template-context-mapper/modalElements/DesktopPreview.js +20 -0
  36. package/dist/cjs/components/template-context-mapper/modalElements/EditMediaV2.d.ts +12 -0
  37. package/dist/cjs/components/template-context-mapper/modalElements/EditMediaV2.js +8 -0
  38. package/dist/cjs/components/template-context-mapper/modalElements/EditMediaV2.style.d.ts +6 -0
  39. package/dist/cjs/components/template-context-mapper/modalElements/EditMediaV2.style.js +31 -0
  40. package/dist/cjs/components/template-context-mapper/modalElements/EditWhatsAppTemplateMediaV2.d.ts +9 -0
  41. package/dist/cjs/components/template-context-mapper/modalElements/EditWhatsAppTemplateMediaV2.js +1 -0
  42. package/dist/cjs/components/template-context-mapper/modalElements/EditWhatsAppTemplateV2.d.ts +11 -0
  43. package/dist/cjs/components/template-context-mapper/modalElements/EditWhatsAppTemplateV2.js +1 -0
  44. package/dist/cjs/components/template-context-mapper/modalElements/Footer.d.ts +6 -0
  45. package/dist/cjs/components/template-context-mapper/modalElements/Footer.js +13 -0
  46. package/dist/cjs/components/template-context-mapper/modalElements/Header.d.ts +6 -0
  47. package/dist/cjs/components/template-context-mapper/modalElements/Header.js +23 -0
  48. package/dist/cjs/components/template-context-mapper/modalElements/MobilePreview.d.ts +11 -0
  49. package/dist/cjs/components/template-context-mapper/modalElements/MobilePreview.js +20 -0
  50. package/dist/cjs/components/template-context-mapper/modalElements/TemplateSelectModalContent.d.ts +12 -0
  51. package/dist/cjs/components/template-context-mapper/modalElements/TemplateSelectModalContent.js +1 -0
  52. package/dist/cjs/components/template-context-mapper/modalElements/VariableConnector.d.ts +15 -0
  53. package/dist/cjs/components/template-context-mapper/modalElements/VariableConnector.js +7 -0
  54. package/dist/cjs/components/template-context-mapper/modalElements/VariableConnectorWhatsApp.d.ts +11 -0
  55. package/dist/cjs/components/template-context-mapper/modalElements/VariableConnectorWhatsApp.js +1 -0
  56. package/dist/cjs/components/template-context-mapper/modalElements/VariableConnectorsPanel.d.ts +7 -0
  57. package/dist/cjs/components/template-context-mapper/modalElements/VariableConnectorsPanel.js +6 -0
  58. package/dist/cjs/components/template-context-mapper/modalElements/VariableEditorHeader.d.ts +9 -0
  59. package/dist/cjs/components/template-context-mapper/modalElements/VariableEditorHeader.js +9 -0
  60. package/dist/cjs/components/template-context-mapper/modalElements/WhatsAppTemplateCardButtonV2.d.ts +16 -0
  61. package/dist/cjs/components/template-context-mapper/modalElements/WhatsAppTemplateCardButtonV2.js +1 -0
  62. package/dist/cjs/components/template-context-mapper/utils/convertPlaceholdersToBikDropdown.d.ts +6 -0
  63. package/dist/cjs/components/template-context-mapper/utils/convertPlaceholdersToBikDropdown.js +1 -0
  64. package/dist/cjs/components/template-context-mapper/utils/getDataFromTemplateComponent.d.ts +21 -0
  65. package/dist/cjs/components/template-context-mapper/utils/getDataFromTemplateComponent.js +1 -0
  66. package/dist/cjs/components/template-context-mapper/utils/getVariableNameEmail.d.ts +2 -0
  67. package/dist/cjs/components/template-context-mapper/utils/getVariableNameEmail.js +1 -0
  68. package/dist/cjs/components/template-context-mapper/utils/highlightFor.d.ts +3 -0
  69. package/dist/cjs/components/template-context-mapper/utils/highlightFor.js +1 -0
  70. package/dist/cjs/components/template-context-mapper/utils/validateIsUrl.d.ts +1 -0
  71. package/dist/cjs/components/template-context-mapper/utils/validateIsUrl.js +1 -0
  72. package/dist/cjs/components/template-preview/EmailTemplateHTMLPreview.d.ts +5 -0
  73. package/dist/cjs/components/template-preview/EmailTemplateThumbnailPreview.js +1 -1
  74. package/dist/cjs/components/template-preview/TemplatePreview.d.ts +4 -3
  75. package/dist/cjs/components/template-preview/TemplatePreview.js +1 -1
  76. package/dist/cjs/components/template-preview/constants/TemplateConstants.d.ts +9 -0
  77. package/dist/cjs/components/template-preview/constants/regexPatterns.d.ts +1 -1
  78. package/dist/cjs/components/template-preview/constants/regexPatterns.js +1 -1
  79. package/dist/cjs/components/template-preview/models/Channels.d.ts +2 -1
  80. package/dist/cjs/components/template-preview/models/Channels.js +1 -1
  81. package/dist/cjs/components/template-preview/models/TemplateMeta.d.ts +35 -0
  82. package/dist/cjs/components/template-preview/models/TemplateMeta.js +1 -1
  83. package/dist/cjs/components/template-preview/models/WhatsAppTemplate.d.ts +45 -2
  84. package/dist/cjs/components/template-preview/models/WhatsAppTemplate.js +1 -0
  85. package/dist/cjs/components/thumbnail/Thumbnail.d.ts +1 -1
  86. package/dist/cjs/components/thumbnail/Thumbnail.js +1 -1
  87. package/dist/cjs/components/thumbnail/Thumbnail.styled.js +5 -5
  88. package/dist/cjs/index.d.ts +3 -0
  89. package/dist/cjs/index.js +1 -1
  90. package/dist/cjs/utils/StringUtils.d.ts +2 -0
  91. package/dist/cjs/utils/StringUtils.js +1 -1
  92. package/dist/cjs/utils/bytesToMB.d.ts +1 -0
  93. package/dist/cjs/utils/bytesToMB.js +1 -0
  94. package/dist/esm/assets/icons/desktop_custom.svg.js +1 -0
  95. package/dist/esm/assets/icons/document_pdf.svg.js +1 -0
  96. package/dist/esm/assets/icons/edit.svg.js +1 -0
  97. package/dist/esm/assets/icons/info.svg.js +1 -0
  98. package/dist/esm/assets/icons/mobile_custom.svg.js +1 -0
  99. package/dist/esm/assets/icons/refresh.svg.js +1 -0
  100. package/dist/esm/assets/icons/video_camcorder.svg.js +1 -0
  101. package/dist/esm/components/analytics-chips-and-dropdowns/AnalyticsChip.d.ts +4 -0
  102. package/dist/esm/components/analytics-chips-and-dropdowns/AnalyticsChip.js +1 -1
  103. package/dist/esm/components/analytics-chips-and-dropdowns/CommonStyles.js +1 -1
  104. package/dist/esm/components/avatar/Avatar.d.ts +1 -1
  105. package/dist/esm/components/avatar/Avatar.js +1 -1
  106. package/dist/esm/components/avatar/Avatar.styled.js +5 -5
  107. package/dist/esm/components/curtain/Curtain.d.ts +1 -1
  108. package/dist/esm/components/curtain/Curtain.js +1 -1
  109. package/dist/esm/components/curtain/Curtain.styled.js +12 -12
  110. package/dist/esm/components/datePicker/DatePicker.styled.d.ts +6 -2
  111. package/dist/esm/components/datePicker/DatePicker.styled.js +1 -156
  112. package/dist/esm/components/dropdown/Dropdown.js +1 -1
  113. package/dist/esm/components/helpers/FileUploaderHelper.d.ts +12 -0
  114. package/dist/esm/components/helpers/FileUploaderHelper.js +1 -0
  115. package/dist/esm/components/input/Input.d.ts +4 -2
  116. package/dist/esm/components/input/Input.js +1 -1
  117. package/dist/esm/components/stepper/WorkingStepper.d.ts +0 -1
  118. package/dist/esm/components/template-context-mapper/Badge/index.d.ts +6 -0
  119. package/dist/esm/components/template-context-mapper/Badge/index.js +10 -0
  120. package/dist/esm/components/template-context-mapper/TemplateContextMapper.d.ts +21 -0
  121. package/dist/esm/components/template-context-mapper/TemplateContextMapper.js +1 -0
  122. package/dist/esm/components/template-context-mapper/context/templateModalContext.d.ts +37 -0
  123. package/dist/esm/components/template-context-mapper/context/templateModalContext.js +1 -0
  124. package/dist/esm/components/template-context-mapper/index.d.ts +3 -0
  125. package/dist/esm/components/template-context-mapper/modalElements/Body.d.ts +9 -0
  126. package/dist/esm/components/template-context-mapper/modalElements/Body.js +18 -0
  127. package/dist/esm/components/template-context-mapper/modalElements/DesktopPreview.d.ts +7 -0
  128. package/dist/esm/components/template-context-mapper/modalElements/DesktopPreview.js +20 -0
  129. package/dist/esm/components/template-context-mapper/modalElements/EditMediaV2.d.ts +12 -0
  130. package/dist/esm/components/template-context-mapper/modalElements/EditMediaV2.js +8 -0
  131. package/dist/esm/components/template-context-mapper/modalElements/EditMediaV2.style.d.ts +6 -0
  132. package/dist/esm/components/template-context-mapper/modalElements/EditMediaV2.style.js +31 -0
  133. package/dist/esm/components/template-context-mapper/modalElements/EditWhatsAppTemplateMediaV2.d.ts +9 -0
  134. package/dist/esm/components/template-context-mapper/modalElements/EditWhatsAppTemplateMediaV2.js +1 -0
  135. package/dist/esm/components/template-context-mapper/modalElements/EditWhatsAppTemplateV2.d.ts +11 -0
  136. package/dist/esm/components/template-context-mapper/modalElements/EditWhatsAppTemplateV2.js +1 -0
  137. package/dist/esm/components/template-context-mapper/modalElements/Footer.d.ts +6 -0
  138. package/dist/esm/components/template-context-mapper/modalElements/Footer.js +13 -0
  139. package/dist/esm/components/template-context-mapper/modalElements/Header.d.ts +6 -0
  140. package/dist/esm/components/template-context-mapper/modalElements/Header.js +23 -0
  141. package/dist/esm/components/template-context-mapper/modalElements/MobilePreview.d.ts +11 -0
  142. package/dist/esm/components/template-context-mapper/modalElements/MobilePreview.js +20 -0
  143. package/dist/esm/components/template-context-mapper/modalElements/TemplateSelectModalContent.d.ts +12 -0
  144. package/dist/esm/components/template-context-mapper/modalElements/TemplateSelectModalContent.js +1 -0
  145. package/dist/esm/components/template-context-mapper/modalElements/VariableConnector.d.ts +15 -0
  146. package/dist/esm/components/template-context-mapper/modalElements/VariableConnector.js +7 -0
  147. package/dist/esm/components/template-context-mapper/modalElements/VariableConnectorWhatsApp.d.ts +11 -0
  148. package/dist/esm/components/template-context-mapper/modalElements/VariableConnectorWhatsApp.js +1 -0
  149. package/dist/esm/components/template-context-mapper/modalElements/VariableConnectorsPanel.d.ts +7 -0
  150. package/dist/esm/components/template-context-mapper/modalElements/VariableConnectorsPanel.js +6 -0
  151. package/dist/esm/components/template-context-mapper/modalElements/VariableEditorHeader.d.ts +9 -0
  152. package/dist/esm/components/template-context-mapper/modalElements/VariableEditorHeader.js +9 -0
  153. package/dist/esm/components/template-context-mapper/modalElements/WhatsAppTemplateCardButtonV2.d.ts +16 -0
  154. package/dist/esm/components/template-context-mapper/modalElements/WhatsAppTemplateCardButtonV2.js +1 -0
  155. package/dist/esm/components/template-context-mapper/utils/convertPlaceholdersToBikDropdown.d.ts +6 -0
  156. package/dist/esm/components/template-context-mapper/utils/convertPlaceholdersToBikDropdown.js +1 -0
  157. package/dist/esm/components/template-context-mapper/utils/getDataFromTemplateComponent.d.ts +21 -0
  158. package/dist/esm/components/template-context-mapper/utils/getDataFromTemplateComponent.js +1 -0
  159. package/dist/esm/components/template-context-mapper/utils/getVariableNameEmail.d.ts +2 -0
  160. package/dist/esm/components/template-context-mapper/utils/getVariableNameEmail.js +1 -0
  161. package/dist/esm/components/template-context-mapper/utils/highlightFor.d.ts +3 -0
  162. package/dist/esm/components/template-context-mapper/utils/highlightFor.js +1 -0
  163. package/dist/esm/components/template-context-mapper/utils/validateIsUrl.d.ts +1 -0
  164. package/dist/esm/components/template-context-mapper/utils/validateIsUrl.js +1 -0
  165. package/dist/esm/components/template-preview/EmailTemplateHTMLPreview.d.ts +5 -0
  166. package/dist/esm/components/template-preview/EmailTemplateThumbnailPreview.js +1 -1
  167. package/dist/esm/components/template-preview/TemplatePreview.d.ts +4 -3
  168. package/dist/esm/components/template-preview/TemplatePreview.js +1 -1
  169. package/dist/esm/components/template-preview/constants/TemplateConstants.d.ts +9 -0
  170. package/dist/esm/components/template-preview/constants/regexPatterns.d.ts +1 -1
  171. package/dist/esm/components/template-preview/constants/regexPatterns.js +1 -1
  172. package/dist/esm/components/template-preview/models/Channels.d.ts +2 -1
  173. package/dist/esm/components/template-preview/models/Channels.js +1 -1
  174. package/dist/esm/components/template-preview/models/TemplateMeta.d.ts +35 -0
  175. package/dist/esm/components/template-preview/models/TemplateMeta.js +1 -1
  176. package/dist/esm/components/template-preview/models/WhatsAppTemplate.d.ts +45 -2
  177. package/dist/esm/components/template-preview/models/WhatsAppTemplate.js +1 -0
  178. package/dist/esm/components/thumbnail/Thumbnail.d.ts +1 -1
  179. package/dist/esm/components/thumbnail/Thumbnail.js +1 -1
  180. package/dist/esm/components/thumbnail/Thumbnail.styled.js +5 -5
  181. package/dist/esm/index.d.ts +3 -0
  182. package/dist/esm/index.js +1 -1
  183. package/dist/esm/utils/StringUtils.d.ts +2 -0
  184. package/dist/esm/utils/StringUtils.js +1 -1
  185. package/dist/esm/utils/bytesToMB.d.ts +1 -0
  186. package/dist/esm/utils/bytesToMB.js +1 -0
  187. package/package.json +1 -1
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import { CHANNEL_TYPE } from "../../template-preview/models/Channels";
3
+ import { WhatsAppPickerMeta } from "../../template-preview/models/WhatsAppTemplate";
4
+ export interface TemplateSelectModalContentProps {
5
+ channel: CHANNEL_TYPE;
6
+ showVariableMapping?: boolean;
7
+ hideHeader?: boolean;
8
+ showOnlyContent?: boolean;
9
+ whatsappSpecificPickerMeta?: WhatsAppPickerMeta;
10
+ }
11
+ declare const TemplateSelectModalContent: ({ channel, showVariableMapping, showOnlyContent, whatsappSpecificPickerMeta, }: TemplateSelectModalContentProps) => JSX.Element;
12
+ export default TemplateSelectModalContent;
@@ -0,0 +1 @@
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{CHANNEL_TYPE as i}from"../../template-preview/models/Channels.js";import n from"./Body.js";import o from"./Header.js";const a=a=>{let{channel:r,showVariableMapping:p,showOnlyContent:s,whatsappSpecificPickerMeta:l}=a;return e("div",Object.assign({style:{paddingBottom:0}},{children:t("div",{children:[r===i.EMAIL&&e(o,{showOnlyContent:s}),e(n,{whatsappSpecificPickerMeta:l,showVariableMapping:!!p,showOnlyContent:s})]})}))};export{a as default};
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ import { CHANNEL_TYPE } from "../../template-preview/models/Channels";
3
+ import { CUSTOM_VARIABLE } from "../../template-preview/models/TemplateMeta";
4
+ export declare const Container: import("styled-components").StyledComponent<"div", any, {
5
+ focused?: boolean | undefined;
6
+ channel?: CHANNEL_TYPE | undefined;
7
+ }, never>;
8
+ /** COMPONENT BELOW */
9
+ export interface VariableConnectorProps {
10
+ onFocus?: () => void;
11
+ variable: CUSTOM_VARIABLE;
12
+ index: number;
13
+ }
14
+ declare const VariableConnector: ({ onFocus, variable, index, }: VariableConnectorProps) => JSX.Element;
15
+ export default VariableConnector;
@@ -0,0 +1,7 @@
1
+ import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useState as l,useEffect as o}from"react";import n from"styled-components";import{Dropdown as i}from"../../dropdown/Dropdown.js";import{Input as a}from"../../input/Input.js";import{placeHolderNamePattern as u}from"../../template-preview/constants/regexPatterns.js";import{CHANNEL_TYPE as s}from"../../template-preview/models/Channels.js";import{BodySecondary as d}from"../../TypographyStyle.js";import r from"../../../utils/StringUtils.js";import{COLORS as c}from"../../../constants/Theme.js";import{useTemplateModalContext as m}from"../context/templateModalContext.js";import{getVariableNameForEmailByIndex as v}from"../utils/getVariableNameEmail.js";import{validateIsUrl as p}from"../utils/validateIsUrl.js";const b=n.div`
2
+ /* surface/$color-background-warning-light */
3
+
4
+ background: ${e=>e.focused&&e.channel===s.EMAIL?c.background.warning.light:"transparent"};
5
+ border-radius: 4px;
6
+ padding: 8px 10px;
7
+ `,g={value:"custom_link",label:"Custom URL"},x={value:"custom_text",label:"Custom text"},h=n=>{let{onFocus:h,variable:f,index:j}=n;var _;const[k,y]=l(!1),[A,O]=l(""),[E,P]=l([]),[S,T]=l(),{device:L,channel:M,isError:C,originalVariableList:V,template:W,setTemplate:I,setDisplayContent:w,setOriginalVariableList:H,globalNormalizedPlaceholders:B}=m();function $(e,t){var l,o;const n="custom_link"===t?"link":"custom_text"===t?"string":t;if(M!==s.WHATSAPP){const o=v(j+1),i=null===document||void 0===document?void 0:document.getElementById("mobile"===L?"template_html_mobile":"template_html_desktop"),a=M===s.EMAIL?null===(l=null==i?void 0:i.contentWindow)||void 0===l?void 0:l.document.getElementById(o):document.getElementById(o);a&&("custom_text"===t&&!e||"custom_link"===t&&M===s.EMAIL||"custom_link"===t&&M===s.MESSAGE&&!e?a.textContent=f.variableName:a.textContent=e);const u=V.map(((t,l)=>l===j?Object.assign(Object.assign({},t),{type:n,updatedValue:e}):t));null==H||H(u)}if(M===s.WHATSAPP){const t=null===(o=V.body)||void 0===o?void 0:o.map(((t,l)=>l===j?Object.assign(Object.assign({},t),{type:n,updatedValue:e}):t));null==H||H((e=>Object.assign(Object.assign({},e),{body:t,buttons:V.buttons})))}}function U(e,t){var l;const o=Object.assign({},W),n=null===(l=null==o?void 0:o.components)||void 0===l?void 0:l.map((l=>{var o,n,i,a,u;const s=Object.assign({},l);if("BODY"===l.type&&(null===(n=null===(o=l.example)||void 0===o?void 0:o.body_text)||void 0===n?void 0:n[0])){const l=[...null!==(u=null===(a=null===(i=s.example)||void 0===i?void 0:i.body_text)||void 0===a?void 0:a[0])&&void 0!==u?u:[]];l[e]=t.replace("{{","").replace("}}","").replace("((","").replace("))","");const o=Object.assign(Object.assign({},s.example),{body_text:[l]});return Object.assign(Object.assign({},s),{example:o})}return l}));o.components=n,null==I||I(o)}return o((()=>{k&&(null==h||h())}),[k]),o((()=>{var e;const t=[];let l=[];if(M===s.MESSAGE){const e=null!=B?B:[];P([{label:"",options:[x,g]},...e]),l=[{label:"",options:[x,g]},...e]}else{"link"===(null==f?void 0:f.type)?(t.push({label:"",options:[g,x]}),T(g)):(t.push({label:"",options:[g,x]}),T(x));const e=null!=B?B:[];P([...t,...e.map((e=>{var t,l;return Object.assign(Object.assign({},e),{label:r.toCapitilize(null===(l=null===(t=e.label)||void 0===t?void 0:t.replace(/([A-Z])/g," $1"))||void 0===l?void 0:l.toLowerCase())})}))]),l=[...t,...e]}if((M===s.WHATSAPP||M===s.EMAIL||M===s.MESSAGE)&&f.updatedValue)if(u.test(f.updatedValue)&&M===s.WHATSAPP||f.updatedValue.startsWith("{{")&&M!==s.WHATSAPP){let e={label:"",value:""};const t=M===s.WHATSAPP?f.updatedValue.replace("[[","").replace("]]",""):f.updatedValue.replace("{{","").replace("}}","");l.map((l=>{l.options.map((l=>{var o;(null===(o=l.value)||void 0===o?void 0:o.replace("{{","").replace("}}",""))===t&&(e=l)}))})),e.value&&T(e)}else(null===(e=f.updatedValue)||void 0===e?void 0:e.startsWith("https"))?(T(g),O(f.updatedValue.split("https://")[1])):(T(x),O(f.updatedValue))}),[]),e(b,Object.assign({channel:M,focused:k,onMouseEnter:()=>y(!0),onMouseLeave:()=>y(!1)},{children:[t("div",Object.assign({style:{marginBottom:8}},{children:e(d,Object.assign({style:{color:C&&!S?c.content.negative:c.content.primary}},{children:[null===(_=f.variableName)||void 0===_?void 0:_.replace("{{","").replace("}}","")," ","link"===(null==f?void 0:f.type)?"link":"variable"]}))})),t("div",Object.assign({style:{marginBottom:12}},{children:t(i,{options:E,isSearchable:!1,onSelect:function(e,t){var l,o,n;const i=e;O(""),T(i),M===s.WHATSAPP?"custom_text"!==i.value&&"custom_link"!==i.value?($(null!==(l=i.value)&&void 0!==l?l:"","string"),null==U||U(null!==(o=f.index)&&void 0!==o?o:0,`[[${i.value}]]`)):(null==U||U(null!==(n=f.index)&&void 0!==n?n:0,f.variableName),$("","url"===i.bikPlaceholderType?"link":"string")):"custom_text"!==i.value&&"custom_link"!==i.value?$(i.value,"url"===i.bikPlaceholderType?"link":"string"):(O(""),$("",i.value))},defaultOptions:S?[Object.assign(Object.assign({},S),{selected:!0})]:[]})})),("custom_text"===(null==S?void 0:S.value)||"custom_link"===(null==S?void 0:S.value))&&t(a,{labelText:"custom_text"===(null==S?void 0:S.value)?"Custom text value":"custom_link"===(null==S?void 0:S.value)?"Custom URL value":"",id:`variable-value-${null==S?void 0:S.value}-${j}`,value:A,errorMessage:C?A?"custom_link"!==S.value||p(A)?"":"Enter valid URL":"Required field":"",maxCharLimit:"custom_link"===(null==S?void 0:S.value)?void 0:30,prefixText:"custom_link"===(null==S?void 0:S.value)?"https://":"",placeholder:"link"===f.type||"custom_link"===S.value?"Enter custom URL here":"Enter custom text here",onBlur:e=>function(e){var t,l,o,n,i;const a="mobile"===L?"template_html_mobile":"template_html_desktop",u=document.getElementById(a),d=(null!==(n=null===(o=null===(l=null===(t=null==u?void 0:u.contentWindow)||void 0===t?void 0:t.document)||void 0===l?void 0:l.body)||void 0===o?void 0:o.innerHTML)&&void 0!==n?n:"")+(null===(i=null==u?void 0:u.contentWindow)||void 0===i?void 0:i.document.head.innerHTML);M===s.EMAIL&&(null==w||w(d))}(e.target.value),onChangeText:e=>function(e,t){var l;O(t);const o="custom_link"===(null==S?void 0:S.value)?`https://${t}`:t;$(o,e),M===s.WHATSAPP&&(null==U||U(null!==(l=f.index)&&void 0!==l?l:0,o))}(S.value,e)})]}))};export{b as Container,h as default};
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import { WhatsAppTemplate, WhatsAppTemplateVariables } from "../../template-preview/models/WhatsAppTemplate";
3
+ export type ComponentType = WhatsAppTemplate['components'][0];
4
+ export interface VariableConnectorWhatsAppProps {
5
+ originalVariableList: WhatsAppTemplateVariables;
6
+ descriptionComponent: ComponentType;
7
+ variableMapping: string[] | undefined;
8
+ type: ComponentType['type'];
9
+ }
10
+ declare const VariableConnectorWhatsApp: ({ descriptionComponent, type, }: VariableConnectorWhatsAppProps) => JSX.Element;
11
+ export default VariableConnectorWhatsApp;
@@ -0,0 +1 @@
1
+ import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import{Input as i}from"../../input/Input.js";import{BodySecondary as o}from"../../TypographyStyle.js";import{COLORS as a}from"../../../constants/Theme.js";import{useTemplateModalContext as n}from"../context/templateModalContext.js";import l from"./VariableConnector.js";const s=s=>{let{descriptionComponent:p,type:d}=s;var m;const{originalVariableList:c}=n();return"BODY"===p.type?e("div",{children:null===(m=null==c?void 0:c.body)||void 0===m?void 0:m.map(((r,n)=>r.isEditableVariable?e(l,{index:n,variable:r},`${n}-${r.index}`):t("div",Object.assign({style:{margin:"16px 8px"}},{children:[t(o,Object.assign({style:{color:a.content.primary}},{children:["HEADER"===d?"Header":""," Locked variable ",n+1]})),e(i,{state:"disabled",placeholder:r.variableName,onChangeText:()=>{}})]}),n)))}):e(r,{})};export{s as default};
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ export declare const Container: import("styled-components").StyledComponent<"div", any, {}, never>;
3
+ export interface VariableConnectorsProps {
4
+ onFocus?: (variableIndex: number) => void;
5
+ }
6
+ declare const VariableConnectors: ({ onFocus }: VariableConnectorsProps) => JSX.Element;
7
+ export default VariableConnectors;
@@ -0,0 +1,6 @@
1
+ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import i from"../../../assets/icons/info.svg.js";import n from"styled-components";import{CHANNEL_TYPE as l}from"../../template-preview/models/Channels.js";import{Tooltip as r}from"../../tooltips/Tooltip.js";import"../../tooltips/CustomisedTooltip.js";import{TitleRegular as s,BodySecondary as a}from"../../TypographyStyle.js";import{COLORS as c}from"../../../constants/Theme.js";import{useTemplateModalContext as d}from"../context/templateModalContext.js";import m from"./VariableConnector.js";const p=n.div`
2
+ overflow-y: auto;
3
+ display: flex;
4
+ flex-direction: column;
5
+ height: 100%;
6
+ `,h=n=>{let{onFocus:h}=n;const{originalVariableList:b,channel:f}=d();return e(p,{children:[e("div",Object.assign({style:{padding:8}},{children:[e("div",Object.assign({style:{display:"flex",gap:8}},{children:[t(s,Object.assign({style:{color:c.content.primary}},{children:"Edit variables and links"})),t(r,Object.assign({body:"Variables are placeholder texts which can either be filled by data, eg: customer name or can have any custom text within them"},{children:t("div",{children:t(i,{width:20,height:20,color:c.content.placeholder})})}))]})),t(a,Object.assign({style:{color:c.content.secondary}},{children:"You can view variables and links on the left underlined in purple colour."}))]})),null==b?void 0:b.map(((e,i)=>f!==l.EMAIL||e.isEditableVariable?t("div",Object.assign({style:{marginTop:16}},{children:t(m,{index:i,variable:e,onFocus:()=>null==h?void 0:h(i)})}),i):t(o,{})))]})};export{p as Container,h as default};
@@ -0,0 +1,9 @@
1
+ import { CSSProperties } from 'react';
2
+ export interface VariableEditorHeaderProps {
3
+ headerText: string;
4
+ subText: string;
5
+ toolTipInfo?: string;
6
+ containerStyle?: CSSProperties;
7
+ }
8
+ declare const VariableEditorHeader: ({ headerText, subText, toolTipInfo, containerStyle, }: VariableEditorHeaderProps) => JSX.Element;
9
+ export default VariableEditorHeader;
@@ -0,0 +1,9 @@
1
+ import{jsxs as t,jsx as o}from"react/jsx-runtime";import e from"../../../assets/icons/info.svg.js";import i from"styled-components";import{Tooltip as n}from"../../tooltips/Tooltip.js";import"../../tooltips/CustomisedTooltip.js";import{BodySecondary as s,TitleRegular as r}from"../../TypographyStyle.js";import{COLORS as l}from"../../../constants/Theme.js";const p=i(s)`
2
+ line-height: 1.5 !important;
3
+ `,a=i.div`
4
+ padding-top: 24px;
5
+ padding-left: 10px;
6
+ padding-right: 10px;
7
+ margin-bottom: 8px;
8
+ line-height: normal;
9
+ `,c=i=>{let{headerText:s,subText:c,toolTipInfo:d,containerStyle:m}=i;return t(a,Object.assign({style:Object.assign({},m)},{children:[t("div",Object.assign({style:{display:"flex",gap:8}},{children:[o(r,Object.assign({style:{color:l.content.primary}},{children:s})),d&&o(n,Object.assign({body:c},{children:o("div",{children:o(e,{width:20,height:20,color:l.content.placeholder})})}))]})),o(p,Object.assign({style:{color:l.content.secondary,marginBottom:0,lineHeight:20,display:"block"}},{children:c}))]}))};export{c as default};
@@ -0,0 +1,16 @@
1
+ /// <reference types="react" />
2
+ import { ButtonPlaceHolderOptions } from "../../template-preview/models/TemplateMeta";
3
+ import { CTABtnValType, QRBBtnValType, TEMPLATE_BUTTON } from "../../template-preview/models/WhatsAppTemplate";
4
+ import { WhatsAppTemplateVariables } from "../../template-preview/models/WhatsAppTemplate";
5
+ export type URLBtnUpdateFunctionType = (val: CTABtnValType, mode: 'custom' | 'placeholder', btnIndex?: number) => void;
6
+ export type QRBBtnUpdateFunctionType = (val: QRBBtnValType, mode: 'custom' | 'placeholder', btnIndex?: number) => void;
7
+ export interface WhatsAppTemplateCardButtonV2Props {
8
+ originalVariableList: WhatsAppTemplateVariables;
9
+ updateSelectedURLTemplateBtn?: URLBtnUpdateFunctionType;
10
+ updateSelectedQRBTemplateBtn?: QRBBtnUpdateFunctionType;
11
+ button: TEMPLATE_BUTTON;
12
+ CTAoptions?: ButtonPlaceHolderOptions[];
13
+ QRBoptions?: ButtonPlaceHolderOptions[];
14
+ }
15
+ declare const WhatsAppTemplateCardButtonV2: ({ button, updateSelectedURLTemplateBtn, updateSelectedQRBTemplateBtn, originalVariableList, CTAoptions, QRBoptions, }: WhatsAppTemplateCardButtonV2Props) => JSX.Element;
16
+ export default WhatsAppTemplateCardButtonV2;
@@ -0,0 +1 @@
1
+ import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useState as l,useEffect as o}from"react";import{Dropdown as a}from"../../dropdown/Dropdown.js";import{Input as n}from"../../input/Input.js";import{editableVarPattern as s}from"../../template-preview/constants/regexPatterns.js";import{CUSTOM_URL_NAME as i}from"../../template-preview/models/TemplateMeta.js";import{BUTTON_TYPE as r}from"../../template-preview/models/WhatsAppTemplate.js";import{BodySecondary as p}from"../../TypographyStyle.js";import{COLORS as m}from"../../../constants/Theme.js";import{useTemplateModalContext as c}from"../context/templateModalContext.js";import{validateIsUrl as d}from"../utils/validateIsUrl.js";import{Container as u}from"./VariableConnector.js";const b=b=>{let{button:f,updateSelectedURLTemplateBtn:j,updateSelectedQRBTemplateBtn:g,originalVariableList:h,CTAoptions:v,QRBoptions:y}=b;const[x,O]=l(""),[R,L]=l(),{setOriginalVariableList:U,isError:w}=c();function T(e){O(e);const t=[Object.assign(Object.assign({},h.buttons[0]),{type:r.URL,buttonVariable:"((customPlaceholderName))",example:[`https://${e}`]})];null==U||U({body:[...h.body],buttons:[...t]}),null==j||j(`https://${e}`,"custom")}return o((()=>{var e;if(f.buttonVariable&&s.test(f.buttonVariable))L(i),O((null===(e=f.example)||void 0===e?void 0:e[0].split("https://")[1])||"");else{let e=-1;const t="URL"===f.type?v:y;e="URL"===f.type?t.findIndex((e=>e.placeHolder===f.buttonVariable)):t.findIndex((e=>e.label===f.flowName)),e>-1&&L(t[e])}}),[]),e(u,{children:[t("div",Object.assign({style:{marginBottom:8}},{children:e(p,Object.assign({style:{color:m.content.primary}},{children:[f.text," button"]}))})),t("div",Object.assign({style:{marginBottom:12}},{children:t(a,{options:"URL"===f.type?v:y,isSearchable:!1,onSelect:function(e,t){const l=e;L(l);const o=("URL"===f.type?v:y).find((e=>e.placeHolder===l.placeHolder));if(o)if("custom_link"!==o.value){let e;"URL"===f.type?(e=[Object.assign(Object.assign({},h.buttons[0]),{type:"URL",buttonVariable:l.placeHolder,example:["https://bik.ai/"]})],null==j||j({defaultValue:o.value,placeHolder:o.placeHolder},"placeholder")):(e=h.buttons.map(((e,t)=>t===f.index?Object.assign(Object.assign({},e),{type:"QUICK_REPLY",flowName:l.label,flowId:l.value}):e)),null==g||g({flowName:l.label,flowId:l.value},"placeholder",f.index)),null==U||U({body:[...h.body],buttons:[...e]})}else T("")},defaultOptions:R?[Object.assign(Object.assign({},R),{selected:!0})]:[]})})),"custom_link"===(null==R?void 0:R.value)&&t("div",Object.assign({style:{marginBottom:20}},{children:t(n,{errorMessage:w?x?d(x)?"":"Enter valid URL":"Required field":"",value:x,prefixText:"custom_link"===(null==R?void 0:R.value)?"https://":"",placeholder:"Enter custom URL here",onChangeText:T})}))]})};export{b as default};
@@ -0,0 +1,6 @@
1
+ import { SingleOption } from "../../dropdown/type";
2
+ import { GlobalPlaceholderType } from "../../template-preview/models/TemplateMeta";
3
+ export declare const convertPlaceholdersToBikDropdown: (data?: GlobalPlaceholderType) => {
4
+ label: string;
5
+ options: SingleOption[];
6
+ }[];
@@ -0,0 +1 @@
1
+ const l=l=>{const e=[];return l&&Object.keys(l).forEach((o=>{var t;const r=l[o],n=null!==(t=null==r?void 0:r.map((l=>{var e;return{label:l.title,value:l.placeHolder,bikPlaceholderType:null!==(e=l.type)&&void 0!==e?e:"string"}})))&&void 0!==t?t:[];e.push({label:o,options:n})})),e};export{l as convertPlaceholdersToBikDropdown};
@@ -0,0 +1,21 @@
1
+ import { WhatsAppTemplate } from "../../template-preview/models/WhatsAppTemplate";
2
+ type ComponentType = WhatsAppTemplate['components'][0];
3
+ export declare const getAllDataFromTemplateComponent: (template: WhatsAppTemplate) => {
4
+ imageComponent: null;
5
+ descriptionComponents: {
6
+ component: ComponentType;
7
+ i: number;
8
+ type: ComponentType['type'];
9
+ }[];
10
+ urlBtns: {
11
+ component: ComponentType;
12
+ i: number;
13
+ }[];
14
+ qrbBtns: {
15
+ component: ComponentType;
16
+ i: number;
17
+ }[];
18
+ bodyVariables: string[];
19
+ headerVariables: string[];
20
+ };
21
+ export {};
@@ -0,0 +1 @@
1
+ const o=o=>{var n,t;const e=[],i=[],p=[],l=[],s=[];let a=null;return o.components.forEach(((o,n)=>{var t,l,s,u,d,r;if("BODY"===o.type&&o.text&&e.push({component:o,i:n,type:"BODY"}),"HEADER"===o.type&&"NONE"!==o.format&&"TEXT"!==o.format&&(null===(l=null===(t=o.example)||void 0===t?void 0:t.header_handle)||void 0===l?void 0:l[0])&&(a=o),"HEADER"===o.type&&"TEXT"===o.format&&e.push({component:o,i:n,type:"HEADER"}),"BUTTONS"===o.type){const t=null===(u=null===(s=o.buttons)||void 0===s?void 0:s.filter)||void 0===u?void 0:u.call(s,(o=>"URL"===o.type));i.push({component:Object.assign(Object.assign({},o),{buttons:t}),i:n});const e=null===(r=null===(d=o.buttons)||void 0===d?void 0:d.filter)||void 0===r?void 0:r.call(d,(o=>"QUICK_REPLY"===o.type));p.push({component:Object.assign(Object.assign({},o),{buttons:e}),i:n}),p.push}})),o.mapping&&(null===(n=o.mapping.body)||void 0===n||n.forEach((o=>{l.push(o)}))),o.mapping&&(null===(t=o.mapping.header)||void 0===t||t.forEach((o=>{s.push(o)}))),{imageComponent:a,descriptionComponents:e,urlBtns:i,qrbBtns:p,bodyVariables:l,headerVariables:s}};export{o as getAllDataFromTemplateComponent};
@@ -0,0 +1,2 @@
1
+ export declare const SMS_TEMPLATE_VAR_PATTERN: RegExp;
2
+ export declare const getVariableNameForEmailByIndex: (index: number) => string;
@@ -0,0 +1 @@
1
+ const o=o=>"connectors_variable_"+o;export{o as getVariableNameForEmailByIndex};
@@ -0,0 +1,3 @@
1
+ import { CHANNEL_TYPE } from "../../template-preview/models/Channels";
2
+ import { DEVICE_TYPES } from '../context/templateModalContext';
3
+ export declare function highlightFor(id: string, color: string, seconds: number, channel: CHANNEL_TYPE, device: DEVICE_TYPES): void;
@@ -0,0 +1 @@
1
+ import{CHANNEL_TYPE as e}from"../../template-preview/models/Channels.js";function o(o,t,n,l,d){var m;const i=null===document||void 0===document?void 0:document.getElementById("mobile"===d?"template_html_mobile":"template_html_desktop"),u=l===e.EMAIL?null===(m=null==i?void 0:i.contentWindow)||void 0===m?void 0:m.document.getElementById(o):document.getElementById(o);if(u){const e=u.style.backgroundColor;u.style.backgroundColor=t,setTimeout((function(){u.style.backgroundColor=e}),1e3*n)}}export{o as highlightFor};
@@ -0,0 +1 @@
1
+ export declare const validateIsUrl: (recievedMediaLink: string) => boolean;
@@ -0,0 +1 @@
1
+ const d=d=>!!new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i").test(d);export{d as validateIsUrl};
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ export declare const EmailTemplateHTMLPreview: React.FC<{
3
+ display_content: string;
4
+ containerId: string;
5
+ }>;
@@ -1 +1 @@
1
- import{jsxs as e,jsx as t}from"react/jsx-runtime";import{Button as i}from"../button/Button.js";import{TitleRegular as l}from"../TypographyStyle.js";import{EmailContainer as n,Header as r,ImageContainer as a,ViewButton as m}from"./EmailTemplatePreview.styled.js";const o=o=>{let{template:s,handleViewTemplate:d,hideHeader:c,hideViewButton:h,containerStyle:p,emailHtmlContainerId:u,emailDisplayContent:y}=o;return e(n,Object.assign({hideHeader:c,style:Object.assign({},null!=p?p:{})},{children:[!c&&t(r,{children:t(l,Object.assign({style:{maxWidth:"100%"}},{children:s.name}))}),y?t("iframe",{title:"Email template preview",id:null!=u?u:"",width:"100%",srcDoc:y,height:"100%",style:{pointerEvents:"none"}}):t(a,Object.assign({hideHeader:c},{children:t("img",{alt:"Email thumbnail",src:s.thumbnailUrl,style:{objectFit:"contain",width:"100%"}})})),!h&&t(m,{children:t(i,{buttonType:"tertiary",buttonText:"View",onClick:()=>{d&&d()}})})]}))};export{o as default};
1
+ import{jsxs as e,jsx as t}from"react/jsx-runtime";import{Button as i}from"../button/Button.js";import{TitleRegular as n}from"../TypographyStyle.js";import{EmailContainer as l,Header as r,ImageContainer as a,ViewButton as o}from"./EmailTemplatePreview.styled.js";const m=m=>{let{template:s,handleViewTemplate:d,hideHeader:c,hideViewButton:h,containerStyle:p,emailHtmlContainerId:y,emailDisplayContent:u}=m;return e(l,Object.assign({hideHeader:c,style:Object.assign({},null!=p?p:{})},{children:[!c&&t(r,{children:t(n,Object.assign({style:{maxWidth:"100%"}},{children:s.name}))}),u?t("iframe",{title:"Email template preview",id:null!=y?y:"",width:"100%",srcDoc:u,height:"100%",style:{pointerEvents:"none"}}):t(a,Object.assign({hideHeader:c},{children:t("img",{alt:"",src:s.thumbnailUrl,style:{objectFit:"contain",width:"100%"}})})),!h&&t(o,{children:t(i,{buttonType:"tertiary",buttonText:"View",onClick:()=>{d&&d()}})})]}))};export{m as default};
@@ -3,8 +3,8 @@ import { CHANNEL_TYPE } from './models/Channels';
3
3
  import { EmailMeta, EmailTemplateType } from './models/EmailTemplate';
4
4
  import { SMSMeta, SMSTemplateType } from './models/SmsTemplate';
5
5
  import { WhatsappMeta, WhatsAppTemplate } from './models/WhatsAppTemplate';
6
- export declare const TemplatePreview: React.FC<{
7
- template: WhatsAppTemplate | SMSTemplateType | EmailTemplateType;
6
+ export interface TemplatePreviewProps {
7
+ template?: WhatsAppTemplate | SMSTemplateType | EmailTemplateType;
8
8
  channel: CHANNEL_TYPE;
9
9
  onlyTemplateContent?: boolean;
10
10
  outsidePreview?: boolean;
@@ -15,4 +15,5 @@ export declare const TemplatePreview: React.FC<{
15
15
  hideHeader?: boolean;
16
16
  size?: 'small' | 'large';
17
17
  templateContainerStyles?: React.CSSProperties;
18
- }>;
18
+ }
19
+ export declare const TemplatePreview: ({ template, channel, whatsAppSpecificMeta, templateCreationsInfo, hideHeader, size, onlyTemplateContent, emailSpecificMeta, smsSpecificMeta, }: TemplatePreviewProps) => JSX.Element;
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t,Fragment as l}from"react/jsx-runtime";import i from"../../utils/StringUtils.js";import{COLORS as a}from"../../constants/Theme.js";import{TitleRegular as n}from"../TypographyStyle.js";import o from"./EmailTemplateThumbnailPreview.js";import{CHANNEL_TYPE as r}from"./models/Channels.js";import s from"./SmsTemplatePreview.js";import d from"./WhatsAppTemplatePreview.js";const p=p=>{let{template:c,channel:u,whatsAppSpecificMeta:v,templateContainerStyles:h,templateCreationsInfo:y,hideHeader:b,size:S,onlyTemplateContent:g,emailSpecificMeta:j,smsSpecificMeta:C,outsidePreview:T}=p;var f,w;return u===r.SMS?e("div",Object.assign({style:Object.assign({marginTop:y?16:0,border:y?`1px solid ${a.stroke.primary}`:"none",borderRadius:4},null==C?void 0:C.templateContainerStyles)},{children:e(s,{template:c,hideHeader:b,onlyTemplateContent:g,size:null!=S?S:"large",variableStore:null==C?void 0:C.smsVariableStore,display_content:null==C?void 0:C.smsDisplayContent})})):u===r.EMAIL?e("div",Object.assign({style:Object.assign({marginTop:y?16:0},null==j?void 0:j.templateContainerStyles)},{children:e(o,{template:c,handleViewTemplate:()=>{var e;null===(e=null==j?void 0:j.handleViewTemplate)||void 0===e||e.call(j)},hideHeader:b,hideViewButton:null==j?void 0:j.hideViewButtonForEmail,containerStyle:null==j?void 0:j.containerStyle,emailDisplayContent:null==j?void 0:j.emailDisplayContent,emailHtmlContainerId:null==j?void 0:j.emailHtmlContainerId})})):u===r.WHATSAPP?t("div",Object.assign({style:Object.assign(Object.assign({},null==v?void 0:v.templateContainerStyles),y?m.WhatsAppWrapper:{})},{children:[y?e("div",Object.assign({style:{padding:16}},{children:e(n,{children:i.convertToTitleCase(null!==(f=null==c?void 0:c.label)&&void 0!==f?f:"")})})):e(l,{}),e(d,{showHeader:null==v?void 0:v.showWhatsAppHeader,extras:null==v?void 0:v.whatsAppExtras,template:c,size:y?"small":null!=S?S:"large",containerStyle:Object.assign({borderWidth:y?0:1,borderTopWidth:1},null!==(w=null==v?void 0:v.containerStyle)&&void 0!==w?w:{}),zeroStateComponent:null==v?void 0:v.zeroStateComponent,usePlaceHolderName:null==v?void 0:v.usePlaceHolderName})]})):e(l,{})},m={WhatsAppWrapper:{backgroundColor:a.surface.standard,borderRadius:4,border:`1px solid ${a.background.inactive}`,marginTop:16}};export{p as TemplatePreview};
1
+ import{jsx as e,jsxs as t,Fragment as l}from"react/jsx-runtime";import i from"../../utils/StringUtils.js";import{COLORS as a}from"../../constants/Theme.js";import{TitleRegular as n}from"../TypographyStyle.js";import o from"./EmailTemplateThumbnailPreview.js";import{CHANNEL_TYPE as r}from"./models/Channels.js";import s from"./SmsTemplatePreview.js";import d from"./WhatsAppTemplatePreview.js";const p=p=>{let{template:c,channel:u,whatsAppSpecificMeta:v,templateCreationsInfo:h,hideHeader:b,size:y,onlyTemplateContent:S,emailSpecificMeta:g,smsSpecificMeta:j}=p;var T,C;return u===r.SMS?e("div",Object.assign({style:Object.assign({marginTop:h?16:0,border:h?`1px solid ${a.stroke.primary}`:"none",borderRadius:4},null==j?void 0:j.templateContainerStyles)},{children:e(s,{template:c,hideHeader:b,onlyTemplateContent:S,size:null!=y?y:"large",variableStore:null==j?void 0:j.smsVariableStore,display_content:null==j?void 0:j.smsDisplayContent})})):u===r.EMAIL?e("div",Object.assign({style:Object.assign({marginTop:h?16:0},null==g?void 0:g.templateContainerStyles)},{children:e(o,{template:c,handleViewTemplate:()=>{var e;null===(e=null==g?void 0:g.handleViewTemplate)||void 0===e||e.call(g)},hideHeader:b,hideViewButton:null==g?void 0:g.hideViewButtonForEmail,containerStyle:null==g?void 0:g.containerStyle,emailDisplayContent:null==g?void 0:g.emailDisplayContent,emailHtmlContainerId:null==g?void 0:g.emailHtmlContainerId})})):u===r.WHATSAPP?t("div",Object.assign({style:Object.assign(Object.assign({},null==v?void 0:v.templateContainerStyles),h?m.WhatsAppWrapper:{})},{children:[h?e("div",Object.assign({style:{padding:16}},{children:e(n,{children:i.convertToTitleCase(null!==(T=null==c?void 0:c.label)&&void 0!==T?T:"")})})):e(l,{}),e(d,{showHeader:null==v?void 0:v.showWhatsAppHeader,extras:null==v?void 0:v.whatsAppExtras,template:c,size:h?"small":null!=y?y:"large",containerStyle:Object.assign({borderWidth:h?0:1,borderTopWidth:1},null!==(C=null==v?void 0:v.containerStyle)&&void 0!==C?C:{}),zeroStateComponent:null==v?void 0:v.zeroStateComponent,usePlaceHolderName:null==v?void 0:v.usePlaceHolderName})]})):e(l,{})},m={WhatsAppWrapper:{backgroundColor:a.surface.standard,borderRadius:4,border:`1px solid ${a.background.inactive}`,marginTop:16}};export{p as TemplatePreview};
@@ -5,6 +5,8 @@ export declare const CREATE_TEMPLATE_DOM_IDS: {
5
5
  actionButtons: string;
6
6
  footer: string;
7
7
  };
8
+ export declare const NAME_NOT_FOUND = "Please enter template name";
9
+ export declare const BODY_TEXT_EMPTY = "Template body text cant be empty";
8
10
  export declare const REQUIRED_FIELD = "Required field";
9
11
  export declare const HEADER_LEN_ERROR = "Maximum 60 characters are allowed";
10
12
  export declare const NAME_LEN_ERROR = "Maximum 512 characters allowed";
@@ -12,12 +14,19 @@ export declare const NO_SPECIAL_CHAR = "No special characters allowed";
12
14
  export declare const BODY_LEN_ERROR = "Maximum 1,024 characters are allowed";
13
15
  export declare const QUICK_REPLY_LEN_ERROR = "Maximum 20 characters are allowed";
14
16
  export declare const QUICK_REPLY_NAME_ERROR = "Buttons with same name are not allowed";
17
+ export declare const CUSTOM_LIM_LEN_ERROR = "Maximum characters allowed is 2000 characters";
18
+ export declare const ONE_VAR_ERROR = "Only one variable allowed in text header";
15
19
  export declare const VALID_PHONE_NUMBER = "Please enter a valid 10-digit phone number";
20
+ export declare const FOOTER_EMOJI_ERROR = "Emojis are not allowed in footer";
21
+ export declare const HEADER_EMOJI_ERROR = "Emojis are not allowed in header";
16
22
  export declare const BUTTON_EMOJI_ERROR = "Emojis are not allowed in button";
17
23
  export declare const HEADER_ASSET_LINK_ERROR = "Please attach the required media";
24
+ export declare const TCS_DEFAULT_INPUT_ERROR = "Some input(s) are missing";
18
25
  export declare const ONE_VAR_ALLOWED = "Only one variable allowed in text header";
19
26
  export declare const HEADER_TEXT_LEN_LIMIT = 60;
20
27
  export declare const NAME_LEN_LIMIT = 512;
21
28
  export declare const BODY_TEXT_LEN_LIMIT = 1024;
22
29
  export declare const QUICK_REPLY_BTN_TEXT_LIMIT = 25;
30
+ export declare const CUSTOM_LINK_LIMIT = 2000;
23
31
  export declare const QUICK_REPLY_NAME_LEN_LIMIT = 20;
32
+ export declare const QRB_NONE = "None";
@@ -2,10 +2,10 @@ export declare const lockedVarPattern: RegExp;
2
2
  export declare const editableVarPattern: RegExp;
3
3
  export declare const placeHolderNamePattern: RegExp;
4
4
  export declare const globalVariablePattern: RegExp;
5
- export declare const templateVariablePattern: RegExp;
6
5
  export declare const globalHalfVariablePattern: RegExp;
7
6
  export declare const specialCharPattern: RegExp;
8
7
  export declare const variablePattern: RegExp;
9
8
  export declare const variablePatternGlobal: RegExp;
9
+ export declare const templateVariablePattern: RegExp;
10
10
  export declare const previewLinkMDFormatPattern: RegExp;
11
11
  export declare const editableBracketPattern: RegExp;
@@ -1 +1 @@
1
- const a=/\[\[[A-Za-z0-9 ]+\]\]/,z=/\((\(|\[)[A-Za-z0-9 ]+(\]|\))\)/,A=/(\[\[|\(\()(.*)(\)\)|\]\])/,Z=/\{\{[A-Za-z0-9 ]+\}\}/g,g=Z,_=/\{\{[a-zA-Z0-9]+(?=( |\}))(?!\}\})/g,o=/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]+/,t=/\{\{[A-Za-z0-9 _]+\}\}/,c=/\{\{[A-Za-z0-9 _]+\}\}/g,e=/\[([^[]+)\](\(.*\))/,n=/[((|))]/;export{n as editableBracketPattern,z as editableVarPattern,_ as globalHalfVariablePattern,Z as globalVariablePattern,a as lockedVarPattern,A as placeHolderNamePattern,e as previewLinkMDFormatPattern,o as specialCharPattern,g as templateVariablePattern,t as variablePattern,c as variablePatternGlobal};
1
+ const a=/\[\[[A-Za-z0-9 ]+\]\]/,z=/\((\(|\[)[A-Za-z0-9 ]+(\]|\))\)/,A=/(\[\[|\(\()(.*)(\)\)|\]\])/,Z=/\{\{[A-Za-z0-9 ]+\}\}/g,g=/\{\{[a-zA-Z0-9]+(?=( |\}))(?!\}\})/g,_=/[!@#$%^&*()_+\-={};':"\\|,.<>?]+/,o=/\{\{[A-Za-z0-9 _]+\}\}/,t=/\{\{[A-Za-z0-9 _]+\}\}/g,c=Z,e=/\[([^[]+)\](\(.*\))/,n=/[((|))]/;export{n as editableBracketPattern,z as editableVarPattern,g as globalHalfVariablePattern,Z as globalVariablePattern,a as lockedVarPattern,A as placeHolderNamePattern,e as previewLinkMDFormatPattern,_ as specialCharPattern,c as templateVariablePattern,o as variablePattern,t as variablePatternGlobal};
@@ -4,5 +4,6 @@ export declare enum CHANNEL_TYPE {
4
4
  TIKTOK = "tiktok",
5
5
  EMAIL = "email",
6
6
  SMS = "message",
7
- WEBPUSH = "webpush"
7
+ WEBPUSH = "webpush",
8
+ MESSAGE = "message"
8
9
  }
@@ -1 +1 @@
1
- var a;!function(a){a.WHATSAPP="whatsapp",a.INSTAGRAM="instagram",a.TIKTOK="tiktok",a.EMAIL="email",a.SMS="message",a.WEBPUSH="webpush"}(a||(a={}));export{a as CHANNEL_TYPE};
1
+ var a;!function(a){a.WHATSAPP="whatsapp",a.INSTAGRAM="instagram",a.TIKTOK="tiktok",a.EMAIL="email",a.SMS="message",a.WEBPUSH="webpush",a.MESSAGE="message"}(a||(a={}));export{a as CHANNEL_TYPE};
@@ -1,3 +1,4 @@
1
+ import { SingleOption } from "../../dropdown/type";
1
2
  export type CUSTOM_VARIABLE = {
2
3
  variableName: string;
3
4
  type: 'string' | 'link' | 'image';
@@ -40,3 +41,37 @@ export interface QUICK_REPLY_BUTTON {
40
41
  flowId: string;
41
42
  flowName: string;
42
43
  }
44
+ export declare const CUSTOM_URL_NAME: {
45
+ value: string;
46
+ label: string;
47
+ placeHolder: string;
48
+ };
49
+ export type GlobalPlaceholderType = {
50
+ MARKETING: {
51
+ customer: baseAPITemplateVariableType[];
52
+ storeDetails: baseAPITemplateVariableType[];
53
+ orderDetails: baseAPITemplateVariableType[];
54
+ abandonedCart: baseAPITemplateVariableType[];
55
+ };
56
+ TRANSACTIONAL: {
57
+ customer: baseAPITemplateVariableType[];
58
+ storeDetails: baseAPITemplateVariableType[];
59
+ orderDetails: baseAPITemplateVariableType[];
60
+ abandonedCart: baseAPITemplateVariableType[];
61
+ };
62
+ };
63
+ export type baseAPITemplateVariableType = {
64
+ title: string;
65
+ default_value: string;
66
+ placeHolder: string;
67
+ type?: 'string' | 'url';
68
+ };
69
+ export type globalNormalizedPlaceholdersType = {
70
+ label: string;
71
+ options: SingleOption[];
72
+ };
73
+ export interface ButtonPlaceHolderOptions {
74
+ value: string;
75
+ label: string;
76
+ placeHolder: string;
77
+ }
@@ -1 +1 @@
1
- var E,D,N,I;!function(E){E.SEND_GRID="sendgrid",E.BEE="bee"}(E||(E={})),function(E){E.APPROVED="APPROVED",E.DISABLED="DISABLED",E.FLAGGED="FLAGGED",E.PENDING="PENDING",E.DRAFT="DRAFT",E.REJECTED="REJECTED",E.PENDING_DELETION="PENDING_DELETION",E.IN_REVIEW="IN REVIEW",E.PAUSED="PAUSED",E.ACTIVE="ACTIVE",E.LIBRARY="LIBRARY"}(D||(D={})),function(E){E.NONE="NONE",E.TEXT="TEXT",E.IMAGE="IMAGE",E.VIDEO="VIDEO",E.DOCUMENT="DOCUMENT"}(N||(N={})),function(E){E.NONE="NONE",E.CTA_BTN="CTA_BTN",E.QUICK_REPLY="QUICK_REPLY"}(I||(I={}));export{I as ACTIONS_TYPES,N as HEADER_TYPES,E as TEMPLATE_EDITOR,D as TEMPLATE_STATUS};
1
+ var E,D,N,I;!function(E){E.SEND_GRID="sendgrid",E.BEE="bee"}(E||(E={})),function(E){E.APPROVED="APPROVED",E.DISABLED="DISABLED",E.FLAGGED="FLAGGED",E.PENDING="PENDING",E.DRAFT="DRAFT",E.REJECTED="REJECTED",E.PENDING_DELETION="PENDING_DELETION",E.IN_REVIEW="IN REVIEW",E.PAUSED="PAUSED",E.ACTIVE="ACTIVE",E.LIBRARY="LIBRARY"}(D||(D={})),function(E){E.NONE="NONE",E.TEXT="TEXT",E.IMAGE="IMAGE",E.VIDEO="VIDEO",E.DOCUMENT="DOCUMENT"}(N||(N={})),function(E){E.NONE="NONE",E.CTA_BTN="CTA_BTN",E.QUICK_REPLY="QUICK_REPLY"}(I||(I={}));const A={value:"custom_link",label:"Custom URL",placeHolder:"custom placeholder"};export{I as ACTIONS_TYPES,A as CUSTOM_URL_NAME,N as HEADER_TYPES,E as TEMPLATE_EDITOR,D as TEMPLATE_STATUS};
@@ -1,6 +1,6 @@
1
1
  import React, { ReactElement } from 'react';
2
2
  import { CHANNEL_TYPE } from './Channels';
3
- import { ACTIONS_TYPES, HEADER_TYPES, QUICK_REPLY_BUTTON, TEMPLATE_STATUS } from './TemplateMeta';
3
+ import { ACTIONS_TYPES, ButtonPlaceHolderOptions, CUSTOM_VARIABLE, HEADER_TYPES, QUICK_REPLY_BUTTON, TEMPLATE_STATUS } from './TemplateMeta';
4
4
  export type WhatsAppTemplate = {
5
5
  name: string;
6
6
  label: string;
@@ -11,7 +11,7 @@ export type WhatsAppTemplate = {
11
11
  type?: 'email' | 'whatsapp';
12
12
  components: {
13
13
  type: 'HEADER' | 'BODY' | 'BUTTONS' | 'FOOTER';
14
- format?: 'TEXT' | 'IMAGE' | 'VIDEO' | 'DOCUMENT' | 'NONE';
14
+ format?: HEADER_TYPES;
15
15
  text?: string;
16
16
  buttons?: {
17
17
  type: 'QUICK_REPLY' | 'URL' | 'PHONE_NUMBER';
@@ -178,3 +178,46 @@ export type WhatsappMeta = {
178
178
  zeroStateComponent?: ReactElement;
179
179
  usePlaceHolderName?: boolean;
180
180
  };
181
+ export type WhatsAppPickerMeta = {
182
+ uploadMediaFiles: (params: WhatsAppMediaUploadRequest) => Promise<WhatsAppMediaUploadResponse>;
183
+ CTAoptions?: ButtonPlaceHolderOptions[];
184
+ QRBoptions?: ButtonPlaceHolderOptions[];
185
+ };
186
+ export type WhatsAppMediaUploadResponse = {
187
+ success: boolean;
188
+ url?: string;
189
+ };
190
+ export type WhatsAppMediaUploadRequest = {
191
+ file: File;
192
+ fileName: string;
193
+ isImage: boolean;
194
+ };
195
+ export interface WhatsAppTemplateVariables {
196
+ body: CUSTOM_VARIABLE[];
197
+ buttons: TEMPLATE_BUTTON[];
198
+ }
199
+ export type CTABtnValType = {
200
+ defaultValue: string;
201
+ placeHolder: string;
202
+ } | string;
203
+ export type QRBBtnValType = {
204
+ flowId?: string;
205
+ flowName?: string;
206
+ };
207
+ export type TEMPLATE_BUTTON = {
208
+ type: BUTTON_TYPE;
209
+ text?: string;
210
+ url?: string;
211
+ example?: string[];
212
+ linkMode?: 'custom' | 'home';
213
+ phone_number?: string;
214
+ buttonVariable?: string;
215
+ index?: number;
216
+ flowId?: string;
217
+ flowName?: string;
218
+ };
219
+ export declare enum BUTTON_TYPE {
220
+ QUICK_REPLY = "QUICK_REPLY",
221
+ URL = "URL",
222
+ PHONE_NUMBER = "PHONE_NUMBER"
223
+ }
@@ -0,0 +1 @@
1
+ var E;!function(E){E.QUICK_REPLY="QUICK_REPLY",E.URL="URL",E.PHONE_NUMBER="PHONE_NUMBER"}(E||(E={}));export{E as BUTTON_TYPE};
@@ -1,5 +1,5 @@
1
+ import React from 'react';
1
2
  import { SIZE } from "../avatar/AvatarHelper";
2
- import React from "react";
3
3
  export declare enum RATIO {
4
4
  ONE_ONE = "ONE_ONE",
5
5
  VERTICAL = "VERTICAL",
@@ -1 +1 @@
1
- import{jsx as i}from"react/jsx-runtime";import{SIZE as t}from"../avatar/AvatarHelper.js";import{ThumbnailStyle as e}from"./Thumbnail.styled.js";import{THUMBNAIL_SIZE_MAP as r}from"./constants.js";var h;!function(i){i.ONE_ONE="ONE_ONE",i.VERTICAL="VERTICAL",i.HORIZONTAL="HORIZONTAL"}(h||(h={}));const o={[h.VERTICAL]:{[t.SMALL]:{width:30,height:40},[t.MEDIUM]:{width:48,height:64},[t.LARGE]:{width:60,height:80}},[h.HORIZONTAL]:{[t.SMALL]:{width:40,height:30},[t.MEDIUM]:{width:64,height:48},[t.LARGE]:{width:80,height:60}},[h.ONE_ONE]:{}},s=t=>{var s,a;return i(e,Object.assign({size:t.size},{children:i("img",{width:(null===(s=o[t.ratio][t.size])||void 0===s?void 0:s.width)||r[t.size],height:(null===(a=o[t.ratio][t.size])||void 0===a?void 0:a.height)||r[t.size],style:{borderRadius:t.ratio===h.ONE_ONE?4:0,objectFit:"cover"},src:t.imageUrl})}))};export{h as RATIO,s as Thumbnail};
1
+ import{jsx as i}from"react/jsx-runtime";import{SIZE as t}from"../avatar/AvatarHelper.js";import{THUMBNAIL_SIZE_MAP as e}from"./constants.js";import{ThumbnailStyle as r}from"./Thumbnail.styled.js";var h;!function(i){i.ONE_ONE="ONE_ONE",i.VERTICAL="VERTICAL",i.HORIZONTAL="HORIZONTAL"}(h||(h={}));const o={[h.VERTICAL]:{[t.SMALL]:{width:30,height:40},[t.MEDIUM]:{width:48,height:64},[t.LARGE]:{width:60,height:80}},[h.HORIZONTAL]:{[t.SMALL]:{width:40,height:30},[t.MEDIUM]:{width:64,height:48},[t.LARGE]:{width:80,height:60}},[h.ONE_ONE]:{}},s=t=>{var s,a;return i(r,Object.assign({size:t.size},{children:i("img",{alt:"",width:(null===(s=o[t.ratio][t.size])||void 0===s?void 0:s.width)||e[t.size],height:(null===(a=o[t.ratio][t.size])||void 0===a?void 0:a.height)||e[t.size],style:{borderRadius:t.ratio===h.ONE_ONE?4:0,objectFit:"cover"},src:t.imageUrl})}))};export{h as RATIO,s as Thumbnail};
@@ -1,10 +1,10 @@
1
- import r from"styled-components";import{COLORS as t}from"../../constants/Theme.js";import{THUMBNAIL_SIZE_MAP as o}from"./constants.js";const e=r.div`
2
- width: ${r=>o[r.size]+"px"};
3
- height: ${r=>o[r.size]+"px"};
1
+ import r from"styled-components";import{THUMBNAIL_SIZE_MAP as t}from"./constants.js";import{COLORS as o}from"../../constants/Theme.js";const e=r.div`
2
+ width: ${r=>t[r.size]+"px"};
3
+ height: ${r=>t[r.size]+"px"};
4
4
  display: flex;
5
5
  justify-content: center;
6
6
  align-items: center;
7
- background-color: ${t.surface.standard};
8
- border: 1px solid ${t.stroke.primary};
7
+ background-color: ${o.surface.standard};
8
+ border: 1px solid ${o.stroke.primary};
9
9
  border-radius: 4px;
10
10
  `;export{e as ThumbnailStyle};
@@ -1,4 +1,6 @@
1
+ import * as regexPatterns from './components/template-preview/constants/regexPatterns';
1
2
  import StringUtils from './utils/StringUtils';
3
+ export { regexPatterns };
2
4
  export { StringUtils };
3
5
  export * from './constants/Theme';
4
6
  export * from './components/checkBox';
@@ -13,6 +15,7 @@ export * from './components/tag';
13
15
  export * from './components/pagination';
14
16
  export * from './components/icon-button';
15
17
  export * from './components/template-preview';
18
+ export * from './components/template-context-mapper';
16
19
  export * from './components/fab-menu';
17
20
  export * from './components/floating-action-button';
18
21
  export * from './components/image-compress';
package/dist/esm/index.js CHANGED
@@ -1 +1 @@
1
- export{default as StringUtils}from"./utils/StringUtils.js";export{BASE_COLORS,COLORS,DEFAULT_THEME,FONTS}from"./constants/Theme.js";export{CheckBox}from"./components/checkBox/CheckBox.js";export{ListItem}from"./components/list-item/ListItem.js";export{Pagination}from"./components/pagination/Pagination.js";export{RadioButton}from"./components/radioButton/RadioButton.js";export{Toaster}from"./components/toaster/Toaster.js";export{Tooltip}from"./components/tooltips/Tooltip.js";export{CustomisedTooltip,TooltipPlacement}from"./components/tooltips/CustomisedTooltip.js";export{Spinner}from"./components/spinner/Spinner.js";export{Stepper}from"./components/stepper/Stepper.js";export{Tag}from"./components/tag/Tag.js";export{IconButton}from"./components/icon-button/IconButton.js";import*as o from"./components/template-preview/constants/regexPatterns.js";export{o as regexPatterns};export{TemplatePreview}from"./components/template-preview/TemplatePreview.js";export{WhatsappLikePreview}from"./components/template-preview/WhatsApp/WhatsAppLikePreview.js";export{renderVariableUIForPreview}from"./components/template-preview/helpers/SmsTemplateHelper.js";export{WhatsAppFormatToHTML}from"./components/template-preview/helpers/WhatsAppFormatToHTML.js";export{FABMenu}from"./components/fab-menu/FABMenu.js";export{FloatingActionButton}from"./components/floating-action-button/FloatingActionButton.js";export{DROP_POSITION,DropdownToggleContainer,FAB_POSITION,FloatingActionButtonContainer,FloatingActionButtonOuterContainer,MENU_ALIGNMENT,StyledDropdown}from"./components/floating-action-button/FloatingActionButton.styles.js";export{ImageService}from"./components/image-compress/ImageCompress.js";export{BodyCaption,BodyLarge,BodyPrimary,BodyPrimaryLink,BodyRegular,BodySecondary,BodySecondaryLink,BodyTiny,ButtonLarge,ButtonRegular,Caption,Display,SubHeading,TitleLarge,TitleMedium,TitleRegular,TitleSmall}from"./components/TypographyStyle.js";export{Button}from"./components/button/Button.js";export{ProgressBarComponent,ProgressCompletedBar}from"./components/progress-bar/ProgressBarComponent.js";export{StyledModal}from"./components/modals/styledModal.js";export{Dropdown}from"./components/dropdown/Dropdown.js";export{DropdownPopover}from"./components/dropdown/DropdownPopover/index.js";export{OpenedDropdown}from"./components/dropdown/OpenedDropdown/components/OpennedDropdown.js";export{AnalyticsCard}from"./components/analytics-card/AnalyticsCard.js";export{AnalyticsContainer,CardDataContainer}from"./components/analytics-card/AnalyticsCard.styled.js";export{Input}from"./components/input/Input.js";export{AnalyticsChip}from"./components/analytics-chips-and-dropdowns/AnalyticsChip.js";export{AnalyticsDropdown}from"./components/analytics-chips-and-dropdowns/AnalyticsDropdown.js";export{AnalyticsMultiChip}from"./components/analytics-chips-and-dropdowns/AnalyticsMultiChip.js";export{AVATAR_SIZE_VS_ICON_SIZE_MAP,Avatar,BACKGROUND_VS_TEXT_COLOR_MAP}from"./components/avatar/Avatar.js";export{RATIO,Thumbnail}from"./components/thumbnail/Thumbnail.js";export{Curtain}from"./components/curtain/Curtain.js";export{DatePicker}from"./components/datePicker/DatePicker.js";
1
+ import*as o from"./components/template-preview/constants/regexPatterns.js";export{o as regexPatterns};export{default as StringUtils}from"./utils/StringUtils.js";export{BASE_COLORS,COLORS,DEFAULT_THEME,FONTS}from"./constants/Theme.js";export{CheckBox}from"./components/checkBox/CheckBox.js";export{ListItem}from"./components/list-item/ListItem.js";export{Pagination}from"./components/pagination/Pagination.js";export{RadioButton}from"./components/radioButton/RadioButton.js";export{Toaster}from"./components/toaster/Toaster.js";export{Tooltip}from"./components/tooltips/Tooltip.js";export{CustomisedTooltip,TooltipPlacement}from"./components/tooltips/CustomisedTooltip.js";export{Spinner}from"./components/spinner/Spinner.js";export{Stepper}from"./components/stepper/Stepper.js";export{Tag}from"./components/tag/Tag.js";export{IconButton}from"./components/icon-button/IconButton.js";export{TemplatePreview}from"./components/template-preview/TemplatePreview.js";export{WhatsappLikePreview}from"./components/template-preview/WhatsApp/WhatsAppLikePreview.js";export{renderVariableUIForPreview}from"./components/template-preview/helpers/SmsTemplateHelper.js";export{WhatsAppFormatToHTML}from"./components/template-preview/helpers/WhatsAppFormatToHTML.js";export{TemplateContextMapper}from"./components/template-context-mapper/TemplateContextMapper.js";export{getAllDataFromTemplateComponent}from"./components/template-context-mapper/utils/getDataFromTemplateComponent.js";export{validateIsUrl}from"./components/template-context-mapper/utils/validateIsUrl.js";export{FABMenu}from"./components/fab-menu/FABMenu.js";export{FloatingActionButton}from"./components/floating-action-button/FloatingActionButton.js";export{DROP_POSITION,DropdownToggleContainer,FAB_POSITION,FloatingActionButtonContainer,FloatingActionButtonOuterContainer,MENU_ALIGNMENT,StyledDropdown}from"./components/floating-action-button/FloatingActionButton.styles.js";export{ImageService}from"./components/image-compress/ImageCompress.js";export{BodyCaption,BodyLarge,BodyPrimary,BodyPrimaryLink,BodyRegular,BodySecondary,BodySecondaryLink,BodyTiny,ButtonLarge,ButtonRegular,Caption,Display,SubHeading,TitleLarge,TitleMedium,TitleRegular,TitleSmall}from"./components/TypographyStyle.js";export{Button}from"./components/button/Button.js";export{ProgressBarComponent,ProgressCompletedBar}from"./components/progress-bar/ProgressBarComponent.js";export{StyledModal}from"./components/modals/styledModal.js";export{Dropdown}from"./components/dropdown/Dropdown.js";export{DropdownPopover}from"./components/dropdown/DropdownPopover/index.js";export{OpenedDropdown}from"./components/dropdown/OpenedDropdown/components/OpennedDropdown.js";export{AnalyticsCard}from"./components/analytics-card/AnalyticsCard.js";export{AnalyticsContainer,CardDataContainer}from"./components/analytics-card/AnalyticsCard.styled.js";export{Input}from"./components/input/Input.js";export{AnalyticsChip}from"./components/analytics-chips-and-dropdowns/AnalyticsChip.js";export{AnalyticsDropdown}from"./components/analytics-chips-and-dropdowns/AnalyticsDropdown.js";export{AnalyticsMultiChip}from"./components/analytics-chips-and-dropdowns/AnalyticsMultiChip.js";export{AVATAR_SIZE_VS_ICON_SIZE_MAP,Avatar,BACKGROUND_VS_TEXT_COLOR_MAP}from"./components/avatar/Avatar.js";export{RATIO,Thumbnail}from"./components/thumbnail/Thumbnail.js";export{Curtain}from"./components/curtain/Curtain.js";export{DatePicker}from"./components/datePicker/DatePicker.js";
@@ -7,4 +7,6 @@ export default class StringUtils {
7
7
  static detectUrl: (str: string) => RegExpMatchArray | null;
8
8
  static getAvatarText(name: string): string;
9
9
  static firstLetters: (string: string) => string;
10
+ static capitaliseFirstLetterOfString(string: string): string;
11
+ static toCapitilize(string?: string): string;
10
12
  }
@@ -1 +1 @@
1
- class e{static convertToTitleCase(e){const t=(e=e.toLowerCase()).split(" ");for(let e=0;e<t.length;e++)t[e]=t[e].charAt(0).toUpperCase()+t[e].slice(1);return t.join(" ")}static getAvatarText(e){if(e){const t=e.match(/\b(\w)/g),r=null==t?void 0:t.join("");return r?r.substring(0,2).toUpperCase():"C"}return""}}Object.defineProperty(e,"normalizeName",{enumerable:!0,configurable:!0,writable:!0,value:(e,t)=>{const r=e.split(t).join(" ");return r[0].toUpperCase()+r.slice(1)}}),Object.defineProperty(e,"capitalize",{enumerable:!0,configurable:!0,writable:!0,value:e=>{var t;return e.charAt(0).toUpperCase()+(null===(t=e.slice(1))||void 0===t?void 0:t.toLowerCase())}}),Object.defineProperty(e,"pluralize",{enumerable:!0,configurable:!0,writable:!0,value:(e,t)=>0===t||t>1?e+"s":e}),Object.defineProperty(e,"getFullPhoneNumber",{enumerable:!0,configurable:!0,writable:!0,value:e=>e?"+91"+e.slice(e.length-10):""}),Object.defineProperty(e,"detectUrl",{enumerable:!0,configurable:!0,writable:!0,value:e=>e.match(/(((https?:\/\/)|(www\.))[^\s]+)/g)}),Object.defineProperty(e,"firstLetters",{enumerable:!0,configurable:!0,writable:!0,value:e=>{let t="";return e.split(" ").forEach((e=>{e.length&&(t+=e[0])})),t.substr(0,2)}});export{e as default};
1
+ class e{static convertToTitleCase(e){const t=(e=e.toLowerCase()).split(" ");for(let e=0;e<t.length;e++)t[e]=t[e].charAt(0).toUpperCase()+t[e].slice(1);return t.join(" ")}static getAvatarText(e){if(e){const t=e.match(/\b(\w)/g),r=null==t?void 0:t.join("");return r?r.substring(0,2).toUpperCase():"C"}return""}static capitaliseFirstLetterOfString(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}static toCapitilize(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e.charAt(0).toUpperCase()+e.slice(1)}}Object.defineProperty(e,"normalizeName",{enumerable:!0,configurable:!0,writable:!0,value:(e,t)=>{const r=e.split(t).join(" ");return r[0].toUpperCase()+r.slice(1)}}),Object.defineProperty(e,"capitalize",{enumerable:!0,configurable:!0,writable:!0,value:e=>{var t;return e.charAt(0).toUpperCase()+(null===(t=e.slice(1))||void 0===t?void 0:t.toLowerCase())}}),Object.defineProperty(e,"pluralize",{enumerable:!0,configurable:!0,writable:!0,value:(e,t)=>0===t||t>1?e+"s":e}),Object.defineProperty(e,"getFullPhoneNumber",{enumerable:!0,configurable:!0,writable:!0,value:e=>e?"+91"+e.slice(e.length-10):""}),Object.defineProperty(e,"detectUrl",{enumerable:!0,configurable:!0,writable:!0,value:e=>e.match(/(((https?:\/\/)|(www\.))[^\s]+)/g)}),Object.defineProperty(e,"firstLetters",{enumerable:!0,configurable:!0,writable:!0,value:e=>{let t="";return e.split(" ").forEach((e=>{e.length&&(t+=e[0])})),t.substr(0,2)}});export{e as default};
@@ -0,0 +1 @@
1
+ export declare const bytesToMB: (bytes: number) => number;
@@ -0,0 +1 @@
1
+ const o=o=>o/Math.pow(1024,2);export{o as bytesToMB};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bikdotai/bik-component-library",
3
- "version": "0.0.6-chips-beta",
3
+ "version": "0.0.7-analytics-chips-beta",
4
4
  "description": "Bik Component Library",
5
5
  "repository": {
6
6
  "type": "git",